<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://de.kitakujo.de/w/skins/common/feed.css?207"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>Kitakien - Benutzerbeiträge [de]</title>
		<link>http://de.kitakujo.de/w/index.php?title=Spezial:Beitr%C3%A4ge/Lustiger_seth</link>
		<description>Aus Kitakien</description>
		<language>de</language>
		<generator>MediaWiki 1.15.1</generator>
		<lastBuildDate>Mon, 20 Apr 2026 11:17:59 GMT</lastBuildDate>
		<item>
			<title>MediaWiki:Common.css</title>
			<link>http://de.kitakujo.de/w/index.php?title=MediaWiki:Common.css</link>
			<description>&lt;p&gt;Lustiger seth:&amp;#32;siehe http://de.wikipedia.org/w/index.php?title=Wikipedia:Administratoren/Anfragen&amp;amp;oldid=56185242#MediaWiki:Anoneditwarning&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; /*-----------------------------------------------------------------------------------------------*/&lt;br /&gt;
 /* ACHTUNG! Common.css enthält die gemeinsamen Skin-Anpassungen der deutschsprachigen Wikipedia */&lt;br /&gt;
 /*---------------------------------------------------------------------------------------------*/&lt;br /&gt;
&lt;br /&gt;
 /* Common.css ist in drei grundlegende Abschnitte gegliedert: */&lt;br /&gt;
&lt;br /&gt;
 /* 1. Editierbare Seiteninhalte */&lt;br /&gt;
 /* 2. Sonstige Anpassungen (Spezialseiten, u.a.) */&lt;br /&gt;
 /* 3. Hauptseitenspezifisches */&lt;br /&gt;
&lt;br /&gt;
 /* Jede Ergänzung/Änderung muss vorher jeweils für alle Skins auf Tauglichkeit getestet werden, */&lt;br /&gt;
 /* individuell per User.css! Ist hier erstmal geändert, dauert es dank Cache eine Weile, bis die */&lt;br /&gt;
 /* Änderungen bei allen Nutzern sichtbar oder, bei Fehlern, korrigiert sind. */&lt;br /&gt;
&lt;br /&gt;
 /* +++++ 1. ANPASSUNGEN DER ANZEIGE VON EDITIERBAREN SEITENINHALTEN +++++ */&lt;br /&gt;
&lt;br /&gt;
 /* Personennamen in Kapitälchen: class=&amp;quot;Person&amp;quot; */&lt;br /&gt;
&lt;br /&gt;
 .Person {&lt;br /&gt;
    display: inline;&lt;br /&gt;
    font-variant: small-caps;&lt;br /&gt;
    font-style: normal;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* [[Wikipedia:Zitate|Zitate]] (siehe [[Vorlage:Zitat]]) */&lt;br /&gt;
&lt;br /&gt;
 p.Zitat {&lt;br /&gt;
    font-style: normal;&lt;br /&gt;
    margin-bottom: 0em;&lt;br /&gt;
 }&lt;br /&gt;
 p.cite {&lt;br /&gt;
    margin-top: 0em;&lt;br /&gt;
    padding-left: 1em;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* [[Wikipedia:Quellenangaben|Quellenangaben]] nicht kursiv, da sie ggf. verschiedene Bestandteile enthalten */&lt;br /&gt;
&lt;br /&gt;
 cite {&lt;br /&gt;
    font-style: normal;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Stylesheet-Ergänzung zu Standard-[[Wikipedia:Navigationsleisten|Navigationsleisten]] */&lt;br /&gt;
&lt;br /&gt;
 div.BoxenVerschmelzen,&lt;br /&gt;
 div.NavFrame {&lt;br /&gt;
    margin: 0px;&lt;br /&gt;
    padding: 2px;&lt;br /&gt;
    border: 1px solid #aaaaaa;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    border-collapse: collapse;&lt;br /&gt;
    font-size: 95%;&lt;br /&gt;
    clear:both;&lt;br /&gt;
 }&lt;br /&gt;
 div.BoxenVerschmelzen div.NavFrame {&lt;br /&gt;
    border-style: none;&lt;br /&gt;
    border-style: hidden;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavFrame + div.NavFrame {&lt;br /&gt;
    border-top-style: none;&lt;br /&gt;
    border-top-style: hidden;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavPic {&lt;br /&gt;
    background-color: #ffffff;&lt;br /&gt;
    margin: 0px;&lt;br /&gt;
    padding: 2px;&lt;br /&gt;
    float: left;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavFrame div.NavHead {&lt;br /&gt;
    font-weight: bold;&lt;br /&gt;
    font-size: 100%;&lt;br /&gt;
    background-color: #efefef;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavFrame p {&lt;br /&gt;
    font-size: 100%;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavFrame div.NavContent {&lt;br /&gt;
    font-size: 100%;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavFrame div.NavContent p {&lt;br /&gt;
    font-size: 100%;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavEnd {&lt;br /&gt;
    margin: 0px;&lt;br /&gt;
    padding: 0px;&lt;br /&gt;
    line-height: 1px;&lt;br /&gt;
    clear: both;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
/* Stylesheet fuer den 'Ausklappen'-Button an Navileisten, der in [[MediaWiki:Common.js]] implementiert wird */&lt;br /&gt;
.NavToggle {&lt;br /&gt;
    font-size: x-small;&lt;br /&gt;
    float:right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Workaround für Internet Explorer 6 */&lt;br /&gt;
div.NavFrame, div.NavPic, .NavToggle {&lt;br /&gt;
    position:relative;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
 /* Abstand vor Navigationsleisten */&lt;br /&gt;
&lt;br /&gt;
 div.BoxenVerschmelzen,&lt;br /&gt;
 div.NavFrame {&lt;br /&gt;
   margin-top: 1.5em;&lt;br /&gt;
 }&lt;br /&gt;
 div.BoxenVerschmelzen div.NavFrame {&lt;br /&gt;
   margin-top: 0;&lt;br /&gt;
 }&lt;br /&gt;
 div.NavFrame + div.NavFrame {&lt;br /&gt;
   margin-top: 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Stylesheet-Ergänzung zu SideBoxen (ehedem [[Wikipedia:TownBox|TownBox]]) */&lt;br /&gt;
&lt;br /&gt;
 div.sideBox {&lt;br /&gt;
    position: relative;&lt;br /&gt;
    float: right;&lt;br /&gt;
    background: white;&lt;br /&gt;
    margin-left: 1em;&lt;br /&gt;
    border: 1px solid gray;&lt;br /&gt;
    padding: 0.3em;&lt;br /&gt;
    width: 200px;&lt;br /&gt;
    overflow: hidden;&lt;br /&gt;
    clear: right;&lt;br /&gt;
 }&lt;br /&gt;
 div.sideBox dl {&lt;br /&gt;
    padding: 0;&lt;br /&gt;
    margin: 0 0 0.3em 0;&lt;br /&gt;
    font-size: 96%;&lt;br /&gt;
 }&lt;br /&gt;
 div.sideBox dl dt {&lt;br /&gt;
    background: none;&lt;br /&gt;
    margin: 0.4em 0 0 0;&lt;br /&gt;
 }&lt;br /&gt;
 div.sideBox dl dd {&lt;br /&gt;
    margin: 0.1em 0 0 1.1em;&lt;br /&gt;
    background-color: #f3f3f3;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Stylesheet-Ergänzung zu [[Wikipedia:Taxoboxen|Taxoboxen]] */&lt;br /&gt;
&lt;br /&gt;
 table.taxobox {&lt;br /&gt;
        border-collapse: collapse;&lt;br /&gt;
        border: 1px solid gray;&lt;br /&gt;
        float: right;&lt;br /&gt;
        clear: right;&lt;br /&gt;
        margin-left: 0.5em;&lt;br /&gt;
        background-color:white;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox th {&lt;br /&gt;
        background-color: #9BCD9B;&lt;br /&gt;
        border: solid 1px gray;&lt;br /&gt;
        text-align: center;&lt;br /&gt;
        font-weight: bold;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox td {&lt;br /&gt;
        vertical-align:top;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox .Person {&lt;br /&gt;
        font-style: normal;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox div.thumb,&lt;br /&gt;
 table.taxobox div.thumb * {&lt;br /&gt;
        margin: auto;&lt;br /&gt;
        padding: 0;&lt;br /&gt;
        float: none;&lt;br /&gt;
        border: none;&lt;br /&gt;
        background-color:#F9F9F9;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox div.magnify {&lt;br /&gt;
        display: none;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox tr td div.thumb div div.thumbcaption {&lt;br /&gt;
        text-align:center;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox td.Person {&lt;br /&gt;
        text-align:center;&lt;br /&gt;
        display:block;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox td.taxo-name {&lt;br /&gt;
        text-align:center;&lt;br /&gt;
 }&lt;br /&gt;
 table.taxobox td.taxo-bild {&lt;br /&gt;
        text-align:center;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Stylesheet-Ergänzung zu [[Wikipedia:Paläoboxen|Paläoboxen]] */&lt;br /&gt;
&lt;br /&gt;
 table.palaeobox {&lt;br /&gt;
       border-collapse: collapse;&lt;br /&gt;
       border: 1px solid gray;&lt;br /&gt;
       float: right;&lt;br /&gt;
       clear: right;&lt;br /&gt;
       margin-left: 0.5em;&lt;br /&gt;
       background-color:white;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox th {&lt;br /&gt;
       background-color: #e7dcc3;&lt;br /&gt;
       border: solid 1px gray;&lt;br /&gt;
       text-align: center;&lt;br /&gt;
       font-weight: bold;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox td {&lt;br /&gt;
       vertical-align:top;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox .Person {&lt;br /&gt;
       font-style: normal;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox div.thumb,&lt;br /&gt;
 table.palaeobox div.thumb * {&lt;br /&gt;
       margin: 0;&lt;br /&gt;
       padding: 0;&lt;br /&gt;
       float: none;&lt;br /&gt;
       border: none;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox div.magnify {&lt;br /&gt;
       display:none;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox tr td div.thumb div div.thumbcaption {&lt;br /&gt;
       text-align:left;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox td.Person {&lt;br /&gt;
       text-align:center;&lt;br /&gt;
       display:block;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox td.taxo-name {&lt;br /&gt;
       text-align:center;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox td.taxo-bild {&lt;br /&gt;
       text-align:center;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox td.taxo-zeit {&lt;br /&gt;
       text-align:center;&lt;br /&gt;
 }&lt;br /&gt;
 table.palaeobox td.taxo-ort {&lt;br /&gt;
       text-align:left;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* aus Vorlage zur Entlastung, skinabhängigen Darstellung und Kombinierbarkeit hierher ausgelagert */&lt;br /&gt;
 .wikitable,&lt;br /&gt;
 .prettytable {&lt;br /&gt;
  margin: 1em 1em 1em 0;&lt;br /&gt;
  background: #f9f9f9;&lt;br /&gt;
  border: 1px #AAA solid;&lt;br /&gt;
  border-collapse: collapse;&lt;br /&gt;
  empty-cells:show;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 .wikitable th, .wikitable td,&lt;br /&gt;
 .prettytable th, .prettytable td {&lt;br /&gt;
  border: 1px #AAA solid;&lt;br /&gt;
  padding: 0.3em;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 .wikitable caption,&lt;br /&gt;
 .prettytable caption {&lt;br /&gt;
  margin-left: inherit;&lt;br /&gt;
  margin-right: inherit;&lt;br /&gt;
  font-weight: bold;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 .nogrid th, .nogrid td {border: none;}&lt;br /&gt;
 .float-left { float: left; clear: left; }&lt;br /&gt;
 .float-right { float: right; clear: right; margin: 1em 0 1em 1em; }&lt;br /&gt;
 .centered { margin-left: auto; margin-right: auto; }&lt;br /&gt;
 .toptextcells td { vertical-align: top; }&lt;br /&gt;
&lt;br /&gt;
 /* Bitte KEINE weiteren Definitionen dieser Art für Boxen hier, das gehört in entsprechende Vorlagen! */&lt;br /&gt;
 /* Hier 20 Mal Trivialitäten wie &amp;quot;text-align:center&amp;quot; zu definieren verlangsamt alles und ist nicht */&lt;br /&gt;
 /* Sinn der Sache. (Und wer nicht weiß warum, hat's nicht verstanden.) */&lt;br /&gt;
&lt;br /&gt;
 /* Do not expand [[Wikipedia:WikiProjekt Georeferenzierung|kvaleberg.com-URLs]] for printing */&lt;br /&gt;
&lt;br /&gt;
 #content span.coordinates a.external.text:after, #content span.coordinates a.external.autonumber:after { content: &amp;quot;&amp;quot;; }&lt;br /&gt;
 #content div.coordinates a.external.text:after, #content div.coordinates a.external.autonumber:after { content: &amp;quot;&amp;quot;; }&lt;br /&gt;
&lt;br /&gt;
 /* Do not expand URLs for printing */&lt;br /&gt;
&lt;br /&gt;
 #content span.plainlinks-print a.external.text:after, #content span.plainlinks-print a.external.autonumber:after { content: &amp;quot;&amp;quot;; }&lt;br /&gt;
 #content div.plainlinks-print a.external.text:after, #content div.plainlinks-print a.external.autonumber:after { content: &amp;quot;&amp;quot;; }&lt;br /&gt;
&lt;br /&gt;
 /* Metadaten (bspw. [[Wikipedia:Personendaten|Personendaten]]) */&lt;br /&gt;
&lt;br /&gt;
 table.metadata {&lt;br /&gt;
    border: 1px solid #aaaaaa;&lt;br /&gt;
    display: none;&lt;br /&gt;
 }&lt;br /&gt;
 .metadata-label {&lt;br /&gt;
    color: #aaaaaa;&lt;br /&gt;
 }&lt;br /&gt;
 span.metadata {&lt;br /&gt;
    display: none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /*&lt;br /&gt;
  * Farbdefinitionen für Rahmen und Hintergründe von [[Wikipedia:Textbausteine|Textbausteinen]].&lt;br /&gt;
  * Hier: Standardvorgaben für &amp;quot;dunkle Schrift auf hellem Grund&amp;quot;.&lt;br /&gt;
  * Für Hell-auf-dunkel-Skins ([[MediaWiki:Amethyst.css|Amethyst]]) müssen dort entsprechende Definitionen&lt;br /&gt;
  * zusätzlich eingetragen werden! Anpassungen für andere Skins sind optional.&lt;br /&gt;
  * (Die Angaben der Rahmenstärke dienen der Bequemlichkeit, so dass man&lt;br /&gt;
  * für dünne Rahmen nur noch &amp;quot;border-style&amp;quot; angeben muss.)&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
 .rahmenfarbe1 { /* Wie Inhaltsverzeichnis */&lt;br /&gt;
    border-color: #aaaaaa;&lt;br /&gt;
    border-width: 1px;&lt;br /&gt;
 }&lt;br /&gt;
 .rahmenfarbe2 { /* Unauffällig, geringer Kontrast */&lt;br /&gt;
    border-color: #e9e9e9;&lt;br /&gt;
    border-width: 1px;&lt;br /&gt;
 }&lt;br /&gt;
 .rahmenfarbe3 { /* &amp;quot;Rot&amp;quot;, auffällig */&lt;br /&gt;
    border-color: #c00000;&lt;br /&gt;
    border-width: 1px;&lt;br /&gt;
 }&lt;br /&gt;
 .rahmenfarbe4 { /* Neutrale Farbe, deutlich */&lt;br /&gt;
    border-color: #8888aa;&lt;br /&gt;
    border-width: 1px;&lt;br /&gt;
 }&lt;br /&gt;
 .rahmenfarbe5 { /* &amp;quot;Schwarz&amp;quot;, hoher Kontrast */&lt;br /&gt;
    border-color: #000000;&lt;br /&gt;
    border-width: 1px;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 .hintergrundfarbe1 { /* Wie Inhaltsverzeichnis */&lt;br /&gt;
    background-color: #f9f9f9;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe2 { /* &amp;quot;Weiß&amp;quot;, für Nicht-Artikel-Seiten, neutral */&lt;br /&gt;
    background-color: #ffffff;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe3 { /* &amp;quot;Gelb&amp;quot;, auffällig */&lt;br /&gt;
    background-color: #ffff40;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe4 { /* Sehr auffällig */&lt;br /&gt;
    background-color: #ffaa00;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe5 { /* Neutral, abgesetzt */&lt;br /&gt;
    background-color: #e0e0e0;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe6 { /* Allgemein „bunt“, für Hervorhebungen und Unterscheidungen */&lt;br /&gt;
    background-color: #b3b7ff;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe7 { /* Allgemein „bunt“, für Hervorhebungen und Unterscheidungen */&lt;br /&gt;
    background-color: #ffcbcb;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe8 { /* Allgemein „bunt“, für Hervorhebungen und Unterscheidungen */&lt;br /&gt;
    background-color: #ffebad;&lt;br /&gt;
 }&lt;br /&gt;
 .hintergrundfarbe9 { /* Allgemein „bunt“, für Hervorhebungen und Unterscheidungen */&lt;br /&gt;
    background-color: #b9ffc5;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Keine Vergrößerung der Zeilenhöhe durch hochgestellte Zahlen der Fußnoten */&lt;br /&gt;
&lt;br /&gt;
 .reference, .references sup {&lt;br /&gt;
     font-size: 91%;&lt;br /&gt;
     vertical-align: text-top;&lt;br /&gt;
     position: relative;&lt;br /&gt;
     top: -0.3em;&lt;br /&gt;
     white-space: nowrap;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Hervorhebung der angeklickten Fußnoten und der Rückverweise in blau */&lt;br /&gt;
&lt;br /&gt;
 ol.references &amp;gt; li:target {&lt;br /&gt;
     background-color: #DEF;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 sup.reference:target {&lt;br /&gt;
     background-color: #DEF;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Hochgestellte Buchstaben in der Einzelnachweiseliste kursiv setzen */&lt;br /&gt;
&lt;br /&gt;
 ol.references li a[href|=&amp;quot;#cite_ref&amp;quot;] {&lt;br /&gt;
     font-style: italic;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Für &amp;lt;hiero&amp;gt;&amp;lt;/hiero&amp;gt; */&lt;br /&gt;
&lt;br /&gt;
 .mw-hierotable,&lt;br /&gt;
 .mw-hierotable th,&lt;br /&gt;
 .mw-hierotable td {&lt;br /&gt;
	border: 0px;&lt;br /&gt;
	padding: 0px;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Für [[MediaWiki:Anoneditwarning]] */&lt;br /&gt;
&lt;br /&gt;
 #mw-anon-edit-warning {&lt;br /&gt;
	width: 80%;&lt;br /&gt;
	background: #D3E1F2;&lt;br /&gt;
	border: 1px solid #1A47FF;&lt;br /&gt;
	margin: 1em auto;&lt;br /&gt;
	padding: 1em;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Bei URLs, die auf unser Projekt und verwandte Projekte verweisen, den Pfeil ausblenden &lt;br /&gt;
 * Dieser Pfeil dient nur dazu, auf externe Ziele hinzuweisen&lt;br /&gt;
 * Auf den Einsatz der Klasse &amp;quot;plainlinks&amp;quot; kann dadurch verzichtet werden&lt;br /&gt;
*/&lt;br /&gt;
 #column-content a[href^=&amp;quot;http://de.wikipedia.org&amp;quot;],&lt;br /&gt;
 #column-content a[href^=&amp;quot;http://toolserver.org&amp;quot;],&lt;br /&gt;
 #column-content a[href^=&amp;quot;http://stable.toolserver.org&amp;quot;] {&lt;br /&gt;
	background: none !important;&lt;br /&gt;
	padding: 0 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
 /* +++++ 2. SONSTIGE ANPASSUNGEN (Spezialseiten u. a.) +++++ */&lt;br /&gt;
&lt;br /&gt;
 /* Markierung von Redirects in [[Special:Allpages]], [[Special:Watchlist]], Kategorien */&lt;br /&gt;
&lt;br /&gt;
 .allpagesredirect, .watchlistredir, .redirect-in-category {&lt;br /&gt;
        font-style: italic;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Fettformatierung von Admin-Spezialseiten in [[Special:Specialpages]] abschalten */&lt;br /&gt;
 .mw-specialpagerestricted {&lt;br /&gt;
        font-weight:normal;&lt;br /&gt;
 }&lt;br /&gt;
 /* Legende auf [[Special:Specialpages]] ebenfalls abschalten */&lt;br /&gt;
 div.mw-specialpages-notes {&lt;br /&gt;
        display:none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Einmal gelesene Bestandteile (z.B. in der Sitenotice) ausblenden, sobald css geladen ist */&lt;br /&gt;
&lt;br /&gt;
 #gelesen {&lt;br /&gt;
        display:none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Größerer Abstand zwischen TOC-Nummerierung und TOC-Eintrag */&lt;br /&gt;
 span.tocnumber {&lt;br /&gt;
	margin-right:0.3em;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Skinabhängige absolute Positionierungen ausblenden */&lt;br /&gt;
 /* Bitte [[MediaWiki Diskussion:Common.css#Absolute_Positionierungen]] beachten */&lt;br /&gt;
&lt;br /&gt;
 #coordinates_3_ObenRechts, #issnlink, #editcount, #shortcut, #artikelstadium {&lt;br /&gt;
    display: none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Anpassungen für [[:Template:Link_FA]] */&lt;br /&gt;
&lt;br /&gt;
 /* hide the template */&lt;br /&gt;
 #bodyContent span.FA {&lt;br /&gt;
     display: none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* change the bullets for links to special articles */&lt;br /&gt;
 #p-lang li.FA {&lt;br /&gt;
     /* hier immer auch linkFA_bullet in Common.js mit anpassen für die älteren skins! */&lt;br /&gt;
     list-style-image: url(&amp;quot;http://upload.wikimedia.org/wikipedia/commons/d/d0/Monobook-bullet-star-transparent.png&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* DIVs in ImageMaps inlinen (Vorschlag von Revolus) */&lt;br /&gt;
 .imagemap-inline div {&lt;br /&gt;
       display: inline;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* [[Special:Hochladen]]: Warnmeldung auf bestehende Dateien, unerwünschte Prefixe usw. deutlicher hervorheben. */&lt;br /&gt;
&lt;br /&gt;
 #wpDestFile-warning ul {&lt;br /&gt;
       border:solid red 1px;&lt;br /&gt;
       padding: 1.5em;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Warnmeldung für gesperrte Titel */&lt;br /&gt;
 .mw-titleprotectedwarning {&lt;br /&gt;
       background-color: #eee;&lt;br /&gt;
       border: 2px solid red;&lt;br /&gt;
       padding: 1em;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Tabellenhintergründe transparent machen */&lt;br /&gt;
 /* Vor allem auf Spezialseiten, da diese eine andere Hintergrundfarbe haben. */&lt;br /&gt;
 /* Update 21. März 2008: Wurde mit [[rev:32269]] und [[rev:32270]] zentralisiert. */&lt;br /&gt;
&lt;br /&gt;
 table.searchResultImage, table#mw-sitematrix-table, table.mw-specialpages-table,&lt;br /&gt;
 table.mw-listgrouprights-table, table.diff&lt;br /&gt;
  {&lt;br /&gt;
       background-color: transparent;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
 /* +++++ 3. NEUE [[Wikipedia:Hauptseite|HAUPTSEITE]] (ab 2006) +++++ */&lt;br /&gt;
&lt;br /&gt;
 /* Hintergrund weiß */&lt;br /&gt;
 body.page-Wikipedia_Hauptseite #content {&lt;br /&gt;
       background-color: white;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Kategorie verbergen */&lt;br /&gt;
 body.page-Wikipedia_Hauptseite #catlinks {&lt;br /&gt;
  display:none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Überschrift verbergen */&lt;br /&gt;
 body.page-Wikipedia_Hauptseite h1.firstHeading {&lt;br /&gt;
  display: none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Redirhinweis verbergen - ACHTUNG: Je nach Skin muss jetzt der Abstand zum oberen Rand korrigiert werden */&lt;br /&gt;
body.page-Wikipedia_Hauptseite #contentSub {&lt;br /&gt;
  display: none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 #hauptseite h2 {&lt;br /&gt;
       background-color: #d8e8ff;&lt;br /&gt;
       border: 1px solid #8898bf;&lt;br /&gt;
       font-size: 1em;&lt;br /&gt;
       font-weight: bold;&lt;br /&gt;
       margin-top: 0;&lt;br /&gt;
       margin-bottom: 0;&lt;br /&gt;
       padding-top: 0.1em;&lt;br /&gt;
       padding-bottom: 0.1em;&lt;br /&gt;
 }&lt;br /&gt;
 #hauptseite .inhalt {&lt;br /&gt;
       background-color: #ffffff;&lt;br /&gt;
       border: 1px solid #8898bf;&lt;br /&gt;
       border-top: 0px solid white;&lt;br /&gt;
       padding: 0.3em 0.8em 0.4em 0.8em;&lt;br /&gt;
 }&lt;br /&gt;
 #hauptseite .inhalt hr {&lt;br /&gt;
       background-color: #8898bf;&lt;br /&gt;
       color: #8898bf;&lt;br /&gt;
       height: 1px;&lt;br /&gt;
       margin:0.5em 0;&lt;br /&gt;
       padding: 0;&lt;br /&gt;
 }&lt;br /&gt;
 #hauptseite .inhalt .mehr {&lt;br /&gt;
       clear: both;&lt;br /&gt;
       font-size: 95%;&lt;br /&gt;
       margin-top: 0.8em;&lt;br /&gt;
       text-align: right;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 #hauptseite table {&lt;br /&gt;
       background-color: transparent;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 .hauptseite-oben,&lt;br /&gt;
 .hauptseite-links,&lt;br /&gt;
 .hauptseite-rechts {&lt;br /&gt;
       margin-bottom: 1em;&lt;br /&gt;
 }&lt;br /&gt;
 .hauptseite-links {&lt;br /&gt;
       margin-right: 0.5em;&lt;br /&gt;
 }&lt;br /&gt;
 .hauptseite-rechts {&lt;br /&gt;
       margin-left: 0.5em;&lt;br /&gt;
 }&lt;br /&gt;
 .hauptseite-oben h2,&lt;br /&gt;
 .hauptseite-unten h2 {&lt;br /&gt;
       text-align: center;&lt;br /&gt;
 }&lt;br /&gt;
 .hauptseite-oben .inhalt .portale {&lt;br /&gt;
       font-weight: bold;&lt;br /&gt;
       margin-top: 0.2em;&lt;br /&gt;
       margin-bottom: 0.2em;&lt;br /&gt;
 }&lt;br /&gt;
 .hauptseite-oben .inhalt .intern {&lt;br /&gt;
       font-size: 90%;&lt;br /&gt;
       text-align: center;&lt;br /&gt;
 }&lt;br /&gt;
 .hauptseite-links h2,&lt;br /&gt;
 .hauptseite-rechts h2 {&lt;br /&gt;
       text-indent: 0.8em;&lt;br /&gt;
 }&lt;br /&gt;
 #hauptseite-schwesterprojekte .inhalt a {&lt;br /&gt;
       font-weight: bold;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Remove underline from IPA links */&lt;br /&gt;
 .IPA a:link, .IPA a:visited {&lt;br /&gt;
    text-decoration: none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.Unicode&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
  'Code2000',&lt;br /&gt;
  'Sun-ExtA',&lt;br /&gt;
  'Arial Unicode MS',&lt;br /&gt;
  'NSimSun',&lt;br /&gt;
  sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.Unicode1&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
  'Code2001',&lt;br /&gt;
  'Quivira',&lt;br /&gt;
  'MPH 2B Damase',&lt;br /&gt;
  sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.Unicode2&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
  'Sun-ExtB',&lt;br /&gt;
  'Code2002',&lt;br /&gt;
  sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.IPA&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
   'Quivira',&lt;br /&gt;
   'Code2000',&lt;br /&gt;
   'Sun-ExtA',&lt;br /&gt;
   'DejaVu Sans',&lt;br /&gt;
   'Gentium',&lt;br /&gt;
   'Arial Unicode MS',&lt;br /&gt;
   'Lucida Sans Unicode',&lt;br /&gt;
   sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.IAST&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
   'Code2000',&lt;br /&gt;
   'SunExtA',&lt;br /&gt;
   'Arial Unicode MS',&lt;br /&gt;
  sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.altitalisch&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
   'Quivira',&lt;br /&gt;
   'Code2001',&lt;br /&gt;
   'MPH 2B Damase',&lt;br /&gt;
   sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.gotisch&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
   'Quivira',&lt;br /&gt;
   'Code2001',&lt;br /&gt;
   'MPH 2B Damase',&lt;br /&gt;
   sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.hebrew&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
  'Quivira',&lt;br /&gt;
  'Sun-ExtA',&lt;br /&gt;
  'Arial Unicode MS',&lt;br /&gt;
  'SBL Hebrew',&lt;br /&gt;
  'Code2000',&lt;br /&gt;
  'MPH 2B Damase',&lt;br /&gt;
  sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.spanAr&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
  'Arial Unicode MS',&lt;br /&gt;
  'Scheherazade',&lt;br /&gt;
  'Code2000',&lt;br /&gt;
  'DejaVu Sans',&lt;br /&gt;
  sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 span.music-symbol&lt;br /&gt;
 {&lt;br /&gt;
  font-family:&lt;br /&gt;
  'Musical Symbols',&lt;br /&gt;
  'Euterpe',&lt;br /&gt;
  'Code2001',&lt;br /&gt;
  sans-serif;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Standardmäßige Ausblendung der Flagged-Revisions-Backlog-Sitenotice */&lt;br /&gt;
 #mw-oldreviewed-notice {&lt;br /&gt;
  display: none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Standardmäßige Ausblendung der Flagged-Revisions-Kommentarbox */&lt;br /&gt;
 #mw-commentbox {&lt;br /&gt;
  display:none;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Abstand zwischen Liste und Inhaltsverzeichnis erhöhen, siehe http://de.wikipedia.org/w/index.php?title=MediaWiki_Diskussion:Common.css&amp;amp;oldid=51639015#Abstand_vor_Inhaltsverzeichnis */&lt;br /&gt;
 ul + .toc, ol + .toc {&lt;br /&gt;
  margin-top: 0.5em&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 /* Im Projekt WP:GEO benutzt die [[Vorlage:Coordinate]] das «geo-microformat» zur semantischen&lt;br /&gt;
 Auszeichnung des Texts. Der Inhalt dieses [[Tag (Informatik)|Tags]] ist nicht für den Leser bestimmt. */&lt;br /&gt;
 .geo {display:none;}&lt;br /&gt;
&lt;br /&gt;
 /* Patrollink ausblenden, da die Eweiterung hier nicht aktiviert ist und&lt;br /&gt;
    deren Optik zu sehr den gesichteten Versionen ähnelt. */&lt;br /&gt;
 .fr-diff-patrollink, .patrollink { display:none; }&lt;/div&gt;</description>
			<pubDate>Tue, 03 Feb 2009 10:20:54 GMT</pubDate>			<dc:creator>Lustiger seth</dc:creator>			<comments>http://de.kitakujo.de/w/index.php?title=MediaWiki_Diskussion:Common.css</comments>		</item>
		<item>
			<title>Vorlage:Unsigned/Doku</title>
			<link>http://de.kitakujo.de/w/index.php?title=Vorlage:Unsigned/Doku</link>
			<description>&lt;p&gt;Lustiger seth:&amp;#32;herverschoben von Hilfe:Signatur und eingearbeitet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Dokumentation/Dokuseite}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;{{Tausendfach verwendet}}&lt;br /&gt;
&lt;br /&gt;
Mit der [[Vorlage:Unsigned]] (alternativ [[Vorlage:Unsigniert]]) kann man nichtunterschriebene Diskussionsbeiträge kennzeichnen. Dies dient gleichzeitig dazu, den entsprechenden Benutzer auf die gewünschte Signatur hinzuweisen und es anderen Benutzern zu erleichtern, die Diskussion zu verfolgen.&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
&lt;br /&gt;
Die Werte der Parameter können entweder manuell aus der Versionsgeschichte kopiert und ggf. angepasst werden. Oder man benutzt zum Nachsignieren [[user:lustiger_seth/unsigned.js|dieses Script]] (Anleitung [[Benutzer_Diskussion:Lustiger_seth/unsigned.js#Benutzung|hier]]), welches auch automatisch zwischen [[Sommerzeit]] (CEST) und Normalzeit (CET) unterscheidet; siehe [[#Anmerkungen]].&lt;br /&gt;
&lt;br /&gt;
== Anwendung ==&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|Benutzername oder IP-Adresse des Benutzers|Uhrzeit, Datum des unsignierten Beitrags}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
wird der Text&lt;br /&gt;
: {{unsigned|Benutzername oder IP-Adresse des Benutzers|Uhrzeit, Datum des unsignierten Beitrags}}&lt;br /&gt;
erzeugt.&lt;br /&gt;
&lt;br /&gt;
Mit dem Parameter: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;|ALT=falsch|&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; kann man falsch signierte Beiträge kennzeichnen:&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|Benutzername oder IP-Adresse des Benutzers|ALT=falsch|Uhrzeit, Datum des Beitrags}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
wird zu&lt;br /&gt;
: {{unsigned|Benutzername oder IP-Adresse des Benutzers|ALT=falsch|Uhrzeit, Datum des Beitrags}}&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|127.0.0.1|06:06, 6. Jun. 2006 (CEST)}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
ergibt&lt;br /&gt;
: {{unsigned|127.0.0.1|06:06, 6. Jun. 2006 (CEST)}}&lt;br /&gt;
&lt;br /&gt;
== Anmerkungen ==&lt;br /&gt;
&lt;br /&gt;
;Sommerzeit und Wirkung auf die automatische Archivierung&lt;br /&gt;
Damit der [[Benutzer:ArchivBot|ArchivBot]] in Zusammenhang mit der [[Vorlage:Autoarchiv]] den Zeitstempel erkennt, muss er mit einem Zeitzonencode ergänzt werden, &amp;lt;code&amp;gt;(CET)&amp;lt;/code&amp;gt;=Winterzeit &amp;lt;code&amp;gt;(CEST)&amp;lt;/code&amp;gt;=[[Sommerzeit]], zum Beispiel: &amp;lt;code&amp;gt;21:46, 24. Jan. 2007 (CET)&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;21:46, 24. Aug. 2007 (CEST)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Falls du in deinen [[Hilfe:Einstellungen|Einstellungen]] mitteleuropäische Ortszeit eingestellt hast (was normalerweise der Fall ist), kannst du Datum und Uhrzeit des nachzusignierenden Beitrages meistens auch einfach aus der Versionsgeschichte kopieren; nämlich immer, wenn du zur Sommerzeit einen zur Sommerzeit erstellten Beitrag oder wenn du zur Normalzeit einen zur Normalzeit erstellten Beitrag nachsignierst. Wenn du jedoch zur Sommerzeit einen zur Normalzeit erstellten Beitrag (oder umgekehrt) nachsignierst, musst du die Differenz berücksichtigen. Zur Sommerzeit werden in den Versionsgeschichten nämlich ''alle'' Uhrzeiten in mitteleuropäischer Sommerzeit (UTC+2) angezeigt, zur Normalzeit alle in [[Mitteleuropäische Zeit|mitteleuropäischer Zeit (MEZ)]] (UTC+1). Also wird ein im Winter um 9.37&amp;amp;nbsp;Uhr&amp;amp;nbsp;MEZ erstellter Beitrag im Sommer mit „10:37“ angezeigt; umgekehrt wird ein im Sommer um 20.34&amp;amp;nbsp;Uhr&amp;amp;nbsp;MESZ erstellter Beitrag im Winter mit „19:34“ angezeigt. Deshalb musst du zur Sommerzeit von den Uhrzeiten von zur Normalzeit erstellter Beiträge eine Stunde abziehen; zur Normalzeit musst du auf die Uhrzeiten von zur Sommerzeit erstellter Beiträge eine Stunden addieren. Eine Übersicht, von wann bis wann in welchen Jahren Sommerzeit gegolten hat, findest du beispielsweise bei der [http://www.ptb.de/de/org/4/44/441/sneu.htm#TabSommz Physikalisch-Technischen Bundesanstalt] oder im Artikel ''[[Liste der Sommerzeiten]]''.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| 10:37 in der Versionsgeschichte || nachsignieren zur Sommerzeit || nachsignieren zur Normalzeit&lt;br /&gt;
|-&lt;br /&gt;
| Beitrag erstellt zur Sommerzeit || 10:37                        || 11:37 (eine Stunde aufaddieren)&lt;br /&gt;
|-&lt;br /&gt;
| Beitrag erstellt zur Normalzeit || 9:37 (eine Stunde abziehen)  || 10:37&lt;br /&gt;
|}&lt;br /&gt;
Bei Verwendung des bereits oben genannten [[user:lustiger_seth/unsigned.js|Scripts]] erfolgt die ggf. notwendige Umrechnung automatisch.&lt;br /&gt;
&lt;br /&gt;
;Keine zusätzliche eigene Signatur&lt;br /&gt;
Um die Übersicht zu bewahren, sollte diese Vorlage nicht noch zusätzlich durch den Benutzer, der nachträglich signiert, unterschrieben werden. Diese Dopplung würde außerdem Probleme mit der [[Hilfe:Archivierung#Automatische Archivierung|automatischen Archivierung]] bereiten, da der Beitrag so neuer erscheint, als er eigentlich ist.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
&lt;br /&gt;
* [[Vorlage:Unterschreiben]]&lt;/div&gt;</description>
			<pubDate>Mon, 02 Feb 2009 01:32:16 GMT</pubDate>			<dc:creator>Lustiger seth</dc:creator>			<comments>http://de.kitakujo.de/w/index.php?title=Vorlage_Diskussion:Unsigned/Doku</comments>		</item>
		<item>
			<title>Vorlage:Unsigned/Doku</title>
			<link>http://de.kitakujo.de/w/index.php?title=Vorlage:Unsigned/Doku</link>
			<description>&lt;p&gt;Lustiger seth:&amp;#32;/* Hinweise */ umformulierung und expliziterer hinweis aufs neuere script.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Dokumentation/Dokuseite}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;{{Tausendfach verwendet}}&lt;br /&gt;
&lt;br /&gt;
== Hinweise ==&lt;br /&gt;
&lt;br /&gt;
Die Werte der Parameter können entweder manuell aus der Versionsgeschichte kopiert und ggf. angepasst werden. Oder man benutzt zum Nachsignieren [[user:lustiger_seth/unsigned.js|dieses Script]], welches auch automatisch zwischen [[Sommerzeit]] (CEST) und Normalzeit (CET) unterscheidet.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, sollte diese Vorlage nicht noch zusätzlich durch den Benutzer, der nachträglich signiert, unterschrieben werden. Diese Dopplung würde außerdem Probleme mit der [[Hilfe:Archivierung#Automatische Archivierung|automatischen Archivierung]] bereiten, da der Beitrag so neuer erscheint, als er eigentlich ist.&lt;br /&gt;
&lt;br /&gt;
== Anwendung ==&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|Benutzername oder IP-Adresse des Benutzers|Uhrzeit, Datum des unsignierten Beitrags}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
wird der Text&lt;br /&gt;
: {{unsigned|Benutzername oder IP-Adresse des Benutzers|Uhrzeit, Datum des unsignierten Beitrags}}&lt;br /&gt;
erzeugt.&lt;br /&gt;
&lt;br /&gt;
Mit dem Parameter: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;|ALT=falsch|&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; kann man falsch signierte Beiträge kennzeichnen:&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|Benutzername oder IP-Adresse des Benutzers|ALT=falsch|Uhrzeit, Datum des Beitrags}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
wird zu&lt;br /&gt;
: {{unsigned|Benutzername oder IP-Adresse des Benutzers|ALT=falsch|Uhrzeit, Datum des Beitrags}}&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|127.0.0.1|06:06, 6. Jun. 2006 (CEST)}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
ergibt&lt;br /&gt;
: {{unsigned|127.0.0.1|06:06, 6. Jun. 2006 (CEST)}}&lt;br /&gt;
&lt;br /&gt;
== Anmerkungen ==&lt;br /&gt;
&lt;br /&gt;
'''Wirkung auf die automatische Archivierung'''&amp;lt;br /&amp;gt;&lt;br /&gt;
Damit der [[Benutzer:ArchivBot|ArchivBot]] in Zusammenhang mit der [[Vorlage:Autoarchiv]] den Zeitstempel erkennt, muss er mit einem Zeitzonencode ergänzt werden, &amp;lt;code&amp;gt;(CET)&amp;lt;/code&amp;gt;=Winterzeit &amp;lt;code&amp;gt;(CEST)&amp;lt;/code&amp;gt;=[[Sommerzeit]], zum Beispiel: &amp;lt;code&amp;gt;21:46, 24. Jan. 2007 (CET)&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;21:46, 24. Aug. 2007 (CEST)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
&lt;br /&gt;
* [[Vorlage:Unterschreiben]]&lt;/div&gt;</description>
			<pubDate>Thu, 08 Jan 2009 00:43:01 GMT</pubDate>			<dc:creator>Lustiger seth</dc:creator>			<comments>http://de.kitakujo.de/w/index.php?title=Vorlage_Diskussion:Unsigned/Doku</comments>		</item>
		<item>
			<title>MediaWiki:Gadget-wikEd.js</title>
			<link>http://de.kitakujo.de/w/index.php?title=MediaWiki:Gadget-wikEd.js</link>
			<description>&lt;p&gt;Lustiger seth:&amp;#32;update; see [http://de.wikipedia.org/w/index.php?title=Wikipedia:Administratoren/Anfragen&amp;amp;oldid=50434650#Aktualisierung_WP_Gadget_wikEd_MediaWiki:Gadget-wikEd.js]&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;// Von http://en.wikipedia.org/wiki/User:Cacycle/wikEd.js übernommen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// version info&lt;br /&gt;
window.wikEdProgramVersion = window.wikEdProgramVersion || '0.9.64g';&lt;br /&gt;
window.wikEdProgramDate    = window.wikEdProgramDate    || 'August 31, 2008';&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
&lt;br /&gt;
Program description and Greasemonkey metadata&lt;br /&gt;
&lt;br /&gt;
wikEd is a full-featured JavaScript in-browser editor for Wikipedia and other MediaWiki edit pages.&lt;br /&gt;
The program works currently ONLY for Mozilla-based browsers (Mozilla, Mozilla Firefox, and Mozilla SeaMonkey)&lt;br /&gt;
The code has to be saved as UTF-8 in your editor to preserve Unicode characters like ♥ (heart)&lt;br /&gt;
&lt;br /&gt;
// ==UserScript==&lt;br /&gt;
// @name        wikEd&lt;br /&gt;
// @namespace   http://en.wikipedia.org/wiki/User:Cacycle/&lt;br /&gt;
// @description A full-featured in-browser editor for Wikipedia and other MediaWiki edit pages&lt;br /&gt;
// @include     *&lt;br /&gt;
// @exclude&lt;br /&gt;
//&lt;br /&gt;
// @homepage    http://en.wikipedia.org/wiki/User:Cacycle/wikEd&lt;br /&gt;
// @source      http://en.wikipedia.org/wiki/User:Cacycle/wikEd.js&lt;br /&gt;
// @author      Cacycle (http://en.wikipedia.org/wiki/User:Cacycle)&lt;br /&gt;
// @license     Released into the public domain&lt;br /&gt;
// ==/UserScript==&lt;br /&gt;
&lt;br /&gt;
== Installation on a MediaWiki wiki (using monobook.js) ==&lt;br /&gt;
&lt;br /&gt;
1. PLEASE DO NOT COPY THE WHOLE PROGRAM (in order to get the frequent updates and bug fixes and to save disk space)&lt;br /&gt;
2. See http://en.wikipedia.org/wiki/User:Cacycle/wikEd for more detailed instructions&lt;br /&gt;
3. Copy the following short block of code to [[User:YOURUSERNAME/monobook.js]]&lt;br /&gt;
4. Click SHIFT-Reload to update to the newest version&lt;br /&gt;
5. Optional: customize the program by adding user settings to your monobook.je page&lt;br /&gt;
&lt;br /&gt;
// ---- START wikEd INSTALLATION CODE ----&lt;br /&gt;
&lt;br /&gt;
// install [[User:Cacycle/wikEd]] in-browser text editor&lt;br /&gt;
document.write('&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;'&lt;br /&gt;
+ 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js'&lt;br /&gt;
+ '&amp;amp;action=raw&amp;amp;ctype=text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// ---- END wikEd INSTALLATION CODE ----&lt;br /&gt;
&lt;br /&gt;
== General installation for all MediaWiki wikis (using Greasemonkey) ==&lt;br /&gt;
&lt;br /&gt;
1. Install Greasemonkey for Firefox and SeaMonkey from:&lt;br /&gt;
			https://addons.mozilla.org/en-US/firefox/addon/748&lt;br /&gt;
2. Install wikEd by opening this address:&lt;br /&gt;
			http://en.wikipedia.org/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=User:Cacycle/wikEd.user.js&lt;br /&gt;
3. Optional: customize the program by adding user settings to the Greasemonkey customization section below&lt;br /&gt;
			(these settings will be overwritten by updates!)&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// Greasemonkey customization section: add customization settings here&lt;br /&gt;
//   example: window.wikEdAutoUpdate = false; window.wikEdAutoUpdateHours = 7 * 24;&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInitGlobalsConfigs: initialize user configurable variables&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdInitGlobalConfigs = function() {&lt;br /&gt;
&lt;br /&gt;
// user readable texts, copy changes to http://en.wikipedia.org/wiki/User:Cacycle/wikEd_international_en.js, also defined in wikEdDiff.js&lt;br /&gt;
	if (typeof(wikEdText) == 'undefined') { window.wikEdText = {}; }&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInitText: define built-in user interface texts&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
	window.WikEdInitText = function() {&lt;br /&gt;
		WikEdInitObject(wikEdText, {&lt;br /&gt;
&lt;br /&gt;
// logo&lt;br /&gt;
			'wikEdLogo alt':               'wikEd',&lt;br /&gt;
			'wikEdLogo title':             'wikEd {wikEdProgramVersion} ({wikEdProgramDate}) Click to disable',&lt;br /&gt;
			'wikEdLogo error alt':         'wikEd error',&lt;br /&gt;
			'wikEdLogo error title':       'Loading error - wikEd {wikEdProgramVersion} ({wikEdProgramDate}) Click to disable',&lt;br /&gt;
			'wikEdLogo browser alt':       '(wikEd)',&lt;br /&gt;
			'wikEdLogo browser title':     'Browser not supported - wikEd {wikEdProgramVersion} ({wikEdProgramDate})',&lt;br /&gt;
			'wikEdLogo disabled alt':      '(wikEd)',&lt;br /&gt;
			'wikEdLogo disabled title':    'Disabled - wikEd {wikEdProgramVersion} ({wikEdProgramDate}) Click to enable',&lt;br /&gt;
&lt;br /&gt;
// top jumper&lt;br /&gt;
			'wikEdScrollToEdit4 alt':      'Scroll to edit',&lt;br /&gt;
			'wikEdScrollToEdit4 title':    'Scroll to edit field',&lt;br /&gt;
&lt;br /&gt;
// button bar grip titles&lt;br /&gt;
			'wikEdGripFormat title':       'Formatting buttons (click to hide or show)',&lt;br /&gt;
			'wikEdGripCustom1 title':      'Custom buttons (click to hide or show)',&lt;br /&gt;
			'wikEdGripFind title':         'Find buttons (click to hide or show)',&lt;br /&gt;
			'wikEdGripFix title':          'Fixing buttons (click to hide or show)',&lt;br /&gt;
			'wikEdGripCustom2 title':      'Custom buttons (click to hide or show)',&lt;br /&gt;
			'wikEdGripControl title':      'wikEd control buttons (click to hide or show)',&lt;br /&gt;
&lt;br /&gt;
// formatting buttons, top row&lt;br /&gt;
			'wikEdUndo alt':               'Undo',&lt;br /&gt;
			'wikEdUndo title':             'Undo',&lt;br /&gt;
			'wikEdRedo alt':               'Redo',&lt;br /&gt;
			'wikEdRedo title':             'Redo',&lt;br /&gt;
			'wikEdBold title':             'Bold text',&lt;br /&gt;
			'wikEdItalic alt':             'Italic',&lt;br /&gt;
			'wikEdItalic title':           'Italic text',&lt;br /&gt;
			'wikEdUnderline alt':          'Underline',&lt;br /&gt;
			'wikEdUnderline title':        'Underline text',&lt;br /&gt;
			'wikEdStrikethrough alt':      'Strikethrough',&lt;br /&gt;
			'wikEdStrikethrough title':    'Strikethrough text',&lt;br /&gt;
			'wikEdNowiki alt':             'Nowiki',&lt;br /&gt;
			'wikEdNowiki title':           'Nowiki markup text',&lt;br /&gt;
			'wikEdSuperscript alt':        'Superscript',&lt;br /&gt;
			'wikEdSuperscript title':      'Superscript text',&lt;br /&gt;
			'wikEdSubscript alt':          'Subscript',&lt;br /&gt;
			'wikEdSubscript title':        'Subscript text',&lt;br /&gt;
			'wikEdRef alt':                'Ref',&lt;br /&gt;
			'wikEdRef title':              'In-text reference (shift-click: named tag)',&lt;br /&gt;
			'wikEdCase alt':               'Case',&lt;br /&gt;
			'wikEdCase title':             'Toggle between lowercase, uppercase first, and uppercase',&lt;br /&gt;
			'wikEdSort alt':               'Sort',&lt;br /&gt;
			'wikEdSort title':             'Sort lines alphabetically',&lt;br /&gt;
			'wikEdRedirect alt':           'Redirect',&lt;br /&gt;
			'wikEdRedirect title':         'Create redirect, deletes whole text',&lt;br /&gt;
			'wikEdUndoAll alt':            'Undo all',&lt;br /&gt;
			'wikEdUndoAll title':          'Undo all changes',&lt;br /&gt;
			'wikEdRedoAll alt':            'Redo all',&lt;br /&gt;
			'wikEdRedoAll title':          'Redo all changes',&lt;br /&gt;
&lt;br /&gt;
// formatting buttons, bottom row&lt;br /&gt;
			'wikEdWikiLink alt':           'Link',&lt;br /&gt;
			'wikEdWikiLink title':         'Wiki link',&lt;br /&gt;
			'wikEdWebLink alt':            'Weblink',&lt;br /&gt;
			'wikEdWebLink title':          'External weblink',&lt;br /&gt;
			'wikEdHeading alt':            'Heading',&lt;br /&gt;
			'wikEdHeading title':          'Increase heading levels (shift-click: decrease)',&lt;br /&gt;
			'wikEdBulletList alt':         'Bullet list',&lt;br /&gt;
			'wikEdBulletList title':       'Increase bulleted list level (shift-click: decrease)',&lt;br /&gt;
			'wikEdNumberList alt':         'Number list',&lt;br /&gt;
			'wikEdNumberList title':       'Increase numbered list level (shift-click: decrease)',&lt;br /&gt;
			'wikEdIndentList alt':         'Indent list',&lt;br /&gt;
			'wikEdIndentList title':       'Increase indention (shift-click: decrease)',&lt;br /&gt;
			'wikEdDefinitionList alt':     'Def list',&lt;br /&gt;
			'wikEdDefinitionList title':   'Definition list',&lt;br /&gt;
			'wikEdImage alt':              'Image',&lt;br /&gt;
			'wikEdImage title':            'Image',&lt;br /&gt;
			'wikEdTable alt':              'Table',&lt;br /&gt;
			'wikEdTable title':            'Table',&lt;br /&gt;
			'wikEdReferences alt':         'References',&lt;br /&gt;
			'wikEdReferences title':       'References location (shift-click: References section)',&lt;br /&gt;
			'wikEdWikify alt':             'Wikify',&lt;br /&gt;
			'wikEdWikify title':           'Convert pasted content to wiki code, update highlighting',&lt;br /&gt;
			'wikEdTextify alt':            'Textify',&lt;br /&gt;
			'wikEdTextify title':          'Convert pasted content to plain text, update highlighting',&lt;br /&gt;
&lt;br /&gt;
// find and replace buttons, top row&lt;br /&gt;
			'wikEdFindAll alt':            'Find all',&lt;br /&gt;
			'wikEdFindAll title':          'Find all matches',&lt;br /&gt;
			'wikEdFindPrev alt':           'Find prev',&lt;br /&gt;
			'wikEdFindPrev title':         'Find previous match',&lt;br /&gt;
			'wikEdFindSelect title':       'Select a previous search or jump to a heading',&lt;br /&gt;
			'wikEdFindNext alt':           'Find next',&lt;br /&gt;
			'wikEdFindNext title':         'Find next match (shift-click: get selection)',&lt;br /&gt;
			'wikEdJumpPrev alt':           'Selected prev',&lt;br /&gt;
			'wikEdJumpPrev title':         'Find the selected text backwards',&lt;br /&gt;
			'wikEdJumpNext alt':           'Selected next',&lt;br /&gt;
			'wikEdJumpNext title':         'Find the selected text forwards',&lt;br /&gt;
&lt;br /&gt;
// find and replace buttons, bottom row&lt;br /&gt;
			'wikEdReplaceAll alt':         'Replace all',&lt;br /&gt;
			'wikEdReplaceAll title':       'Replace all matches in whole text or selection',&lt;br /&gt;
			'wikEdReplacePrev alt':        'Replace prev',&lt;br /&gt;
			'wikEdReplacePrev title':      'Replace previous match',&lt;br /&gt;
			'wikEdReplaceSelect title':    'Select a previous replacement',&lt;br /&gt;
			'wikEdReplaceNext alt':        'Replace next (shift-click: get selection)',&lt;br /&gt;
			'wikEdReplaceNext title':      'Replace next match',&lt;br /&gt;
			'wikEdCaseSensitive alt':      'Case sensitive',&lt;br /&gt;
			'wikEdCaseSensitive title':    'Search is case sensitive',&lt;br /&gt;
			'wikEdRegExp alt':             'RegExp',&lt;br /&gt;
			'wikEdRegExp title':           'Search field is a regular expression',&lt;br /&gt;
			'wikEdFindAhead alt':          'Find ahead',&lt;br /&gt;
			'wikEdFindAhead title':        'Find ahead as you type (case-insensitive non-regexp search)',&lt;br /&gt;
&lt;br /&gt;
// fix buttons, top row&lt;br /&gt;
			'wikEdFixBasic alt':           'Fix basic',&lt;br /&gt;
			'wikEdFixBasic title':         'Fix blanks and empty lines, also done by other fixing functions',&lt;br /&gt;
			'wikEdFixHtml alt':            'Fix html',&lt;br /&gt;
			'wikEdFixHtml title':          'Fix html to wikicode',&lt;br /&gt;
			'wikEdFixCaps alt':            'Fix caps',&lt;br /&gt;
			'wikEdFixCaps title':          'Fix caps in headers and lists',&lt;br /&gt;
			'wikEdfixUnicode alt':         'Fix Unicode',&lt;br /&gt;
			'wikEdfixUnicode title':       'Fix Unicode character representations',&lt;br /&gt;
			'wikEdFixAll alt':             'Fix all',&lt;br /&gt;
			'wikEdFixAll title':           'Fix basic, html, capitalization, and Unicode',&lt;br /&gt;
			'wikEdFixRegExTypo alt':       'Fix typos',&lt;br /&gt;
			'wikEdFixRegExTypo title':     'Fix typos using the AutoWikiBrowser RegExTypoFixer rules',&lt;br /&gt;
&lt;br /&gt;
// fix buttons, bottom row&lt;br /&gt;
			'wikEdFixDashes alt':          'Fix dashes',&lt;br /&gt;
			'wikEdFixDashes title':        'Fix dashes',&lt;br /&gt;
			'wikEdFixPunct alt':           'Fix punctuation',&lt;br /&gt;
			'wikEdFixPunct title':         'Fix spaces before punctuation',&lt;br /&gt;
			'wikEdFixMath alt':            'Fix math',&lt;br /&gt;
			'wikEdFixMath title':          'Fix math',&lt;br /&gt;
			'wikEdFixChem alt':            'Fix chem',&lt;br /&gt;
			'wikEdFixChem title':          'Fix chemical formulas',&lt;br /&gt;
			'wikEdFixUnits alt':           'Fix units',&lt;br /&gt;
			'wikEdFixUnits title':         'Fix units',&lt;br /&gt;
&lt;br /&gt;
// wikEd control buttons, top row&lt;br /&gt;
			'wikEdRefHide alt':            'Hide &amp;lt;ref&amp;gt;',&lt;br /&gt;
			'wikEdRefHide title':          'Toggle &amp;lt;ref&amp;gt; tag hiding',&lt;br /&gt;
			'wikEdTextZoom alt':           'Text zoom',&lt;br /&gt;
			'wikEdTextZoom title':         'Text zoom cycling (shift-click: reverse)',&lt;br /&gt;
			'wikEdClearHistory alt':       'Clear history',&lt;br /&gt;
			'wikEdClearHistory title':     'Clear the find, replace, and summary history',&lt;br /&gt;
			'wikEdScrollToPreview alt':    'Scroll to preview',&lt;br /&gt;
			'wikEdScrollToPreview title':  'Scroll to preview field',&lt;br /&gt;
			'wikEdScrollToEdit alt':       'Scroll to edit',&lt;br /&gt;
			'wikEdScrollToEdit title':     'Scroll to edit field',&lt;br /&gt;
&lt;br /&gt;
// wikEd control buttons, bottom row&lt;br /&gt;
			'wikEdUseWikEd alt':           'Use wikEd',&lt;br /&gt;
			'wikEdUseWikEd title':         'Toggle between classic text area and wikEd',&lt;br /&gt;
			'wikEdHighlightSyntax alt':    'Syntax',&lt;br /&gt;
			'wikEdHighlightSyntax title':  'Toggle automatic syntax highlighting',&lt;br /&gt;
			'wikEdSource alt':             'Source',&lt;br /&gt;
			'wikEdCloseToolbar title':     'Close the standard non-wikEd toolbar',&lt;br /&gt;
			'wikEdCloseToolbar alt':       'Close toolbar',&lt;br /&gt;
			'wikEdSource title':           'Show the source code for testing purposes',&lt;br /&gt;
			'wikEdUsing alt':              'Using',&lt;br /&gt;
			'wikEdUsing title':            'Automatically add \'\'…using wikEd\'\' to summaries',&lt;br /&gt;
			'wikEdDiff alt':               'wikEdDiff',&lt;br /&gt;
			'wikEdDiff title':             'Toggle automatic improved diff view',&lt;br /&gt;
			'wikEdFullScreen alt':         'Fullscreen',&lt;br /&gt;
			'wikEdFullScreen title':       'Toggle the fullscreen mode',&lt;br /&gt;
			'wikEdTableMode alt':          'Table mode', // {{TABLE}}&lt;br /&gt;
			'wikEdTableMode title':        'Toggle table edit mode', // {{TABLE}}&lt;br /&gt;
&lt;br /&gt;
// summary buttons&lt;br /&gt;
			'wikEdClearSummary alt':       'Clear summary',&lt;br /&gt;
			'wikEdClearSummary title':     'Clear the summary field',&lt;br /&gt;
			'wikEdSummarySelect title':    'Select a previous summary',&lt;br /&gt;
			'wikEdPresetSummary': [&lt;br /&gt;
				'/*  */ ', 'copyedit', 'reply', 'article created', 'intro rewrite',&lt;br /&gt;
				'linkfix', 'fixing typos', 'removing linkspam', 'reverting test',&lt;br /&gt;
				'reverting vandalism', 'formatting source text', '{wikEdUsing}'&lt;br /&gt;
			],&lt;br /&gt;
			'wikEdSummaryUsing':           '…using [[en:User:Cacycle/wikEd|wikEd]]',&lt;br /&gt;
&lt;br /&gt;
// button title acceskey&lt;br /&gt;
			'alt-shift':                   'alt-shift-',&lt;br /&gt;
&lt;br /&gt;
// submit buttons&lt;br /&gt;
			'wikEdLocalPreviewImg alt':    'Preview below',&lt;br /&gt;
			'wikEdLocalPreview title':     'Show preview below',&lt;br /&gt;
			'wikEdLocalDiffImg alt':       'Changes below',&lt;br /&gt;
			'wikEdLocalDiff title':        'Show current changes below',&lt;br /&gt;
			'wikEdHelpPageLink':           ' | &amp;lt;a href=&amp;quot;http://en.wikipedia.org/wiki/User:Cacycle/wikEd_help&amp;quot; target=&amp;quot;helpwindow&amp;quot;&amp;gt;wikEd help&amp;lt;/a&amp;gt;',&lt;br /&gt;
&lt;br /&gt;
// preview and changes buttons, top&lt;br /&gt;
			'wikEdClose alt':              'Close',&lt;br /&gt;
			'wikEdClose title':            'Close preview box',&lt;br /&gt;
			'wikEdScrollToPreview2 alt':   'Scroll to preview',&lt;br /&gt;
			'wikEdScrollToPreview2 title': 'Scroll to preview field',&lt;br /&gt;
			'wikEdScrollToEdit2 alt':      'Scroll to edit',&lt;br /&gt;
			'wikEdScrollToEdit2 title':    'Scroll to edit field',&lt;br /&gt;
&lt;br /&gt;
// preview and changes buttons, bottom&lt;br /&gt;
			'wikEdClose alt':              'Close',&lt;br /&gt;
			'wikEdClose title':            'Close preview box',&lt;br /&gt;
			'wikEdScrollToPreview3 alt':   'Scroll to preview',&lt;br /&gt;
			'wikEdScrollToPreview3 title': 'Scroll to preview field',&lt;br /&gt;
			'wikEdScrollToEdit3 alt':      'Scroll to edit',&lt;br /&gt;
			'wikEdScrollToEdit3 title':    'Scroll to edit field',&lt;br /&gt;
&lt;br /&gt;
// preview field&lt;br /&gt;
			'wikEdPreviewLoading':         '...',&lt;br /&gt;
&lt;br /&gt;
// formatting functions&lt;br /&gt;
			'image filename':              'filename',&lt;br /&gt;
			'image width':                 'width',&lt;br /&gt;
			'table caption':               'caption',&lt;br /&gt;
			'table heading':               'heading',&lt;br /&gt;
			'table cell':                  'cell',&lt;br /&gt;
			'redirect article link':       'article link',&lt;br /&gt;
&lt;br /&gt;
// fixing functions&lt;br /&gt;
			'External links':              'External links',&lt;br /&gt;
			'See also':                    'See also',&lt;br /&gt;
			'References':                  'References',&lt;br /&gt;
&lt;br /&gt;
// language specific wiki code&lt;br /&gt;
			'wikicode Image':              'Image',&lt;br /&gt;
			'wikicode Category':           'Category',&lt;br /&gt;
			'wikicode Template':           'Template',&lt;br /&gt;
			'wikEdReferencesSection':      '\n== References ==\n\n&amp;lt;references /&amp;gt;\n',&lt;br /&gt;
&lt;br /&gt;
// shortened button texts&lt;br /&gt;
			'shortenedPreview':            'Preview',&lt;br /&gt;
			'shortenedChanges':            'Changes',&lt;br /&gt;
&lt;br /&gt;
// follow link popup&lt;br /&gt;
			'followLink':                  '(Ctrl-click)',&lt;br /&gt;
&lt;br /&gt;
// error message popups&lt;br /&gt;
			'wikEdTableModeError':         'The table wikicode contains errors', // {{TABLE}}&lt;br /&gt;
&lt;br /&gt;
// auto updating&lt;br /&gt;
			'wikEdGreasemonkeyAutoUpdate': 'wikEd Update:\n\nA new version of the GreaseMonkey script &amp;quot;wikEd&amp;quot; is available.\n\n\nIt will be downloaded from:\n\n{updateURL}'&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// define built-in user interface texts&lt;br /&gt;
	WikEdInitText();&lt;br /&gt;
&lt;br /&gt;
// use local copies of images for testing (set to true in local copy of edit page), also defined in wikEdDiff.js&lt;br /&gt;
	if (typeof(wikEdUseLocalImages) == 'undefined') { window.wikEdUseLocalImages = false; }&lt;br /&gt;
&lt;br /&gt;
// path to local images for testing, also defined in wikEdDiff.js&lt;br /&gt;
	if (typeof(wikEdImagePathLocal) == 'undefined') { window.wikEdImagePathLocal = 'file:///D:/wikEd/images/'; }&lt;br /&gt;
&lt;br /&gt;
// path to images, also defined in wikEdDiff.js&lt;br /&gt;
	if (typeof(wikEdImagePath) == 'undefined') { window.wikEdImagePath = 'http://upload.wikimedia.org/wikipedia/commons/'; }&lt;br /&gt;
&lt;br /&gt;
// image filenames, also defined in wikEdDiff.js&lt;br /&gt;
	if (typeof(wikEdImage) == 'undefined') { window.wikEdImage = {}; }&lt;br /&gt;
&lt;br /&gt;
// WikedInitImage: define built-in image URLs&lt;br /&gt;
	window.WikedInitImage = function() {&lt;br /&gt;
		WikEdInitImage(wikEdImage, {&lt;br /&gt;
			'blank':               '5/51/WikEd_blank.png',&lt;br /&gt;
			'bold':                '5/59/WikEd_bold.png',&lt;br /&gt;
			'browser':             '0/07/WikEd_disabled.png',&lt;br /&gt;
			'bulletList':          '6/62/WikEd_bullet_list.png',&lt;br /&gt;
			'case':                'a/aa/WikEd_case.png',&lt;br /&gt;
			'caseSensitive':       '0/0d/WikEd_case_sensitive.png',&lt;br /&gt;
			'clearHistory':        'c/c8/WikEd_clear_history.png',&lt;br /&gt;
			'clearSummary':        '2/2c/WikEd_clear_summary.png',&lt;br /&gt;
			'close':               '9/97/WikEd_close.png',&lt;br /&gt;
			'closeToolbar':        '1/1d/WikEd_close_toolbar.png',&lt;br /&gt;
			'ctrl':                '1/10/WikEd_ctrl.png',&lt;br /&gt;
			'definitionList':      'f/f5/WikEd_definition_list.png',&lt;br /&gt;
			'diff':                'd/db/WikEd_diff.png',&lt;br /&gt;
			'disabled':            '0/07/WikEd_disabled.png',&lt;br /&gt;
			'dummy':               'c/c5/WikEd_dummy.png',&lt;br /&gt;
			'error':               '3/3e/WikEd_error.png',&lt;br /&gt;
			'findAhead':           '3/34/WikEd_find_ahead.png',&lt;br /&gt;
			'findAll':             '7/75/WikEd_find_all.png',&lt;br /&gt;
			'findNext':            'a/ad/WikEd_find_next.png',&lt;br /&gt;
			'findPrev':            'f/f5/WikEd_find_prev.png',&lt;br /&gt;
			'fixAll':              '8/86/WikEd_fix_all.png',&lt;br /&gt;
			'fixBasic':            '3/30/WikEd_fix_basic.png',&lt;br /&gt;
			'fixCaps':             '0/00/WikEd_fix_caps.png',&lt;br /&gt;
			'fixUnicode':          'd/d4/WikEd_fix_unicode.png',&lt;br /&gt;
			'fixChem':             'e/e7/WikEd_fix_chem.png',&lt;br /&gt;
			'fixDash':             'e/e5/WikEd_fix_dash.png',&lt;br /&gt;
			'fixHtml':             '0/05/WikEd_fix_html.png',&lt;br /&gt;
			'fixMath':             '3/3f/WikEd_fix_math.png',&lt;br /&gt;
			'fixPunct':            'd/db/WikEd_fix_punct.png',&lt;br /&gt;
			'fixRegExTypo':        '9/94/WikEd_fix_reg-ex-typo.png',&lt;br /&gt;
			'fixUnits':            '6/69/WikEd_fix_units.png',&lt;br /&gt;
			'textZoom':            '7/71/WikEd_font_size.png',&lt;br /&gt;
			'fullScreen':          'd/d3/WikEd_fullscreen.png',&lt;br /&gt;
			'getFind':             '9/96/WikEd_get_selection.png',&lt;br /&gt;
			'grip':                'a/ad/WikEd_grip.png',&lt;br /&gt;
			'heading':             '0/07/WikEd_heading.png',&lt;br /&gt;
			'highlightSyntax':     '6/67/WikEd_syntax.png',&lt;br /&gt;
			'image':               '3/37/WikEd_image.png',&lt;br /&gt;
			'indentList':          '7/7a/WikEd_indent_list.png',&lt;br /&gt;
			'italic':              'd/d4/WikEd_italic.png',&lt;br /&gt;
			'jumpNext':            '5/54/WikEd_jump_next.png',&lt;br /&gt;
			'logo':                '6/67/WikEd_logo.png',&lt;br /&gt;
			'nowiki':              '5/5a/WikEd_nowiki.png',&lt;br /&gt;
			'numberList':          '3/3b/WikEd_number_list.png',&lt;br /&gt;
			'jumpPrev':            'c/c7/WikEd_jump_prev.png',&lt;br /&gt;
			'preview':             '3/31/WikEd_preview.png',&lt;br /&gt;
			'redirect':            'f/fa/WikEd_redirect.png',&lt;br /&gt;
			'redo':                'd/d7/WikEd_redo.png',&lt;br /&gt;
			'ref':                 'b/ba/WikEd_ref.png',&lt;br /&gt;
			'refHide':             '0/0b/WikEd_ref_hide.png',&lt;br /&gt;
			'references':          '6/66/WikEd_references.png',&lt;br /&gt;
			'redoAll':             '2/2d/WikEd_redo_all.png',&lt;br /&gt;
			'regExp':              '6/6a/WikEd_regexp.png',&lt;br /&gt;
			'replaceAll':          '2/2a/WikEd_replace_all.png',&lt;br /&gt;
			'replaceNext':         'b/b0/WikEd_replace_next.png',&lt;br /&gt;
			'replacePrev':         'a/a1/WikEd_replace_prev.png',&lt;br /&gt;
			'scrollToEdit':        '1/13/WikEd_align_top.png',&lt;br /&gt;
			'scrollToPreview':     '3/37/WikEd_align_preview.png',&lt;br /&gt;
			'scrollToEditDown':    'a/a8/WikEd_align_down.png',&lt;br /&gt;
			'scrollToPreviewDown': '5/58/WikEd_align_preview_down.png',&lt;br /&gt;
			'sort':                '7/7c/WikEd_sort.png',&lt;br /&gt;
			'source':              '0/02/WikEd_source.png',&lt;br /&gt;
			'strikethrough':       '0/06/WikEd_strikethrough.png',&lt;br /&gt;
			'subscript':           '9/9e/WikEd_subscript.png',&lt;br /&gt;
			'superscript':         'b/bf/WikEd_superscript.png',&lt;br /&gt;
			'tab':                 'e/e7/WikEd_tab.png',&lt;br /&gt;
			'table':               'b/bd/WikEd_table.png',&lt;br /&gt;
			'tableMode':           '0/00/WikEd_table_edit.png', // {{TABLE}}&lt;br /&gt;
			'tableBG':             '8/8a/WikEd_unknown.png', // {{TABLE}}&lt;br /&gt;
			'textify':             'c/cd/WikEd_textify.png',&lt;br /&gt;
			'underline':           '2/21/WikEd_underline.png',&lt;br /&gt;
			'undo':                'e/e6/WikEd_undo.png',&lt;br /&gt;
			'undoAll':             '0/08/WikEd_undo_all.png',&lt;br /&gt;
			'unknown':             '8/8a/WikEd_unknown.png',&lt;br /&gt;
			'useWikEd':            '6/67/WikEd_logo.png',&lt;br /&gt;
			'using':               'e/e0/WikEd_using.png',&lt;br /&gt;
			'webLink':             '1/16/WikEd_weblink.png',&lt;br /&gt;
			'wikEdDiff':           'c/c6/WikEdDiff.png',&lt;br /&gt;
			'wikify':              '9/9f/WikEd_wikify.png',&lt;br /&gt;
			'wikiLink':            '2/21/WikEd_wikilink.png'&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// edit-frame css rules&lt;br /&gt;
	if (typeof(wikEdFrameCSS) == 'undefined') { window.wikEdFrameCSS = {}; }&lt;br /&gt;
&lt;br /&gt;
// WikedInitFrameCSS: define built-in edit frame css&lt;br /&gt;
	window.WikedInitFrameCSS = function() {&lt;br /&gt;
		WikEdInitObject(wikEdFrameCSS, {&lt;br /&gt;
&lt;br /&gt;
// frame body&lt;br /&gt;
			'.wikedFrameBody':    'background: #FFFFFF; margin: 0px; padding: 0.2em; overflow: -moz-scrollbars-vertical; overflow-x: auto; font-family: monospace;',&lt;br /&gt;
&lt;br /&gt;
// syntax highlighting&lt;br /&gt;
			'.wikEdBlock':        'background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdBlockTag':     'color: #0000e0;',&lt;br /&gt;
			'.wikEdInlineTag':    'color: #0000e0;',&lt;br /&gt;
			'.wikEdUnknown':      'background-image: url({wikEdUnknown});',&lt;br /&gt;
			'.wikEdSubscript':    'position: relative; top: 0.3em;',&lt;br /&gt;
			'.wikEdSuperscript':  'position: relative; top: -0.3em;',&lt;br /&gt;
			'.wikEdBold':         'font-weight: bold;',&lt;br /&gt;
			'.wikEdRef':          'color: #808080; background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdRefHide':      'color: #c0c0c0;',&lt;br /&gt;
			'.wikEdComment':      'background-color: #fff0d0;',&lt;br /&gt;
			'.wikEdDel':          'text-decoration: line-through;',&lt;br /&gt;
			'.wikEdIns':          'text-decoration: underline;',&lt;br /&gt;
			'.wikEdItalic':       'font-style: italic;',&lt;br /&gt;
			'.wikEdNowiki':       'background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdRGB':          '',&lt;br /&gt;
&lt;br /&gt;
// horizontal rule&lt;br /&gt;
			'.wikEdHR':           'background-color: #d0d0d0;',&lt;br /&gt;
			'.wikEdHRInline':     'background-color: #d0d0d0;',&lt;br /&gt;
&lt;br /&gt;
// wiki code&lt;br /&gt;
			'.wikEdWiki':         'color: #0000e0;',&lt;br /&gt;
			'.wikEdWikiRedir':    'color: #0000e0; background-color: #ffffff; font-weight: bold;',&lt;br /&gt;
			'.wikEdMagic':        'color: #0000e0; background-color: #e0e0e0; font-weight: bold;',&lt;br /&gt;
&lt;br /&gt;
// headings&lt;br /&gt;
			'.wikEdHeading':      'background-color: #e0e0e0; font-weight: bold;',&lt;br /&gt;
			'.wikEdHeadingWp':    'background-color: #d8e0ff; font-weight: bold;',&lt;br /&gt;
&lt;br /&gt;
// tables&lt;br /&gt;
			'.wikEdTableBlock':   'background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdTableLine':    'background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdTableTag':     'background-color: #e8e8e8; color: #0000e0;',&lt;br /&gt;
&lt;br /&gt;
// list&lt;br /&gt;
			'.wikEdListBlock':    'background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdListLine':     'background-color: #f0f0f0',&lt;br /&gt;
			'.wikEdListTag':      'background-color: #e8e8e8; color: #0000e0; font-weight: bold;',&lt;br /&gt;
&lt;br /&gt;
// space-pre&lt;br /&gt;
			'.wikEdSpaceBlock':   'background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdSpaceLine':    'background-color: #e8e8e8;',&lt;br /&gt;
			'.wikEdSpaceTag':     'color: #0000e0; font-weight: bold;',&lt;br /&gt;
&lt;br /&gt;
// wiki links, images, categories, templates&lt;br /&gt;
			'.wikEdLinkTag':      'color: #0000e0;',&lt;br /&gt;
			'.wikEdLink':         '',&lt;br /&gt;
			'.wikEdImage':        'background-color: #d5ffaa;',&lt;br /&gt;
			'.wikEdCat':          'background-color: #d0d8ff;',&lt;br /&gt;
			'.wikEdTemplTag':     'color: #0000e0;',&lt;br /&gt;
			'.wikEdTempl':        'background-color: #e0e8ff;',&lt;br /&gt;
&lt;br /&gt;
// interlanguage&lt;br /&gt;
			'.wikEdInter':        'color: #000000;',&lt;br /&gt;
			'.wikEdLinkInter':    'background-color: #c8c8ff;',&lt;br /&gt;
			'.wikEdImageInter':   'background-color: #c8c8ff;',&lt;br /&gt;
			'.wikEdCatInter':     'background-color: #c8c8ff;',&lt;br /&gt;
			'.wikEdTemplInter':   'background-color: #c8c8ff;',&lt;br /&gt;
&lt;br /&gt;
// name&lt;br /&gt;
			'.wikEdLinkName':     'color: #f00000; font-weight: bold;',&lt;br /&gt;
			'.wikEdImageName':    'color: #000000; font-weight: bold;',&lt;br /&gt;
			'.wikEdCatName':      'color: #f00000; font-weight: bold;',&lt;br /&gt;
			'.wikEdTemplName':    'color: #f00000; font-weight: bold;',&lt;br /&gt;
			'.wikEdURLLink':      'color: #f00000; font-weight: bold;',&lt;br /&gt;
&lt;br /&gt;
// links&lt;br /&gt;
			'.wikEdHighlightLink': 'text-decoration: none; color: #909090;',&lt;br /&gt;
			':hover.wikEdHighlightLink': 'text-decoration: underline; color: #909090;',&lt;br /&gt;
&lt;br /&gt;
// pasted html&lt;br /&gt;
			'.wikEdPastedHtml':   'background-color: #ffc080;',&lt;br /&gt;
&lt;br /&gt;
// text and parameters&lt;br /&gt;
			'.wikEdLinkText':     'color: #000000; font-weight: bold;',&lt;br /&gt;
			'.wikEdImageParam':   'color: #0000e0;',&lt;br /&gt;
			'.wikEdImageCaption': 'color: #000000;',&lt;br /&gt;
			'.wikEdCatText':      'color: #000000;',&lt;br /&gt;
			'.wikEdTemplText':    'color: #000000;',&lt;br /&gt;
			'.wikEdURLText':      'color: #000000; font-weight: bold;',&lt;br /&gt;
&lt;br /&gt;
// table edit // {{TABLE}}&lt;br /&gt;
			'.wikEdTableEdit':    'border: solid black; border-width: 1px 1px 0 0; background-color: red; background-image: url(\'' + wikEdImage['tableBG'] +  '\'); border-collapse: separate; border-spacing: 0;',&lt;br /&gt;
			'.wikEdTableEdit td': 'border: solid black; border-width: 0 0 1px 1px; background-color: white;',&lt;br /&gt;
			'.wikEdTableEdit th': 'border: solid black; border-width: 0 0 1px 1px; background-color: lightgrey; font-weight: bold;',&lt;br /&gt;
			'.wikEdTableEdit tr': 'background-color: lightgrey; font-weight: bold;',&lt;br /&gt;
&lt;br /&gt;
// insert wikicode here&lt;br /&gt;
			'.wikEdInsertHere':   'background-color: orange; font-style: italic;',&lt;br /&gt;
&lt;br /&gt;
// colors&lt;br /&gt;
			'.wikEdColorsLight':  'color: black;',&lt;br /&gt;
			'.wikEdColorsDark':   'color: white;',&lt;br /&gt;
&lt;br /&gt;
// invisibles, control chars, and strange spaces&lt;br /&gt;
			'.wikEdTab':          'white-space: pre; background-image: url({wikEdTab}); background-position: bottom right; background-repeat: no-repeat;',&lt;br /&gt;
			'.wikEdTabPlain':     'white-space: pre;',&lt;br /&gt;
			'.wikEdCtrl':         'white-space: pre; background-image: url({wikEdCtrl}); background-position: center center; background-repeat: no-repeat; margin: 0 1px;',&lt;br /&gt;
			'.wikEdCtrl:before':  'content: \'\u00a0\'',&lt;br /&gt;
			'.wikEdBlank':        'white-space: -moz-pre-wrap; background-image: url({wikEdBlank}); background-position: bottom left; background-repeat: no-repeat; margin: 0 1px; padding: 0 1px;'&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// main window css rules&lt;br /&gt;
	if (typeof(wikEdMainCSS) == 'undefined') { window.wikEdMainCSS = {}; }&lt;br /&gt;
&lt;br /&gt;
// WikedInitMainCSS: define built-in main window css&lt;br /&gt;
	window.WikedInitMainCSS = function() {&lt;br /&gt;
		WikEdInitObject(wikEdMainCSS, {&lt;br /&gt;
&lt;br /&gt;
// logo&lt;br /&gt;
			'.wikEdLogo':                  'margin-left: 0.5em;',&lt;br /&gt;
			'.wikEdLogoFallBack':          'float: right;',&lt;br /&gt;
&lt;br /&gt;
// combo input box&lt;br /&gt;
			'.wikEdCombo':                 'font-size: smaller; padding-left: 0.1em; padding-right: 0.1em; margin: 0 0.1em 0 0.1em; height: 1.6em; vertical-align: bottom;',&lt;br /&gt;
&lt;br /&gt;
// wikEd button areas&lt;br /&gt;
&lt;br /&gt;
// button bar margins&lt;br /&gt;
			'.wikEdButtonBarFormat':       'margin: 0 8px 3px 0; float: left;',&lt;br /&gt;
			'.wikEdButtonBarCustom1':      'margin: 0 8px 3px 0; float: left;',&lt;br /&gt;
			'.wikEdButtonBarFind':         'margin: 0 8px 3px 0; float: left;',&lt;br /&gt;
			'.wikEdButtonBarFix':          'margin: 0 8px 3px 0; float: left;',&lt;br /&gt;
			'.wikEdButtonBarCustom2':      'margin: 0 8px 3px 0; float: left;',&lt;br /&gt;
			'.wikEdButtonBarControl':      'margin: 0 0 3px 0; float: right;',&lt;br /&gt;
			'.wikEdButtonBarPreview':      'margin: 0 0 0.15em 0.6em; float: right;',&lt;br /&gt;
			'.wikEdButtonBarPreviewFull':  'margin: -0.2em 0 0 0.6em; float: right;',&lt;br /&gt;
			'.wikEdButtonBarPreview2':     'margin: 0.2em 0 0.4em 0; float: right;',&lt;br /&gt;
			'.wikEdButtonBarJump':         'margin: 0 0 0 0.6em; float: right;',&lt;br /&gt;
&lt;br /&gt;
// button bar inner wrapper: border (hidden: invisible)&lt;br /&gt;
			'.wikedButtonBarInnerWrapperVisible':   'border: 1px solid; border-color: #e0e0e0 #808080 #808080 #e0e0e0;',&lt;br /&gt;
			'.wikedButtonBarInnerWrapperHidden':    '',&lt;br /&gt;
&lt;br /&gt;
// button bar grip wrapper: invisible (hidden: border)&lt;br /&gt;
			'.wikedButtonBarGripWrapperVisible':    'float: left;',&lt;br /&gt;
			'.wikedButtonBarGripWrapperHidden':     'float: left; border: 1px solid; border-color: #e0e0e0 #808080 #808080 #e0e0e0;',&lt;br /&gt;
&lt;br /&gt;
// button bar buttons wrapper: invisible (hidden: border)&lt;br /&gt;
			'.wikedButtonBarButtonsWrapperVisible': 'float: left; background: #d4d0cc; ',&lt;br /&gt;
			'.wikedButtonBarButtonsWrapperHidden':  'float: left; background: #d4d0cc; border: 1px solid; border-color: #e0e0e0 #808080 #808080 #e0e0e0; z-index: 4;',&lt;br /&gt;
&lt;br /&gt;
// button bar grip&lt;br /&gt;
			'.wikedButtonBarGrip':         'background: #d4d0cc; padding: 0; background-image: url({wikEdGrip}); background-repeat: repeat-y; cursor: pointer;',&lt;br /&gt;
&lt;br /&gt;
// button bar buttons&lt;br /&gt;
			'.wikEdButtonsFormat':         'background: #d4d0cc; padding: 2px 2px 0 0px;',&lt;br /&gt;
			'.wikEdButtonsCustom1':        'background: #d4d0cc; padding: 2px 2px 0 0px;',&lt;br /&gt;
			'.wikEdButtonsFind':           'background: #d4d0cc; padding: 0px 2px 0 0px;',&lt;br /&gt;
			'.wikEdButtonsFix':            'background: #d4d0cc; padding: 2px 2px 0 0px;',&lt;br /&gt;
			'.wikEdButtonsCustom2':        'background: #d4d0cc; padding: 2px 2px 0 0px;',&lt;br /&gt;
			'.wikEdButtonsControl':        'background: #d4d0cc; padding: 2px 2px 0 1px;',&lt;br /&gt;
&lt;br /&gt;
			'.wikEdButtonsPreview':        'background: #d4d0cc; padding: 2px; border: 1px solid; border-color: #e0e0e0 #808080 #808080 #e0e0e0;',&lt;br /&gt;
			'.wikEdButtonsPreviewFull':    'background: #d4d0cc; padding: 2px; border: 1px solid; border-color: #e0e0e0 #808080 #808080 #e0e0e0;',&lt;br /&gt;
			'.wikEdButtonsPreview2':       'background: #d4d0cc; padding: 2px; border: 1px solid; border-color: #e0e0e0 #808080 #808080 #e0e0e0;',&lt;br /&gt;
			'.wikEdButtonsJump':           'background: #d4d0cc; padding: 2px; border: 1px solid; border-color: #e0e0e0 #808080 #808080 #e0e0e0;',&lt;br /&gt;
&lt;br /&gt;
// wikEd buttons (!important for devmo skin)&lt;br /&gt;
			'.wikEdButton':                'vertical-align: text-top; font-size: small; text-decoration: underline; margin: 1px 2px; padding: 0; background: #d4d0cc; border: 1px #d4d0cc solid !important; cursor: pointer;',&lt;br /&gt;
			'.wikEdButton:hover':          'background: #e4e0dd; border: 1px outset !important; cursor: pointer;',&lt;br /&gt;
			'.wikEdButton:active':         'background: #e4e0dc; border: 1px inset !important;  cursor: pointer;',&lt;br /&gt;
			'.wikEdButtonSolo':            'vertical-align: text-top; font-size: small; text-decoration: underline; margin: 1px 2px; padding: 0; background: #d4d0cc; border: 1px #d4d0cc solid !important; cursor: pointer;',&lt;br /&gt;
			'.wikEdButtonSolo:hover':      'background: #e4e0dd; border: 1px outset !important; cursor: pointer;',&lt;br /&gt;
			'.wikEdButtonChecked':         'vertical-align: text-top; font-size: small; text-decoration: none; margin: 1px 2px; padding: 0; background: #ccc8c3; border: 1px solid !important; border-color: black white white black !important; cursor: pointer;',&lt;br /&gt;
			'.wikEdButtonUnchecked':       'vertical-align: text-top; font-size: small; text-decoration: none; margin: 1px 2px; padding: 0; background: #ddd8d3; border: 1px solid !important; border-color: white black black white !important; cursor: pointer;',&lt;br /&gt;
			'.wikEdButtonPressed':         'vertical-align: text-top; font-size: small; text-decoration: none; margin: 1px 2px; padding: 0; background: #ccc8c3; border: 1px solid !important; border-color: black white white black !important; cursor: wait;',&lt;br /&gt;
			'.wikEdButtonInactive':        'vertical-align: text-top; font-size: small; text-decoration: underline; margin: 1px 2px; padding: 0; background: #c0c0c0; border: 1px #b0b0b0 solid !important; cursor: not-allowed',&lt;br /&gt;
			'.wikEdLocalPreview':          'vertical-align: top; margin: 0 0.33em 0 0.15em; padding: 0;',&lt;br /&gt;
			'.wikEdLocalDiff':             'vertical-align: top; margin: 0 0.33em 0 -0.18em; padding: 0;',&lt;br /&gt;
			'.wikEdButtonDummy':           'vertical-align: text-top; margin: 1px 2px; padding: 1px; background: #d4d0cc;',&lt;br /&gt;
&lt;br /&gt;
// preview box&lt;br /&gt;
			'.wikEdPreviewBoxOuter':       'clear: both; margin: 0; border-width: 1px; border-style: solid; border-color: #808080 #d0d0d0 #d0d0d0 #808080;',&lt;br /&gt;
			'.wikEdPreviewBox':            'background-color: #faf8f6; padding: 5px; border-width: 1px; border-style: solid; border-color: #404040 #ffffff #ffffff #404040;',&lt;br /&gt;
&lt;br /&gt;
// find field&lt;br /&gt;
			'.wikEdFindComboInput':        'position: relative; padding: 0; margin: 0 0.2em; white-space: nowrap; top: 0; vertical-align: bottom;',&lt;br /&gt;
			'#wikEdFindText':              'vertical-align: 0%; font-family: monospace; padding: 0; margin: 0; position: absolute; z-index: 2; -moz-box-sizing: content-box; left: 0; top: 1px; height: 14px; width: 170px;',&lt;br /&gt;
			'#wikEdFindSelect':            'vertical-align: 0%; font-family: monospace; padding: 0; margin: 0; position: relative; z-index: 1; -moz-box-sizing: content-box; left: 0; top: 0px; height: 18px; border: none;',&lt;br /&gt;
&lt;br /&gt;
// replace field&lt;br /&gt;
			'.wikEdReplaceComboInput':     'position: relative; padding: 0; margin: 0 0.2em; white-space: nowrap; top: 0; vertical-align: bottom;',&lt;br /&gt;
			'#wikEdReplaceText':           'vertical-align: 0%; font-family: monospace; padding: 0; margin: 0; position: absolute; z-index: 2; -moz-box-sizing: content-box; left: 0; top: 1px; height: 14px; width: 170px;',&lt;br /&gt;
			'#wikEdReplaceSelect':         'vertical-align: 0%; font-family: monospace; padding: 0; margin: 0; position: relative; z-index: 1; -moz-box-sizing: content-box; left: 0; top: 0px; height: 18px; border: none; ',&lt;br /&gt;
&lt;br /&gt;
// summary field&lt;br /&gt;
			'.wikEdSummaryComboInput':     'position: relative; padding: 0; margin: 0 0 0 0.1em; white-space: nowrap; top: 0; vertical-align: text-bottom;',&lt;br /&gt;
			'.wikEdSummaryText':           'vertical-align: 0%; padding: 0; margin: 0; position: absolute; z-index: 2; -moz-box-sizing: content-box; left: 0; top: 0px; height: 18px; width: auto;',&lt;br /&gt;
			'.wikEdSummarySelect':         'vertical-align: 0%; padding: 0; margin: 0; position: relative; z-index: 1; -moz-box-sizing: content-box; left: 0; top: 1px; height: 21px; border: none;',&lt;br /&gt;
&lt;br /&gt;
// space around submit buttons&lt;br /&gt;
			'.editButtons':                'margin: 0;',&lt;br /&gt;
&lt;br /&gt;
// frame&lt;br /&gt;
			'.wikEdFrameOuter':            'width: 100%; margin: 0; border-width: 1px; border-style: solid; border-color: #808080 #d0d0d0 #d0d0d0 #808080;',&lt;br /&gt;
			'.wikEdFrameInner':            'padding: 0; border-width: 1px; border-style: solid; border-color: #404040 #ffffff #ffffff #404040;',&lt;br /&gt;
			'.wikEdFrame':                 'width: 100%; padding: 0; margin: 0; border: none;',&lt;br /&gt;
&lt;br /&gt;
// summary&lt;br /&gt;
			'.wikEdSummaryWrapper':        'margin: 0 0 0.4em 0; width: 100%',&lt;br /&gt;
			'.wikEdSummaryWrapperTop':     'margin: 0.1em 0 0.4em 0; width: 100%',&lt;br /&gt;
			'#wpSummaryLabel':             'margin: 0 0.2em 0 0;',&lt;br /&gt;
			'.editOptions':                'position: relative; top: 0.1em;',&lt;br /&gt;
			'.wikEdClearSummaryForm':      'display: inline;',&lt;br /&gt;
			'.wikEdClearSummary':          'vertical-align: middle; margin: 0 0.1em 0 0.5em; padding: 0 0 0.2em 0;',&lt;br /&gt;
&lt;br /&gt;
// input wrapper&lt;br /&gt;
			'.wikEdInputWrapper':          'z-index: 100; clear: both; margin-top: 0.5em;',&lt;br /&gt;
			'.wikEdInputWrapperFull':      'position: fixed; top: 0; left: 0; right: 0; padding: 4px; background: white; z-index: 100;',&lt;br /&gt;
&lt;br /&gt;
// other wrappers&lt;br /&gt;
			'.wikEdToolbarWrapper':        'margin: 0 0 0.25em 0;',&lt;br /&gt;
			'.wikEdCaptchaWrapper':        '',&lt;br /&gt;
			'.wikEdDebugWrapper':          'margin: 0 0 0.35em 0;',&lt;br /&gt;
			'.wikEdTextareaWrapper':       'margin: 0 0 0.35em 0;',&lt;br /&gt;
			'.wikEdFrameWrapper':          'margin: 0 0 0.35em 0;',&lt;br /&gt;
			'.wikEdConsoleWrapper':        '',&lt;br /&gt;
			'.wikEdButtonsWrapper':        '',&lt;br /&gt;
			'.wikEdSummaryInputWrapper':   'display: inline; white-space: nowrap;',&lt;br /&gt;
			'.wikEdSummaryOptions':        'display: inline;',&lt;br /&gt;
			'.wikEdSubmitWrapper':         ';',&lt;br /&gt;
			'.wikEdSubmitButtonsWrapper':  '',&lt;br /&gt;
			'.wikEdLocalPrevWrapper':      'margin: 0.5em 0 0 0;',&lt;br /&gt;
			'.wikEdInsertWrapper':         '',&lt;br /&gt;
&lt;br /&gt;
// various&lt;br /&gt;
			'.wikEdEditOptions':           'display: inline; vertical-align: baseline; margin-right: 0.75em; white-space: nowrap;',&lt;br /&gt;
			'.wikEdEditHelp':              'vertical-align: baseline; margin-right: 0.5em; white-space: nowrap;',&lt;br /&gt;
			'#editpage-specialchars':      'clear: both;'&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// buttons (id, class, popup title, image src, width, height, alt text, click code)&lt;br /&gt;
	if (typeof(wikEdButton) == 'undefined') { window.wikEdButton = {}; }&lt;br /&gt;
&lt;br /&gt;
// WikedInitButton: define built-in buttons (id, class, popup title, image src, width, height, alt text, click handler code were obj is the button element)&lt;br /&gt;
	window.WikedInitButton = function() {&lt;br /&gt;
		WikEdInitObject(wikEdButton, {&lt;br /&gt;
&lt;br /&gt;
// workaround for mozilla 3.0 bug 441087:  objId = obj.id; eventShiftKey = event.shiftKey;&lt;br /&gt;
&lt;br /&gt;
// format top&lt;br /&gt;
			 1: ['wikEdUndo',             'wikEdButtonInactive',  wikEdText['wikEdUndo title'],             wikEdImage['undo'],                '16', '16', wikEdText['wikEdUndo alt'],             'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 2: ['wikEdRedo',             'wikEdButtonInactive',  wikEdText['wikEdRedo title'],             wikEdImage['redo'],                '16', '16', wikEdText['wikEdRedo alt'],             'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 3: ['wikEdBold',             'wikEdButton',          wikEdText['wikEdBold title'],             wikEdImage['bold'],                '16', '16', wikEdText['wikEdBold alt'],             'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 4: ['wikEdItalic',           'wikEdButton',          wikEdText['wikEdItalic title'],           wikEdImage['italic'],              '16', '16', wikEdText['wikEdItalic alt'],           'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 5: ['wikEdUnderline',        'wikEdButton',          wikEdText['wikEdUnderline title'],        wikEdImage['underline'],           '16', '16', wikEdText['wikEdUnderline alt'],        'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 6: ['wikEdStrikethrough',    'wikEdButton',          wikEdText['wikEdStrikethrough title'],    wikEdImage['strikethrough'],       '16', '16', wikEdText['wikEdStrikethrough alt'],    'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 7: ['wikEdNowiki',           'wikEdButton',          wikEdText['wikEdNowiki title'],           wikEdImage['nowiki'],              '16', '16', wikEdText['wikEdNowiki alt'],           'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 8: ['wikEdSuperscript',      'wikEdButton',          wikEdText['wikEdSuperscript title'],      wikEdImage['superscript'],         '16', '16', wikEdText['wikEdSuperscript alt'],      'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			 9: ['wikEdSubscript',        'wikEdButton',          wikEdText['wikEdSubscript title'],        wikEdImage['subscript'],           '16', '16', wikEdText['wikEdSubscript alt'],        'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			10: ['wikEdRef',              'wikEdButton',          wikEdText['wikEdRef title'],              wikEdImage['ref'],                 '16', '16', wikEdText['wikEdRef alt'],              'if (!eventShiftKey) { javascript:WikEdEditButton(obj, \'wikEdRef\'); } else { javascript:WikEdEditButton(obj, \'wikEdRefNamed\'); }' ],&lt;br /&gt;
			12: ['wikEdCase',             'wikEdButton',          wikEdText['wikEdCase title'],             wikEdImage['case'],                '16', '16', wikEdText['wikEdCase alt'],             'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			80: ['wikEdSort',             'wikEdButton',          wikEdText['wikEdSort title'],             wikEdImage['sort'],                '16', '16', wikEdText['wikEdSort alt'],             'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			25: ['wikEdRedirect',         'wikEdButton',          wikEdText['wikEdRedirect title'],         wikEdImage['redirect'],            '16', '16', wikEdText['wikEdRedirect alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			13: ['wikEdUndoAll',          'wikEdButton',          wikEdText['wikEdUndoAll title'],          wikEdImage['undoAll'],             '16', '16', wikEdText['wikEdUndoAll alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			14: ['wikEdRedoAll',          'wikEdButtonInactive',  wikEdText['wikEdRedoAll title'],          wikEdImage['redoAll'],             '16', '16', wikEdText['wikEdRedoAll alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// format bottom&lt;br /&gt;
			15: ['wikEdWikiLink',         'wikEdButton',          wikEdText['wikEdWikiLink title'],         wikEdImage['wikiLink'],            '16', '16', wikEdText['wikEdWikiLink alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			16: ['wikEdWebLink',          'wikEdButton',          wikEdText['wikEdWebLink title'],          wikEdImage['webLink'],             '16', '16', wikEdText['wikEdWebLink alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			17: ['wikEdHeading',          'wikEdButton',          wikEdText['wikEdHeading title'],          wikEdImage['heading'],             '16', '16', wikEdText['wikEdHeading alt'],          'if (!eventShiftKey) { javascript:WikEdEditButton(obj, \'wikEdIncreaseHeading\'); } else { javascript:WikEdEditButton(obj, \'wikEdDecreaseHeading\'); }' ],&lt;br /&gt;
			19: ['wikEdBulletList',       'wikEdButton',          wikEdText['wikEdBulletList title'],       wikEdImage['bulletList'],          '16', '16', wikEdText['wikEdBulletList alt'],       'if (!eventShiftKey) { javascript:WikEdEditButton(obj, \'wikEdIncreaseBulletList\'); } else { javascript:WikEdEditButton(obj, \'wikEdDecreaseBulletList\'); }' ],&lt;br /&gt;
			20: ['wikEdNumberList',       'wikEdButton',          wikEdText['wikEdNumberList title'],       wikEdImage['numberList'],          '16', '16', wikEdText['wikEdNumberList alt'],       'if (!eventShiftKey) { javascript:WikEdEditButton(obj, \'wikEdIncreaseNumberList\'); } else { javascript:WikEdEditButton(obj, \'wikEdDecreaseNumberList\'); }' ],&lt;br /&gt;
			21: ['wikEdIndentList',       'wikEdButton',          wikEdText['wikEdIndentList title'],       wikEdImage['indentList'],          '16', '16', wikEdText['wikEdIndentList alt'],       'if (!eventShiftKey) { javascript:WikEdEditButton(obj, \'wikEdIncreaseIndentList\'); } else { javascript:WikEdEditButton(obj, \'wikEdDecreaseIndentList\'); }' ],&lt;br /&gt;
			22: ['wikEdDefinitionList',   'wikEdButton',          wikEdText['wikEdDefinitionList title'],   wikEdImage['definitionList'],      '16', '16', wikEdText['wikEdDefinitionList alt'],   'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			23: ['wikEdImage',            'wikEdButton',          wikEdText['wikEdImage title'],            wikEdImage['image'],               '16', '16', wikEdText['wikEdImage alt'],            'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			24: ['wikEdTable',            'wikEdButton',          wikEdText['wikEdTable title'],            wikEdImage['table'],               '16', '16', wikEdText['wikEdTable alt'],            'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			11: ['wikEdReferences',       'wikEdButton',          wikEdText['wikEdReferences title'],       wikEdImage['references'],          '16', '16', wikEdText['wikEdReferences alt'],       'if (!eventShiftKey) { javascript:WikEdEditButton(obj, objId); } else { javascript:WikEdEditButton(obj, \'wikEdReferencesSection\'); }' ],&lt;br /&gt;
			26: ['wikEdWikify',           'wikEdButton',          wikEdText['wikEdWikify title'],           wikEdImage['wikify'],              '16', '16', wikEdText['wikEdWikify alt'],           'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			27: ['wikEdTextify',          'wikEdButton',          wikEdText['wikEdTextify title'],          wikEdImage['textify'],             '16', '16', wikEdText['wikEdTextify alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// control top&lt;br /&gt;
			77: ['wikEdRefHide',          'wikEdButtonUnchecked', wikEdText['wikEdRefHide title'],          wikEdImage['refHide'],             '16', '16', wikEdText['wikEdRefHide alt'],          'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			29: ['wikEdTextZoom',         'wikEdButton',          wikEdText['wikEdTextZoom title'],         wikEdImage['textZoom'],            '16', '16', wikEdText['wikEdTextZoom alt'],         'if (!eventShiftKey) { javascript:WikEdButton(obj, \'wikEdTextZoomDown\'); } else { javascript:WikEdButton(obj, \'wikEdTextZoomUp\'); }' ],&lt;br /&gt;
			30: ['wikEdClearHistory',     'wikEdButton',          wikEdText['wikEdClearHistory title'],     wikEdImage['clearHistory'],        '16', '16', wikEdText['wikEdClearHistory alt'],     'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
			31: ['wikEdScrollToPreview',  'wikEdButton',          wikEdText['wikEdScrollToPreview title'],  wikEdImage['scrollToPreviewDown'], '16', '16', wikEdText['wikEdScrollToPreview alt'],  'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
			32: ['wikEdScrollToEdit',     'wikEdButton',          wikEdText['wikEdScrollToEdit title'],     wikEdImage['scrollToEditDown'],    '16', '16', wikEdText['wikEdScrollToEdit alt'],     'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// control bottom&lt;br /&gt;
			33: ['wikEdUseWikEd',         'wikEdButtonChecked',   wikEdText['wikEdUseWikEd title'],         wikEdImage['useWikEd'],            '16', '16', wikEdText['wikEdUseWikEd alt'],         'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			34: ['wikEdHighlightSyntax',  'wikEdButtonUnchecked', wikEdText['wikEdHighlightSyntax title'],  wikEdImage['highlightSyntax'],     '16', '16', wikEdText['wikEdHighlightSyntax alt'],  'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			35: ['wikEdSource',           'wikEdButton',          wikEdText['wikEdSource title'],           wikEdImage['source'],              '16', '16', wikEdText['wikEdSource alt'],           'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			75: ['wikEdCloseToolbar',     'wikEdButtonUnchecked', wikEdText['wikEdCloseToolbar title'],     wikEdImage['closeToolbar'],        '16', '16', wikEdText['wikEdCloseToolbar alt'],     'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			36: ['wikEdUsing',            'wikEdButtonUnchecked', wikEdText['wikEdUsing title'],            wikEdImage['using'],               '16', '16', wikEdText['wikEdUsing alt'],            'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			37: ['wikEdFullScreen',       'wikEdButtonUnchecked', wikEdText['wikEdFullScreen title'],       wikEdImage['fullScreen'],          '16', '16', wikEdText['wikEdFullScreen alt'],       'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
// {{TABLE}}&lt;br /&gt;
			79: ['wikEdTableMode',        'wikEdButtonUnchecked', wikEdText['wikEdTableMode title'],        wikEdImage['tableMode'],           '16', '16', wikEdText['wikEdTableMode alt'],        'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
&lt;br /&gt;
// find top&lt;br /&gt;
			39: ['wikEdFindAll',          'wikEdButton',          wikEdText['wikEdFindAll title'],          wikEdImage['findAll'],             '16', '16', wikEdText['wikEdFindAll alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			40: ['wikEdFindPrev',         'wikEdButton',          wikEdText['wikEdFindPrev title'],         wikEdImage['findPrev'],            '16', '16', wikEdText['wikEdFindPrev alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			41: ['wikEdFindNext',         'wikEdButton',          wikEdText['wikEdFindNext title'],         wikEdImage['findNext'],            '16', '16', wikEdText['wikEdFindNext alt'],         'if (eventShiftKey) { javascript:WikEdEditButton(obj, objId, \'shift\'); } else { javascript:WikEdEditButton(obj, objId); }' ],&lt;br /&gt;
			43: ['wikEdJumpPrev',         'wikEdButton',          wikEdText['wikEdJumpPrev title'],         wikEdImage['jumpPrev'],            '16', '16', wikEdText['wikEdJumpPrev alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			44: ['wikEdJumpNext',         'wikEdButton',          wikEdText['wikEdJumpNext title'],         wikEdImage['jumpNext'],            '16', '16', wikEdText['wikEdJumpNext alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// find bottom&lt;br /&gt;
			46: ['wikEdReplaceAll',       'wikEdButton',          wikEdText['wikEdReplaceAll title'],       wikEdImage['replaceAll'],          '16', '16', wikEdText['wikEdReplaceAll alt'],       'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			47: ['wikEdReplacePrev',      'wikEdButton',          wikEdText['wikEdReplacePrev title'],      wikEdImage['replacePrev'],         '16', '16', wikEdText['wikEdReplacePrev alt'],      'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			48: ['wikEdReplaceNext',      'wikEdButton',          wikEdText['wikEdReplaceNext title'],      wikEdImage['replaceNext'],         '16', '16', wikEdText['wikEdReplaceNext alt'],      'if (eventShiftKey) { javascript:WikEdEditButton(obj, objId, \'shift\'); } else { javascript:WikEdEditButton(obj, objId); }' ],&lt;br /&gt;
			49: ['wikEdCaseSensitive',    'wikEdButtonUnchecked', wikEdText['wikEdCaseSensitive title'],    wikEdImage['caseSensitive'],       '16', '16', wikEdText['wikEdCaseSensitive alt'],    'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			50: ['wikEdRegExp',           'wikEdButtonUnchecked', wikEdText['wikEdRegExp title'],           wikEdImage['regExp'],              '16', '16', wikEdText['wikEdRegExp alt'],           'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			51: ['wikEdFindAhead',        'wikEdButtonUnchecked', wikEdText['wikEdFindAhead title'],        wikEdImage['findAhead'],           '16', '16', wikEdText['wikEdFindAhead alt'],        'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
&lt;br /&gt;
// fix top&lt;br /&gt;
			52: ['wikEdFixBasic',         'wikEdButton',          wikEdText['wikEdFixBasic title'],         wikEdImage['fixBasic'],            '16', '16', wikEdText['wikEdFixBasic alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			53: ['wikEdFixHtml',          'wikEdButton',          wikEdText['wikEdFixHtml title'],          wikEdImage['fixHtml'],             '16', '16', wikEdText['wikEdFixHtml alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			54: ['wikEdFixCaps',          'wikEdButton',          wikEdText['wikEdFixCaps title'],          wikEdImage['fixCaps'],             '16', '16', wikEdText['wikEdFixCaps alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			55: ['wikEdfixUnicode',       'wikEdButton',          wikEdText['wikEdfixUnicode title'],       wikEdImage['fixUnicode'],          '16', '16', wikEdText['wikEdfixUnicode alt'],       'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			56: ['wikEdFixAll',           'wikEdButton',          wikEdText['wikEdFixAll title'],           wikEdImage['fixAll'],              '16', '16', wikEdText['wikEdFixAll alt'],           'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			57: ['wikEdFixRegExTypo',     'wikEdButton',          wikEdText['wikEdFixRegExTypo title'],     wikEdImage['fixRegExTypo'],        '16', '16', wikEdText['wikEdFixRegExTypo alt'],     'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// fix bottom&lt;br /&gt;
			58: ['wikEdFixDashes',        'wikEdButton',          wikEdText['wikEdFixDashes title'],        wikEdImage['fixDash'],             '16', '16', wikEdText['wikEdFixDashes alt'],        'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			59: ['wikEdFixPunct',         'wikEdButton',          wikEdText['wikEdFixPunct title'],         wikEdImage['fixPunct'],            '16', '16', wikEdText['wikEdFixPunct alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			60: ['wikEdFixMath',          'wikEdButton',          wikEdText['wikEdFixMath title'],          wikEdImage['fixMath'],             '16', '16', wikEdText['wikEdFixMath alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			61: ['wikEdFixChem',          'wikEdButton',          wikEdText['wikEdFixChem title'],          wikEdImage['fixChem'],             '16', '16', wikEdText['wikEdFixChem alt'],          'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
			62: ['wikEdFixUnits',         'wikEdButton',          wikEdText['wikEdFixUnits title'],         wikEdImage['fixUnits'],            '16', '16', wikEdText['wikEdFixUnits alt'],         'javascript:WikEdEditButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// preview top&lt;br /&gt;
			65: ['wikEdClose',            'wikEdButton',          wikEdText['wikEdClose title'],            wikEdImage['close'],               '16', '16', wikEdText['wikEdClose alt'],            'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
			66: ['wikEdScrollToPreview2', 'wikEdButton',          wikEdText['wikEdScrollToPreview2 title'], wikEdImage['scrollToPreviewDown'], '16', '16', wikEdText['wikEdScrollToPreview2 alt'], 'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
			67: ['wikEdScrollToEdit2',    'wikEdButton',          wikEdText['wikEdScrollToEdit2 title'],    wikEdImage['scrollToEdit'],        '16', '16', wikEdText['wikEdScrollToEdit2 alt'],    'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// preview bottom&lt;br /&gt;
			70: ['wikEdClose2',           'wikEdButton',          wikEdText['wikEdClose2 title'],           wikEdImage['close'],               '16', '16', wikEdText['wikEdClose2 alt'],           'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
			71: ['wikEdScrollToPreview3', 'wikEdButton',          wikEdText['wikEdScrollToPreview3 title'], wikEdImage['scrollToPreview'],     '16', '16', wikEdText['wikEdScrollToPreview3 alt'], 'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
			72: ['wikEdScrollToEdit3',    'wikEdButton',          wikEdText['wikEdScrollToEdit3 title'],    wikEdImage['scrollToEdit'],        '16', '16', wikEdText['wikEdScrollToEdit3 alt'],    'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// jump&lt;br /&gt;
			78: ['wikEdDiff',             'wikEdButtonUnchecked', wikEdText['wikEdDiff title'],             wikEdImage['wikEdDiff'],           '16', '16', wikEdText['wikEdDiff alt'],             'javascript:WikEdButton(obj, objId, true);' ],&lt;br /&gt;
			74: ['wikEdScrollToEdit4',    'wikEdButtonSolo',      wikEdText['wikEdScrollToEdit4 title'],    wikEdImage['scrollToEditDown'],    '16', '16', wikEdText['wikEdScrollToEdit4 alt'],    'javascript:WikEdButton(obj, objId);' ],&lt;br /&gt;
&lt;br /&gt;
// dummy&lt;br /&gt;
			76: ['wikEdDummy',            'wikEdButtonDummy',     '',                                       wikEdImage['dummy'],               '16', '16', '',                                     '' ]&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// button access keys&lt;br /&gt;
	if (typeof(wikEdButtonKey) == 'undefined') { window.wikEdButtonKey = {}; }&lt;br /&gt;
&lt;br /&gt;
// WikedInitButtonKey: define accesskeys for edit buttons (wikEd button number: key string, JS key code)&lt;br /&gt;
	window.WikedInitButtonKey = function() {&lt;br /&gt;
		WikEdInitObject(wikEdButtonKey, {&lt;br /&gt;
			26: ['b', 66], // wikify&lt;br /&gt;
			27: ['o', 79], // textify&lt;br /&gt;
			67: ['g', 71], // scrolltoedit2&lt;br /&gt;
			72: ['g', 71], // scrolltoedit3&lt;br /&gt;
			74: ['g', 71], // scrolltoedit4&lt;br /&gt;
			32: ['g', 71]  // scrolltoedit, overwrites previous wikEd buttons for same key&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// button bars (id, class, button numbers)&lt;br /&gt;
	if (typeof(wikEdButtonBar) == 'undefined') { window.wikEdButtonBar = {}; }&lt;br /&gt;
&lt;br /&gt;
// WikedInitButtonBar: define built-in button bars (id outer, class outer, id inner, class inner, height, grip title, button numbers)&lt;br /&gt;
	window.WikedInitButtonBar = function() {&lt;br /&gt;
		WikEdInitObject(wikEdButtonBar, {&lt;br /&gt;
			'format':    ['wikEdButtonBarFormat',    'wikEdButtonBarFormat',    'wikEdButtonsFormat',    'wikEdButtonsFormat',    44, wikEdText['wikEdGripFormat title'],  [1,2,3,4,5,6,7,8,9,10,12,80,13,14,'br',15,16,17,19,20,21,22,23,24,11,25,76,26,27] ],&lt;br /&gt;
			'custom1':   ['wikEdButtonBarCustom1',   'wikEdButtonBarCustom1',   'wikEdButtonsCustom1',   'wikEdButtonsCustom1',   44, wikEdText['wikEdGripCustom1 title'], [ ] ],&lt;br /&gt;
			'find':      ['wikEdButtonBarFind',      'wikEdButtonBarFind',      'wikEdButtonsFind',      'wikEdButtonsFind',      44, wikEdText['wikEdGripFind title'],    [39,40,'find',41,76,43,44,'br',46,47,'replace',48,49,50,51] ],&lt;br /&gt;
			'fix':       ['wikEdButtonBarFix',       'wikEdButtonBarFix',       'wikEdButtonsFix',       'wikEdButtonsFix',       44, wikEdText['wikEdGripFix title'],     [52,53,54,55,56,57,'br',58,59,60,61,62] ],&lt;br /&gt;
			'custom2':   ['wikEdButtonBarCustom2',   'wikEdButtonBarCustom2',   'wikEdButtonsCustom2',   'wikEdButtonsCustom2',   44, wikEdText['wikEdGripCustom2 title'], [ ] ],&lt;br /&gt;
			'control':   ['wikEdButtonBarControl',   'wikEdButtonBarControl',   'wikEdButtonsControl',   'wikEdButtonsControl',   44, wikEdText['wikEdGripControl title'], [77,29,30,31,32,79,'br',33,34,35,75,36,78,37] ],&lt;br /&gt;
			'preview':   ['wikEdButtonBarPreview',   'wikEdButtonBarPreview',   'wikEdButtonsPreview',   'wikEdButtonsPreview',    0, null,                                [66,67,65] ],&lt;br /&gt;
			'preview2':  ['wikEdButtonBarPreview2',  'wikEdButtonBarPreview2',  'wikEdButtonsPreview2',  'wikEdButtonsPreview2',   0, null,                                [71,72,70] ],&lt;br /&gt;
			'jump':      ['wikEdButtonBarJump',      'wikEdButtonBarJump',      'wikEdButtonsJump',      'wikEdButtonsJump',       0, null,                                [74] ]&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// history length for find, replace, and summary fields&lt;br /&gt;
	if (typeof(wikEdHistoryLength) == 'undefined') { window.wikEdHistoryLength = {}; }&lt;br /&gt;
	wikEdHistoryLength['find'] = 10;&lt;br /&gt;
	wikEdHistoryLength['replace'] = 10;&lt;br /&gt;
	wikEdHistoryLength['summary'] = 10;&lt;br /&gt;
&lt;br /&gt;
// presets for combo input fields dropdown options, {wikEdUsing} appends a link to this script&lt;br /&gt;
	if (typeof(wikEdComboPresetOptions) == 'undefined') { window.wikEdComboPresetOptions = {}; }&lt;br /&gt;
	if (typeof(wikEdComboPresetOptions['summary']) == 'undefined') { window.wikEdComboPresetOptions['summary'] = wikEdText['wikEdPresetSummary']; }&lt;br /&gt;
&lt;br /&gt;
// text for summary link to this script&lt;br /&gt;
	if (typeof(wikEdSummaryUsing) == 'undefined') { window.wikEdSummaryUsing = wikEdText['wikEdSummaryUsing']; }&lt;br /&gt;
&lt;br /&gt;
// expiration time span for permanent cookies in seconds&lt;br /&gt;
	if (typeof(wikEdCookieExpireSec) == 'undefined') { window.wikEdCookieExpireSec = 30 * 24 * 60 * 60; }&lt;br /&gt;
&lt;br /&gt;
// disable wikEd preset&lt;br /&gt;
	if (typeof(wikEdDisabledPreset) == 'undefined') { window.wikEdDisabledPreset = false; }&lt;br /&gt;
&lt;br /&gt;
// find ahead as you type checkbox preset&lt;br /&gt;
	if (typeof(wikEdFindAheadSelected) == 'undefined') { window.wikEdFindAheadSelected = true; }&lt;br /&gt;
&lt;br /&gt;
// highlight syntax preset&lt;br /&gt;
	if (typeof(wikEdHighlightSyntaxPreset) == 'undefined') { window.wikEdHighlightSyntaxPreset = true; }&lt;br /&gt;
&lt;br /&gt;
// enable wikEd preset&lt;br /&gt;
	if (typeof(wikEdUseWikEdPreset) == 'undefined') { window.wikEdUseWikEdPreset = true; }&lt;br /&gt;
&lt;br /&gt;
// add '...using wikEd' to summary preset&lt;br /&gt;
	if (typeof(wikEdUsingPreset) == 'undefined') { window.wikEdUsingPreset = false; }&lt;br /&gt;
&lt;br /&gt;
// scroll to edit window on non-preview pages&lt;br /&gt;
	if (typeof(wikEdScrollToEdit) == 'undefined') { window.wikEdScrollToEdit = true; }&lt;br /&gt;
&lt;br /&gt;
// wikEdDiff preset&lt;br /&gt;
	if (typeof(wikEdDiffPreset) == 'undefined') { window.wikEdDiffPreset = false; }&lt;br /&gt;
&lt;br /&gt;
// fullscreen mode preset&lt;br /&gt;
	if (typeof(wikEdFullScreenModePreset) == 'undefined') { window.wikEdFullScreenModePreset = false; }&lt;br /&gt;
&lt;br /&gt;
// show MediaWiki toolbar preset&lt;br /&gt;
	if (typeof(wikEdCloseToolbarPreset) == 'undefined') { window.wikEdCloseToolbarPreset = false; }&lt;br /&gt;
&lt;br /&gt;
// hide ref tags preset&lt;br /&gt;
	if (typeof(wikEdRefHidePreset) == 'undefined') { window.wikEdRefHidePreset = false; }&lt;br /&gt;
&lt;br /&gt;
// initial text zoom for edit window (percentage)&lt;br /&gt;
	if (typeof(wikEdTextZoom) == 'undefined') { window.wikEdTextZoom = 100; }&lt;br /&gt;
&lt;br /&gt;
// remove invisible syntax highlighting comments after closing tag&lt;br /&gt;
	if (typeof(wikEdRemoveHighlightComments) == 'undefined') { window.wikEdRemoveHighlightComments = true; }&lt;br /&gt;
&lt;br /&gt;
// show the text-to-source button for testing purposes&lt;br /&gt;
	if (typeof(wikEdShowSourceButton) == 'undefined') { window.wikEdShowSourceButton = false; }&lt;br /&gt;
&lt;br /&gt;
// show the using-wiked button&lt;br /&gt;
	if (typeof(wikEdShowUsingButton) == 'undefined') { window.wikEdShowUsingButton = false; }&lt;br /&gt;
&lt;br /&gt;
// the wikEd help page link to be displayed after the editing help link, an empty string disables the link&lt;br /&gt;
	if (typeof(wikEdHelpPageLink) == 'undefined') { window.wikEdHelpPageLink = wikEdText['wikEdHelpPageLink']; }&lt;br /&gt;
&lt;br /&gt;
// enable external diff script&lt;br /&gt;
	if (typeof(wikEdLoadDiffScript) == 'undefined') { window.wikEdLoadDiffScript = true; }&lt;br /&gt;
&lt;br /&gt;
// enable external wikEdDiff script&lt;br /&gt;
	if (typeof(wikEdLoadDiff) == 'undefined') { window.wikEdLoadDiff = true; }&lt;br /&gt;
&lt;br /&gt;
// enable external InstaView script&lt;br /&gt;
	if (typeof(wikEdLoadInstaView) == 'undefined') { window.wikEdLoadInstaView = true; }&lt;br /&gt;
&lt;br /&gt;
// RegExTypoFix rules page, the address must have the exact same domain name as the used wiki&lt;br /&gt;
	if (typeof(wikEdRegExTypoFixURL) == 'undefined') { window.wikEdRegExTypoFixURL = 'http://en.wikipedia.org/w/index.php?title=Wikipedia:AutoWikiBrowser/Typos&amp;amp;action=raw'; }&lt;br /&gt;
&lt;br /&gt;
// enable RegExTypoFix button (http://en.wikipedia.org/wiki/User:Mboverload/RegExTypoFix)&lt;br /&gt;
	if (typeof(wikEdRegExTypoFix) == 'undefined') { window.wikEdRegExTypoFix = false; }&lt;br /&gt;
&lt;br /&gt;
// enable highlighting as links&lt;br /&gt;
	if (typeof(wikEdFollowHighlightedLinks) == 'undefined') { window.wikEdFollowHighlightedLinks = false; }&lt;br /&gt;
&lt;br /&gt;
// skip the browser detection to run wikEd under IE and Opera&lt;br /&gt;
	if (typeof(wikEdSkipBrowserTest) == 'undefined') { window.wikEdSkipBrowserTest = false; }&lt;br /&gt;
&lt;br /&gt;
// set the button bar grip width in px&lt;br /&gt;
	if (typeof(wikEdButtonBarGripWidth) == 'undefined') { window.wikEdButtonBarGripWidth = 8; }&lt;br /&gt;
&lt;br /&gt;
// enable local preview (Pilaf's InstaView)&lt;br /&gt;
	if (typeof(wikEdUseLocalPreview) == 'undefined') { window.wikEdUseLocalPreview = true; }&lt;br /&gt;
&lt;br /&gt;
// allow ajax requests from local copy for testing, also defined in wikEdDiff.js&lt;br /&gt;
	if (typeof(wikEdAllowLocalAjax) == 'undefined') { window.wikEdAllowLocalAjax = false; }&lt;br /&gt;
&lt;br /&gt;
// enable server preview (Ajax)&lt;br /&gt;
	if (typeof(wikEdUseAjaxPreview) == 'undefined') { window.wikEdUseAjaxPreview = true; }&lt;br /&gt;
&lt;br /&gt;
// enable auto update (Ajax)&lt;br /&gt;
	if (typeof(wikEdAutoUpdate) == 'undefined') { window.wikEdAutoUpdate = true; }&lt;br /&gt;
&lt;br /&gt;
// hours between update check (monobook.js)&lt;br /&gt;
	if (typeof(wikEdAutoUpdateHours) == 'undefined') { window.wikEdAutoUpdateHours = 20; }&lt;br /&gt;
&lt;br /&gt;
// hours between update check (Greasemonkey)&lt;br /&gt;
	if (typeof(wikEdAutoUpdateHoursGM) == 'undefined') { window.wikEdAutoUpdateHoursGM = 40; }&lt;br /&gt;
&lt;br /&gt;
// auto update: version url (Ajax)&lt;br /&gt;
	if (typeof(wikEdAutoUpdateUrl) == 'undefined') { window.wikEdAutoUpdateUrl = 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd_current_version&amp;amp;action=raw&amp;amp;maxage=0'; }&lt;br /&gt;
&lt;br /&gt;
// auto update: script url for Greasemonkey update&lt;br /&gt;
	if (typeof(wikEdAutoUpdateScriptUrl) == 'undefined') { window.wikEdAutoUpdateScriptUrl = 'http://en.wikipedia.org/w/index.php?action=raw&amp;amp;ctype=text/javascript&amp;amp;title=User:Cacycle/wikEd.user.js'; }&lt;br /&gt;
&lt;br /&gt;
// show complete unshortened article text for local diff, also defined in wikEdDiff.js&lt;br /&gt;
	if (typeof(wikEdFullDiff) == 'undefined') { window.wikEdFullDiff = false; }&lt;br /&gt;
&lt;br /&gt;
// make links ctrl-clickable&lt;br /&gt;
	if (typeof(wikEdFollowLinks) == 'undefined') { window.wikEdFollowLinks = true; }&lt;br /&gt;
&lt;br /&gt;
// correct tab order between check boxes and submit buttons&lt;br /&gt;
	if (typeof(wikEdSubmitTabOrder) == 'undefined') { window.wikEdSubmitTabOrder = false; }&lt;br /&gt;
&lt;br /&gt;
// wikify table parameters, replaces original table parameters with this string&lt;br /&gt;
	if (typeof(wikEdWikifyTableParameters) == 'undefined') { window.wikEdWikifyTableParameters = ''; }&lt;br /&gt;
&lt;br /&gt;
// do not rearrange page elements&lt;br /&gt;
	if (typeof(wikEdNoRearrange) == 'undefined') { window.wikEdNoRearrange = false; }&lt;br /&gt;
&lt;br /&gt;
// use French rules for fix punctuation&lt;br /&gt;
	if (typeof(wikEdFixPunctFrench) == 'undefined') { window.wikEdFixPunctFrench = false; }&lt;br /&gt;
&lt;br /&gt;
// wikEdSetupHook, executed after wikEd has been set up, usage: wikEdSetupHook.push(YourFunction);&lt;br /&gt;
	if (typeof(wikEdSetupHook) == 'undefined') { window.wikEdSetupHook = []; }&lt;br /&gt;
&lt;br /&gt;
// wikEdOnHook, executed after wikEd has been re-enabled by logo click, usage: wikEdOnHook.push(YourFunction);&lt;br /&gt;
	if (typeof(wikEdOnHook) == 'undefined') { window.wikEdOnHook = []; }&lt;br /&gt;
&lt;br /&gt;
// wikEdOffHook, executed after wikEd has been disabled by logo click, usage: wikEdOffHook.push(YourFunction);&lt;br /&gt;
	if (typeof(wikEdOffHook) == 'undefined') { window.wikEdOffHook = []; }&lt;br /&gt;
&lt;br /&gt;
// wikEdTextareaHook, executed after classic textarea has been enabled by user, usage: wikEdTextareaHook.push(YourFunction);&lt;br /&gt;
	if (typeof(wikEdTextareaHook) == 'undefined') { window.wikEdTextareaHook = []; }&lt;br /&gt;
&lt;br /&gt;
// wikEdFrameHook, executed after wikEd edit frame has been enabled by user, usage: wikEdFrameHook.push(YourFunction);&lt;br /&gt;
	if (typeof(wikEdFrameHook) == 'undefined') { window.wikEdFrameHook = []; }&lt;br /&gt;
&lt;br /&gt;
// custom edit form id instead of 'editform'&lt;br /&gt;
	if (typeof(wikEdCustomEditFormId) == 'undefined') { window.wikEdCustomEditFormId = ''; }&lt;br /&gt;
&lt;br /&gt;
// custom textarea id instead of 'wpTextbox1'&lt;br /&gt;
	if (typeof(wikEdCustomTextAreaId) == 'undefined') { window.wikEdCustomTextAreaId = ''; }&lt;br /&gt;
&lt;br /&gt;
// custom save button id instead of 'wpSave'&lt;br /&gt;
	if (typeof(wikEdCustomSaveButtonId) == 'undefined') { window.wikEdCustomSaveButtonId = ''; }&lt;br /&gt;
&lt;br /&gt;
// show table mode togle button // {{TABLE}}&lt;br /&gt;
	if (typeof(wikEdShowTableModeButton) == 'undefined') { window.wikEdShowTableModeButton = false; }&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// diff script URL&lt;br /&gt;
if (typeof(wikEdDiffScriptSrc) == 'undefined') { window.wikEdDiffScriptSrc = 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/diff.js&amp;amp;action=raw&amp;amp;ctype=text/javascript'; }&lt;br /&gt;
&lt;br /&gt;
// wikEdDiff script URL, also defined in wikEdDiff.js&lt;br /&gt;
if (typeof(wikEdDiffSrc) == 'undefined') { window.wikEdDiffSrc = 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEdDiff.js&amp;amp;action=raw&amp;amp;ctype=text/javascript'; }&lt;br /&gt;
&lt;br /&gt;
// InstaView script URL&lt;br /&gt;
if (typeof(wikEdInstaViewSrc) == 'undefined') { window.wikEdInstaViewSrc = 'http://en.wikipedia.org/w/index.php?title=User:Pilaf/include/instaview.js&amp;amp;action=raw&amp;amp;ctype=text/javascript'; }&lt;br /&gt;
&lt;br /&gt;
// wikEd-as-gadget detection, set to true if gadget script name is not MediaWiki:Gadget-wikEd.js&lt;br /&gt;
if (typeof(wikEdGadget) == 'undefined') { window.wikEdGadget = null; }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// end of user configurable variables&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInitGlobals: initialize non-configurable variables&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdInitGlobals = function() {&lt;br /&gt;
&lt;br /&gt;
// global variables&lt;br /&gt;
&lt;br /&gt;
	window.wikEdTurnedOn = null;&lt;br /&gt;
	window.wikEdDisabled = null;&lt;br /&gt;
	window.wikEdUpload = null;&lt;br /&gt;
&lt;br /&gt;
// history&lt;br /&gt;
	window.wikEdFieldHist = [];&lt;br /&gt;
	window.wikEdSavedName = [];&lt;br /&gt;
	window.wikEdInputElement = [];&lt;br /&gt;
	window.wikEdSelectElement = [];&lt;br /&gt;
&lt;br /&gt;
	window.wikEdCheckMarker = [];&lt;br /&gt;
	window.wikEdCheckMarker[true] = '♦';&lt;br /&gt;
	window.wikEdCheckMarker[false] = '◊';&lt;br /&gt;
&lt;br /&gt;
// cache the parsed DOM object&lt;br /&gt;
	window.wikEdFrameDOMCache = null;&lt;br /&gt;
&lt;br /&gt;
// undo all, redo all&lt;br /&gt;
	window.wikEdOrigVersion = '';&lt;br /&gt;
	window.wikEdLastVersion = null;&lt;br /&gt;
&lt;br /&gt;
// global dom elements&lt;br /&gt;
	window.wikEdLogo = null;&lt;br /&gt;
	window.wikEdLogoList = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdDebug = null;&lt;br /&gt;
	window.wikEdTextarea = null;&lt;br /&gt;
	window.wikEdEditForm = null;&lt;br /&gt;
	window.wikEdFrame = null;;&lt;br /&gt;
	window.wikEdFrameBody = null;&lt;br /&gt;
	window.wikEdFrameDocument = null;&lt;br /&gt;
	window.wikEdFrameWindow = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdInputWrapper = null;&lt;br /&gt;
	window.wikEdToolbarWrapper = null;&lt;br /&gt;
	window.wikEdCaptchaWrapper = null;&lt;br /&gt;
	window.wikEdDebugWrapper = null;&lt;br /&gt;
	window.wikEdTextareaWrapper = null;&lt;br /&gt;
	window.wikEdFrameWrapper = null;&lt;br /&gt;
	window.wikEdConsoleWrapper = null;&lt;br /&gt;
	window.wikEdButtonsWrapper = null;&lt;br /&gt;
	window.wikEdSummaryWrapper = null;&lt;br /&gt;
	window.wikEdSummaryInputWrapper = null;&lt;br /&gt;
	window.wikEdSummaryOptions = null;&lt;br /&gt;
	window.wikEdSubmitWrapper = null;&lt;br /&gt;
	window.wikEdSubmitButtonsWrapper = null;&lt;br /&gt;
	window.wikEdLocalPrevWrapper = null;&lt;br /&gt;
	window.wikEdInsertWrapper = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdButtonBarFormat = null;&lt;br /&gt;
	window.wikEdButtonBarCustom1 = null;&lt;br /&gt;
	window.wikEdButtonBarFind = null;&lt;br /&gt;
	window.wikEdButtonBarFix = null;&lt;br /&gt;
	window.wikEdButtonBarCustom2 = null;&lt;br /&gt;
	window.wikEdButtonBarControl = null;&lt;br /&gt;
	window.wikEdButtonBarPreview = null;&lt;br /&gt;
	window.wikEdButtonBarPreview2 = null;&lt;br /&gt;
	window.wikEdButtonBarJump = null;&lt;br /&gt;
	window.wikEdPreviewBox = null;&lt;br /&gt;
	window.wikEdClearSummary = null;&lt;br /&gt;
	window.wikEdClearSummaryImg = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdCaseSensitive = null;&lt;br /&gt;
	window.wikEdRegExp = null;&lt;br /&gt;
	window.wikEdFindAhead = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdFindText = null;&lt;br /&gt;
	window.wikEdReplaceText = null;&lt;br /&gt;
	window.wikEdSummaryText = null;&lt;br /&gt;
	window.wikEdSummarySelect = null;&lt;br /&gt;
	window.wikEdSummaryTextWidth = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdEditOptions = null;&lt;br /&gt;
	window.wikEdEditHelp = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdSaveButton = null;&lt;br /&gt;
	window.wikEdPreviewButton = null;&lt;br /&gt;
	window.wikEdLDiffButton = null;&lt;br /&gt;
	window.wikEdLocalPreview = null;&lt;br /&gt;
	window.wikEdLocalDiff = null;&lt;br /&gt;
	window.wikEdDiffPreviewButton = null;&lt;br /&gt;
	window.wikEdSummaryLabel = null;&lt;br /&gt;
&lt;br /&gt;
	window.wikEdGetGlobalNode = null;&lt;br /&gt;
&lt;br /&gt;
// various&lt;br /&gt;
	window.wikEdEditButtonHandler = {};&lt;br /&gt;
	window.wikEdTextareaHeight = null;&lt;br /&gt;
	window.wikEdClearSummaryWidth = null;&lt;br /&gt;
	window.wikEdFullScreenMode = false;&lt;br /&gt;
	window.wikEdAddNewSection = null;&lt;br /&gt;
	window.wikEdBrowserNotSupported = null;&lt;br /&gt;
	window.wikEdFrameScrollTop = null;&lt;br /&gt;
	window.wikEdTextareaUpdated = null;&lt;br /&gt;
	window.wikEdPreviewIsAjax = null;&lt;br /&gt;
	window.wikEdButtonKeyCode = [];&lt;br /&gt;
	window.wikEdFollowLinkIdNo = 0;&lt;br /&gt;
	window.wikEdFollowLinkHash = {};&lt;br /&gt;
	if (typeof(wikEdWikiGlobals) == 'undefined') { window.wikEdWikiGlobals = []; }&lt;br /&gt;
	window.wikEdDirection = null;&lt;br /&gt;
&lt;br /&gt;
// overide site javascript functions&lt;br /&gt;
	window.WikEdInsertTagsOriginal = null;&lt;br /&gt;
	window.WikEdInsertAtCursorOriginal = null;&lt;br /&gt;
&lt;br /&gt;
// wikEd settings&lt;br /&gt;
	window.wikEdRefHide = null;&lt;br /&gt;
	window.wikEdUsing = null;&lt;br /&gt;
	window.wikEdUseWikEd = null;&lt;br /&gt;
	window.wikEdCloseToolbar = null;&lt;br /&gt;
	window.wikEdHighlightSyntax = null;&lt;br /&gt;
	window.wikEdDiff = null;&lt;br /&gt;
	window.wikEdTableMode = null;&lt;br /&gt;
&lt;br /&gt;
// unicode fixing&lt;br /&gt;
	window.wikEdControlCharsStr = '';&lt;br /&gt;
	window.wikEdSupportedChars = null;&lt;br /&gt;
	window.wikEdSpecialChars = null;&lt;br /&gt;
	window.wikEdProblemChars = null;&lt;br /&gt;
	window.wikEdControlChars = null;&lt;br /&gt;
	window.wikEdStrangeSpaces = null;&lt;br /&gt;
&lt;br /&gt;
// RegExTypoFix rules&lt;br /&gt;
	window.wikEdTypoRulesFind = [];&lt;br /&gt;
	window.wikEdTypoRulesReplace = [];&lt;br /&gt;
&lt;br /&gt;
// debugging time measurement, usage: wikEdDebugTimer.push([1234, new Date]); WikEdDebugTimer();&lt;br /&gt;
	window.wikEdDebugTimer = [];&lt;br /&gt;
&lt;br /&gt;
// MediaWiki file paths for use in regexps&lt;br /&gt;
	window.wikEdServer = '';&lt;br /&gt;
	window.wikEdArticlePath = '';&lt;br /&gt;
	window.wikEdScript = '';&lt;br /&gt;
	window.wikEdScriptPath = '';&lt;br /&gt;
	window.wikEdScriptName = '';&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// variables needed during startup&lt;br /&gt;
&lt;br /&gt;
// hash of loaded scripts, also defined in wikEdDiff.js&lt;br /&gt;
if (typeof(wikEdExternalScripts) == 'undefined') { window.wikEdExternalScripts = null; }&lt;br /&gt;
if (typeof(wikEdStartup) == 'undefined') { window.wikEdStartup = false; }&lt;br /&gt;
if (typeof(wikEdPageLoaded) == 'undefined') { window.wikEdPageLoaded = false; }&lt;br /&gt;
&lt;br /&gt;
// browser identification&lt;br /&gt;
if (typeof(wikEdBrowserName) == 'undefined') { window.wikEdBrowserName = ''; }&lt;br /&gt;
if (typeof(wikEdBrowserFlavor) == 'undefined') { window.wikEdBrowserFlavor = ''; }&lt;br /&gt;
if (typeof(wikEdBrowserVersion) == 'undefined') { window.wikEdBrowserVersion = 0; }&lt;br /&gt;
if (typeof(wikEdMSIE) == 'undefined') { window.wikEdMSIE = false; }&lt;br /&gt;
if (typeof(wikEdMozilla) == 'undefined') { window.wikEdMozilla = false; }&lt;br /&gt;
if (typeof(wikEdOpera) == 'undefined') { window.wikEdOpera = false; }&lt;br /&gt;
if (typeof(wikEdSafari) == 'undefined') { window.wikEdSafari = null; }&lt;br /&gt;
if (typeof(wikEdGreasemonkey) == 'undefined') { window.wikEdGreasemonkey = null; }&lt;br /&gt;
if (typeof(wikEdGreasemonkeyToBody) == 'undefined') { window.wikEdGreasemonkeyToBody = null; }&lt;br /&gt;
&lt;br /&gt;
// general MediaWiki page detection&lt;br /&gt;
// skin name: [dom element to add logo to (empty: top left, first body element), logo to personal portlet, rearrange page elements, [element id list] ],&lt;br /&gt;
if (typeof(wikEdMediaWikiSkinIds) == 'undefined') { window.wikEdMediaWikiSkinIds = {&lt;br /&gt;
&lt;br /&gt;
// monobook, also detects simple and myskin&lt;br /&gt;
	monobook:    [ 'p-personal', true, true, ['column-content', 'content', 'bodyContent', 'siteSub', 'contentSub', 'column-one', 'p-cactions', 'p-personal'] ],&lt;br /&gt;
&lt;br /&gt;
// citizendium.org&lt;br /&gt;
	pinkwich5:   [ 'p-personal', true, true, ['column-content', 'content', 'bodycontent', 'sitesub', 'contentSub', 'column-one', 'p-cactions', 'p-personal'] ],&lt;br /&gt;
&lt;br /&gt;
// other MediaWiki skins&lt;br /&gt;
	standard:    [ 'quickbar', false, true, ['content', 'topbar', 'article', 'footer', 'pagestats', 'quickbar'] ],&lt;br /&gt;
	nostalgia:   [ 'topbar', false, true, ['content', 'topbar', 'specialpages', 'article', 'footer'] ],&lt;br /&gt;
	cologneblue: [ 'quickbar', false, true, ['content', 'topbar', 'sitetitle', 'sitesub', 'article', 'footer', 'quickbar'] ],&lt;br /&gt;
	modern:      [ 'p-personal', true, true, ['mw_header', 'mw_main', 'mw_contentwrapper'] ],&lt;br /&gt;
&lt;br /&gt;
// wikia.com&lt;br /&gt;
	monaco:      [ 'wikia_header', true, true, ['headerMenuHub', 'background_strip', 'siteSub', 'contentSub', 'monaco_footer'] ],&lt;br /&gt;
	quartz:      [ 'welcome', false, true, ['articleWrapper', 'bodyContent', 'siteSub', 'contentSub', 'sidebar'] ],&lt;br /&gt;
	searchwikia: [ 'header-li-buttons', false, true, ['header', 'header-container', 'header-go-button', 'article-container', 'article', 'article-text'] ],&lt;br /&gt;
&lt;br /&gt;
// custom skins used on wiki.mozilla.org and developer.mozilla.org&lt;br /&gt;
	cavendish:   [ 'nav', false, true, ['internal', 'container', 'header', 'contentTop', 'mBody', 'side', 'nav', 'mainContent', 'siteSub', 'contentSub'] ],&lt;br /&gt;
	devmo:       [ 'personal', false, true, ['developer-mozilla-org', 'container', 'header', 'navigation', 'bar', 'personal', 'page', 'sidebar', 'sidebarslideup', 'contentTop', 'siteSub', 'contentSub'] ],&lt;br /&gt;
&lt;br /&gt;
// custom skins&lt;br /&gt;
	gumax:       [ 'gumax-p-navigation', false, true, ['gumax-header', 'gumax-content-body'] ],&lt;br /&gt;
&lt;br /&gt;
// custom MediaWiki identifier&lt;br /&gt;
	mediawiki:   [ '', false, false, ['mediawiki'] ]&lt;br /&gt;
}; }&lt;br /&gt;
&lt;br /&gt;
if (typeof(wikEdSkinLogo) == 'undefined') { window.wikEdSkinLogo = ''; }&lt;br /&gt;
if (typeof(wikEdRearrange) == 'undefined') { window.wikEdRearrange = false; }&lt;br /&gt;
if (typeof(wikEdLogoToList) == 'undefined') { window.wikEdLogoToList = false; }&lt;br /&gt;
if (typeof(wikEdSkin) == 'undefined') { window.wikEdSkin = ''; }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInitObject: initialize object, keep pre-defined values&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdInitObject = function(array, preset) {&lt;br /&gt;
&lt;br /&gt;
	for (var key in preset) {&lt;br /&gt;
		if (typeof(key) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		if (array[key] == null) {&lt;br /&gt;
			array[key] = preset[key];&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInitImage: initialize images, keep pre-defined values&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdInitImage = function(array, preset) {&lt;br /&gt;
&lt;br /&gt;
	for (var key in preset) {&lt;br /&gt;
		if (typeof(key) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		if (array[key] == null) {&lt;br /&gt;
&lt;br /&gt;
// remove MediaWiki path prefixes and add local path&lt;br /&gt;
			if (wikEdUseLocalImages == true) {&lt;br /&gt;
				array[key] = wikEdImagePathLocal + preset[key].replace(/^[0-9a-f]+\/[0-9a-f]+\//, '');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// add path&lt;br /&gt;
			else {&lt;br /&gt;
				array[key] = wikEdImagePath + preset[key];&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdStartup: wikEd startup code, called during page load&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdStartup = function() {&lt;br /&gt;
&lt;br /&gt;
// check if this has already been run&lt;br /&gt;
	if (wikEdStartup == true) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
	wikEdStartup = true;&lt;br /&gt;
&lt;br /&gt;
// redirect WED shortcut to WikEdDebug(objectName, object, popup)&lt;br /&gt;
	window.WED = WikEdDebug;&lt;br /&gt;
&lt;br /&gt;
// check browser and version&lt;br /&gt;
	var agent = navigator.userAgent.match(/(Firefox|Netscape|SeaMonkey|IceWeasel|IceCat|Minefield|BonEcho|GranParadiso|Shiretoko)\W+(\d+\.\d+)/i);&lt;br /&gt;
	if (agent != null) {&lt;br /&gt;
		wikEdMozilla = true;&lt;br /&gt;
		wikEdBrowserName = 'Mozilla';&lt;br /&gt;
		wikEdBrowserFlavor = agent[1];&lt;br /&gt;
		wikEdBrowserVersion = parseFloat(agent[2]);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check for MSIE&lt;br /&gt;
	else {&lt;br /&gt;
		var agent = navigator.userAgent.match(/(MSIE)\W+(\d+\.\d+)/i);&lt;br /&gt;
		if (agent != null) {&lt;br /&gt;
			wikEdBrowserName = 'MSIE';&lt;br /&gt;
			wikEdBrowserVersion = parseFloat(agent[2]);&lt;br /&gt;
			wikEdMSIE = true;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// check for Opera&lt;br /&gt;
		var agent = navigator.userAgent.match(/(Opera)\W+(\d+\.\d*)/i);&lt;br /&gt;
		if (agent != null) {&lt;br /&gt;
			wikEdBrowserName = 'Opera';&lt;br /&gt;
			wikEdBrowserVersion = parseFloat(agent[2]);&lt;br /&gt;
			wikEdOpera = true;&lt;br /&gt;
			wikEdMSIE = false;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// check for Safari&lt;br /&gt;
		if (wikEdBrowserName == '') {&lt;br /&gt;
			agent = navigator.userAgent.match(/(Safari)\W+(\d+\.\d*)/i);&lt;br /&gt;
			if (agent != null) {&lt;br /&gt;
				wikEdBrowserName = 'Safari';&lt;br /&gt;
				wikEdBrowserVersion = parseFloat(agent[2]);&lt;br /&gt;
				wikEdSafari = true;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// schedule the setup routine&lt;br /&gt;
	WikEdAddEventListener(window, 'load', WikEdSetup, false);&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSetup: basic setup routine, scheduled after page load&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSetup = function() {&lt;br /&gt;
&lt;br /&gt;
	WikEdRemoveEventListener(window, 'load', WikEdSetup, false);&lt;br /&gt;
&lt;br /&gt;
// check if this has already been run, either as a wiki or a Greasemonkey user script&lt;br /&gt;
	if (document.getElementById('wikEdSetupFlag') != null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// detect already loaded external scripts&lt;br /&gt;
	if (wikEdExternalScripts == null) {&lt;br /&gt;
		wikEdExternalScripts = [];&lt;br /&gt;
		var pageScripts = document.getElementsByTagName('script');&lt;br /&gt;
		for (var i = 0; i &amp;lt; pageScripts.length; i ++) {&lt;br /&gt;
			var scriptSrc = pageScripts[i].src;&lt;br /&gt;
			var nameMatch = scriptSrc.match(/\btitle=([^&amp;amp;]*)/);&lt;br /&gt;
			if (nameMatch == null) {&lt;br /&gt;
				nameMatch = scriptSrc.match(/\/([^\/]*?)($|\?)/);&lt;br /&gt;
			}&lt;br /&gt;
			if (nameMatch != null) {&lt;br /&gt;
				var scriptName = nameMatch[1];&lt;br /&gt;
				if (scriptName != '') {&lt;br /&gt;
&lt;br /&gt;
// ignore other diff.js scripts&lt;br /&gt;
					if ( (scriptName == 'diff.js') &amp;amp;&amp;amp; (scriptSrc != wikEdDiffScriptSrc) ) {&lt;br /&gt;
						continue;&lt;br /&gt;
					}&lt;br /&gt;
					wikEdExternalScripts[scriptName] = true;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// exit if executed as Greasemonkey script if wiki user script is available&lt;br /&gt;
	if (typeof(GM_getValue) == 'function' ) {&lt;br /&gt;
		if (wikEdExternalScripts['wikEd.js'] == true) {&lt;br /&gt;
			wikEdGreasemonkey = false;&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			wikEdGreasemonkey = true;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// redirect Greasemonkey debugging function to WikEdDebug if run as a wiki user script&lt;br /&gt;
	else {&lt;br /&gt;
		window.GM_log = window.WikEdDebug;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// detect wiked running as a gadget&lt;br /&gt;
	if (wikEdGadget == null) {&lt;br /&gt;
		if (wikEdExternalScripts['MediaWiki:Gadget-wikEd.js'] == true) {&lt;br /&gt;
			wikEdGadget = true;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set already run flag&lt;br /&gt;
	var flag = document.createElement('span');&lt;br /&gt;
	flag.id = 'wikEdSetupFlag';&lt;br /&gt;
	flag.style.display = 'none';&lt;br /&gt;
	flag.style.visibility = 'hidden';&lt;br /&gt;
	document.body.appendChild(flag);&lt;br /&gt;
&lt;br /&gt;
// detect MediaWiki page and its skin&lt;br /&gt;
	for (var skin in wikEdMediaWikiSkinIds) {&lt;br /&gt;
		var logoElement = wikEdMediaWikiSkinIds[skin][0];&lt;br /&gt;
		var logoToList = wikEdMediaWikiSkinIds[skin][1];&lt;br /&gt;
		var rearrange = wikEdMediaWikiSkinIds[skin][2];&lt;br /&gt;
		var skinIds = wikEdMediaWikiSkinIds[skin][3];&lt;br /&gt;
		if (typeof(logoElement) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		for (var i = 0; i &amp;lt; skinIds.length; i ++) {&lt;br /&gt;
			if (document.getElementById(skinIds[i]) == null) {&lt;br /&gt;
				break;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		if (i == skinIds.length) {&lt;br /&gt;
			wikEdSkinLogo = logoElement;&lt;br /&gt;
			wikEdSkin = skin;&lt;br /&gt;
			wikEdRearrange = rearrange;&lt;br /&gt;
			wikEdLogoToList = logoToList;&lt;br /&gt;
			break;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// not a MediaWiki page&lt;br /&gt;
	if (wikEdSkin == '') {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// initialize user configurable variables&lt;br /&gt;
	WikEdInitGlobalConfigs();&lt;br /&gt;
&lt;br /&gt;
// do not rearrange page elements&lt;br /&gt;
	if (wikEdNoRearrange != false) {&lt;br /&gt;
		wikEdRearrange = false;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// initialize non-configurable variables&lt;br /&gt;
	WikEdInitGlobals();&lt;br /&gt;
&lt;br /&gt;
// parse global MediaWiki globals into hash&lt;br /&gt;
	var variable = ['wgServer', 'wgTitle', 'wgCanonicalNamespace', 'wgArticlePath', 'wgScript', 'wgScriptPath', 'wgUserName', 'wgCurRevisionId', 'wgScript'];&lt;br /&gt;
	for (var i = 0; i &amp;lt; variable.length; i ++) {&lt;br /&gt;
		wikEdWikiGlobals[ variable[i] ] = WikEdGetGlobal(variable[i]);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check for updates&lt;br /&gt;
	WikEdAutoUpdate();&lt;br /&gt;
&lt;br /&gt;
// initialize images (needed here for logo)&lt;br /&gt;
	WikedInitImage();&lt;br /&gt;
&lt;br /&gt;
// add image path to image filename&lt;br /&gt;
	if (wikEdLogo == null) {&lt;br /&gt;
&lt;br /&gt;
// insert logo into personal toolbar&lt;br /&gt;
		wikEdLogo = document.createElement('img');&lt;br /&gt;
		wikEdLogo.id = 'wikEdLogoImg';&lt;br /&gt;
&lt;br /&gt;
// monobook, simple, myskin&lt;br /&gt;
		if (wikEdLogoToList == true) {&lt;br /&gt;
			wikEdLogoList = document.createElement('li');&lt;br /&gt;
			wikEdLogoList.id = 'wikEdLogoList';&lt;br /&gt;
			wikEdLogoList.appendChild(wikEdLogo);&lt;br /&gt;
&lt;br /&gt;
			var personalTools = document.getElementById(wikEdSkinLogo);&lt;br /&gt;
			if (personalTools != null) {&lt;br /&gt;
				personalTools.getElementsByTagName('ul')[0].appendChild(wikEdLogoList);&lt;br /&gt;
				wikEdLogo.className = 'wikEdLogo';&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// other skins&lt;br /&gt;
		if (wikEdLogo.className == '') {&lt;br /&gt;
			if (wikEdSkinLogo != '') {&lt;br /&gt;
				document.getElementById(wikEdSkinLogo).appendChild(wikEdLogo);&lt;br /&gt;
				wikEdLogo.className = 'wikEdLogo';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// fallback for undetected skin&lt;br /&gt;
			else {&lt;br /&gt;
				document.body.insertBefore(wikEdLogo, document.body.firstChild);&lt;br /&gt;
				wikEdLogo.className = 'wikEdLogoFallBack';&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// add event listener to logo&lt;br /&gt;
		WikEdAddEventListener(wikEdLogo, 'click', WikEdMainSwitch, true);&lt;br /&gt;
	}&lt;br /&gt;
// page loaded flag for dynamically loaded scripts&lt;br /&gt;
	wikEdPageLoaded = true;&lt;br /&gt;
&lt;br /&gt;
// load the external diff script&lt;br /&gt;
	var head = document.getElementsByTagName('head')[0];&lt;br /&gt;
	if ( (wikEdLoadDiffScript == true) &amp;amp;&amp;amp; (wikEdExternalScripts['diff.js'] == null) ) {&lt;br /&gt;
		if (typeof(WDiffString) == 'undefined') {&lt;br /&gt;
			var script = document.createElement('script');&lt;br /&gt;
			script.type = 'text/javascript';&lt;br /&gt;
			script.src  = wikEdDiffScriptSrc;&lt;br /&gt;
			head.appendChild(script);&lt;br /&gt;
		}&lt;br /&gt;
		wikEdExternalScripts['diff.js'] = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// load the external wikEdDiff script&lt;br /&gt;
	if ( (wikEdLoadDiff == true) &amp;amp;&amp;amp; (wikEdExternalScripts['wikEdDiff.js'] == null) ) {&lt;br /&gt;
		if (typeof(WikEdDiff) == 'undefined') {&lt;br /&gt;
			var script = document.createElement('script');&lt;br /&gt;
			script.type = 'text/javascript';&lt;br /&gt;
			script.src = wikEdDiffSrc;&lt;br /&gt;
			head.appendChild(script);&lt;br /&gt;
		}&lt;br /&gt;
		wikEdExternalScripts['wikEdDiff.js'] = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check if disabled&lt;br /&gt;
	wikEdDisabled = WikEdGetSavedSetting('wikEdDisabled', wikEdDisabledPreset);&lt;br /&gt;
	if (wikEdDisabled == true) {&lt;br /&gt;
		wikEdUseWikEd = false;&lt;br /&gt;
		WikEdSetLogo();&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// continue setup&lt;br /&gt;
	WikEdTurnOn(wikEdScrollToEdit);&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdTurnOn: continue setup, can be called repeatedly&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdTurnOn = function(scrollToEdit) {&lt;br /&gt;
&lt;br /&gt;
// check if setup was already run&lt;br /&gt;
	if (wikEdTurnedOn == true) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set error logo&lt;br /&gt;
	WikEdSetLogo('error');&lt;br /&gt;
&lt;br /&gt;
// at the moment this works only for Mozilla browsers (Mozilla, Mozilla Firefox, Mozilla SeaMonkey)&lt;br /&gt;
	if (wikEdSkipBrowserTest == false) {&lt;br /&gt;
&lt;br /&gt;
// no id no wikEd&lt;br /&gt;
		if (navigator.appName == null) {&lt;br /&gt;
			wikEdBrowserNotSupported = true;&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
&lt;br /&gt;
// check if it is a Netscape descendant&lt;br /&gt;
			var origin = navigator.appName.match(/Netscape/i);&lt;br /&gt;
			if ( (origin == null) || (origin == '') ) {&lt;br /&gt;
				wikEdBrowserNotSupported = true;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// check the generation&lt;br /&gt;
			var generation = navigator.appVersion.match(/\d+(\.\d+)/);&lt;br /&gt;
			if ( (generation == null) || (generation[0] &amp;lt; 5.0) ) {&lt;br /&gt;
				wikEdBrowserNotSupported = true;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// check if it is a Gecko browser&lt;br /&gt;
			var geckoDate = navigator.userAgent.match(/\bGecko\/(\d+)/i);&lt;br /&gt;
			if (geckoDate != null) {&lt;br /&gt;
				if ( (geckoDate[1] != '') &amp;amp;&amp;amp; (geckoDate[1] &amp;lt; 20050000) ) {&lt;br /&gt;
					wikEdBrowserNotSupported = true;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check Mozilla version&lt;br /&gt;
	if (wikEdBrowserName == 'Mozilla') {&lt;br /&gt;
		if (&lt;br /&gt;
			(wikEdBrowserFlavor == 'Firefox') &amp;amp;&amp;amp; (wikEdBrowserVersion &amp;lt; 1.5) ||&lt;br /&gt;
			(wikEdBrowserFlavor == 'Netscape') &amp;amp;&amp;amp; (wikEdBrowserVersion &amp;lt; 8.0) ||&lt;br /&gt;
			(wikEdBrowserFlavor == 'SeaMonkey') &amp;amp;&amp;amp; (wikEdBrowserVersion &amp;lt; 1.0)&lt;br /&gt;
		) {&lt;br /&gt;
			wikEdBrowserNotSupported = true;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check MSIE version&lt;br /&gt;
	else if ( (wikEdBrowserName == 'MSIE') &amp;amp;&amp;amp; (wikEdBrowserVersion &amp;lt; 7) ) {&lt;br /&gt;
		wikEdBrowserNotSupported = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check Opera version&lt;br /&gt;
	else if ( (wikEdBrowserName == 'Opera') &amp;amp;&amp;amp; (wikEdBrowserVersion &amp;lt; 9) ) {&lt;br /&gt;
		wikEdBrowserNotSupported = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check Safari version&lt;br /&gt;
	else if ( (wikEdBrowserName == 'Safari') &amp;amp;&amp;amp; (wikEdBrowserVersion &amp;lt; 500) ) {&lt;br /&gt;
		wikEdBrowserNotSupported = true;&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdBrowserNotSupported = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// browser or version not supported, set error message and exit&lt;br /&gt;
	if ( (wikEdBrowserNotSupported == true) &amp;amp;&amp;amp; (wikEdSkipBrowserTest == false) ) {&lt;br /&gt;
		WikEdSetLogo('browser');&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// get the textarea and other form elements&lt;br /&gt;
&lt;br /&gt;
// custom form elements&lt;br /&gt;
	if (wikEdCustomEditFormId != '') {&lt;br /&gt;
		wikEdEditForm = document.getElementById(wikEdCustomEditFormId);&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdCustomTextAreaId != '') {&lt;br /&gt;
		wikEdTextarea = document.getElementById(wikEdCustomTextAreaId);&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdCustomSaveButtonId != '') {&lt;br /&gt;
		wikEdSaveButton = document.getElementById(wikEdCustomwikEdSaveButtonId);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// standard form elements&lt;br /&gt;
	if (wikEdTextarea == null) {&lt;br /&gt;
		wikEdTextarea = document.getElementsByName('wpTextbox1')[0];&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdEditForm == null) {&lt;br /&gt;
		wikEdEditForm = document.getElementById('editform');&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdSaveButton == null) {&lt;br /&gt;
		wikEdSaveButton = document.getElementById('wpSave');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// MediaWiki Semantic Forms extension support&lt;br /&gt;
	if (wikEdTextarea == null) {&lt;br /&gt;
		wikEdEditForm = document.getElementsByName('createbox')[0];&lt;br /&gt;
		wikEdTextarea = document.getElementsByName('free_text')[0];&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check if it is an edit page&lt;br /&gt;
	if ( (wikEdTextarea == null) || (wikEdEditForm == null) || (wikEdSaveButton == null) ) {&lt;br /&gt;
&lt;br /&gt;
// check if this is an upload page&lt;br /&gt;
		wikEdTextarea = document.getElementsByName('wpUploadDescription')[0];&lt;br /&gt;
		wikEdEditForm = document.getElementById('mw-upload-form');&lt;br /&gt;
		wikEdSaveButton = document.getElementsByName('wpUpload')[0];&lt;br /&gt;
		if ( (wikEdTextarea == null) || (wikEdEditForm == null) || (wikEdSaveButton == null) ) {&lt;br /&gt;
&lt;br /&gt;
// set error indicator&lt;br /&gt;
			WikEdSetLogo();&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
		wikEdUpload = true;&lt;br /&gt;
		wikEdRearrange = false;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// initialize frame css, main css, buttons, and button bars&lt;br /&gt;
	WikedInitFrameCSS();&lt;br /&gt;
	WikedInitMainCSS();&lt;br /&gt;
	WikedInitButton();&lt;br /&gt;
	WikedInitButtonKey();&lt;br /&gt;
	WikedInitButtonBar();&lt;br /&gt;
&lt;br /&gt;
// define Unicode characters for fixing function&lt;br /&gt;
	WikEdInitUnicode();&lt;br /&gt;
&lt;br /&gt;
// detect if we add a new section (+ tab)&lt;br /&gt;
	if (/(\?|&amp;amp;)section=new\b/.test(window.location.search) == true) {&lt;br /&gt;
		wikEdAddNewSection = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// load the external InstaView script&lt;br /&gt;
	var head = document.getElementsByTagName('head')[0];&lt;br /&gt;
	if ( (wikEdGreasemonkey == false) &amp;amp;&amp;amp; (wikEdLoadInstaView == true) &amp;amp;&amp;amp; (wikEdExternalScripts['instaview.js'] == null) ) {&lt;br /&gt;
		if (typeof(InstaView) == 'undefined') {&lt;br /&gt;
			var script = document.createElement('script');&lt;br /&gt;
			script.type = 'text/javascript';&lt;br /&gt;
			script.src  = wikEdInstaViewSrc;&lt;br /&gt;
			head.appendChild(script);&lt;br /&gt;
		}&lt;br /&gt;
		wikEdExternalScripts['instaview.js'] = true;&lt;br /&gt;
	}&lt;br /&gt;
	else if ( (wikEdGreasemonkey == false) || (wikEdLoadInstaView != true) ) {&lt;br /&gt;
		wikEdUseLocalPreview = false;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// get initial textarea height&lt;br /&gt;
	wikEdTextareaHeight = wikEdTextarea.offsetHeight;&lt;br /&gt;
&lt;br /&gt;
// setup the undo buffers and save the original text for local changes view&lt;br /&gt;
	wikEdOrigVersion = wikEdTextarea.value;&lt;br /&gt;
&lt;br /&gt;
// add stylesheet definitions&lt;br /&gt;
	var mainStyle = new WikEdStyleSheet();&lt;br /&gt;
	var rules = '';&lt;br /&gt;
	for (var ruleName in wikEdMainCSS) {&lt;br /&gt;
		var ruleStyle = wikEdMainCSS[ruleName];&lt;br /&gt;
		if (typeof(ruleStyle) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		ruleStyle = ruleStyle.replace(/\{wikEdGrip\}/g, wikEdImage['grip']);&lt;br /&gt;
		rules += ruleName + ' {' + ruleStyle + '}\n';&lt;br /&gt;
	}&lt;br /&gt;
	mainStyle.addRules(rules);&lt;br /&gt;
&lt;br /&gt;
// get button settings from saved settings&lt;br /&gt;
	wikEdUsing = WikEdGetSavedSetting('wikEdSummaryUsing', wikEdUsingPreset);&lt;br /&gt;
	wikEdUseWikEd = ! WikEdGetSavedSetting('wikEdUseClassic', ! wikEdUseWikEdPreset);&lt;br /&gt;
	wikEdHighlightSyntax = ! WikEdGetSavedSetting('wikEdSyntaxOff', ! wikEdHighlightSyntaxPreset);&lt;br /&gt;
	wikEdFullScreenMode = WikEdGetSavedSetting('wikEdFullscreen', wikEdFullScreenModePreset);&lt;br /&gt;
	wikEdCloseToolbar = WikEdGetSavedSetting('wikEdCloseToolbar', wikEdCloseToolbarPreset);&lt;br /&gt;
	wikEdRefHide = WikEdGetSavedSetting('wikEdRefHide', wikEdRefHidePreset);&lt;br /&gt;
	wikEdDiff = WikEdGetSavedSetting('wikEdDiff', wikEdDiffPreset);&lt;br /&gt;
	wikEdTableMode = false; // {{TABLE}}&lt;br /&gt;
&lt;br /&gt;
// no fullscreen for preview and upload pages&lt;br /&gt;
	if ( (wikEdUpload == true) || (window.location.search.match(/(\?|&amp;amp;)action=submit\b/) != null) ) {&lt;br /&gt;
		wikEdFullScreenMode = false;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// disable wikEd for js pages&lt;br /&gt;
	if (/\.js$/.test(wikEdWikiGlobals['wgTitle']) == true) {&lt;br /&gt;
		if ( (wikEdWikiGlobals['wgCanonicalNamespace'] != 'User_talk') &amp;amp;&amp;amp; (wikEdWikiGlobals['wgCanonicalNamespace'] != 'Talk') ) {&lt;br /&gt;
			if (wikEdOrigVersion.length &amp;gt; 20000) {&lt;br /&gt;
				wikEdUseWikEd = false;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				wikEdHighlightSyntax = false;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// preset frame related styles to avoid browser crashes&lt;br /&gt;
	var styleFrameBody;&lt;br /&gt;
	var styleFrameWrapperPosition;&lt;br /&gt;
	var styleFrameWrapperVisibility;&lt;br /&gt;
	var styleDebugWrapperPosition;&lt;br /&gt;
	var styleDebugWrapperVisibility;&lt;br /&gt;
	var styleTextareaWrapperPosition;&lt;br /&gt;
	var styleTextareaWrapperVisibility;&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		styleFrameBody = 'style=&amp;quot;display: block;&amp;quot; ';&lt;br /&gt;
		styleFrameWrapperPosition = 'static';&lt;br /&gt;
		styleFrameWrapperVisibility = 'visible';&lt;br /&gt;
		styleTextareaWrapperPosition = 'absolute';&lt;br /&gt;
		styleTextareaWrapperVisibility = 'hidden';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		styleFrameBody = 'style=&amp;quot;display: none;&amp;quot; ';&lt;br /&gt;
		styleFrameWrapperPosition = 'absolute';&lt;br /&gt;
		styleFrameWrapperVisibility = 'hidden';&lt;br /&gt;
		styleTextareaWrapperPosition = 'static';&lt;br /&gt;
		styleTextareaWrapperVisibility = 'visible';&lt;br /&gt;
	}&lt;br /&gt;
	var inputWrapperClass;&lt;br /&gt;
	if (wikEdFullScreenMode == true) {&lt;br /&gt;
		inputWrapperClass = 'wikEdInputWrapperFull';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		inputWrapperClass = 'wikEdInputWrapper';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// create wikEd element wrappers&lt;br /&gt;
&lt;br /&gt;
// create input wrapper, this contains the whole fullscreen content&lt;br /&gt;
	wikEdInputWrapper = document.createElement('div');&lt;br /&gt;
	wikEdInputWrapper.id = 'wikEdInputWrapper';&lt;br /&gt;
	wikEdInputWrapper.className = inputWrapperClass;&lt;br /&gt;
	wikEdTextarea.parentNode.insertBefore(wikEdInputWrapper, wikEdTextarea);&lt;br /&gt;
&lt;br /&gt;
// create toolbar wrapper&lt;br /&gt;
	wikEdToolbarWrapper = document.createElement('div');&lt;br /&gt;
	wikEdToolbarWrapper.id = 'wikEdToolbarWrapper';&lt;br /&gt;
	wikEdToolbarWrapper.className = 'wikEdToolbarWrapper';&lt;br /&gt;
	wikEdInputWrapper.appendChild(wikEdToolbarWrapper);&lt;br /&gt;
&lt;br /&gt;
// create captcha wrapper&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdCaptchaWrapper = document.createElement('div');&lt;br /&gt;
		wikEdCaptchaWrapper.id = 'wikEdCaptchaWrapper';&lt;br /&gt;
		wikEdCaptchaWrapper.className = 'wikEdCaptchaWrapper';&lt;br /&gt;
		wikEdInputWrapper.appendChild(wikEdCaptchaWrapper);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// create debug textarea wrapper&lt;br /&gt;
	wikEdDebugWrapper = document.createElement('div');&lt;br /&gt;
	wikEdDebugWrapper.id = 'wikEdDebugWrapper';&lt;br /&gt;
	wikEdDebugWrapper.className = 'wikEdDebugWrapper';&lt;br /&gt;
	wikEdDebugWrapper.style.position = 'static';&lt;br /&gt;
	wikEdDebugWrapper.style.visibility = 'hidden';&lt;br /&gt;
	wikEdInputWrapper.appendChild(wikEdDebugWrapper);&lt;br /&gt;
&lt;br /&gt;
// create textarea wrapper&lt;br /&gt;
	wikEdTextareaWrapper = document.createElement('div');&lt;br /&gt;
	wikEdTextareaWrapper.id = 'wikEdTextareaWrapper';&lt;br /&gt;
	wikEdTextareaWrapper.className = 'wikEdTextareaWrapper';&lt;br /&gt;
	wikEdTextareaWrapper.style.position = styleTextareaWrapperPosition;&lt;br /&gt;
	wikEdTextareaWrapper.style.visibility = styleTextareaWrapperVisibility;&lt;br /&gt;
	wikEdInputWrapper.appendChild(wikEdTextareaWrapper);&lt;br /&gt;
&lt;br /&gt;
// create frame wrapper&lt;br /&gt;
	wikEdFrameWrapper = document.createElement('div');&lt;br /&gt;
	wikEdFrameWrapper.id = 'wikEdFrameWrapper';&lt;br /&gt;
	wikEdFrameWrapper.className = 'wikEdFrameWrapper';&lt;br /&gt;
	wikEdFrameWrapper.style.position = styleFrameWrapperPosition;&lt;br /&gt;
	wikEdFrameWrapper.style.visibility = styleFrameWrapperVisibility;&lt;br /&gt;
	wikEdInputWrapper.appendChild(wikEdFrameWrapper);&lt;br /&gt;
&lt;br /&gt;
// create console wrapper for buttons, summary, and submit&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdConsoleWrapper = document.createElement('div');&lt;br /&gt;
		wikEdConsoleWrapper.id = 'wikEdConsoleWrapper';&lt;br /&gt;
		wikEdConsoleWrapper.className = 'wikEdConsoleWrapper';&lt;br /&gt;
		wikEdInputWrapper.appendChild(wikEdConsoleWrapper);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// create buttons wrapper for wikEd buttons&lt;br /&gt;
	wikEdButtonsWrapper = document.createElement('div');&lt;br /&gt;
	wikEdButtonsWrapper.id = 'wikEdButtonsWrapper';&lt;br /&gt;
	wikEdButtonsWrapper.className = 'wikEdButtonsWrapper';&lt;br /&gt;
	wikEdInputWrapper.insertBefore(wikEdButtonsWrapper, wikEdTextareaWrapper);&lt;br /&gt;
&lt;br /&gt;
// create summary wrapper for summary, minor edit, and watch this page&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdSummaryWrapper = document.createElement('div');&lt;br /&gt;
		wikEdSummaryWrapper.id = 'wikEdSummaryWrapper';&lt;br /&gt;
&lt;br /&gt;
// add summary above the edit field if we add a new section (+ tab)&lt;br /&gt;
		if (wikEdAddNewSection == true) {&lt;br /&gt;
			wikEdSummaryWrapper.className = 'wikEdSummaryWrapperTop';&lt;br /&gt;
			wikEdInputWrapper.insertBefore(wikEdSummaryWrapper, wikEdFrameWrapper);&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
		wikEdSummaryWrapper.className = 'wikEdSummaryWrapper';&lt;br /&gt;
			wikEdConsoleWrapper.appendChild(wikEdSummaryWrapper);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// create summary input wrapper&lt;br /&gt;
		wikEdSummaryInputWrapper = document.createElement('div');&lt;br /&gt;
		wikEdSummaryInputWrapper.id = 'wikEdSummaryInputWrapper';&lt;br /&gt;
		wikEdSummaryInputWrapper.className = 'wikEdSummaryInputWrapper';&lt;br /&gt;
		wikEdSummaryWrapper.appendChild(wikEdSummaryInputWrapper);&lt;br /&gt;
&lt;br /&gt;
// create minor edit and watch page wrapper&lt;br /&gt;
		wikEdSummaryOptions = document.createElement('div');&lt;br /&gt;
		wikEdSummaryOptions.id = 'wikEdSummaryOptions';&lt;br /&gt;
		wikEdSummaryOptions.className = 'wikEdSummaryOptions';&lt;br /&gt;
		wikEdSummaryWrapper.appendChild(wikEdSummaryOptions);&lt;br /&gt;
&lt;br /&gt;
// create submit wrapper for submit elements&lt;br /&gt;
		wikEdSubmitWrapper = document.createElement('div');&lt;br /&gt;
		wikEdSubmitWrapper.id = 'wikEdSubmitWrapper';&lt;br /&gt;
		wikEdSubmitWrapper.className = 'wikEdSubmitWrapper';&lt;br /&gt;
		wikEdConsoleWrapper.appendChild(wikEdSubmitWrapper);&lt;br /&gt;
&lt;br /&gt;
// create submit buttons wrapper for submit buttons and help links&lt;br /&gt;
		wikEdSubmitButtonsWrapper = document.createElement('div');&lt;br /&gt;
		wikEdSubmitButtonsWrapper.id = 'wikEdSubmitButtonsWrapper';&lt;br /&gt;
		wikEdSubmitButtonsWrapper.className = 'wikEdSubmitButtonsWrapper';&lt;br /&gt;
		wikEdSubmitWrapper.appendChild(wikEdSubmitButtonsWrapper);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// create preview wrapper for preview and diff box&lt;br /&gt;
	wikEdLocalPrevWrapper = document.createElement('div');&lt;br /&gt;
	wikEdLocalPrevWrapper.id = 'wikEdLocalPrevWrapper';&lt;br /&gt;
	wikEdLocalPrevWrapper.className = 'wikEdLocalPrevWrapper';&lt;br /&gt;
	wikEdLocalPrevWrapper.style.display = 'none';&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdInputWrapper.appendChild(wikEdLocalPrevWrapper);&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdSaveButton.parentNode.appendChild(wikEdLocalPrevWrapper);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// create insert wrapper for insert special chars links&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdInsertWrapper = document.createElement('div');&lt;br /&gt;
		wikEdInsertWrapper.id = 'wikEdInsertWrapper';&lt;br /&gt;
		wikEdInsertWrapper.className = 'wikEdInsertWrapper';&lt;br /&gt;
		wikEdInputWrapper.appendChild(wikEdInsertWrapper);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// append input wrapper to document&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdEditForm.insertBefore(wikEdInputWrapper, wikEdEditForm.firstChild);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// fill the wrappers&lt;br /&gt;
&lt;br /&gt;
// wikEdDiff enhanced ajax diff&lt;br /&gt;
	if (typeof(wikEdDiffTable) == 'object') {&lt;br /&gt;
		if ( (wikEdDiffTable != null) &amp;amp;&amp;amp; (wikEdDiff == true) ) {&lt;br /&gt;
			if (typeof(WikEdDiff) == 'function') {&lt;br /&gt;
				WikEdDiff();&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add toolbar to toolbar wrapper&lt;br /&gt;
	var wpToolbar = document.getElementById('toolbar');&lt;br /&gt;
	if (wikEdCloseToolbar == true) {&lt;br /&gt;
		wikEdToolbarWrapper.style.display = 'none';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdToolbarWrapper.style.display = 'block';&lt;br /&gt;
	}&lt;br /&gt;
	if (wpToolbar != null) {&lt;br /&gt;
		wikEdToolbarWrapper.appendChild(wpToolbar);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add elements between form and textarea to captcha wrapper&lt;br /&gt;
	if (wikEdUpload != true) {&lt;br /&gt;
		var node = wikEdInputWrapper.nextSibling;&lt;br /&gt;
		while (node != null) {&lt;br /&gt;
			if (node == wikEdTextarea) {&lt;br /&gt;
				break;&lt;br /&gt;
			}&lt;br /&gt;
			var nextNode = node.nextSibling;&lt;br /&gt;
			wikEdCaptchaWrapper.appendChild(node);&lt;br /&gt;
			node = nextNode;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// call wikibits:mwSetupToolbar() now because it would terminate with an error after setting textarea to display: none&lt;br /&gt;
	if (wpToolbar != null) {&lt;br /&gt;
		if (wpToolbar.getElementsByTagName('IMG').length == 0) {&lt;br /&gt;
			if (typeof(mwSetupToolbar) == 'function') {&lt;br /&gt;
				mwSetupToolbar();&lt;br /&gt;
				WikEdRemoveEventListener(window, 'load', mwSetupToolbar, false);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	var wpSummary = document.getElementsByName('wpSummary');&lt;br /&gt;
	if (wpSummary.length &amp;gt; 0) {&lt;br /&gt;
		wikEdEditOptions = wpSummary[0].parentNode;&lt;br /&gt;
		wikEdEditOptions.className = 'wikEdEditOptions';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add summary elements to summary input wrapper&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdSummaryLabel = document.getElementById('wpSummaryLabel');&lt;br /&gt;
		if (wikEdSummaryLabel != null) {&lt;br /&gt;
			wikEdSummaryInputWrapper.appendChild(wikEdSummaryLabel);&lt;br /&gt;
		}&lt;br /&gt;
		wikEdSummaryText = document.getElementsByName('wpSummary')[0];&lt;br /&gt;
		wikEdSummaryInputWrapper.appendChild(wikEdSummaryText);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// move editpage-copywarn out of summary wrapper&lt;br /&gt;
// needs to be done before appending editOptions to summary wrapper otherwise a linebreak stays (Mozilla bug)&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		var copywarn = document.getElementById('editpage-copywarn');&lt;br /&gt;
		if (copywarn != null) {&lt;br /&gt;
			wikEdInputWrapper.parentNode.insertBefore(copywarn, wikEdInputWrapper.nextSibling);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add submit buttons to submit wrapper&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		var wpEditButtons = wikEdSaveButton.parentNode;&lt;br /&gt;
		wikEdSubmitWrapper.insertBefore(wpEditButtons, wikEdSubmitButtonsWrapper);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// move edit options after submit buttons; crashes Mozilla when appended after filling the iframe&lt;br /&gt;
	wikEdDiffPreviewButton = document.getElementById('wpDiff');&lt;br /&gt;
	wikEdPreviewButton = document.getElementById('wpPreview');&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		if (wikEdDiffPreviewButton != null) {&lt;br /&gt;
			wikEdDiffPreviewButton.parentNode.insertBefore(wikEdEditOptions, wikEdDiffPreviewButton.nextSibling);&lt;br /&gt;
&lt;br /&gt;
// remove linebreak before minor edit checkbox&lt;br /&gt;
			var node = wikEdEditOptions.firstChild;&lt;br /&gt;
			while (node != null) {&lt;br /&gt;
				if (node.tagName != null) {&lt;br /&gt;
					if (node.tagName == 'BR') {&lt;br /&gt;
						node.parentNode.removeChild(node);&lt;br /&gt;
						break;&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				node = node.nextSibling;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// correct tab order between check boxes and submits&lt;br /&gt;
			if (wikEdSubmitTabOrder == true) {&lt;br /&gt;
				var wpMinoredit = document.getElementById('wpMinoredit');&lt;br /&gt;
				var wpWatchthis = document.getElementById('wpWatchthis');&lt;br /&gt;
				if ( (wpMinoredit != null) &amp;amp;&amp;amp; (wpWatchthis != null) ) {&lt;br /&gt;
					var tabIndex = [];&lt;br /&gt;
					tabIndex.push(wpMinoredit.tabIndex, wpWatchthis.tabIndex, wikEdSaveButton.tabIndex, wikEdPreviewButton.tabIndex, wikEdDiffPreviewButton.tabIndex);&lt;br /&gt;
					wikEdSaveButton.tabIndex = tabIndex.shift();&lt;br /&gt;
					wikEdPreviewButton.tabIndex = tabIndex.shift();&lt;br /&gt;
					wikEdDiffPreviewButton.tabIndex = tabIndex.shift();&lt;br /&gt;
					wpMinoredit.tabIndex = tabIndex.shift();&lt;br /&gt;
					wpWatchthis.tabIndex = tabIndex.shift();&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// create debug textarea and add to debug wrapper&lt;br /&gt;
	wikEdDebug = document.createElement('textarea');&lt;br /&gt;
	wikEdDebug.rows = 20;&lt;br /&gt;
	wikEdDebug.style.display = 'none';&lt;br /&gt;
	wikEdDebugWrapper.appendChild(wikEdDebug);&lt;br /&gt;
&lt;br /&gt;
// add textarea to textarea wrapper&lt;br /&gt;
	wikEdTextareaWrapper.appendChild(wikEdTextarea);&lt;br /&gt;
&lt;br /&gt;
// add edit-frame to frame wrapper&lt;br /&gt;
// any DOM changes to a starting iframe in designmode may crash mozilla, including DOM move, display: none; and position: absolute;&lt;br /&gt;
&lt;br /&gt;
// create the iframe&lt;br /&gt;
	var html = '';&lt;br /&gt;
	html += '&amp;lt;div id=&amp;quot;wikEdFrameOuter&amp;quot; class=&amp;quot;wikEdFrameOuter&amp;quot;&amp;gt;';&lt;br /&gt;
	html += '&amp;lt;div id=&amp;quot;wikEdFrameInner&amp;quot; class=&amp;quot;wikEdFrameInner&amp;quot;&amp;gt;';&lt;br /&gt;
	html += '&amp;lt;iframe id=&amp;quot;wikEdFrame&amp;quot; class=&amp;quot;wikEdFrame&amp;quot; name=&amp;quot;wikEdFrame&amp;quot; style=&amp;quot;height: ' + wikEdTextareaHeight + 'px;&amp;quot;&amp;gt;&amp;lt;/iframe&amp;gt;';&lt;br /&gt;
	html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
	html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
	wikEdFrameWrapper.innerHTML = html;&lt;br /&gt;
	wikEdInputWrapper.insertBefore(wikEdTextareaWrapper, wikEdFrameWrapper);&lt;br /&gt;
&lt;br /&gt;
// fill the frame with content&lt;br /&gt;
	html = '';&lt;br /&gt;
	html += '&amp;lt;html id=&amp;quot;wikEdFrameHtml&amp;quot;&amp;gt;&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
// Mozilla crashes when designmode is turned on before the frame has loaded completely&lt;br /&gt;
	if (wikEdMozilla == true) {&lt;br /&gt;
		html += '&amp;lt;body id=&amp;quot;wikEdFrameBody&amp;quot; class=&amp;quot;wikedFrameBody&amp;quot;' + styleFrameBody + 'onload=&amp;quot;window.document.designMode = \'on\'; window.document.execCommand(\'styleWithCSS\', false, false);&amp;quot;&amp;gt;';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		html += '&amp;lt;body id=&amp;quot;wikEdFrameBody&amp;quot; class=&amp;quot;wikedFrameBody&amp;quot;' + styleFrameBody + '&amp;gt;';&lt;br /&gt;
	}&lt;br /&gt;
	html += '&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
	wikEdFrame = document.getElementById('wikEdFrame');&lt;br /&gt;
	wikEdFrameWindow = wikEdFrame.contentWindow;&lt;br /&gt;
	wikEdFrameDocument = wikEdFrameWindow.document;&lt;br /&gt;
&lt;br /&gt;
// turn on designmode for non-Mozilla before adding content&lt;br /&gt;
	if (wikEdMozilla == false) {&lt;br /&gt;
		wikEdFrameDocument.designMode = 'on';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// fill iframe with content&lt;br /&gt;
	wikEdFrameDocument.open();&lt;br /&gt;
	wikEdFrameDocument.write(html);&lt;br /&gt;
	wikEdFrameDocument.close();&lt;br /&gt;
	wikEdFrameBody = wikEdFrameDocument.body;&lt;br /&gt;
&lt;br /&gt;
// generate button bars and add them to the buttons wrapper&lt;br /&gt;
// form wrapper has been added against summary input submit defaulting to this button&lt;br /&gt;
	wikEdButtonBarFormat = MakeButtonBar(wikEdButtonBar['format']);&lt;br /&gt;
	wikEdButtonsWrapper.appendChild(wikEdButtonBarFormat);&lt;br /&gt;
&lt;br /&gt;
	wikEdButtonBarControl = MakeButtonBar(wikEdButtonBar['control']);&lt;br /&gt;
	wikEdButtonsWrapper.appendChild(wikEdButtonBarControl);&lt;br /&gt;
&lt;br /&gt;
	if (wikEdButtonBar['custom1'][6].length &amp;gt; 0) {&lt;br /&gt;
		wikEdButtonBarCustom1 = MakeButtonBar(wikEdButtonBar['custom1']);&lt;br /&gt;
		wikEdButtonsWrapper.appendChild(wikEdButtonBarCustom1);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	wikEdButtonBarFind = MakeButtonBar(wikEdButtonBar['find']);&lt;br /&gt;
	wikEdButtonsWrapper.appendChild(wikEdButtonBarFind);&lt;br /&gt;
&lt;br /&gt;
	wikEdButtonBarFix = MakeButtonBar(wikEdButtonBar['fix']);&lt;br /&gt;
	wikEdButtonsWrapper.appendChild(wikEdButtonBarFix);&lt;br /&gt;
&lt;br /&gt;
	if (wikEdButtonBar['custom2'][6].length &amp;gt; 0) {&lt;br /&gt;
		wikEdButtonBarCustom2 = MakeButtonBar(wikEdButtonBar['custom2']);&lt;br /&gt;
		wikEdButtonsWrapper.appendChild(wikEdButtonBarCustom2);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	var br = document.createElement('br');&lt;br /&gt;
	br.style.clear = 'both';&lt;br /&gt;
	wikEdButtonsWrapper.appendChild(br);&lt;br /&gt;
&lt;br /&gt;
	wikEdCaseSensitive = document.getElementById('wikEdCaseSensitive');&lt;br /&gt;
	wikEdRegExp = document.getElementById('wikEdRegExp');&lt;br /&gt;
	wikEdFindAhead = document.getElementById('wikEdFindAhead');&lt;br /&gt;
	wikEdFindText = document.getElementById('wikEdFindText');&lt;br /&gt;
	wikEdReplaceText = document.getElementById('wikEdReplaceText');&lt;br /&gt;
&lt;br /&gt;
// add preview box top bar to submit wrapper&lt;br /&gt;
	wikEdButtonBarPreview = MakeButtonBar(wikEdButtonBar['preview']);&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		wikEdSubmitWrapper.insertBefore(wikEdButtonBarPreview, wikEdSubmitWrapper.firstChild);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add preview box and its bottom bar to preview wrapper&lt;br /&gt;
	if (wikEdLocalPrevWrapper != null) {&lt;br /&gt;
		var div = document.createElement('div');&lt;br /&gt;
		div.id = 'wikEdPreviewBoxOuter';&lt;br /&gt;
		div.className = 'wikEdPreviewBoxOuter';&lt;br /&gt;
		wikEdLocalPrevWrapper.appendChild(div);&lt;br /&gt;
&lt;br /&gt;
		wikEdPreviewBox = document.createElement('div');&lt;br /&gt;
		wikEdPreviewBox.id = 'wikEdPreviewBox';&lt;br /&gt;
		wikEdPreviewBox.className = 'wikEdPreviewBox';&lt;br /&gt;
		div.appendChild(wikEdPreviewBox);&lt;br /&gt;
&lt;br /&gt;
		wikEdButtonBarPreview2 = MakeButtonBar(wikEdButtonBar['preview2']);&lt;br /&gt;
		wikEdLocalPrevWrapper.appendChild(wikEdButtonBarPreview2);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add jump box to standard preview&lt;br /&gt;
	var wikiPreview = document.getElementById('wikiPreview');&lt;br /&gt;
	if (wikiPreview != null) {&lt;br /&gt;
		if (wikiPreview.firstChild != null) {&lt;br /&gt;
			wikEdButtonBarJump = MakeButtonBar(wikEdButtonBar['jump']);&lt;br /&gt;
			wikiPreview.insertBefore(wikEdButtonBarJump, wikiPreview.firstChild);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add insert special chars to insert wrapper&lt;br /&gt;
	if (wikEdInsertWrapper != null) {&lt;br /&gt;
		var wpSpecialchars = document.getElementById('editpage-specialchars');&lt;br /&gt;
		if (wpSpecialchars != null) {&lt;br /&gt;
			wikEdInsertWrapper.appendChild(wpSpecialchars);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// wrappers filled&lt;br /&gt;
&lt;br /&gt;
// add local preview button next to submit button&lt;br /&gt;
	wikEdLocalPreview = document.createElement('button');&lt;br /&gt;
	wikEdLocalPreview.id = 'wikEdLocalPreview';&lt;br /&gt;
	wikEdLocalPreview.title = wikEdText['wikEdLocalPreview title'];&lt;br /&gt;
	wikEdLocalPreview.className = 'wikEdLocalPreview';&lt;br /&gt;
&lt;br /&gt;
	var localPreviewImg = document.createElement('img');&lt;br /&gt;
	localPreviewImg.id = 'wikEdLocalPreviewImg';&lt;br /&gt;
	localPreviewImg.src = wikEdImage['preview'];&lt;br /&gt;
	localPreviewImg.alt = wikEdText['wikEdLocalPreviewImg alt'];&lt;br /&gt;
	localPreviewImg.title = wikEdText['wikEdLocalPreviewImg title'];&lt;br /&gt;
	wikEdLocalPreview.appendChild(localPreviewImg);&lt;br /&gt;
&lt;br /&gt;
	if (wikEdPreviewButton != null) {&lt;br /&gt;
		wikEdPreviewButton.parentNode.insertBefore(wikEdLocalPreview, wikEdPreviewButton.nextSibling);&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdSaveButton.parentNode.insertBefore(wikEdLocalPreview, wikEdSaveButton.nextSibling);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add local diff button next to submit button&lt;br /&gt;
	if (wikEdDiffPreviewButton != null) {&lt;br /&gt;
		wikEdLocalDiff = document.createElement('button');&lt;br /&gt;
		wikEdLocalDiff.id = 'wikEdLocalDiff';&lt;br /&gt;
		wikEdLocalDiff.title = wikEdText['wikEdLocalDiff title'];&lt;br /&gt;
		wikEdLocalDiff.className = 'wikEdLocalDiff';&lt;br /&gt;
&lt;br /&gt;
		var localDiffImg = document.createElement('img');&lt;br /&gt;
		localDiffImg.id = 'wikEdLocalDiffImg';&lt;br /&gt;
		localDiffImg.src = wikEdImage['diff'];&lt;br /&gt;
		localDiffImg.alt = wikEdText['wikEdLocalDiffImg alt'];&lt;br /&gt;
		localDiffImg.title = wikEdText['wikEdLocalDiffImg title'];&lt;br /&gt;
&lt;br /&gt;
		wikEdLocalDiff.appendChild(localDiffImg);&lt;br /&gt;
		wikEdDiffPreviewButton.parentNode.insertBefore(wikEdLocalDiff, wikEdDiffPreviewButton.nextSibling);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// initialize image buttons&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdDiff'),            'wikEdDiff', null, wikEdDiff);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdRefHide'),         'wikEdRefHide', null, wikEdRefHide);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdHighlightSyntax'), 'wikEdHighlightSyntax', null, wikEdHighlightSyntax);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdUseWikEd'),        'wikEdUseWikEd', null, wikEdUseWikEd);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdCloseToolbar'),    'wikEdCloseToolbar', null, wikEdCloseToolbar);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdFullScreen'),      'wikEdFullScreen', null, wikEdFullScreenMode);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdUsing'),           'wikEdUsing', null, wikEdUsing);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdCaseSensitive'),   'wikEdCaseSensitive', null, false);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdRegExp'),          'wikEdRegExp', null, false);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdFindAhead'),       'wikEdFindAhead', null, wikEdFindAheadSelected);&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdClose'),           'wikEdClose', null, false, 'wikEdButton');&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdClose2'),          'wikEdClose2', null, false, 'wikEdButton');&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdTableMode'),       'wikEdTableMode', null, wikEdTableMode); // {{TABLE}}&lt;br /&gt;
&lt;br /&gt;
// hide typo fix button until typo fix rules are loaded and parsed&lt;br /&gt;
	document.getElementById('wikEdFixRegExTypo').style.display = 'none';&lt;br /&gt;
&lt;br /&gt;
// add a clear summary button left to the summary input field&lt;br /&gt;
	if (wikEdSummaryText != null) {&lt;br /&gt;
		var clearSummaryForm = document.createElement('form');&lt;br /&gt;
		clearSummaryForm.id = 'wikEdClearSummaryForm';&lt;br /&gt;
		clearSummaryForm.className = 'wikEdClearSummaryForm';&lt;br /&gt;
		wikEdSummaryText.parentNode.insertBefore(clearSummaryForm, wikEdSummaryText);&lt;br /&gt;
&lt;br /&gt;
		wikEdClearSummary = document.createElement('button');&lt;br /&gt;
		wikEdClearSummary.id = 'wikEdClearSummary';&lt;br /&gt;
		wikEdClearSummary.className = 'wikEdClearSummary';&lt;br /&gt;
		wikEdClearSummary.alt = wikEdText['wikEdClearSummary alt'];&lt;br /&gt;
		wikEdClearSummary.title = wikEdText['wikEdClearSummary title'];&lt;br /&gt;
		wikEdClearSummary.style.height = (wikEdSummaryText.clientHeight + 1) +'px';&lt;br /&gt;
		clearSummaryForm.appendChild(wikEdClearSummary);&lt;br /&gt;
&lt;br /&gt;
		wikEdClearSummaryImg = document.createElement('img');&lt;br /&gt;
		wikEdClearSummaryImg.id = 'wikEdClearSummaryImg';&lt;br /&gt;
		wikEdClearSummaryImg.src = wikEdImage['clearSummary'];&lt;br /&gt;
		wikEdClearSummaryImg.alt = 'Clear summary';&lt;br /&gt;
		wikEdClearSummary.appendChild(wikEdClearSummaryImg);&lt;br /&gt;
&lt;br /&gt;
// remember button width, might be without image&lt;br /&gt;
		wikEdClearSummaryWidth = wikEdClearSummary.offsetWidth;&lt;br /&gt;
&lt;br /&gt;
// make the summary a combo box&lt;br /&gt;
		var summaryComboInput = document.createElement('span');&lt;br /&gt;
		summaryComboInput.id = 'wikEdSummaryComboInput';&lt;br /&gt;
		summaryComboInput.className = 'wikEdSummaryComboInput';&lt;br /&gt;
		summaryComboInput = wikEdSummaryText.parentNode.insertBefore(summaryComboInput, wikEdSummaryText);&lt;br /&gt;
&lt;br /&gt;
		wikEdSummaryText = wikEdSummaryText.parentNode.removeChild(wikEdSummaryText);&lt;br /&gt;
		wikEdSummaryText.className = 'wikEdSummaryText';&lt;br /&gt;
		wikEdSummaryTextWidth = wikEdSummaryWrapper.offsetWidth - wikEdSummaryInputWrapper.offsetWidth;&lt;br /&gt;
		if (wikEdSummaryTextWidth &amp;lt; 150) {&lt;br /&gt;
			wikEdSummaryTextWidth = 150;&lt;br /&gt;
		}&lt;br /&gt;
		wikEdSummaryText.style.width = wikEdSummaryTextWidth + 'px';&lt;br /&gt;
&lt;br /&gt;
		wikEdSummarySelect = document.createElement('select');&lt;br /&gt;
		wikEdSummarySelect.id = 'wikEdSummarySelect';&lt;br /&gt;
		wikEdSummarySelect.className = 'wikEdSummarySelect';&lt;br /&gt;
&lt;br /&gt;
		summaryComboInput.appendChild(wikEdSummaryText);&lt;br /&gt;
		summaryComboInput.appendChild(wikEdSummarySelect);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// shorten submit button texts&lt;br /&gt;
	if (wikEdPreviewButton != null) {&lt;br /&gt;
		wikEdPreviewButton.value = wikEdText['shortenedPreview'];&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdDiffPreviewButton != null) {&lt;br /&gt;
		wikEdDiffPreviewButton.value = wikEdText['shortenedChanges'];&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set up combo input boxes with history&lt;br /&gt;
	wikEdFieldHist ['find'] = [];&lt;br /&gt;
	wikEdSavedName['find'] = 'wikEdFindHistory';&lt;br /&gt;
	wikEdInputElement['find'] = new Object(wikEdFindText);&lt;br /&gt;
	wikEdSelectElement['find'] = new Object(document.getElementById('wikEdFindSelect'));&lt;br /&gt;
	wikEdSelectElement['find'].title = wikEdText['wikEdFindSelect title'];&lt;br /&gt;
&lt;br /&gt;
	wikEdFieldHist ['replace'] = [];&lt;br /&gt;
	wikEdSavedName['replace'] = 'wikEdReplaceHistory';&lt;br /&gt;
	wikEdInputElement['replace'] = new Object(wikEdReplaceText);&lt;br /&gt;
	wikEdSelectElement['replace'] = new Object(document.getElementById('wikEdReplaceSelect'));&lt;br /&gt;
	wikEdSelectElement['replace'].title = wikEdText['wikEdReplaceSelect title'];&lt;br /&gt;
&lt;br /&gt;
	if (wikEdSummaryInputWrapper != null) {&lt;br /&gt;
		wikEdFieldHist ['summary'] = [];&lt;br /&gt;
		wikEdSavedName['summary'] = 'wikEdSummaryHistory';&lt;br /&gt;
		wikEdInputElement['summary'] = new Object(wikEdSummaryText);&lt;br /&gt;
		wikEdSelectElement['summary'] = new Object(document.getElementById('wikEdSummarySelect'));&lt;br /&gt;
		wikEdSelectElement['summary'].title = wikEdText['wikEdSummarySelect title'];&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// adjust the select field widths to that of the text input fields&lt;br /&gt;
	WikEdResizeComboInput('find');&lt;br /&gt;
	WikEdResizeComboInput('replace');&lt;br /&gt;
	WikEdResizeComboInput('summary');&lt;br /&gt;
&lt;br /&gt;
// hide the button bars per saved setting&lt;br /&gt;
	WikEdButtonBarInit(wikEdButtonBarFormat);&lt;br /&gt;
	WikEdButtonBarInit(wikEdButtonBarControl);&lt;br /&gt;
	if (wikEdButtonBarCustom1 != null) {&lt;br /&gt;
		WikEdButtonBarInit(wikEdButtonBarCustom1);&lt;br /&gt;
	}&lt;br /&gt;
	WikEdButtonBarInit(wikEdButtonBarFind);&lt;br /&gt;
	WikEdButtonBarInit(wikEdButtonBarFix);&lt;br /&gt;
	if (wikEdButtonBarCustom2 != null) {&lt;br /&gt;
		WikEdButtonBarInit(wikEdButtonBarCustom2);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// display only the textarea or the iframe, dont change the frame&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		WikEdSetEditArea(true, true);&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		WikEdSetEditArea(false, true);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add a link to the wikEd help page&lt;br /&gt;
	if (wikEdRearrange == true) {&lt;br /&gt;
		if ( (wikEdHelpPageLink != '') &amp;amp;&amp;amp; (wikEdHelpPageLink != null) ) {&lt;br /&gt;
			var editHelpParent = wikEdDiffPreviewButton;&lt;br /&gt;
			while (editHelpParent != null) {&lt;br /&gt;
				if (editHelpParent.tagName == 'SPAN') {&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
				editHelpParent = editHelpParent.nextSibling;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			if (editHelpParent != null) {&lt;br /&gt;
				var editHelp = editHelpParent.lastChild;&lt;br /&gt;
				while (editHelp != null) {&lt;br /&gt;
					if (editHelp.tagName == 'A') {&lt;br /&gt;
						break;&lt;br /&gt;
					}&lt;br /&gt;
					editHelp = editHelp.previousSibling;&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
				if (editHelp != null) {&lt;br /&gt;
					wikEdHelpSpan = document.createElement('span');&lt;br /&gt;
					wikEdHelpSpan.id = 'wikEdHelpSpan';&lt;br /&gt;
					wikEdHelpSpan.className = 'wikEdHelpSpan';&lt;br /&gt;
					wikEdHelpSpan.innerHTML = wikEdHelpPageLink;&lt;br /&gt;
					editHelpParent.insertBefore(wikEdHelpSpan, editHelp.nextSibling);&lt;br /&gt;
&lt;br /&gt;
					wikEdEditHelp = wikEdHelpSpan.parentNode;&lt;br /&gt;
					wikEdEditHelp.id = 'wikEdEditHelp';&lt;br /&gt;
					wikEdEditHelp.className = 'wikEdEditHelp';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add frame stylesheet definition&lt;br /&gt;
	wikEdFrameBody.style.fontSize = parseInt(wikEdTextZoom) + '%';&lt;br /&gt;
	wikEdDirection = WikEdGetStyle(document.body, 'direction');&lt;br /&gt;
	wikEdFrameBody.style.direction = wikEdDirection;&lt;br /&gt;
	var frameStyle = new WikEdStyleSheet(wikEdFrameDocument);&lt;br /&gt;
	var rules = '';&lt;br /&gt;
	for (var ruleName in wikEdFrameCSS) {&lt;br /&gt;
		var ruleStyle = wikEdFrameCSS[ruleName];&lt;br /&gt;
		if (typeof(ruleStyle) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		ruleStyle = ruleStyle.replace(/\{wikEdUnknown\}/g, wikEdImage['unknown']);&lt;br /&gt;
		ruleStyle = ruleStyle.replace(/\{wikEdTab\}/g, wikEdImage['tab']);&lt;br /&gt;
		ruleStyle = ruleStyle.replace(/\{wikEdCtrl\}/g, wikEdImage['ctrl']);&lt;br /&gt;
		ruleStyle = ruleStyle.replace(/\{wikEdBlank\}/g, wikEdImage['blank']);&lt;br /&gt;
		ruleStyle = ruleStyle.replace(/\{wikEdGrip\}/g, wikEdImage['grip']);&lt;br /&gt;
		rules += ruleName + ' {' + ruleStyle + '}\n';&lt;br /&gt;
	}&lt;br /&gt;
	frameStyle.addRules(rules);&lt;br /&gt;
&lt;br /&gt;
// copy the textarea content to the iframe&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		window.WikEdUpdateFrame();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// register edit button click events&lt;br /&gt;
	for (var buttonId in wikEdEditButtonHandler) {&lt;br /&gt;
		if (typeof(wikEdEditButtonHandler[buttonId]) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		var buttonObj = document.getElementById(buttonId);&lt;br /&gt;
		if (buttonObj != null) {&lt;br /&gt;
			WikEdAddEventListener(buttonObj, 'click', WikEdEditButtonHandler, true);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// register summary shrinking event after loading the 'Clear summary' image handler&lt;br /&gt;
	WikEdAddEventListener(wikEdClearSummaryImg, 'load', WikEdShrinkSummaryHandler, true);&lt;br /&gt;
&lt;br /&gt;
// register summary resize event for window resizing (MS IE bug: fires once always)&lt;br /&gt;
	WikEdAddEventListener(window, 'resize', WikEdResizeSummaryHandler, true);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// register frame events&lt;br /&gt;
	WikEdAddEventListener(wikEdFrameDocument, 'keydown', WikEdKeyFrameHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdFrameDocument, 'keyup', WikEdKeyFrameHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdFrameDocument, 'keypress', WikEdKeyFrameHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdFrameDocument, 'mouseup', WikEdKeyFrameHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdFrameDocument, 'keydown', WikEdShiftAltHandler, true);&lt;br /&gt;
&lt;br /&gt;
// register document events&lt;br /&gt;
	WikEdAddEventListener(document, 'keydown', WikEdShiftAltHandler, true);&lt;br /&gt;
&lt;br /&gt;
// register find ahead events&lt;br /&gt;
	WikEdAddEventListener(wikEdFindText, 'keyup', WikEdFindAhead, true);&lt;br /&gt;
&lt;br /&gt;
// register submit button events&lt;br /&gt;
	WikEdAddEventListener(wikEdSaveButton, 'click', WikEdSaveButtonHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdPreviewButton, 'click', WikEdPreviewButtonHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdDiffPreviewButton, 'click', wikEdDiffPreviewButtonHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdLocalPreview, 'click', WikEdLocalPreviewHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdLocalDiff, 'click', WikEdLocalDiffHandler, true);&lt;br /&gt;
&lt;br /&gt;
// unload (leaving page) events&lt;br /&gt;
	WikEdAddEventListener(window, 'pagehide', WikEdUnloadHandler, false);&lt;br /&gt;
&lt;br /&gt;
// set button bar grip area events&lt;br /&gt;
	WikEdAddEventListener(wikEdButtonBarFormat.firstChild.firstChild, 'click', WikEdButtonBarGripHandler, false);&lt;br /&gt;
	WikEdAddEventListener(wikEdButtonBarControl.firstChild.firstChild, 'click', WikEdButtonBarGripHandler, false);&lt;br /&gt;
	if (wikEdButtonBarCustom1 != null) {&lt;br /&gt;
		if (wikEdButtonBarCustom1.firstChild.firstChild != null) {&lt;br /&gt;
			WikEdAddEventListener(wikEdButtonBarCustom1.firstChild.firstChild, 'click', WikEdButtonBarGripHandler, false);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	WikEdAddEventListener(wikEdButtonBarFind.firstChild.firstChild, 'click', WikEdButtonBarGripHandler, false);&lt;br /&gt;
	WikEdAddEventListener(wikEdButtonBarFix.firstChild.firstChild, 'click', WikEdButtonBarGripHandler, false);&lt;br /&gt;
	if (wikEdButtonBarCustom2 != null) {&lt;br /&gt;
		if (wikEdButtonBarCustom2.firstChild.firstChild != null) {&lt;br /&gt;
			WikEdAddEventListener(wikEdButtonBarCustom2.firstChild.firstChild, 'click', WikEdButtonBarGripHandler, false);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// register combo box events&lt;br /&gt;
	WikEdAddEventListener(wikEdSummarySelect, 'change', function() { WikEdChangeComboInput('summary'); }, false);&lt;br /&gt;
	WikEdAddEventListener(wikEdSummarySelect, 'focus', function() { WikEdSetComboOptions('summary'); }, false);&lt;br /&gt;
&lt;br /&gt;
	WikEdAddEventListener(wikEdSelectElement['find'],'change', function() { WikEdChangeComboInput('find'); }, false);&lt;br /&gt;
	WikEdAddEventListener(wikEdSelectElement['find'],'focus', function() { WikEdSetComboOptions('find'); }, false);&lt;br /&gt;
&lt;br /&gt;
	WikEdAddEventListener(wikEdSelectElement['replace'],'change', function() { WikEdChangeComboInput('replace'); }, false);&lt;br /&gt;
	WikEdAddEventListener(wikEdSelectElement['replace'],'focus', function() { WikEdSetComboOptions('replace'); }, false);&lt;br /&gt;
&lt;br /&gt;
// register the clear summary click handler&lt;br /&gt;
	WikEdAddEventListener(wikEdClearSummary, 'click', WikEdClearSummaryHandler, true);&lt;br /&gt;
&lt;br /&gt;
// select the text on focus for find and replace fields&lt;br /&gt;
	WikEdAddEventListener(wikEdFindText, 'focus', WikEdFindReplaceHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdReplaceText, 'focus', WikEdFindReplaceHandler, true);&lt;br /&gt;
&lt;br /&gt;
// tab / shift-tab between find and replace fields&lt;br /&gt;
	WikEdAddEventListener(wikEdFindText, 'keydown', WikEdFindReplaceHandler, true);&lt;br /&gt;
	WikEdAddEventListener(wikEdReplaceText, 'keydown', WikEdFindReplaceHandler, true);&lt;br /&gt;
&lt;br /&gt;
// scroll to edit window if it is not a preview page&lt;br /&gt;
	if (scrollToEdit != false) {&lt;br /&gt;
		if (window.location.search.match(/(\?|&amp;amp;)action=submit\b/) == null) {&lt;br /&gt;
			window.scroll(0, WikEdGetOffsetTop(wikEdInputWrapper) - 2);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// focus the edit area&lt;br /&gt;
		if (wikEdUseWikEd == true) {&lt;br /&gt;
			wikEdFrameWindow.focus();&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			if (wikEdMSIE == true) {&lt;br /&gt;
&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				wikEdTextarea.setSelectionRange(0, 0);&lt;br /&gt;
			}&lt;br /&gt;
			wikEdTextarea.focus();&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// init MediaWiki file paths for use in regexps&lt;br /&gt;
	if (wikEdWikiGlobals['wgServer'] != null) {&lt;br /&gt;
		wikEdServer = wikEdWikiGlobals['wgServer'];&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdWikiGlobals['wgArticlePath'] != null) {&lt;br /&gt;
		wikEdArticlePath = wikEdWikiGlobals['wgArticlePath']&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdWikiGlobals['wgScriptPath'] != null) {&lt;br /&gt;
		wikEdScriptPath = wikEdWikiGlobals['wgScriptPath'];&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdWikiGlobals['wgScript'] != null) {&lt;br /&gt;
		wikEdScript = wikEdWikiGlobals['wgScript'];&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	wikEdArticlePath = wikEdArticlePath.replace(wikEdServer, '');&lt;br /&gt;
	wikEdScriptPath = wikEdScriptPath.replace(wikEdServer, '');&lt;br /&gt;
	wikEdArticlePath = wikEdArticlePath.replace(/\$1$/, '');&lt;br /&gt;
	wikEdScriptPath = wikEdScriptPath.replace(/\/?$/, '/');&lt;br /&gt;
	wikEdScriptName = wikEdScript.replace(wikEdScriptPath, '');&lt;br /&gt;
&lt;br /&gt;
// prepare for use in regexps&lt;br /&gt;
	wikEdServer = wikEdServer.replace(/(\W)/g, '\\$1');&lt;br /&gt;
	wikEdArticlePath = wikEdArticlePath.replace(/(\W)/g, '\\$1');&lt;br /&gt;
	wikEdScript = wikEdScript.replace(/(\W)/g, '\\$1');&lt;br /&gt;
	wikEdScriptPath = wikEdScriptPath.replace(/(\W)/g, '\\$1');&lt;br /&gt;
	wikEdScriptName = wikEdScriptName.replace(/(\W)/g, '\\$1');&lt;br /&gt;
&lt;br /&gt;
// fullscreen mode&lt;br /&gt;
	if (wikEdFullScreenMode == true) {&lt;br /&gt;
		WikEdFullScreen(wikEdFullScreenMode, true);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// override the insertTags function in wikibits.js used by the standard button toolbar and the editpage special chars&lt;br /&gt;
	if (typeof(insertTags) == 'function') {&lt;br /&gt;
		if (WikEdInsertTagsOriginal == null) {&lt;br /&gt;
			WikEdInsertTagsOriginal = insertTags;&lt;br /&gt;
		}&lt;br /&gt;
		insertTags = window.WikEdInsertTags;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// override insertAtCursor function in wikia.com MediaWiki:Functions.js&lt;br /&gt;
	if (typeof(insertAtCursor) == 'function') {&lt;br /&gt;
		if (WikEdInsertAtCursorOriginal == null) {&lt;br /&gt;
			WikEdInsertAtCursorOriginal = insertAtCursor;&lt;br /&gt;
		}&lt;br /&gt;
		insertAtCursor = window.WikEdInsertAtCursor;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// reset error indicator&lt;br /&gt;
	WikEdSetLogo();&lt;br /&gt;
	wikEdTurnedOn = true;&lt;br /&gt;
&lt;br /&gt;
// load and parse RegExTypoFix rules if the button is enabled&lt;br /&gt;
	WikEdLoadTypoFixRules();&lt;br /&gt;
&lt;br /&gt;
// run scheduled custom functions&lt;br /&gt;
	WikEdExecuteHook(wikEdSetupHook);&lt;br /&gt;
&lt;br /&gt;
// setup and turn on finished&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdAutoUpdate: check for the latest version and force-reload to update&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdAutoUpdate = function() {&lt;br /&gt;
&lt;br /&gt;
// check only on non-interaction pages&lt;br /&gt;
	if (/(\?|&amp;amp;)action=/.test(window.location.search) == true) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// check if autoupdate is enabled&lt;br /&gt;
	if (wikEdAutoUpdate != true) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// get date of last update check&lt;br /&gt;
	var lastCheckStr = WikEdGetPersistent('wikEdAutoUpdate');&lt;br /&gt;
	var lastCheckDate = new Date(lastCheckStr);&lt;br /&gt;
&lt;br /&gt;
// fix missing or corrupt saved setting&lt;br /&gt;
	if (isNaN(lastCheckDate.valueOf()) == true) {&lt;br /&gt;
		WikEdSetPersistent('wikEdAutoUpdate', 'January 1, 1970', 0, '/');&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// get the hours since last update check&lt;br /&gt;
	var currentDate = new Date();&lt;br /&gt;
	var diffHours = (currentDate - lastCheckDate) / 1000 / 60 / 60;&lt;br /&gt;
&lt;br /&gt;
	if (wikEdGreasemonkey == true) {&lt;br /&gt;
		if (diffHours &amp;lt; wikEdAutoUpdateHoursGM) {&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	else if (diffHours &amp;lt; wikEdAutoUpdateHours) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// save current update check date&lt;br /&gt;
	WikEdSetPersistent('wikEdAutoUpdate', currentDate.toUTCString(), 0, '/');&lt;br /&gt;
&lt;br /&gt;
// make the ajax request&lt;br /&gt;
	WikEdAjaxRequest('GET', wikEdAutoUpdateUrl, null, null, null, null, function(ajax) {&lt;br /&gt;
&lt;br /&gt;
// get response&lt;br /&gt;
		var html = ajax.responseText;&lt;br /&gt;
&lt;br /&gt;
// get current version number from string&lt;br /&gt;
		var ver = wikEdProgramVersion.match(/(\d+)\.(\d+)\.(\d+)(\w?)/);&lt;br /&gt;
		if (ver == null) {&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
		var currentVersion = ((Number(ver[1]) * 1000 + Number(ver[2])) * 1000 + Number(ver[3])) * 100 + (ver[4] + '0').charCodeAt(0);&lt;br /&gt;
&lt;br /&gt;
// get new version number from string&lt;br /&gt;
		var ver = html.match(/(\d+)\.(\d+)\.(\d+)(\w?)/);&lt;br /&gt;
		if (ver == null) {&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
		var newVersion = ((Number(ver[1]) * 1000 + Number(ver[2])) * 1000 + Number(ver[3])) * 100 + (ver[4] + '0').charCodeAt(0);&lt;br /&gt;
&lt;br /&gt;
// compare the versions&lt;br /&gt;
		if (currentVersion &amp;gt;= newVersion) {&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// update Greasemonkey script by navigating to the script code page&lt;br /&gt;
		if (wikEdGreasemonkey == true) {&lt;br /&gt;
			var updatePopup = wikEdText['wikEdGreasemonkeyAutoUpdate'];&lt;br /&gt;
			updatePopup = updatePopup.replace(/\{updateURL\}/g, wikEdAutoUpdateUrl);&lt;br /&gt;
			alert(updatePopup);&lt;br /&gt;
			window.location.href = wikEdAutoUpdateScriptUrl;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// update wikEd by reloading the page with cache bypassing (equivalent to Shift-Reload or Shift-F5)&lt;br /&gt;
		else {&lt;br /&gt;
			window.location.reload(true);&lt;br /&gt;
		}&lt;br /&gt;
	});&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdLoadTypoFixRules: load and parse RegExTypoFix rules if the button is enabled&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdLoadTypoFixRules = function() {&lt;br /&gt;
&lt;br /&gt;
// load RegExTypoFix rules per Ajax if enabled&lt;br /&gt;
	if ( (wikEdRegExTypoFix == true) &amp;amp;&amp;amp; (wikEdTypoRulesFind.length == 0) ) {&lt;br /&gt;
&lt;br /&gt;
// make the ajax request&lt;br /&gt;
		WikEdAjaxRequest('GET', wikEdRegExTypoFixURL, null, null, null, null, function(ajax) {&lt;br /&gt;
&lt;br /&gt;
// get response&lt;br /&gt;
			var rulesTxt = ajax.responseText;&lt;br /&gt;
&lt;br /&gt;
// parse regexp rules&lt;br /&gt;
			var regExp = new RegExp('^&amp;lt;Typo +word=&amp;quot;(.+?)&amp;quot; +find=&amp;quot;(.+?)&amp;quot; +replace=&amp;quot;(.+?)&amp;quot; +/&amp;gt;', 'gim');&lt;br /&gt;
			while ( (regExpMatch = regExp.exec(rulesTxt)) != null) {&lt;br /&gt;
&lt;br /&gt;
// check if this is a valid regexp&lt;br /&gt;
				var regExpFind;&lt;br /&gt;
				try {&lt;br /&gt;
					regExpFind = new RegExp(regExpMatch[2], 'gim');&lt;br /&gt;
				}&lt;br /&gt;
				catch (err) {&lt;br /&gt;
					continue;&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// save regexp and replace&lt;br /&gt;
				wikEdTypoRulesFind.push(regExpFind);&lt;br /&gt;
				wikEdTypoRulesReplace.push(regExpMatch[3]);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// display typo fix button&lt;br /&gt;
			if (wikEdTypoRulesFind.length &amp;gt; 0) {&lt;br /&gt;
				document.getElementById('wikEdFixRegExTypo').style.display = 'inline';&lt;br /&gt;
			}&lt;br /&gt;
			return;&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdEditButtonHandler: handler for clicks on edit buttons&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdEditButtonHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// execute the button click handler code&lt;br /&gt;
	var obj;&lt;br /&gt;
	if (event.currentTarget != null) {&lt;br /&gt;
		obj = event.currentTarget;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility&lt;br /&gt;
	else {&lt;br /&gt;
		obj = event.srcElement;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// workaround for mozilla 3.0 bug 441087&lt;br /&gt;
  objId = obj.id;&lt;br /&gt;
  eventShiftKey = event.shiftKey;&lt;br /&gt;
&lt;br /&gt;
	eval(wikEdEditButtonHandler[objId]);&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdShrinkSummaryHandler: shrink the summary after loading the 'Clear summary' image&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdShrinkSummaryHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
	var diffWidth = wikEdClearSummary.offsetWidth - wikEdClearSummaryWidth;&lt;br /&gt;
&lt;br /&gt;
// Firefox &amp;lt; 3.0&lt;br /&gt;
	if ( typeof(wikEdInputElement['summary'].clientLeft) == 'undefined' ) {&lt;br /&gt;
		wikEdInputElement['summary'].style.width = (wikEdInputElement['summary'].clientWidth - diffWidth) + 'px';&lt;br /&gt;
		wikEdSelectElement['summary'].style.width = (wikEdSelectElement['summary'].clientWidth - diffWidth) + 'px';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// Firefox &amp;gt;= 3.0&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdInputElement['summary'].style.width = (wikEdInputElement['summary'].clientWidth - diffWidth) + 'px';&lt;br /&gt;
		wikEdSelectElement['summary'].style.width = (wikEdSelectElement['summary'].clientWidth - diffWidth + 3) + 'px';&lt;br /&gt;
	}&lt;br /&gt;
	wikEdClearSummaryWidth = wikEdClearSummary.offsetWidth;&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdResizeSummaryHandler: adjust the summary width after resizing the window&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdResizeSummaryHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
	WikEdResizeSummary();&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdUnloadHandler: save editing frame to cached textarea&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdUnloadHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// update textarea if not already done in submit handlers&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		if (wikEdTextareaUpdated != true) {&lt;br /&gt;
			WikEdUpdateTextarea();&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSaveButtonHandler: 'Save page' click handler&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSaveButtonHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
	WikEdRemoveEventListener(wikEdSaveButton, 'click', WikEdSaveButtonHandler, true);&lt;br /&gt;
&lt;br /&gt;
// update textarea&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		WikEdUpdateTextarea();&lt;br /&gt;
		wikEdTextareaUpdated = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add &amp;quot;using wikEd&amp;quot; to summary, not for adding a new section (+ tab)&lt;br /&gt;
	var text = wikEdSummaryText.value;&lt;br /&gt;
	text = text.replace(/^[, ]+/, '');&lt;br /&gt;
	text = text.replace(/[, ]+$/, '');&lt;br /&gt;
	WikEdAddToHistory('summary');&lt;br /&gt;
&lt;br /&gt;
	if ( (wikEdUsing == true) &amp;amp;&amp;amp; (text != '') ) {&lt;br /&gt;
		if (text.lastIndexOf(wikEdSummaryUsing) &amp;lt; 0) {&lt;br /&gt;
			if (wikEdAddNewSection != true) {&lt;br /&gt;
				text += ' ' + wikEdSummaryUsing;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	wikEdSummaryText.value = text;&lt;br /&gt;
&lt;br /&gt;
// submit&lt;br /&gt;
	wikEdSaveButton.click();&lt;br /&gt;
&lt;br /&gt;
// reinstate handler in case the browser back button will be used&lt;br /&gt;
	WikEdAddEventListener(wikEdSaveButton, 'click', WikEdSaveButtonHandler, true);&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdPreviewButtonHandler: 'Show preview' click handler&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdPreviewButtonHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		WikEdUpdateTextarea();&lt;br /&gt;
		wikEdTextareaUpdated = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// wikEdDiffPreviewButtonHandler: 'Show changes' click handler&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.wikEdDiffPreviewButtonHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
	if (wikEdFullScreenMode == true) {&lt;br /&gt;
		WikEdFullScreen(false);&lt;br /&gt;
	}&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		WikEdUpdateTextarea();&lt;br /&gt;
		wikEdTextareaUpdated = true;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFollowLinkHandler: open highlighted link in new window/tab&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFollowLinkHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	if (event.ctrlKey == true) {&lt;br /&gt;
		var linkId = event.currentTarget.id;&lt;br /&gt;
//// todo: find the lowest span that triggered this event for links in templates&lt;br /&gt;
		if (linkId != null) {&lt;br /&gt;
			var linkUrl = wikEdFollowLinkHash[linkId];&lt;br /&gt;
			if (linkUrl != null) {&lt;br /&gt;
				event.stopPropagation();&lt;br /&gt;
				window.open(linkUrl);&lt;br /&gt;
				window.focus();&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdLocalPreviewHandler: local 'Show preview' image button click handler&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdLocalPreviewHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	event.preventDefault();&lt;br /&gt;
	WikEdButton(wikEdLocalPreview, 'wikEdLocalPreview');&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdLocalDiffHandler: local 'Show changes' image button click handler&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdLocalDiffHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	event.preventDefault();&lt;br /&gt;
	WikEdButton(wikEdLocalDiff, 'wikEdLocalDiff');&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdButtonBarGripHandler: click, mouseover handler, see also WikEdButtonBarInit()&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdButtonBarGripHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	event.stopPropagation();&lt;br /&gt;
	var grip = event.target;&lt;br /&gt;
	var gripWrapper = grip.parentNode;&lt;br /&gt;
	var buttonsWrapper = gripWrapper.nextSibling;&lt;br /&gt;
	var buttons = buttonsWrapper.firstChild;&lt;br /&gt;
	var barInnerWrapper = gripWrapper.parentNode;&lt;br /&gt;
	var bar = barInnerWrapper.parentNode;&lt;br /&gt;
&lt;br /&gt;
	if (event.type == 'click') {&lt;br /&gt;
		buttonsWrapper.style.position = 'static';&lt;br /&gt;
&lt;br /&gt;
// hide the buttons bar&lt;br /&gt;
		if (buttonsWrapper.minimized != true) {&lt;br /&gt;
			barInnerWrapper.className = 'wikedButtonBarInnerWrapperHidden';&lt;br /&gt;
			gripWrapper.className = 'wikedButtonBarGripWrapperHidden';&lt;br /&gt;
			buttonsWrapper.className = 'wikedButtonBarButtonsWrapperHidden';&lt;br /&gt;
			buttonsWrapper.widthOriginal = buttonsWrapper.offsetWidth;&lt;br /&gt;
			buttonsWrapper.style.display = 'none';&lt;br /&gt;
			buttonsWrapper.minimized = true;&lt;br /&gt;
			WikEdAddEventListener(grip, 'mouseover', WikEdButtonBarGripHandler, false);&lt;br /&gt;
			WikEdSetPersistent(bar.id + 'Hidden', '1', 0, '/');&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// unhide the buttons bar&lt;br /&gt;
		else {&lt;br /&gt;
			barInnerWrapper.className = 'wikedButtonBarInnerWrapperVisible';&lt;br /&gt;
			gripWrapper.className = 'wikedButtonBarGripWrapperVisible';&lt;br /&gt;
			buttonsWrapper.className = 'wikedButtonBarButtonsWrapperVisible';&lt;br /&gt;
			buttonsWrapper.style.display = 'block';&lt;br /&gt;
			buttonsWrapper.minimized = false;&lt;br /&gt;
			WikEdRemoveEventListener(grip, 'mouseover', WikEdButtonBarGripHandler, false);&lt;br /&gt;
			WikEdSetPersistent(bar.id + 'Hidden', '0', 0, '/');&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// show the buttons bar on mouseover&lt;br /&gt;
	else if (event.type == 'mouseover') {&lt;br /&gt;
		if (buttonsWrapper.minimized == true) {&lt;br /&gt;
			WikEdAddEventListener(bar, 'mouseout', WikEdButtonBarHandler, false);&lt;br /&gt;
&lt;br /&gt;
// show buttons to the right&lt;br /&gt;
			if (bar.offsetParent.clientWidth &amp;gt; grip.offsetLeft + grip.offsetWidth + buttonsWrapper.widthOriginal) {&lt;br /&gt;
				buttonsWrapper.style.left = (grip.offsetLeft + grip.offsetWidth) + 'px';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// show buttons to the left&lt;br /&gt;
			else {&lt;br /&gt;
				buttonsWrapper.style.left = (gripWrapper.offsetLeft - buttonsWrapper.widthOriginal) + 'px';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// a mozilla bug sometimes gives offsetTop - 1 when the wikEdToolbarWrapper is hidden&lt;br /&gt;
			buttonsWrapper.style.top = gripWrapper.offsetTop + 'px';&lt;br /&gt;
			buttonsWrapper.style.position = 'absolute';&lt;br /&gt;
			buttonsWrapper.style.display = 'block';&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdButtonBarGripHandler: mouseout handler&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdButtonBarHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	event.stopPropagation();&lt;br /&gt;
&lt;br /&gt;
	var bar = event.currentTarget;&lt;br /&gt;
	var barInnerWrapper = bar.firstChild;&lt;br /&gt;
	var gripWrapper = barInnerWrapper.firstChild;&lt;br /&gt;
	var grip = gripWrapper.firstChild;&lt;br /&gt;
	var buttonsWrapper = gripWrapper.nextSibling;&lt;br /&gt;
	var buttons = buttonsWrapper.firstChild;&lt;br /&gt;
&lt;br /&gt;
// hide the buttons&lt;br /&gt;
	if (event.type == 'mouseout') {&lt;br /&gt;
		if (buttonsWrapper.minimized == true) {&lt;br /&gt;
&lt;br /&gt;
// filter the events for mouseouts actually leaving the bar&lt;br /&gt;
			if (&lt;br /&gt;
				(&lt;br /&gt;
					( (event.target == grip) || (event.target == gripWrapper) ) &amp;amp;&amp;amp;&lt;br /&gt;
					(event.relatedTarget != gripWrapper) &amp;amp;&amp;amp; (event.relatedTarget != buttonsWrapper) &amp;amp;&amp;amp; (event.relatedTarget != buttons) &amp;amp;&amp;amp; (event.relatedTarget.parentNode != buttons)&lt;br /&gt;
				) ||&lt;br /&gt;
				(&lt;br /&gt;
					( (event.target.parentNode.parentNode == buttons) || (event.target.parentNode == buttons) || (event.target == buttons) || (event.target == buttonsWrapper) ) &amp;amp;&amp;amp;&lt;br /&gt;
					(event.relatedTarget.parentNode.parentNode != buttons) &amp;amp;&amp;amp; (event.relatedTarget.parentNode != buttons) &amp;amp;&amp;amp; (event.relatedTarget != buttons) &amp;amp;&amp;amp; (event.relatedTarget != buttonsWrapper) &amp;amp;&amp;amp; (event.relatedTarget != gripWrapper) &amp;amp;&amp;amp; (event.relatedTarget != grip)&lt;br /&gt;
				)&lt;br /&gt;
			) {&lt;br /&gt;
				WikEdRemoveEventListener(bar, 'mouseout', WikEdButtonBarHandler, false);&lt;br /&gt;
				buttonsWrapper.style.display = 'none';&lt;br /&gt;
				buttonsWrapper.style.position = 'static';&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// clear the summary click handler&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdClearSummaryHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	event.preventDefault();&lt;br /&gt;
&lt;br /&gt;
// clear the summary if it is only a paragraph name&lt;br /&gt;
	if ( /^\/\* .*? \*\/ *$/.test(wikEdSummaryText.value) ) {&lt;br /&gt;
		wikEdSummaryText.value = '';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// clear the summary but leave paragraph names&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdSummaryText.value = wikEdSummaryText.value.replace(/^((\/\* .*? \*\/ *)?).*()/,&lt;br /&gt;
			function (p, p1, p2) {&lt;br /&gt;
				if (p1.length &amp;gt; 0) {&lt;br /&gt;
					p1 = p1 + ' ';&lt;br /&gt;
				}&lt;br /&gt;
				return(p1);&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
	}&lt;br /&gt;
	wikEdSummaryText.focus();&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFindReplaceHandler: find and replace: tab and shift-tab between fields, select on focus&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFindReplaceHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// tab / shift-tab between fields&lt;br /&gt;
	if (event.type == 'keydown') {&lt;br /&gt;
		if (event.keyCode == 9) {&lt;br /&gt;
			if (event.target == wikEdFindText) {&lt;br /&gt;
				event.preventDefault();&lt;br /&gt;
				WikEdRemoveEventListener(wikEdReplaceText, 'focus', WikEdFindReplaceHandler, true);&lt;br /&gt;
				wikEdReplaceText.focus();&lt;br /&gt;
				WikEdAddEventListener(wikEdReplaceText, 'focus', WikEdFindReplaceHandler, true);&lt;br /&gt;
			}&lt;br /&gt;
			else if (event.target == wikEdReplaceText) {&lt;br /&gt;
				event.preventDefault();&lt;br /&gt;
				WikEdRemoveEventListener(wikEdFindText, 'focus', WikEdFindReplaceHandler, true);&lt;br /&gt;
				wikEdFindText.focus();&lt;br /&gt;
				WikEdAddEventListener(wikEdFindText, 'focus', WikEdFindReplaceHandler, true);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// select on focus&lt;br /&gt;
	else if (event.type == 'focus') {&lt;br /&gt;
		if (wikEdMSIE == true) {&lt;br /&gt;
&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			event.target.setSelectionRange(0, this.textLength);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSetLogo: set the logo on top of the page&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSetLogo = function(state) {&lt;br /&gt;
&lt;br /&gt;
	if (state == 'error') {&lt;br /&gt;
		wikEdLogo.src = wikEdImage['error'];&lt;br /&gt;
		wikEdLogo.alt = wikEdText['wikEdLogo error alt'];&lt;br /&gt;
		wikEdLogo.title = wikEdText['wikEdLogo error title'];&lt;br /&gt;
	}&lt;br /&gt;
	else if (state == 'browser') {&lt;br /&gt;
		wikEdLogo.src = wikEdImage['browser'];&lt;br /&gt;
		wikEdLogo.alt = wikEdText['wikEdLogo browser alt'];&lt;br /&gt;
		wikEdLogo.title = wikEdText['wikEdLogo browser title'];&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		if (wikEdDisabled == true) {&lt;br /&gt;
			wikEdLogo.src = wikEdImage['disabled'];&lt;br /&gt;
			wikEdLogo.alt = wikEdText['wikEdLogo disabled alt'];&lt;br /&gt;
			wikEdLogo.title = wikEdText['wikEdLogo disabled title'];&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			wikEdLogo.src = wikEdImage['logo'];&lt;br /&gt;
			wikEdLogo.alt = wikEdText['wikEdLogo alt'];&lt;br /&gt;
			wikEdLogo.title = wikEdText['wikEdLogo title'];&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	var version = wikEdProgramVersion;&lt;br /&gt;
	if (wikEdGadget == true) {&lt;br /&gt;
		version += ' G';&lt;br /&gt;
	}&lt;br /&gt;
	else if (wikEdGreasemonkey == true) {&lt;br /&gt;
		version += ' GM';&lt;br /&gt;
	}&lt;br /&gt;
	else if (wikEdGreasemonkeyToBody == true) {&lt;br /&gt;
		version += ' GM';&lt;br /&gt;
	}&lt;br /&gt;
	wikEdLogo.title = wikEdLogo.title.replace(/\{wikEdProgramVersion\}/g, version);&lt;br /&gt;
	wikEdLogo.title = wikEdLogo.title.replace(/\{wikEdProgramDate\}/g, wikEdProgramDate);&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// MakeButtonBar: generate button bar div element&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.MakeButtonBar = function(bar)  {&lt;br /&gt;
&lt;br /&gt;
// id outer, class outer, id inner, class inner, alt, button numbers&lt;br /&gt;
	var barId = bar[0];&lt;br /&gt;
	var barClass = bar[1];&lt;br /&gt;
	var buttonsId = bar[2];&lt;br /&gt;
	var buttonsClass = bar[3];&lt;br /&gt;
	var barHeight = bar[4];&lt;br /&gt;
	var gripTitle = bar[5];&lt;br /&gt;
	var buttonNumbers = bar[6];&lt;br /&gt;
&lt;br /&gt;
// collect the buttons&lt;br /&gt;
	var buttons = '';&lt;br /&gt;
	for (var property in buttonNumbers) {&lt;br /&gt;
		if ( (typeof(buttonNumbers[property]) != 'string') &amp;amp;&amp;amp; (typeof(buttonNumbers[property]) != 'number') ) {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		var buttonNo = buttonNumbers[property];&lt;br /&gt;
		switch (buttonNo) {&lt;br /&gt;
			case 'br':&lt;br /&gt;
				buttons += '&amp;lt;br /&amp;gt;';&lt;br /&gt;
				break;&lt;br /&gt;
			case 'find':&lt;br /&gt;
				buttons += '&amp;lt;span class=&amp;quot;wikEdFindComboInput&amp;quot; id=&amp;quot;wikEdFindComboInput&amp;quot;&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;input class=&amp;quot;wikEdCombo&amp;quot; id=&amp;quot;wikEdFindText&amp;quot; type=&amp;quot;text&amp;quot; value=&amp;quot;&amp;quot;&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;select class=&amp;quot;wikEdCombo&amp;quot; id=&amp;quot;wikEdFindSelect&amp;quot;&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;/select&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;/span&amp;gt;';&lt;br /&gt;
				break;&lt;br /&gt;
			case 'replace':&lt;br /&gt;
				buttons += '&amp;lt;span class=&amp;quot;wikEdReplaceComboInput&amp;quot; id=&amp;quot;wikEdReplaceComboInput&amp;quot;&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;input class=&amp;quot;wikEdCombo&amp;quot; id=&amp;quot;wikEdReplaceText&amp;quot; type=&amp;quot;text&amp;quot; value=&amp;quot;&amp;quot;&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;select class=&amp;quot;wikEdCombo&amp;quot; id=&amp;quot;wikEdReplaceSelect&amp;quot;&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;/select&amp;gt;';&lt;br /&gt;
				buttons += '&amp;lt;/span&amp;gt;';&lt;br /&gt;
				break;&lt;br /&gt;
			default:&lt;br /&gt;
				var currButton = wikEdButton[buttonNo];&lt;br /&gt;
				if (typeof(currButton) != 'object') {&lt;br /&gt;
					alert('Loading error: The button &amp;quot;' + buttonNumbers[property] + '&amp;quot; is not defined.');&lt;br /&gt;
				}&lt;br /&gt;
				if ( (currButton[0] == 'wikEdSource') &amp;amp;&amp;amp; (wikEdShowSourceButton != true) ) {&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
				else if ( (currButton[0] == 'wikEdUsing') &amp;amp;&amp;amp; (wikEdShowUsingButton != true) ) {&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
				else if ( (currButton[0] == 'wikEdTableMode') &amp;amp;&amp;amp; (wikEdShowTableModeButton != true) ) { // {{TABLE}}&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// add accesskey information to button title and&lt;br /&gt;
				var accessKey = '';&lt;br /&gt;
				if (wikEdButtonKey[buttonNo] != null) {&lt;br /&gt;
					accessKey = ' [' + wikEdText['alt-shift'] + wikEdButtonKey[buttonNo][0] + ']';&lt;br /&gt;
&lt;br /&gt;
// initialize wikEdButtonKeyCode[keyCode] = id&lt;br /&gt;
					wikEdButtonKeyCode[ (wikEdButtonKey[buttonNo][1]) ] = currButton[0];&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// add button html code&lt;br /&gt;
				buttons += '&amp;lt;img id=&amp;quot;' + currButton[0] + '&amp;quot; class=&amp;quot;' + currButton[1] + '&amp;quot; title=&amp;quot;' + currButton[2] + accessKey +'&amp;quot; src=&amp;quot;' + currButton[3] + '&amp;quot; width=&amp;quot;' + currButton[4] + '&amp;quot; height=&amp;quot;' + currButton[5] + '&amp;quot; alt=&amp;quot;' + currButton[6] + '&amp;quot;&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
// collect click event info&lt;br /&gt;
				wikEdEditButtonHandler[ currButton[0] ] = currButton[7];&lt;br /&gt;
&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// create the button bar div&lt;br /&gt;
	var div = document.createElement('div');&lt;br /&gt;
	div.id = barId;&lt;br /&gt;
	div.className = barClass;&lt;br /&gt;
&lt;br /&gt;
	var buttonsStyle = '';&lt;br /&gt;
	if (barHeight &amp;gt; 0) {&lt;br /&gt;
		buttonsStyle = ' style=&amp;quot;height: ' + barHeight + 'px;&amp;quot;';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// make a grip bar&lt;br /&gt;
	var html = '';&lt;br /&gt;
	if (gripTitle != null) {&lt;br /&gt;
		var gripStyle = 'width: ' + wikEdButtonBarGripWidth + 'px; ';&lt;br /&gt;
		if (barHeight &amp;gt; 0) {&lt;br /&gt;
			gripStyle += 'height: ' + barHeight + 'px; ';&lt;br /&gt;
		}&lt;br /&gt;
		if (gripStyle.length &amp;gt; 0){&lt;br /&gt;
			gripStyle = ' style=&amp;quot;' + gripStyle + '&amp;quot;';&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		html += '&amp;lt;div class=&amp;quot;wikedButtonBarInnerWrapperVisible&amp;quot; style=&amp;quot;height: ' + barHeight + 'px;&amp;quot;&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
		html += '&amp;lt;div class=&amp;quot;wikedButtonBarGripWrapperVisible&amp;quot;&amp;gt;';&lt;br /&gt;
		html += '&amp;lt;div class=&amp;quot;wikedButtonBarGrip&amp;quot;' + gripStyle + ' title=&amp;quot;' + gripTitle + '&amp;quot;&amp;gt;';&lt;br /&gt;
		html += '&amp;amp;nbsp;';&lt;br /&gt;
		html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
		html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
		html += '&amp;lt;div class=&amp;quot;wikedButtonBarButtonsWrapperVisible&amp;quot;' + buttonsStyle + '&amp;gt;';&lt;br /&gt;
		html += '&amp;lt;div id=&amp;quot;' + buttonsId + '&amp;quot; class=&amp;quot;' + buttonsClass + '&amp;quot; style=&amp;quot;&amp;quot;&amp;gt;';&lt;br /&gt;
		html += buttons;&lt;br /&gt;
		html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
		html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
		html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// make a standard no-grip bar&lt;br /&gt;
	else {&lt;br /&gt;
		html += '&amp;lt;div id=&amp;quot;' + buttonsId + '&amp;quot; class=&amp;quot;' + buttonsClass + '&amp;quot;' + buttonsStyle + '&amp;quot;&amp;gt;';&lt;br /&gt;
		html += buttons;&lt;br /&gt;
		html += '&amp;lt;/div&amp;gt;';&lt;br /&gt;
	}&lt;br /&gt;
	div.innerHTML = html;&lt;br /&gt;
&lt;br /&gt;
	return(div);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdButtonBarInit: hide buttons bar, see also WikEdButtonBarGripHandler()&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdButtonBarInit = function(bar) {&lt;br /&gt;
&lt;br /&gt;
	if (WikEdGetPersistent(bar.id + 'Hidden') == '1') {&lt;br /&gt;
		var barInnerWrapper = bar.firstChild;&lt;br /&gt;
		var gripWrapper = barInnerWrapper.firstChild;&lt;br /&gt;
		var grip = gripWrapper.firstChild;&lt;br /&gt;
		var buttonsWrapper = gripWrapper.nextSibling;&lt;br /&gt;
		var buttons = buttonsWrapper.firstChild;&lt;br /&gt;
&lt;br /&gt;
		barInnerWrapper.className = 'wikedButtonBarInnerWrapperHidden';&lt;br /&gt;
		gripWrapper.className = 'wikedButtonBarGripWrapperHidden';&lt;br /&gt;
		buttonsWrapper.className = 'wikedButtonBarButtonsWrapperHidden';&lt;br /&gt;
		buttonsWrapper.widthOriginal = buttonsWrapper.offsetWidth;&lt;br /&gt;
		buttonsWrapper.style.display = 'none';&lt;br /&gt;
		buttonsWrapper.minimized = true;&lt;br /&gt;
		WikEdAddEventListener(grip, 'mouseover', WikEdButtonBarGripHandler, true);&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSetEditArea: apply css changes to switch between classic textarea and rich text frame&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSetEditArea = function(useFrame, notFrame) {&lt;br /&gt;
&lt;br /&gt;
// turn rich text frame on&lt;br /&gt;
	if (useFrame == true) {&lt;br /&gt;
		wikEdTextareaWrapper.style.position = 'absolute';&lt;br /&gt;
		wikEdTextareaWrapper.style.visibility = 'hidden';&lt;br /&gt;
		wikEdTextarea.style.display = 'none';&lt;br /&gt;
&lt;br /&gt;
		if (notFrame != true) {&lt;br /&gt;
			wikEdFrameWrapper.style.position = 'static';&lt;br /&gt;
			wikEdFrameWrapper.style.visibility = 'visible';&lt;br /&gt;
			wikEdFrameBody.style.display = 'block';&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (document.getElementById('toolbar') != null) {&lt;br /&gt;
			if (wikEdCloseToolbar == true) {&lt;br /&gt;
				wikEdToolbarWrapper.style.display = 'none';&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				wikEdToolbarWrapper.style.display = 'block';&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarFormat.style.display = 'block';&lt;br /&gt;
		if (wikEdButtonBarCustom1 != null) {&lt;br /&gt;
			wikEdButtonBarCustom1.style.display = 'block';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarFind.style.display = 'block';&lt;br /&gt;
		wikEdButtonBarFix.style.display = 'block';&lt;br /&gt;
		if (wikEdButtonBarCustom2 != null) {&lt;br /&gt;
			wikEdButtonBarCustom2.style.display = 'block';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarControl.style.display = 'block';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// turn classic textarea on&lt;br /&gt;
	else {&lt;br /&gt;
		if (notFrame != true) {&lt;br /&gt;
			wikEdFrameWrapper.style.position = 'absolute';&lt;br /&gt;
			wikEdFrameWrapper.style.visibility = 'hidden';&lt;br /&gt;
// Mozilla or wikEd bug: &amp;lt;br&amp;gt; insertion before text a while after setting display to 'none', test with setTimeout('alert(wikEdFrameBody.innerHTML)', 1000);&lt;br /&gt;
//			wikEdFrameBody.style.display = 'none';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdTextareaWrapper.style.position = 'static';&lt;br /&gt;
		wikEdTextareaWrapper.style.visibility = 'visible';&lt;br /&gt;
		wikEdTextarea.style.display = 'block';&lt;br /&gt;
&lt;br /&gt;
		if (document.getElementById('toolbar') != null) {&lt;br /&gt;
			wikEdToolbarWrapper.style.display = 'block';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarFormat.style.display = 'none';&lt;br /&gt;
		if (wikEdButtonBarCustom1 != null) {&lt;br /&gt;
			wikEdButtonBarCustom1.style.display = 'none';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarFind.style.display = 'none';&lt;br /&gt;
		wikEdButtonBarFix.style.display = 'none';&lt;br /&gt;
		if (wikEdButtonBarCustom2 != null) {&lt;br /&gt;
			wikEdButtonBarCustom2.style.display = 'none';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarControl.style.display = 'block';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdButton: toggle or set button checked state&lt;br /&gt;
//   used for buttons that do not require nor change the text. Faster than WikEdEditButton()&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdButton = function(buttonObj, buttonId, toggleButton, setButton, classButton, doButton) {&lt;br /&gt;
&lt;br /&gt;
	if (buttonObj != null) {&lt;br /&gt;
&lt;br /&gt;
// check if the button is disabled&lt;br /&gt;
		if (buttonObj.className == 'wikEdButtonInactive') {&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// set button to pressed, set cursor to hourglass&lt;br /&gt;
		buttonObj.style.cursor = 'wait';&lt;br /&gt;
&lt;br /&gt;
// init the button&lt;br /&gt;
		if (setButton != null) {&lt;br /&gt;
			if (setButton == false) {&lt;br /&gt;
				buttonObj.setAttribute('checked', false);&lt;br /&gt;
				if (classButton == null) {&lt;br /&gt;
					buttonObj.className = 'wikEdButtonUnchecked';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				buttonObj.setAttribute('checked', true);&lt;br /&gt;
				if (classButton == null) {&lt;br /&gt;
					buttonObj.className = 'wikEdButtonChecked';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		else if (classButton != null) {&lt;br /&gt;
			buttonObj.className = classButton;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// toggle the button&lt;br /&gt;
		if (toggleButton != null) {&lt;br /&gt;
			if (toggleButton == true) {&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') == 'true') {&lt;br /&gt;
					buttonObj.setAttribute('checked', false);&lt;br /&gt;
					buttonObj.className = 'wikEdButtonUnchecked';&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					buttonObj.setAttribute('checked', true);&lt;br /&gt;
					buttonObj.className = 'wikEdButtonChecked';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// perform specific actions&lt;br /&gt;
	var focusFrame = false;&lt;br /&gt;
	if ( ( (setButton == null) &amp;amp;&amp;amp; (classButton == null) ) || (doButton == true) ) {&lt;br /&gt;
&lt;br /&gt;
// remove active content&lt;br /&gt;
		WikEdRemoveElements(['script', 'object', 'applet', 'embed']);&lt;br /&gt;
&lt;br /&gt;
		switch (buttonId) {&lt;br /&gt;
&lt;br /&gt;
// switch between syntax highlighting and plain text&lt;br /&gt;
			case 'wikEdHighlightSyntax':&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') == 'true') {&lt;br /&gt;
					wikEdHighlightSyntax = true;&lt;br /&gt;
					WikEdSetPersistent('wikEdSyntaxOff', '0', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					wikEdHighlightSyntax = false;&lt;br /&gt;
					WikEdSetPersistent('wikEdSyntaxOff', '1', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// do not keep whole text selected&lt;br /&gt;
				WikEdEditButton( null, 'wikEdUpdateAll', {'keepSel': false} );&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// toggle table mode // {{TABLE}}&lt;br /&gt;
			case 'wikEdTableMode':&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') != 'true') {&lt;br /&gt;
					wikEdTableMode = false;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
&lt;br /&gt;
// check for matching table tags&lt;br /&gt;
					var obj = {};&lt;br /&gt;
					WikEdGetText(obj, 'whole');&lt;br /&gt;
					var plain = obj.whole.plain;&lt;br /&gt;
&lt;br /&gt;
// remove exluded text&lt;br /&gt;
					plain = plain.replace(/&amp;lt;!--(.|\n)*?--&amp;gt;/g, '');&lt;br /&gt;
					plain = plain.replace(/&amp;lt;nowiki\b[^&amp;gt;]*&amp;gt;(.|\n)*?&amp;lt;\/nowiki\s*&amp;gt;/g, '');&lt;br /&gt;
					plain = plain.replace(/&amp;lt;pre\b[^&amp;gt;]*&amp;gt;(.|\n)*?&amp;lt;\/pre\s*&amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// check line by line for table code&lt;br /&gt;
					var lines = plain.split('\n');&lt;br /&gt;
					var tableCount = 0;&lt;br /&gt;
					var tableError = false;&lt;br /&gt;
					for (var i = 0; i &amp;lt; lines.length; i ++) {&lt;br /&gt;
						var line = lines[i];&lt;br /&gt;
						if (line.match(/^\{\|/) != null) {&lt;br /&gt;
							tableCount ++;&lt;br /&gt;
						}&lt;br /&gt;
						else if (line.match(/^\|\}/) != null) {&lt;br /&gt;
							tableCount --;&lt;br /&gt;
							if (tableCount &amp;lt; 0) {&lt;br /&gt;
								tableError = true;&lt;br /&gt;
								break;&lt;br /&gt;
							}&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
					if (tableCount &amp;gt; 0) {&lt;br /&gt;
						tableError = true;&lt;br /&gt;
					}&lt;br /&gt;
					if (tableError == true) {&lt;br /&gt;
						wikEdTableMode = false;&lt;br /&gt;
						alert(wikEdText['wikEdTableModeError']);&lt;br /&gt;
						WikEdButton(buttonObj, buttonId, null, false);&lt;br /&gt;
						break;&lt;br /&gt;
					}&lt;br /&gt;
					wikEdTableMode = true;&lt;br /&gt;
				}&lt;br /&gt;
				WikEdEditButton( null, 'wikEdUpdateAll'); /// true?{'wikify': false}&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// align textbox with display top&lt;br /&gt;
			case 'wikEdScrollToPreview':&lt;br /&gt;
			case 'wikEdScrollToPreview2':&lt;br /&gt;
			case 'wikEdScrollToPreview3':&lt;br /&gt;
				window.scroll(0, WikEdGetOffsetTop(wikEdSaveButton));&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// align edit buttons with display top&lt;br /&gt;
			case 'wikEdScrollToEdit':&lt;br /&gt;
			case 'wikEdScrollToEdit2':&lt;br /&gt;
			case 'wikEdScrollToEdit3':&lt;br /&gt;
			case 'wikEdScrollToEdit4':&lt;br /&gt;
				window.scroll(0, WikEdGetOffsetTop(wikEdInputWrapper));&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// cycle through different font sizes&lt;br /&gt;
			case 'wikEdTextZoomDown':&lt;br /&gt;
				wikEdTextZoom = wikEdTextZoom / 1.2;&lt;br /&gt;
				if (wikEdTextZoom &amp;lt; 100 / 1.2 / 1.2) {&lt;br /&gt;
					wikEdTextZoom = 100 * 1.2 * 1.2;&lt;br /&gt;
				}&lt;br /&gt;
				wikEdFrameBody.style.fontSize = parseInt(wikEdTextZoom) + '%';&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// cycle through different font sizes&lt;br /&gt;
			case 'wikEdTextZoomUp':&lt;br /&gt;
				wikEdTextZoom = wikEdTextZoom * 1.2;&lt;br /&gt;
				if (wikEdTextZoom &amp;gt; 100 * 1.2 * 1.2) {&lt;br /&gt;
					wikEdTextZoom = 100 / 1.2 / 1.2;&lt;br /&gt;
				}&lt;br /&gt;
				wikEdFrameBody.style.fontSize = parseInt(wikEdTextZoom) + '%';&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// display local preview box&lt;br /&gt;
			case 'wikEdLocalPreview':&lt;br /&gt;
				if (wikEdFullScreenMode == true) {&lt;br /&gt;
					WikEdFullScreen(false);&lt;br /&gt;
				}&lt;br /&gt;
				if (wikEdUseWikEd == true) {&lt;br /&gt;
					WikEdUpdateTextarea();&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// scroll to button, textarea, or preview field&lt;br /&gt;
				WikEdScrollToPreview();&lt;br /&gt;
&lt;br /&gt;
// clear box, display loading indicator&lt;br /&gt;
				wikEdPreviewBox.innerHTML = wikEdText['wikEdPreviewLoading'];&lt;br /&gt;
				wikEdLocalPrevWrapper.style.display = 'block';&lt;br /&gt;
&lt;br /&gt;
// prepare ajax preview&lt;br /&gt;
				wikEdPreviewIsAjax = false;&lt;br /&gt;
				if (wikEdUseAjaxPreview == true) {&lt;br /&gt;
&lt;br /&gt;
// prepare the data&lt;br /&gt;
					var boundary = '--(fR*3briuStOum6#v)--';&lt;br /&gt;
					var postData = wikEdTextarea.value;&lt;br /&gt;
					postData = '--' + boundary + '\nContent-Disposition: form-data; name=&amp;quot;wpTextbox1&amp;quot;\n\n' + postData + '\n--' + boundary;&lt;br /&gt;
&lt;br /&gt;
// make the ajax request&lt;br /&gt;
					var formAction;&lt;br /&gt;
					if (wikEdUpload == true) {&lt;br /&gt;
						formAction = wikEdWikiGlobals['wgServer'] + wikEdWikiGlobals['wgScript'] + '?title=wikEdUploadPreview&amp;amp;action=submit';&lt;br /&gt;
					}&lt;br /&gt;
					else {&lt;br /&gt;
						formAction = wikEdEditForm.action;&lt;br /&gt;
					}&lt;br /&gt;
					WikEdAjaxRequest('POST', formAction + '&amp;amp;live', 'Content-Type', 'multipart/form-data; boundary=' + boundary, postData, 'text/html', function(ajax) {&lt;br /&gt;
						wikEdPreviewIsAjax = true;&lt;br /&gt;
&lt;br /&gt;
// get response&lt;br /&gt;
						var html = ajax.responseText;&lt;br /&gt;
&lt;br /&gt;
// html-ize&lt;br /&gt;
						html = html.replace(/&amp;amp;lt;/g, '&amp;lt;');&lt;br /&gt;
						html = html.replace(/&amp;amp;gt;/g, '&amp;gt;');&lt;br /&gt;
						html = html.replace(/&amp;amp;amp;/g, '&amp;amp;');&lt;br /&gt;
						html = html.replace(/&amp;amp;quot;/g, '&amp;quot;')&lt;br /&gt;
						html = html.replace(/&amp;amp;apos;/g, '\'');&lt;br /&gt;
						html = html.replace(/(&amp;lt;preview&amp;gt;)&amp;lt;h2&amp;gt;.*?&amp;lt;\/h2&amp;gt;(.|\n)*?&amp;lt;div class=\'previewnote\'&amp;gt;(.|\n)*?&amp;lt;\/div&amp;gt;/, '$1');&lt;br /&gt;
						wikEdPreviewBox.innerHTML = html;&lt;br /&gt;
					});&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// prepare a local preview (Pilaf's InstaView), will be overwritten by Ajax version&lt;br /&gt;
				if ( (wikEdUseLocalPreview == true) &amp;amp;&amp;amp; (typeof(InstaView) == 'object') ) {&lt;br /&gt;
					InstaView.conf.user.name = wikEdWikiGlobals['wgUserName'];&lt;br /&gt;
					var instaView = InstaView.convert(wikEdTextarea.value);&lt;br /&gt;
					if (wikEdPreviewIsAjax != true) {&lt;br /&gt;
						wikEdPreviewBox.innerHTML = instaView;&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// display local diff box&lt;br /&gt;
			case 'wikEdLocalDiff':&lt;br /&gt;
				if (typeof(WDiffString) != 'function') {&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
				if (wikEdFullScreenMode == true) {&lt;br /&gt;
					WikEdFullScreen(false);&lt;br /&gt;
				}&lt;br /&gt;
				if (wikEdUseWikEd == true) {&lt;br /&gt;
					WikEdUpdateTextarea();&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// scroll to button, textarea, or preview field&lt;br /&gt;
				WikEdScrollToPreview();&lt;br /&gt;
&lt;br /&gt;
// call external diff program&lt;br /&gt;
				var diffText = WDiffString(wikEdOrigVersion, wikEdTextarea.value);&lt;br /&gt;
				if (wikEdFullDiff != true) {&lt;br /&gt;
					diffText = WDiffShortenOutput(diffText);&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// scroll to preview field&lt;br /&gt;
				wikEdPreviewBox.innerHTML = diffText;&lt;br /&gt;
				wikEdLocalPrevWrapper.style.display = 'block';&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// toggle wikEdDiff&lt;br /&gt;
			case 'wikEdDiff':&lt;br /&gt;
&lt;br /&gt;
// turn wikEdDiff off&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') != 'true') {&lt;br /&gt;
					wikEdDiff = false;&lt;br /&gt;
					WikEdSetPersistent('wikEdDiff', '0', 0, '/');&lt;br /&gt;
					if (typeof(wikEdDiffDiv) == 'object') {&lt;br /&gt;
						if (wikEdDiffDiv != null) {&lt;br /&gt;
							wikEdDiffDiv.style.display = 'none';&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
					window.scroll(0, WikEdGetOffsetTop(wikEdInputWrapper));&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// turn wikEdDiff on&lt;br /&gt;
				else {&lt;br /&gt;
					wikEdDiff = true;&lt;br /&gt;
					WikEdSetPersistent('wikEdDiff', '1', 0, '/');&lt;br /&gt;
					if (typeof(wikEdDiffDiv) == 'object') {&lt;br /&gt;
						if (wikEdDiffDiv != null) {&lt;br /&gt;
							wikEdDiffDiv.style.display = 'block';&lt;br /&gt;
							window.scroll(0, WikEdGetOffsetTop(wikEdDiffDiv));&lt;br /&gt;
							WikEdDiff();&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// close the preview / diff box&lt;br /&gt;
			case 'wikEdClose':&lt;br /&gt;
			case 'wikEdClose2':&lt;br /&gt;
				window.scroll(0, WikEdGetOffsetTop(wikEdInputWrapper));&lt;br /&gt;
				wikEdLocalPrevWrapper.style.display = 'none';&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// switch between textarea and frame display&lt;br /&gt;
//   switching an iframe in design mode immediately after initialization between absolute/static may crash mozilla&lt;br /&gt;
			case 'wikEdUseWikEd':&lt;br /&gt;
&lt;br /&gt;
// enble wikEd&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') == 'true') {&lt;br /&gt;
					WikEdUpdateFrame();&lt;br /&gt;
&lt;br /&gt;
// turn rich text frame on&lt;br /&gt;
					WikEdSetEditArea(true);&lt;br /&gt;
					wikEdUseWikEd = true;&lt;br /&gt;
					WikEdSetPersistent('wikEdUseClassic', '0', 0, '/');&lt;br /&gt;
&lt;br /&gt;
// run scheduled custom functions&lt;br /&gt;
					WikEdExecuteHook(wikEdFrameHook);&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// turn classic textarea on, disable wikEd&lt;br /&gt;
				else {&lt;br /&gt;
					WikEdUpdateTextarea();&lt;br /&gt;
					WikEdSetEditArea(false);&lt;br /&gt;
					wikEdUseWikEd = false;&lt;br /&gt;
					WikEdSetPersistent('wikEdUseClassic', '1', 0, '/');&lt;br /&gt;
&lt;br /&gt;
// run scheduled custom functions&lt;br /&gt;
					WikEdExecuteHook(wikEdTextareaHook);&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// add &amp;quot;using wikEd&amp;quot; to summaries&lt;br /&gt;
			case 'wikEdUsing':&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') == 'true') {&lt;br /&gt;
					wikEdUsing = true;&lt;br /&gt;
					WikEdSetPersistent('wikEdSummaryUsing', '1', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					wikEdUsing = false;&lt;br /&gt;
					WikEdSetPersistent('wikEdSummaryUsing', '0', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// hide ref tags&lt;br /&gt;
			case 'wikEdRefHide':&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') == 'true') {&lt;br /&gt;
					wikEdRefHide = true;&lt;br /&gt;
					WikEdSetPersistent('wikEdRefHide', '1', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					wikEdRefHide = false;&lt;br /&gt;
					WikEdSetPersistent('wikEdRefHide', '0', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
				if (wikEdUseWikEd == true) {&lt;br /&gt;
					WikEdEditButton( null, 'wikEdWikify', {'whole': true} );&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// close the toolbar&lt;br /&gt;
			case 'wikEdCloseToolbar':&lt;br /&gt;
				if (WikEdGetAttribute(buttonObj, 'checked') == 'true') {&lt;br /&gt;
					wikEdCloseToolbar = true;&lt;br /&gt;
					if (document.getElementById('toolbar') != null) {&lt;br /&gt;
						wikEdToolbarWrapper.style.display = 'none';&lt;br /&gt;
					}&lt;br /&gt;
					WikEdSetPersistent('wikEdCloseToolbar', '1', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					wikEdCloseToolbar = false;&lt;br /&gt;
					if (document.getElementById('toolbar') != null) {&lt;br /&gt;
						wikEdToolbarWrapper.style.display = 'block';&lt;br /&gt;
					}&lt;br /&gt;
					WikEdSetPersistent('wikEdCloseToolbar', '0', 0, '/');&lt;br /&gt;
				}&lt;br /&gt;
				if (wikEdFullScreenMode == true) {&lt;br /&gt;
					WikEdFullScreen(wikEdFullScreenMode);&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// just toggle the case sensitive search button&lt;br /&gt;
			case 'wikEdCaseSensitive':&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// just toggle the regexp search button&lt;br /&gt;
			case 'wikEdRegExp':&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// just toggle the find-ahead-as-you-type search button&lt;br /&gt;
			case 'wikEdFindAhead':&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// switch to fullscreen edit area&lt;br /&gt;
			case 'wikEdFullScreen':&lt;br /&gt;
				if (wikEdRearrange == true) {&lt;br /&gt;
					if (WikEdGetAttribute(buttonObj, 'checked') == 'true') {&lt;br /&gt;
						WikEdFullScreen(true);&lt;br /&gt;
						WikEdSetPersistent('wikEdFullscreen', '1', 0, '/');&lt;br /&gt;
					}&lt;br /&gt;
					else {&lt;br /&gt;
						WikEdFullScreen(false);&lt;br /&gt;
						WikEdSetPersistent('wikEdFullscreen', '0', 0, '/');&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// clear the saved settings for find, replace, and summary history&lt;br /&gt;
			case 'wikEdClearHistory':&lt;br /&gt;
				WikEdClearHistory('find');&lt;br /&gt;
				WikEdClearHistory('replace');&lt;br /&gt;
				WikEdClearHistory('summary');&lt;br /&gt;
				focusFrame = true;&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// for testing&lt;br /&gt;
			case 'wikEdPlaceholder':&lt;br /&gt;
				break;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// reset the frame DOM cache because the frame content might have changed&lt;br /&gt;
	wikEdFrameDOMCache = null;&lt;br /&gt;
&lt;br /&gt;
// reset cursor to normal&lt;br /&gt;
	if (buttonObj != null) {&lt;br /&gt;
		buttonObj.style.cursor = 'pointer';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// focus the frame&lt;br /&gt;
	if ( (wikEdUseWikEd == true) &amp;amp;&amp;amp; (focusFrame == true) ) {&lt;br /&gt;
		wikEdFrameWindow.focus();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdEditButton: editing functions&lt;br /&gt;
//   used for buttons that require or change the text, more time consuming than WikEdButton()&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdEditButton = function(buttonObj, buttonId, parameters, CustomHandler) {&lt;br /&gt;
&lt;br /&gt;
// check if button is disabled&lt;br /&gt;
	if (buttonObj != null) {&lt;br /&gt;
		if (buttonObj.className == 'wikEdButtonInactive') {&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// remove active and non-text content&lt;br /&gt;
	WikEdRemoveElements(['script', 'object', 'applet', 'embed', 'textarea']);&lt;br /&gt;
&lt;br /&gt;
// select the appropriate text change targets (whole, selection, cursor, focusWord, focusLine, selectionWord, or selectionLine)&lt;br /&gt;
	var obj = {};&lt;br /&gt;
	obj.changed = {};&lt;br /&gt;
&lt;br /&gt;
	switch (buttonId) {&lt;br /&gt;
&lt;br /&gt;
// undo, redo: whole&lt;br /&gt;
		case 'wikEdUndo':&lt;br /&gt;
		case 'wikEdRedo':&lt;br /&gt;
		case 'wikEdUndoAll':&lt;br /&gt;
		case 'wikEdRedoAll':&lt;br /&gt;
			WikEdGetText(obj, 'whole');&lt;br /&gt;
			obj.changed = obj.whole;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// basic wiki character formatting: selection / focusWord / cursor&lt;br /&gt;
		case 'wikEdBold':&lt;br /&gt;
		case 'wikEdItalic':&lt;br /&gt;
		case 'wikEdUnderline':&lt;br /&gt;
		case 'wikEdStrikethrough':&lt;br /&gt;
		case 'wikEdNowiki':&lt;br /&gt;
		case 'wikEdSuperscript':&lt;br /&gt;
		case 'wikEdSubscript':&lt;br /&gt;
		case 'wikEdWikiLink':&lt;br /&gt;
		case 'wikEdWebLink':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusWord');&lt;br /&gt;
				if (obj.focusWord.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusWord;&lt;br /&gt;
				}&lt;br /&gt;
				else  {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// reference: selection / cursor&lt;br /&gt;
		case 'wikEdRef':&lt;br /&gt;
		case 'wikEdRefNamed':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed = obj.cursor;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// references and small references: selection / cursor&lt;br /&gt;
		case 'wikEdReferences':&lt;br /&gt;
		case 'wikEdReferencesSection':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed = obj.cursor;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// character formatting: selection / focusWord / cursor&lt;br /&gt;
		case 'wikEdCase':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusWord');&lt;br /&gt;
				if (obj.focusWord.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusWord;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// multiple line changes: selectionLine / focusLine / cursor&lt;br /&gt;
		case 'wikEdDecreaseHeading':&lt;br /&gt;
		case 'wikEdIncreaseHeading':&lt;br /&gt;
		case 'wikEdIncreaseBulletList':&lt;br /&gt;
		case 'wikEdDecreaseBulletList':&lt;br /&gt;
		case 'wikEdIncreaseNumberList':&lt;br /&gt;
		case 'wikEdDecreaseNumberList':&lt;br /&gt;
		case 'wikEdIncreaseIndentList':&lt;br /&gt;
		case 'wikEdDecreaseIndentList':&lt;br /&gt;
		case 'wikEdDefinitionList':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				WikEdGetText(obj, 'selectionLine');&lt;br /&gt;
				obj.changed = obj.selectionLine;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusLine');&lt;br /&gt;
				if (obj.focusLine.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusLine;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// sort: selectionLine / focusLine&lt;br /&gt;
		case 'wikEdSort':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				WikEdGetText(obj, 'selectionLine');&lt;br /&gt;
				obj.changed = obj.selectionLine;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusPara');&lt;br /&gt;
				if (obj.focusPara.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusPara;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// image: selectionWord (if text is selected) / cursor&lt;br /&gt;
		case 'wikEdImage':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				WikEdGetText(obj, 'selectionWord');&lt;br /&gt;
				obj.changed = obj.selectionWord;&lt;br /&gt;
			}&lt;br /&gt;
			else  {&lt;br /&gt;
				obj.changed = obj.cursor;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// table: selectionLine / cursor&lt;br /&gt;
		case 'wikEdTable':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				WikEdGetText(obj, 'selectionLine');&lt;br /&gt;
				obj.changed = obj.selectionLine;&lt;br /&gt;
			}&lt;br /&gt;
			else  {&lt;br /&gt;
				WikEdGetText(obj, 'focusLine');&lt;br /&gt;
				obj.changed = obj.cursor;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// wikify: selection / whole&lt;br /&gt;
		case 'wikEdWikify':&lt;br /&gt;
			if (parameters == 'whole') {&lt;br /&gt;
				WikEdGetText(obj, 'whole');&lt;br /&gt;
				obj.changed = obj.whole;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'selection');&lt;br /&gt;
				if (obj.selection.plain != '') {&lt;br /&gt;
					obj.changed = obj.selection;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					WikEdGetText(obj, 'whole');&lt;br /&gt;
					obj.changed = obj.whole;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// textify: selection / whole, without wikifying&lt;br /&gt;
		case 'wikEdTextify':&lt;br /&gt;
			WikEdGetText(obj, 'selection', false);&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'whole', false);&lt;br /&gt;
				obj.changed = obj.whole;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// redirect: whole&lt;br /&gt;
		case 'wikEdRedirect':&lt;br /&gt;
			WikEdGetText(obj, 'whole, selection, cursor');&lt;br /&gt;
			if (obj.selection.plain == '') {&lt;br /&gt;
				WikEdGetText(obj, 'selectionWord');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed = obj.whole;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// find and replace: selection / focusWord / cursor&lt;br /&gt;
		case 'wikEdFindPrev':&lt;br /&gt;
		case 'wikEdFindNext':&lt;br /&gt;
		case 'wikEdJumpPrev':&lt;br /&gt;
		case 'wikEdJumpNext':&lt;br /&gt;
		case 'wikEdReplacePrev':&lt;br /&gt;
		case 'wikEdReplaceNext':&lt;br /&gt;
		case 'wikEdFindAll':&lt;br /&gt;
			WikEdGetText(obj, 'selection');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusWord');&lt;br /&gt;
				if (obj.focusWord.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusWord;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// replace all: selection / whole&lt;br /&gt;
		case 'wikEdReplaceAll':&lt;br /&gt;
			WikEdGetText(obj, 'selection');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'whole');&lt;br /&gt;
				obj.changed = obj.whole;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// fixing buttons: selection / whole&lt;br /&gt;
		case 'wikEdFixBasic':&lt;br /&gt;
		case 'wikEdfixUnicode':&lt;br /&gt;
		case 'wikEdFixAll':&lt;br /&gt;
		case 'wikEdFixHtml':&lt;br /&gt;
		case 'wikEdFixRegExTypo':&lt;br /&gt;
			WikEdGetText(obj, 'selection');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'whole');&lt;br /&gt;
				obj.changed = obj.whole&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// fixing buttons: selection / focusLine / cursor&lt;br /&gt;
		case 'wikEdFixPunct':&lt;br /&gt;
		case 'wikEdFixMath':&lt;br /&gt;
		case 'wikEdFixUnits':&lt;br /&gt;
		case 'wikEdFixDashes':&lt;br /&gt;
		case 'wikEdFixCaps':&lt;br /&gt;
		case 'wikEdFixChem':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusLine');&lt;br /&gt;
				if (obj.focusPara.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusLine;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// fixing buttons: selection / focusWord / cursor&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusWord');&lt;br /&gt;
				if (obj.focusWord.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusWord;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// source: selection / whole&lt;br /&gt;
		case 'wikEdSource':&lt;br /&gt;
			WikEdGetText(obj, 'selection');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'whole');&lt;br /&gt;
				obj.changed = obj.whole;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// insert tags: selection / focusWord / cursor&lt;br /&gt;
		case 'wikEdInsertTags':&lt;br /&gt;
			WikEdGetText(obj, 'selection, cursor');&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				obj.changed = obj.selection;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				WikEdGetText(obj, 'focusWord');&lt;br /&gt;
				if (obj.focusWord.plain != '') {&lt;br /&gt;
					obj.changed = obj.focusWord;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.selection;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// update text view using current control button settings&lt;br /&gt;
		case 'wikEdUpdateAll':&lt;br /&gt;
			WikEdGetText(obj, 'whole');//, parameters.wikify);&lt;br /&gt;
			obj.changed = obj.whole;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// custom edit functions have to call WikEdGetText() themselves&lt;br /&gt;
		default:&lt;br /&gt;
			WikEdGetText(obj, 'cursor');&lt;br /&gt;
			obj.changed = obj.cursor;&lt;br /&gt;
			break;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// exit&lt;br /&gt;
	if (obj.changed == null) {&lt;br /&gt;
		wikEdFrameWindow.focus();&lt;br /&gt;
&lt;br /&gt;
// reset button to active, reset cursor&lt;br /&gt;
		if (buttonObj != null) {&lt;br /&gt;
			if (buttonObj.className != 'wikEdButtonInactive') {&lt;br /&gt;
				buttonObj.className = 'wikEdButton';&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set local syntax highlighting flag&lt;br /&gt;
	var highlightSyntax = wikEdHighlightSyntax;&lt;br /&gt;
&lt;br /&gt;
// manipulate the text&lt;br /&gt;
	var selectChanged = true;&lt;br /&gt;
	var selectChangedText = '';&lt;br /&gt;
	switch (buttonId) {&lt;br /&gt;
&lt;br /&gt;
// undo&lt;br /&gt;
		case 'wikEdUndo':&lt;br /&gt;
			if (wikEdLastVersion == null) {&lt;br /&gt;
				wikEdLastVersion = obj.changed.plain;&lt;br /&gt;
			}&lt;br /&gt;
			WikEdFrameExecCommand('undo');&lt;br /&gt;
			if (obj.sel.rangeCount == 0) {&lt;br /&gt;
				obj.sel.collapse(wikEdFrameBody, 0);&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.range = obj.sel.getRangeAt(obj.sel.rangeCount - 1);&lt;br /&gt;
			obj.changed.plain = null;&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// redo&lt;br /&gt;
		case 'wikEdRedo':&lt;br /&gt;
			WikEdFrameExecCommand('redo');&lt;br /&gt;
			if (obj.sel.rangeCount == 0) {&lt;br /&gt;
				obj.sel.collapse(wikEdFrameBody, 0);&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.range = obj.sel.getRangeAt(obj.sel.rangeCount - 1);&lt;br /&gt;
			obj.changed.plain = null;&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// bold&lt;br /&gt;
		case 'wikEdBold':&lt;br /&gt;
			if ( /\'\'\'([^\'].*?)\'\'\'/.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/\'\'\'([^\'].*?)\'\'\'/g, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '\'\'\'' + obj.changed.plain + '\'\'\'';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(\'\'\')( *)(.*?)( *)(\'\'\')/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/\'{6,}/g, '\'\'\'\'\'');&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// italic&lt;br /&gt;
		case 'wikEdItalic':&lt;br /&gt;
			if ( /(\'{3,})\'\'([^\'].*?)\'\'(\'{3,})/.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(\'{3,})\'\'([^\'].*?)\'\'(\'{3,})/g, '$1$2$3');&lt;br /&gt;
			}&lt;br /&gt;
			else if ( /(^|[^\'])\'\'([^\'].*?)\'\'([^\']|$)/.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(^|[^\'])\'\'([^\'].*?)\'\'([^\']|$)/g, '$1$2$3');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '\'\'' + obj.changed.plain + '\'\'';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(\'\')( *)(.*?)( *)(\'\')/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/\'{6,}/g, '\'\'\'\'\'');&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// underline&lt;br /&gt;
		case 'wikEdUnderline':&lt;br /&gt;
			if ( /&amp;amp;lt;u&amp;amp;gt;(.*?)&amp;amp;lt;\/u&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;u&amp;amp;gt;(.*?)&amp;amp;lt;\/u&amp;amp;gt;/gi, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '&amp;amp;lt;u&amp;amp;gt;' + obj.changed.plain + '&amp;amp;lt;\/u&amp;amp;gt;';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(&amp;amp;lt;u&amp;amp;gt;)( *)(.*?)( *)(&amp;amp;lt;\/u&amp;amp;gt;)/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// strikethrough&lt;br /&gt;
		case 'wikEdStrikethrough':&lt;br /&gt;
			if ( /&amp;amp;lt;s&amp;amp;gt;(.*?)&amp;amp;lt;\/s&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;s&amp;amp;gt;(.*?)&amp;amp;lt;\/s&amp;amp;gt;/gi, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '&amp;amp;lt;s&amp;amp;gt;' + obj.changed.plain + '&amp;amp;lt;\/s&amp;amp;gt;';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(&amp;amp;lt;s&amp;amp;gt;)( *)(.*?)( *)(&amp;amp;lt;\/s&amp;amp;gt;)/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// nowiki&lt;br /&gt;
		case 'wikEdNowiki':&lt;br /&gt;
			if ( /&amp;amp;lt;nowiki&amp;amp;gt;(.*?)&amp;amp;lt;\/nowiki&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;nowiki&amp;amp;gt;(.*?)&amp;amp;lt;\/nowiki&amp;amp;gt;/gi, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '&amp;amp;lt;nowiki&amp;amp;gt;' + obj.changed.plain + '&amp;amp;lt;\/nowiki&amp;amp;gt;';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(&amp;amp;lt;nowiki&amp;amp;gt;)( *)(.*?)( *)(&amp;amp;lt;\/nowiki&amp;amp;gt;)/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// superscript&lt;br /&gt;
		case 'wikEdSuperscript':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/^(\s*)&amp;amp;lt;sub&amp;amp;gt;(.*?)&amp;amp;lt;\/sub&amp;amp;gt;(\s*)$/, '$1$2$3');&lt;br /&gt;
			if ( /&amp;amp;lt;sup&amp;amp;gt;(.*?)&amp;amp;lt;\/sup&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;sup&amp;amp;gt;(.*?)&amp;amp;lt;\/sup&amp;amp;gt;/gi, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '&amp;amp;lt;sup&amp;amp;gt;' + obj.changed.plain + '&amp;amp;lt;/sup&amp;amp;gt;';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(&amp;amp;lt;sup&amp;amp;gt;)( *)(.*?)( *)(&amp;amp;lt;\/sup&amp;amp;gt;)/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// subscript&lt;br /&gt;
		case 'wikEdSubscript':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/^(\s*)&amp;amp;lt;sup&amp;amp;gt;(.*?)&amp;amp;lt;\/sup&amp;amp;gt;(\s*)$/, '$1$2$3');&lt;br /&gt;
			if ( /&amp;amp;lt;sub&amp;amp;gt;(.*?)&amp;amp;lt;\/sub&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;sub&amp;amp;gt;(.*?)&amp;amp;lt;\/sub&amp;amp;gt;/gi, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '&amp;amp;lt;sub&amp;amp;gt;' + obj.changed.plain + '&amp;amp;lt;/sub&amp;amp;gt;';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(&amp;amp;lt;sub&amp;amp;gt;)( *)(.*?)( *)(&amp;amp;lt;\/sub&amp;amp;gt;)/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// in-text reference&lt;br /&gt;
		case 'wikEdRef':&lt;br /&gt;
		case 'wikEdRefNamed':&lt;br /&gt;
			if (obj.changed.plain == '') {&lt;br /&gt;
				if (buttonId == 'wikEdRef') {&lt;br /&gt;
					obj.changed.plain = '&amp;amp;lt;ref /&amp;amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed.plain = '&amp;amp;lt;ref name=\&amp;quot;\&amp;quot;/&amp;amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			else if ( /&amp;amp;lt;ref( name=\&amp;quot;\&amp;quot;)? ?\/&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = '';&lt;br /&gt;
			}&lt;br /&gt;
			else if ( /&amp;amp;lt;ref( name=\&amp;quot;\&amp;quot;)?&amp;amp;gt;(.*?)&amp;amp;lt;\/ref&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;ref( name=\&amp;quot;\&amp;quot;)?&amp;amp;gt;(.*?)&amp;amp;lt;\/ref&amp;amp;gt;/gi, '$2');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				if (buttonId == 'wikEdRef') {&lt;br /&gt;
					obj.changed.plain = '&amp;amp;lt;ref&amp;amp;gt;' + obj.changed.plain + '&amp;amp;lt;/ref&amp;amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed.plain = '&amp;amp;lt;ref name=\&amp;quot;\&amp;quot;&amp;amp;gt;' + obj.changed.plain + '&amp;amp;lt;/ref&amp;amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(&amp;amp;lt;ref( name=\&amp;quot;\&amp;quot;)?&amp;amp;gt;)( *)(.*?)( *)(&amp;amp;lt;\/ref&amp;amp;gt;)/, '$3$1$4$6$5');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// references location&lt;br /&gt;
		case 'wikEdReferences':&lt;br /&gt;
		case 'wikEdReferencesSection':&lt;br /&gt;
			var ref = wikEdText['wikEdReferencesSection'];&lt;br /&gt;
			ref = ref.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
			ref = ref.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
			var refEscaped = ref;&lt;br /&gt;
			refEscaped = refEscaped.replace(/([^\w\s\;\&amp;amp;])/g, '\\$1');&lt;br /&gt;
			refEscaped = refEscaped.replace(/^\n|\n$/g, '\\n*');&lt;br /&gt;
			refEscaped = refEscaped.replace(/(\n)/g, '\\n');&lt;br /&gt;
			var	regExp = new RegExp(refEscaped, 'gi');&lt;br /&gt;
&lt;br /&gt;
// plain references tag&lt;br /&gt;
			if (buttonId == 'wikEdReferences') {&lt;br /&gt;
				if (obj.changed.plain == '') {&lt;br /&gt;
					obj.changed.plain = '&amp;amp;lt;references/&amp;amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				else if (regExp.test(obj.changed.plain)) {&lt;br /&gt;
					obj.changed.plain = obj.changed.plain.replace(regExp, '');&lt;br /&gt;
				}&lt;br /&gt;
				else if ( /&amp;amp;lt;references ?\/&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
					obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;references ?\/&amp;amp;gt;/gi, '');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
					obj.changed.plain = '&amp;amp;lt;references/&amp;amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// complete references code&lt;br /&gt;
			else {&lt;br /&gt;
				if (obj.changed.plain == '') {&lt;br /&gt;
					obj.changed.plain = ref;&lt;br /&gt;
				}&lt;br /&gt;
				else if (regExp.test(obj.changed.plain)) {&lt;br /&gt;
					obj.changed.plain = obj.changed.plain.replace(regExp, '');&lt;br /&gt;
				}&lt;br /&gt;
				else if ( /&amp;amp;lt;references ?\/&amp;amp;gt;/i.test(obj.changed.plain) ) {&lt;br /&gt;
					obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;references ?\/&amp;amp;gt;/gi, '');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed = obj.cursor;&lt;br /&gt;
					obj.changed.plain = ref;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// toggle lowercase / uppercase&lt;br /&gt;
		case 'wikEdCase':&lt;br /&gt;
&lt;br /&gt;
// lowercase all uppercased text&lt;br /&gt;
			if (obj.changed.plain == '') {&lt;br /&gt;
				obj.changed.plain = null;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
&lt;br /&gt;
// html character entities to chars&lt;br /&gt;
				var plain = obj.changed.plain;&lt;br /&gt;
				plain = plain.replace(/&amp;amp;gt;/g, '&amp;gt;');&lt;br /&gt;
				plain = plain.replace(/&amp;amp;lt;/g, '&amp;lt;');&lt;br /&gt;
				plain = plain.replace(/&amp;amp;amp;/g, '&amp;amp;');&lt;br /&gt;
&lt;br /&gt;
				if (plain.toUpperCase() == plain) {&lt;br /&gt;
					plain = plain.toLowerCase();&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// first-letter-uppercase all lowercased text&lt;br /&gt;
				else if (plain.toLowerCase() == plain) {&lt;br /&gt;
					plain = plain.replace(/\b([\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9])([\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\']*)/g,&lt;br /&gt;
						function (p, p1, p2) {&lt;br /&gt;
							return(p1.toUpperCase() + p2.toLowerCase());&lt;br /&gt;
						}&lt;br /&gt;
					);&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// uppercase mixed upper and lowercased text&lt;br /&gt;
				else {&lt;br /&gt;
					plain = plain.toUpperCase();&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// chars back to html character entities&lt;br /&gt;
				plain = plain.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
				plain = plain.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
				plain = plain.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
				obj.changed.plain = plain;&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// sort alphabetically by visible words, case insensitive, and numerically&lt;br /&gt;
		case 'wikEdSort':&lt;br /&gt;
&lt;br /&gt;
// fix unicode and character entities&lt;br /&gt;
			WikEdFixUnicode(obj.changed);&lt;br /&gt;
&lt;br /&gt;
// keep leading and trailing empty lines and table syntax&lt;br /&gt;
			var pre = '';&lt;br /&gt;
			var main = '';&lt;br /&gt;
			var post = '';&lt;br /&gt;
			var regExpMatch = /^(((\{\|.*|!.*|\|\+.*|\|\-.*|)\n)*)((.|\n)*?)(((\|\}.*|\|\-.*|)\n)*)$/.exec(obj.changed.plain);&lt;br /&gt;
			if (regExpMatch != null) {&lt;br /&gt;
				pre = regExpMatch[1];&lt;br /&gt;
				main = regExpMatch[4];&lt;br /&gt;
				post = regExpMatch[6];&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				main = obj.changed.plain;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// join cells in table rows&lt;br /&gt;
			main = main.replace(/(^|\n)(\|[^\-\+\}](.|\n)*?(?=(\|\-|\{\||\|\}|$)|$))/g,&lt;br /&gt;
				function(p, p1, p2) {&lt;br /&gt;
					p2 = p2.replace(/\n/g, '\u0000');&lt;br /&gt;
					return(p1 + p2);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
&lt;br /&gt;
// cycle through lines&lt;br /&gt;
			var lines = main.split('\n');&lt;br /&gt;
			var sortArray = [];&lt;br /&gt;
			for (var i = 0; i &amp;lt; lines.length; i ++) {&lt;br /&gt;
				var line = lines[i];&lt;br /&gt;
				var sortKey = line;&lt;br /&gt;
&lt;br /&gt;
// remove empty lines&lt;br /&gt;
				if (line == '') {&lt;br /&gt;
					continue;&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// remove html&lt;br /&gt;
				sortKey = sortKey.replace(/&amp;amp;lt;.*&amp;amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// keep visible text of wikilinks only&lt;br /&gt;
				sortKey = sortKey.replace(/\[\[[^\|\[\]\n]*\|([^\[\]]*)\]\]/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// keep visible text of external links only&lt;br /&gt;
				sortKey = sortKey.replace(/\[[^ ]+ +([^\[\]\n]*)\]/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// keep visible cell content only&lt;br /&gt;
				sortKey = sortKey.replace(/^\|[^\+\-\}\[\]][^\[\]\{\}\u0000]*\| */, '');&lt;br /&gt;
&lt;br /&gt;
// keep single ' only&lt;br /&gt;
				sortKey = sortKey.replace(/\'{2,}/g, '');&lt;br /&gt;
&lt;br /&gt;
// remove decimal commas&lt;br /&gt;
				sortKey = sortKey.replace(/(\d)\,(?=\d\d\d(\D|$))/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// sort numerically by adding preceeding 0s to numbers&lt;br /&gt;
				sortKey = sortKey.replace(/0*(\d+)(\.\d*)?/g, '000000000000000'.substr('$1'.length) + '$1$2');&lt;br /&gt;
&lt;br /&gt;
// non-breaking spaces&lt;br /&gt;
				sortKey = sortKey.replace(/&amp;amp;nbsp;|\u00a0/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// join multiple spaces&lt;br /&gt;
				sortKey = sortKey.replace(/ +/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// remove non-chars but not spaces&lt;br /&gt;
				sortKey = sortKey.replace(/[^\.\,\:\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\s\']/, '');&lt;br /&gt;
&lt;br /&gt;
// remove leading and trailing spaces&lt;br /&gt;
				sortKey = sortKey.replace(/^ +| +$/g, '');&lt;br /&gt;
&lt;br /&gt;
				sortArray.push( [line, sortKey] );&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// sort lines&lt;br /&gt;
			sortArray = sortArray.sort(&lt;br /&gt;
				function(a, b) {&lt;br /&gt;
					if (a[1].toLowerCase() &amp;lt;= b[1].toLowerCase()) {&lt;br /&gt;
						return(-1);&lt;br /&gt;
					}&lt;br /&gt;
					else {&lt;br /&gt;
						return(1);&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
&lt;br /&gt;
// join lines&lt;br /&gt;
			var joined = '';&lt;br /&gt;
			for (var i = 0; i &amp;lt; sortArray.length; i ++) {&lt;br /&gt;
				joined += sortArray[i][0];&lt;br /&gt;
				if (i &amp;lt; sortArray.length - 1) {&lt;br /&gt;
				 joined += '\n';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			joined = joined.replace(/\u0000/g, '\n');&lt;br /&gt;
			obj.changed.plain = pre + joined + post;&lt;br /&gt;
&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// undo all&lt;br /&gt;
		case 'wikEdUndoAll':&lt;br /&gt;
			if (wikEdLastVersion == null) {&lt;br /&gt;
				wikEdLastVersion = obj.changed.plain;&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.plain = wikEdOrigVersion;&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// redo all&lt;br /&gt;
		case 'wikEdRedoAll':&lt;br /&gt;
			if (wikEdLastVersion != null) {&lt;br /&gt;
				obj.changed.plain = wikEdLastVersion;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// create wikilink&lt;br /&gt;
		case 'wikEdWikiLink':&lt;br /&gt;
			if ( /\[\[(.*?)\]\]/.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/\[\[(.*?)\]\]/g, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '\[\[' + obj.changed.plain + '\]\]';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(\[\[)( *)(.*?)( *)(\]\])/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// create weblink&lt;br /&gt;
		case 'wikEdWebLink':&lt;br /&gt;
			if ( /\[(.*?)\]/.test(obj.changed.plain) ) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/\[(.*?)\]/g, '$1');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '\[' + obj.changed.plain + '\]';&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(\[)( *)(.*?)( *)(\])/, '$2$1$3$5$4');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// decrease heading level&lt;br /&gt;
		case 'wikEdDecreaseHeading':&lt;br /&gt;
&lt;br /&gt;
// decrease heading&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/(^|\n)=(=+) *([^\n]*?) *=+(?=\n|$)/g, '$1$2 $3 $2');&lt;br /&gt;
&lt;br /&gt;
// remove heading&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/(^|\n)=(?!=) *([^\n]*?) *=+(?=\n|$)/g, '$1$2');&lt;br /&gt;
&lt;br /&gt;
// adjust closing tags&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/(^|\n)(=+) *([^\n]*?) *=+(?=\n|$)/g, '$1$2 $3 $2');&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// increase heading level&lt;br /&gt;
		case 'wikEdIncreaseHeading':&lt;br /&gt;
&lt;br /&gt;
// increase heading&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/(^|\n)(=+) *([^\n]*?) *=+(?=\n|$)/g, '$1=$2 $3 $2=');&lt;br /&gt;
&lt;br /&gt;
// create new heading&lt;br /&gt;
			if (/\n/.test(obj.changed.plain) == false) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(^|\n)([^=\n\s][^\n]*?)(?=\n|$)/g, '$1== $2 ==');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// adjust closing tags&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/(^|\n)(=+) *([^\n]*?) *=+(?=\n|$)/g, '$1$2 $3 $2');&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// increase bullet list&lt;br /&gt;
		case 'wikEdIncreaseBulletList':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/([^\n]+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					p1 = p1.replace(/^ *([\*\#\:\;]*) *()/g, '*$1 ');&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// decrease bullet list&lt;br /&gt;
		case 'wikEdDecreaseBulletList':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/([^\n]+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					p1 = p1.replace(/^[\*\#\:\;] *()/g, '');&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// increase numbered list&lt;br /&gt;
		case 'wikEdIncreaseNumberList':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/([^\n]+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					p1 = p1.replace(/^ *([\*\#\:\;]*) *()/g, '#$1 ');&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// decrease numbered list&lt;br /&gt;
		case 'wikEdDecreaseNumberList':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/([^\n]+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					p1 = p1.replace(/^[\*\#\:\;] *()/g, '');&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// increase indented list&lt;br /&gt;
		case 'wikEdIncreaseIndentList':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/([^\n]+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					p1 = p1.replace(/^ *([\*\#\:\;]*) *()/g, ':$1 ');&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// decrease indented list&lt;br /&gt;
		case 'wikEdDecreaseIndentList':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/([^\n]+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					p1 = p1.replace(/^[\*\#\:\;] *()/g, '');&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// create definition list&lt;br /&gt;
		case 'wikEdDefinitionList':&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/([^\n]+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					p1 = p1.replace(/^ *([^\s\;]+) *()/g, '; $1 : ');&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// create image&lt;br /&gt;
		case 'wikEdImage':&lt;br /&gt;
			if (obj.changed.plain != '') {&lt;br /&gt;
				obj.changed.plain = '[[Image:&amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['image filename'] + '&amp;lt;/span&amp;gt;|thumb|&amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['image width'] + '&amp;lt;/span&amp;gt;px|' + obj.changed.plain + ']]';&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '[[Image:&amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['image filename'] + '&amp;lt;/span&amp;gt;|thumb|&amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['image width'] + '&amp;lt;/span&amp;gt;px|&amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;]]';&lt;br /&gt;
				if (obj.focusWord != null) {&lt;br /&gt;
					if (obj.focusWord.plain != '') {&lt;br /&gt;
						obj.changed.plain = ' ' + obj.changed.plain + ' ';&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// create table&lt;br /&gt;
		case 'wikEdTable':&lt;br /&gt;
			if (obj.changed.plain != '') {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/(^|\n) *()/g, '\n|-\n| ');&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/^\n\|\-\n/, '\n{| class=&amp;quot;wikitable&amp;quot;\n');&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/$/g, '\n|}\n');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = '\n{| class=&amp;quot;wikitable&amp;quot;\n|+ &amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['table caption'] + '&amp;lt;/span&amp;gt;\n! &amp;lt;span class=&amp;quot;wikEdinserthere&amp;quot;&amp;gt;' + wikEdText['table heading'] + '&amp;lt;/span&amp;gt; !! &amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['table heading'] + '&amp;lt;/span&amp;gt;\n|-\n| &amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['table cell'] + '&amp;lt;/span&amp;gt; || &amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['table cell'] + '&amp;lt;/span&amp;gt;\n|-\n| &amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['table cell'] + '&amp;lt;/span&amp;gt; || &amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['table cell'] + '&amp;lt;/span&amp;gt;\n|}\n';&lt;br /&gt;
				if (obj.focusLine.plain != '') {&lt;br /&gt;
					obj.changed.plain = '\n' + obj.changed.plain + '\n';&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// wikify: always done above&lt;br /&gt;
		case 'wikEdWikify':&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// textify: strip html from pasted content&lt;br /&gt;
		case 'wikEdTextify':&lt;br /&gt;
			WikEdTextify(obj.changed);&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// redirect&lt;br /&gt;
		case 'wikEdRedirect':&lt;br /&gt;
			var linkTarget;&lt;br /&gt;
			if (obj.selection.plain != '') {&lt;br /&gt;
				linkTarget = obj.selection.plain;&lt;br /&gt;
			}&lt;br /&gt;
			else if (obj.selectionWord.plain != '') {&lt;br /&gt;
				linkTarget = obj.selectionWord.plain;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				linkTarget = '&amp;lt;span class=&amp;quot;wikEdInsertHere&amp;quot;&amp;gt;' + wikEdText['redirect article link'] + '&amp;lt;/span&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// remove link text after |&lt;br /&gt;
			linkTarget = linkTarget.replace(/\|.*()/, '');&lt;br /&gt;
&lt;br /&gt;
// remove formatting and spaces&lt;br /&gt;
			linkTarget = linkTarget.replace(/^(=+|\'+|&amp;lt;[^&amp;gt;]*&amp;gt;|\s+|\[)+(.*?)(=+|\'+|&amp;lt;[^&amp;gt;]*&amp;gt;|\s+|\])+$/g, '$2');&lt;br /&gt;
			linkTarget = linkTarget.replace(/\s+/g, ' ');&lt;br /&gt;
			linkTarget = linkTarget.replace(/^\s+|\s+$/g, '');&lt;br /&gt;
&lt;br /&gt;
			obj.changed.plain = '#REDIRECT [[' + linkTarget + ']]';&lt;br /&gt;
&lt;br /&gt;
// append to summary&lt;br /&gt;
			if (wikEdInputElement['summary'] != null) {&lt;br /&gt;
				if ( (obj.selection.plain != '') || (obj.selectionWord.plain != '') ) {&lt;br /&gt;
					wikEdInputElement['summary'].value = wikEdInputElement['summary'].value.replace(/#REDIRECT( \[\[[^\]]*\]\])?(, *)?/g, '');&lt;br /&gt;
					wikEdInputElement['summary'].value = WikEdAppendToSummary(wikEdInputElement['summary'].value, '#REDIRECT [[' + linkTarget + ']]');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					wikEdInputElement['summary'].value = WikEdAppendToSummary(wikEdInputElement['summary'].value, '#REDIRECT');&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			selectChanged = false;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// find and replace&lt;br /&gt;
		case 'wikEdFindPrev':&lt;br /&gt;
		case 'wikEdFindNext':&lt;br /&gt;
		case 'wikEdJumpPrev':&lt;br /&gt;
		case 'wikEdJumpNext':&lt;br /&gt;
		case 'wikEdReplacePrev':&lt;br /&gt;
		case 'wikEdReplaceNext':&lt;br /&gt;
		case 'wikEdFindAll':&lt;br /&gt;
		case 'wikEdReplaceAll':&lt;br /&gt;
&lt;br /&gt;
// get the find text&lt;br /&gt;
			var findText;&lt;br /&gt;
&lt;br /&gt;
// unescape &amp;lt;, &amp;gt;, and &amp;amp;&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;amp;lt;/g, '&amp;lt;');&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;amp;gt;/g, '&amp;gt;');&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;amp;amp;/g, '&amp;amp;');&lt;br /&gt;
&lt;br /&gt;
// copy selection/word under cursor to find field&lt;br /&gt;
			if ( (parameters == 'shift') &amp;amp;&amp;amp; ( (buttonId == 'wikEdFindNext') || (buttonId == 'wikEdReplaceNext') ) ) {&lt;br /&gt;
				if (/\n/.test(obj.changed.plain) == false) {&lt;br /&gt;
					if (buttonId == 'wikEdFindNext') {&lt;br /&gt;
						wikEdInputElement['find'].value = obj.changed.plain;&lt;br /&gt;
					}&lt;br /&gt;
					else {&lt;br /&gt;
						wikEdInputElement['replace'].value = obj.changed.plain;&lt;br /&gt;
					}&lt;br /&gt;
					obj.changed.keepSel = true;&lt;br /&gt;
					obj.changed.plain = null;&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// get the find text from the find field&lt;br /&gt;
			if ( (buttonId == 'wikEdJumpPrev') || (buttonId == 'wikEdJumpNext') ) {&lt;br /&gt;
				findText = obj.changed.plain;&lt;br /&gt;
				if (obj.selection.plain == '') {&lt;br /&gt;
					obj.changed.keepSel = true;&lt;br /&gt;
					obj.changed.plain = null;&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// get the find text from the find field&lt;br /&gt;
			else {&lt;br /&gt;
				if (wikEdInputElement['find'].value != '') {&lt;br /&gt;
					findText = wikEdInputElement['find'].value;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed.plain = null;&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// get button status&lt;br /&gt;
			var regExpChecked = WikEdGetAttribute(wikEdRegExp, 'checked');&lt;br /&gt;
			var caseSensitiveChecked = WikEdGetAttribute(wikEdCaseSensitive, 'checked');&lt;br /&gt;
&lt;br /&gt;
// handle newlines and special blanks for built-in search&lt;br /&gt;
			if (regExpChecked == 'false') {&lt;br /&gt;
				findText = findText.replace(/\n/g, '');&lt;br /&gt;
				findText = findText.replace(/\s/g, ' ');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// get the replace text&lt;br /&gt;
			var replaceText = wikEdInputElement['replace'].value;&lt;br /&gt;
			var regExpFind;&lt;br /&gt;
&lt;br /&gt;
// set regexp flags&lt;br /&gt;
			var regExpFlags = 'g';&lt;br /&gt;
			if (caseSensitiveChecked == 'false') {&lt;br /&gt;
				regExpFlags += 'i';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// format the find and replace texts for a plain text search&lt;br /&gt;
			if ( (regExpChecked == 'false') || (buttonId == 'wikEdJumpPrev') || (buttonId == 'wikEdJumpNext') ) {&lt;br /&gt;
				regExpFind = new RegExp(findText.replace(/([\\^\$\*\+\?\.\(\)\[\]\{\}\:\=\!\|\,\-])/g, '\\$1'), regExpFlags);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// format the find and replace texts for a regular expression search&lt;br /&gt;
			else {&lt;br /&gt;
				try {&lt;br /&gt;
					regExpFind = new RegExp(findText, regExpFlags);&lt;br /&gt;
				}&lt;br /&gt;
				catch (err) {&lt;br /&gt;
					return;&lt;br /&gt;
				}&lt;br /&gt;
				replaceText = replaceText.replace(/((^|[^\\])(\\\\)*)\\n/g, '$1\n');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// replace all&lt;br /&gt;
			var replacedFlag = false;&lt;br /&gt;
			if (buttonId == 'wikEdReplaceAll') {&lt;br /&gt;
				if (regExpFind.test(obj.changed.plain)) {&lt;br /&gt;
					obj.changed.plain = obj.changed.plain.replace(regExpFind, replaceText);&lt;br /&gt;
					replacedFlag = true;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed.plain = null;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// replace an existing selection&lt;br /&gt;
			else if ( (buttonId == 'wikEdReplacePrev') || (buttonId == 'wikEdReplaceNext') ) {&lt;br /&gt;
				if (regExpFind.test(obj.selection.plain)) {&lt;br /&gt;
					var replaced = obj.selection.plain.replace(regExpFind, replaceText);&lt;br /&gt;
					if (obj.changed.plain != replaced) {&lt;br /&gt;
						obj.changed.plain = replaced;&lt;br /&gt;
						replacedFlag = true;&lt;br /&gt;
					}&lt;br /&gt;
					else {&lt;br /&gt;
						obj.changed.plain = null;&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.changed.plain = null;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			else if (&lt;br /&gt;
				(buttonId == 'wikEdFindNext') || (buttonId == 'wikEdFindPrev') ||&lt;br /&gt;
				(buttonId == 'wikEdJumpNext') || (buttonId == 'wikEdJumpPrev')&lt;br /&gt;
			) {&lt;br /&gt;
				obj.changed.plain = null;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			if (&lt;br /&gt;
				(buttonId == 'wikEdFindNext') || (buttonId == 'wikEdFindPrev') ||&lt;br /&gt;
				(buttonId == 'wikEdJumpNext') || (buttonId == 'wikEdJumpPrev') ||&lt;br /&gt;
				(buttonId == 'wikEdReplaceNext') || (buttonId == 'wikEdReplacePrev') ||&lt;br /&gt;
				(buttonId == 'wikEdFindAll')&lt;br /&gt;
			) {&lt;br /&gt;
				if (replacedFlag == false) {&lt;br /&gt;
&lt;br /&gt;
// get direction&lt;br /&gt;
					var backwards = false;&lt;br /&gt;
					if ( (buttonId == 'wikEdFindPrev') || (buttonId == 'wikEdJumpPrev') || (buttonId == 'wikEdReplacePrev') ) {&lt;br /&gt;
						backwards = true;&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// get case sensitive&lt;br /&gt;
					var caseSensitive = false;&lt;br /&gt;
					if (caseSensitiveChecked == 'true') {&lt;br /&gt;
						caseSensitive = true;&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// find all&lt;br /&gt;
					if (buttonId == 'wikEdFindAll') {&lt;br /&gt;
						var found;&lt;br /&gt;
						var foundRanges = [];&lt;br /&gt;
&lt;br /&gt;
// start at top of text&lt;br /&gt;
						WikEdRemoveAllRanges(obj.sel);&lt;br /&gt;
						var range = document.createRange();&lt;br /&gt;
						range.setStartBefore(wikEdFrameBody.firstChild);&lt;br /&gt;
						range.collapse(true);&lt;br /&gt;
						range = obj.sel.addRange(range);&lt;br /&gt;
&lt;br /&gt;
// cycle through matches&lt;br /&gt;
						var scrollTop = wikEdFrameBody.scrollTop;&lt;br /&gt;
						do {&lt;br /&gt;
&lt;br /&gt;
// use regexp seach&lt;br /&gt;
							if (regExpChecked == 'true') {&lt;br /&gt;
								found = WikEdFind(obj, findText, caseSensitive, false, false, regExpFind);&lt;br /&gt;
							}&lt;br /&gt;
&lt;br /&gt;
// use built-in sarch&lt;br /&gt;
							else {&lt;br /&gt;
								found = WikEdFind(obj, findText, caseSensitive, false, false, null);&lt;br /&gt;
							}&lt;br /&gt;
							if (found == true) {&lt;br /&gt;
								foundRanges.push(obj.changed.range.cloneRange());&lt;br /&gt;
							}&lt;br /&gt;
						} while (found == true);&lt;br /&gt;
&lt;br /&gt;
// scroll back&lt;br /&gt;
						if (regExpChecked == 'false') {&lt;br /&gt;
							wikEdFrameBody.scrollTop = scrollTop;&lt;br /&gt;
						}&lt;br /&gt;
&lt;br /&gt;
// add the found ranges&lt;br /&gt;
						WikEdRemoveAllRanges(obj.sel);&lt;br /&gt;
						for (range in foundRanges) {&lt;br /&gt;
							obj.sel.addRange(foundRanges[range]);&lt;br /&gt;
						}&lt;br /&gt;
						obj.changed.plain = null;&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// normal find&lt;br /&gt;
					else {&lt;br /&gt;
						if (regExpChecked == 'true') {&lt;br /&gt;
							WikEdFind(obj, findText, caseSensitive, backwards, true, regExpFind);&lt;br /&gt;
						}&lt;br /&gt;
						else {&lt;br /&gt;
							WikEdFind(obj, findText, caseSensitive, backwards, true, null);&lt;br /&gt;
							selectChanged = false;&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// escape &amp;lt;, &amp;gt;, and &amp;amp;&lt;br /&gt;
			if (obj.changed.plain != null) {&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
				obj.changed.plain = obj.changed.plain.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// save search history to settings&lt;br /&gt;
			if ( (buttonId == 'wikEdFindPrev') || (buttonId == 'wikEdFindNext') || (buttonId == 'wikEdFindAll') ) {&lt;br /&gt;
				WikEdAddToHistory('find');&lt;br /&gt;
			}&lt;br /&gt;
			if ( (buttonId == 'wikEdReplacePrev') || (buttonId == 'wikEdReplaceNext') || (buttonId == 'wikEdReplaceAll') ) {&lt;br /&gt;
				WikEdAddToHistory('find');&lt;br /&gt;
				WikEdAddToHistory('replace');&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// fixbasic: fix characters, spaces, empty lines, certain headings, needed for all fixing functions&lt;br /&gt;
// to do: only certain changes in multiline tags: comments, tables, subst&lt;br /&gt;
		case 'wikEdFixBasic':&lt;br /&gt;
			WikEdFixBasic(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixPunct':&lt;br /&gt;
			WikEdFixPunct(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixMath':&lt;br /&gt;
			WikEdFixMath(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixChem':&lt;br /&gt;
			WikEdFixChem(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdfixUnicode':&lt;br /&gt;
			WikEdFixUnicode(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixUnits':&lt;br /&gt;
			WikEdFixUnits(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixDashes':&lt;br /&gt;
			WikEdFixDashes(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixHtml':&lt;br /&gt;
			WikEdFixHTML(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixRegExTypo':&lt;br /&gt;
			if ( (wikEdRegExTypoFix == true) &amp;amp;&amp;amp; (wikEdTypoRulesFind.length &amp;gt; 0) ) {&lt;br /&gt;
				WikEdFixTypos(obj.changed);&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = null;&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixCaps':&lt;br /&gt;
			WikEdFixCaps(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
		case 'wikEdFixAll':&lt;br /&gt;
			WikEdFixAll(obj.changed);&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// source on&lt;br /&gt;
		case 'wikEdSource':&lt;br /&gt;
			obj.changed.plain = obj.changed.code;&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/(&amp;lt;(br|p)\b[^&amp;gt;]*&amp;gt;)/g, '$1\n');&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
			obj.changed.plain = obj.changed.plain.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
			highlightSyntax = false;&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// insert tags&lt;br /&gt;
		case 'wikEdInsertTags':&lt;br /&gt;
			var tagOpen = parameters[0] || '';&lt;br /&gt;
			var tagClose = parameters[1] || '';&lt;br /&gt;
			var sampleText = parameters[2] || '';&lt;br /&gt;
			tagOpen = tagOpen.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
			tagOpen = tagOpen.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
			tagOpen = tagOpen.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
			tagClose = tagClose.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
			tagClose = tagClose.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
			tagClose = tagClose.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
			tagsampleText = sampleText.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
			tagsampleText = sampleText.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
			tagsampleText = sampleText.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// single string to insert&lt;br /&gt;
			if ( (tagOpen.length &amp;gt; 0) &amp;amp;&amp;amp; (tagClose.length == 0) &amp;amp;&amp;amp; (sampleText.length == 0) ) {&lt;br /&gt;
				obj.changed = obj.cursor;&lt;br /&gt;
				obj.changed.plain = tagOpen;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// opening and closing strings&lt;br /&gt;
			else if ( (obj.changed.plain == '') &amp;amp;&amp;amp; (sampleText.length &amp;gt; 0) ) {&lt;br /&gt;
				obj.changed.plain = tagOpen + sampleText + tagClose;&lt;br /&gt;
&lt;br /&gt;
// select sample text&lt;br /&gt;
				selectChangedText = sampleText;&lt;br /&gt;
				obj.changed.keepSel = true;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				obj.changed.plain = tagOpen + obj.changed.plain + tagClose;&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// update text view using current control button settings // {{TABLE}}&lt;br /&gt;
		case 'wikEdUpdateAll':&lt;br /&gt;
			obj.changed.keepSel = true;&lt;br /&gt;
			if (parameters != null) {&lt;br /&gt;
				if (parameters.keepSel == false) {&lt;br /&gt;
					obj.changed.keepSel = false;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
&lt;br /&gt;
// custom edit functions&lt;br /&gt;
		default:&lt;br /&gt;
			if (CustomHandler != null) {&lt;br /&gt;
				CustomHandler(obj);&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				alert('Unknown edit function \'' + buttonId + '\'');&lt;br /&gt;
			}&lt;br /&gt;
			break;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// update the selection only, do not change the text&lt;br /&gt;
	if (obj.changed.plain == null) {&lt;br /&gt;
		if (buttonId != 'wikEdFindAll') {&lt;br /&gt;
			WikEdRemoveAllRanges(obj.sel);&lt;br /&gt;
			obj.sel.addRange(obj.changed.range);&lt;br /&gt;
&lt;br /&gt;
// scroll the selected text into the viewport by using a backwards find&lt;br /&gt;
			if (selectChanged != false) {&lt;br /&gt;
&lt;br /&gt;
// get the plain text of the selection&lt;br /&gt;
				if (obj.sel.rangeCount == 0) {&lt;br /&gt;
					obj.sel.collapse(wikEdFrameBody, 0);&lt;br /&gt;
				}&lt;br /&gt;
				var plainText = obj.sel.getRangeAt(obj.sel.rangeCount - 1).cloneContents().textContent;&lt;br /&gt;
&lt;br /&gt;
// collapse the selection to the end and search backwards&lt;br /&gt;
				if (plainText.length &amp;gt; 0) {&lt;br /&gt;
					plainText = plainText.replace(/\n/g, '');&lt;br /&gt;
					obj.changed.range.collapse(false);&lt;br /&gt;
&lt;br /&gt;
// parameters: window.find(string, caseSensitive, backwards, wrapAround, wholeWord, searchInFrames, showDialog)&lt;br /&gt;
					wikEdFrameWindow.find(plainText, true, true, false, false, false, false);&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// apply text changes&lt;br /&gt;
	else {&lt;br /&gt;
&lt;br /&gt;
// a text change erases the last version for redo all&lt;br /&gt;
		if ( (buttonId != 'wikEdUndo') &amp;amp;&amp;amp; (buttonId != 'wikEdRedo') &amp;amp;&amp;amp; (buttonId != 'wikEdUndoAll') ) {&lt;br /&gt;
			wikEdLastVersion = null;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// highlight the syntax&lt;br /&gt;
		obj.html = obj.changed.plain;&lt;br /&gt;
		if (highlightSyntax == true) {&lt;br /&gt;
			if (obj.changed.from == 'whole') {&lt;br /&gt;
				obj.whole = true;&lt;br /&gt;
			}&lt;br /&gt;
			WikEdHighlightSyntax(obj);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// display tabs&lt;br /&gt;
		else {&lt;br /&gt;
			obj.html = obj.html.replace(/(\t)/g, '&amp;lt;span class=&amp;quot;wikEdTabPlain&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTabPlain--&amp;gt;');&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// display multiple blanks as blank-&amp;amp;nbsp;&lt;br /&gt;
		obj.html = obj.html.replace(/  /g, '&amp;amp;nbsp; ');&lt;br /&gt;
		obj.html = obj.html.replace(/  /g, '&amp;amp;nbsp; ');&lt;br /&gt;
&lt;br /&gt;
// newlines to &amp;lt;br /&amp;gt;&lt;br /&gt;
		obj.html = obj.html.replace(/\n/g, '&amp;lt;br /&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// make changed range text the current selection&lt;br /&gt;
		WikEdRemoveAllRanges(obj.sel);&lt;br /&gt;
		obj.sel.addRange(obj.changed.range); //// range over &amp;lt;br&amp;gt; not handled correctly by Seamonkey&lt;br /&gt;
&lt;br /&gt;
// get the scroll position&lt;br /&gt;
		var scrollTop;&lt;br /&gt;
		if (obj.changed.from == 'whole') {&lt;br /&gt;
			scrollTop = wikEdFrameBody.scrollTop;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// replace the selection with changed text&lt;br /&gt;
		if (obj.html != '') {&lt;br /&gt;
			WikEdFrameExecCommand('inserthtml', obj.html);&lt;br /&gt;
		}&lt;br /&gt;
		else if (obj.sel.isCollapsed == false) {&lt;br /&gt;
			WikEdFrameExecCommand('delete');&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// select the whole text after replacing the whole text and scroll to same height&lt;br /&gt;
		if (obj.changed.from == 'whole') {&lt;br /&gt;
			WikEdRemoveAllRanges(obj.sel);&lt;br /&gt;
			wikEdFrameBody.scrollTop = scrollTop;&lt;br /&gt;
			var range = document.createRange();&lt;br /&gt;
			range.setStartBefore(wikEdFrameBody.firstChild);&lt;br /&gt;
			range.setEndAfter(wikEdFrameBody.lastChild);&lt;br /&gt;
			obj.sel.addRange(range);&lt;br /&gt;
			selectChanged = false;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// select the changed text and scroll it into the viewport by using a backwards find&lt;br /&gt;
		if (selectChanged != false) {&lt;br /&gt;
&lt;br /&gt;
// get the text content of the changed text&lt;br /&gt;
			if (selectChangedText == '') {&lt;br /&gt;
				var div = document.createElement('div');&lt;br /&gt;
				div.innerHTML = obj.changed.plain;&lt;br /&gt;
				selectChangedText = div.textContent;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// find the text&lt;br /&gt;
			if (selectChangedText.length &amp;gt; 0) {&lt;br /&gt;
				selectChangedText = selectChangedText.replace(/\n/g, '');&lt;br /&gt;
&lt;br /&gt;
// parameters: window.find(string, caseSensitive, backwards, wrapAround, wholeWord, searchInFrames, showDialog)&lt;br /&gt;
				wikEdFrameWindow.find(selectChangedText, true, true, false, false, false, false);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// remove selection, keep whole text auto-selection as warning&lt;br /&gt;
	if (&lt;br /&gt;
		( (obj.changed.keepSel != true) &amp;amp;&amp;amp; (obj.changed.from != 'whole') ) ||&lt;br /&gt;
		(obj.changed.keepSel == false) ||&lt;br /&gt;
		(buttonId == 'wikEdRedirect') ||&lt;br /&gt;
		( (buttonId == 'wikEdWikify') &amp;amp;&amp;amp; (parameters == 'whole') )&lt;br /&gt;
	) {&lt;br /&gt;
		if (obj.sel.rangeCount == 0) {&lt;br /&gt;
			obj.sel.collapse(wikEdFrameBody, 0);&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			obj.sel.getRangeAt(obj.sel.rangeCount - 1).collapse(false);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// reset button to active, reset cursor&lt;br /&gt;
	if (buttonObj != null) {&lt;br /&gt;
		if (buttonObj.className != 'wikEdButtonInactive') {&lt;br /&gt;
			buttonObj.className = 'wikEdButton';&lt;br /&gt;
		}&lt;br /&gt;
		buttonObj.style.cursor = 'auto';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// grey out inactive buttons&lt;br /&gt;
	WikEdInactiveButtons();&lt;br /&gt;
&lt;br /&gt;
// reset the frame DOM cache because the frame content has been changed&lt;br /&gt;
	wikEdFrameDOMCache = null;&lt;br /&gt;
&lt;br /&gt;
// focus the frame&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		wikEdFrameWindow.focus();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add event handler to make highlighted frame links ctrl-clickable&lt;br /&gt;
	if ( (highlightSyntax == true) &amp;amp;&amp;amp; (obj.changed.plain != null) ) {&lt;br /&gt;
		WikEdFollowLinks();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdScrollToPreview: scroll to buttons, textarea, or preview field depending on current position&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdScrollToPreview = function() {&lt;br /&gt;
&lt;br /&gt;
	var scrollOffset = window.pageYOffset;&lt;br /&gt;
	var inputOffset = WikEdGetOffsetTop(wikEdInputWrapper);&lt;br /&gt;
	var textareaOffset = WikEdGetOffsetTop(wikEdTextareaWrapper);&lt;br /&gt;
	var submitOffset = WikEdGetOffsetTop(wikEdSaveButton);&lt;br /&gt;
&lt;br /&gt;
	if (scrollOffset &amp;gt; submitOffset) {&lt;br /&gt;
		window.scroll(0, submitOffset);&lt;br /&gt;
	}&lt;br /&gt;
	else if (scrollOffset &amp;gt; (submitOffset - textareaOffset) / 3 * 2 + textareaOffset) {&lt;br /&gt;
		window.scroll(0, submitOffset);&lt;br /&gt;
	}&lt;br /&gt;
	else if (scrollOffset &amp;gt; textareaOffset) {&lt;br /&gt;
		window.scroll(0, textareaOffset);&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		window.scroll(0, inputOffset);&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFollowLinks: register click handlers to make highlighted frame links ctrl-clickable&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFollowLinks = function() {&lt;br /&gt;
&lt;br /&gt;
	if (wikEdFollowLinks == true) {&lt;br /&gt;
		for (var linkId in wikEdFollowLinkHash) {&lt;br /&gt;
			if (typeof(wikEdFollowLinkHash[linkId]) != 'string') {&lt;br /&gt;
				continue;&lt;br /&gt;
			}&lt;br /&gt;
			var linkSpan = wikEdFrameDocument.getElementById(linkId);&lt;br /&gt;
			if (linkSpan != null) {&lt;br /&gt;
				WikEdAddEventListener(linkSpan, 'click', WikEdFollowLinkHandler, true);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetText: get the text fragments to manipulate&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetText = function(obj, whichFragment, wikify) {&lt;br /&gt;
&lt;br /&gt;
// get selection object&lt;br /&gt;
	if (obj.sel == null) {&lt;br /&gt;
		obj.sel = WikEdGetSelection();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// cursor for the cursor position (always done)&lt;br /&gt;
	if (obj.cursor == null) {&lt;br /&gt;
		obj.cursor = {&lt;br /&gt;
			'from': 'cursor',&lt;br /&gt;
			'keepSel': null,&lt;br /&gt;
			'plain': ''&lt;br /&gt;
		};&lt;br /&gt;
&lt;br /&gt;
// set cursor range&lt;br /&gt;
		obj.cursor.range = document.createRange();&lt;br /&gt;
		obj.cursor.range.setStart(obj.sel.focusNode, obj.sel.focusOffset);&lt;br /&gt;
		obj.cursor.range.setEnd(obj.sel.focusNode, obj.sel.focusOffset);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// whole for the whole text&lt;br /&gt;
	if (obj.whole == null) {&lt;br /&gt;
		if (/whole|selectionWord|selectionLine|selectionPara|focusWord|focusLine|focusPara/.test(whichFragment) == true) {&lt;br /&gt;
			obj.whole = {&lt;br /&gt;
				'plainArray': [],&lt;br /&gt;
				'plainNode': [],&lt;br /&gt;
				'plainStart': [],&lt;br /&gt;
				'from': 'whole',&lt;br /&gt;
				'keepSel': null&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// set whole range&lt;br /&gt;
			obj.whole.range = document.createRange();&lt;br /&gt;
			obj.whole.range.setStartBefore(wikEdFrameBody.firstChild);&lt;br /&gt;
			obj.whole.range.setEndAfter(wikEdFrameBody.lastChild);&lt;br /&gt;
&lt;br /&gt;
// get whole plain text&lt;br /&gt;
			WikEdGetInnerHTML(obj.whole, wikEdFrameBody);&lt;br /&gt;
			obj.whole.code = obj.whole.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.whole, wikify);&lt;br /&gt;
			obj.whole.plain = obj.whole.html;&lt;br /&gt;
			obj.whole.plain = obj.whole.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.whole.plain = obj.whole.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// selection for the selected text&lt;br /&gt;
	if (obj.selection == null) {&lt;br /&gt;
		if (/selection\b|selectionWord|selectionLine|selectionPara/.test(whichFragment) == true) {&lt;br /&gt;
			obj.selection = {&lt;br /&gt;
				'from': 'selection',&lt;br /&gt;
				'keepSel': null&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// copy range to document fragment&lt;br /&gt;
			if (obj.sel.rangeCount == 0) {&lt;br /&gt;
				obj.sel.collapse(wikEdFrameBody, 0);&lt;br /&gt;
			}&lt;br /&gt;
			obj.selection.range = obj.sel.getRangeAt(obj.sel.rangeCount - 1);&lt;br /&gt;
			var documentFragment = obj.selection.range.cloneContents();&lt;br /&gt;
&lt;br /&gt;
// get selected text&lt;br /&gt;
			WikEdGetInnerHTML(obj.selection, documentFragment);&lt;br /&gt;
			obj.selection.code = obj.selection.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.selection, wikify);&lt;br /&gt;
			obj.selection.plain = obj.selection.html;&lt;br /&gt;
			obj.selection.plain = obj.selection.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.selection.plain = obj.selection.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// focusWord, focusLine, and focusPara for the word, line, and paragraph under the cursor&lt;br /&gt;
	if (obj.focusWord == null) {&lt;br /&gt;
		if (/focusWord|focusLine|focusPara/.test(whichFragment) == true) {&lt;br /&gt;
			obj.focusWord = {&lt;br /&gt;
				'from': 'focusWord',&lt;br /&gt;
				'keepSel': false,&lt;br /&gt;
				'range': document.createRange(),&lt;br /&gt;
				'tableEdit': obj.tableEdit&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// setup focusLine object for the line under the cursor&lt;br /&gt;
			obj.focusLine = {&lt;br /&gt;
				'from': 'focusLine',&lt;br /&gt;
				'keepSel': false,&lt;br /&gt;
				'range': document.createRange(),&lt;br /&gt;
				'tableEdit': obj.tableEdit&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// setup focusPara object for the paragraph under the cursor&lt;br /&gt;
			obj.focusPara = {&lt;br /&gt;
				'from': 'focusPara',&lt;br /&gt;
				'keepSel': false,&lt;br /&gt;
				'range': document.createRange(),&lt;br /&gt;
				'tableEdit': obj.tableEdit&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// find the word and line boundaries&lt;br /&gt;
			WikEdFindBoundaries(obj.focusWord, obj.focusLine, obj.focusPara, obj.whole, obj.cursor);&lt;br /&gt;
&lt;br /&gt;
// get the wikified plain text for the word under the cursor&lt;br /&gt;
			var documentFragment = obj.focusWord.range.cloneContents();&lt;br /&gt;
			WikEdGetInnerHTML(obj.focusWord, documentFragment);&lt;br /&gt;
			obj.focusWord.code = obj.focusWord.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.focusWord, wikify);&lt;br /&gt;
			obj.focusWord.plain = obj.focusWord.html;&lt;br /&gt;
			obj.focusWord.plain = obj.focusWord.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.focusWord.plain = obj.focusWord.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// get the wikified plain text for the line under the cursor&lt;br /&gt;
			var documentFragment = obj.focusLine.range.cloneContents();&lt;br /&gt;
			WikEdGetInnerHTML(obj.focusLine, documentFragment);&lt;br /&gt;
			obj.focusLine.code = obj.focusLine.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.focusLine, wikify);&lt;br /&gt;
			obj.focusLine.plain = obj.focusLine.html;&lt;br /&gt;
			obj.focusLine.plain = obj.focusLine.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.focusLine.plain = obj.focusLine.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// get the wikified plain text for the paragraph under the cursor&lt;br /&gt;
			var documentFragment = obj.focusPara.range.cloneContents();&lt;br /&gt;
			WikEdGetInnerHTML(obj.focusPara, documentFragment);&lt;br /&gt;
			obj.focusPara.code = obj.focusPara.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.focusPara, wikify);&lt;br /&gt;
			obj.focusPara.plain = obj.focusPara.html;&lt;br /&gt;
			obj.focusPara.plain = obj.focusPara.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.focusPara.plain = obj.focusPara.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// selectionWord and selectionLine for the complete words and lines under the selection&lt;br /&gt;
	if (obj.selectionWord == null) {&lt;br /&gt;
		if (/selectionWord|selectionLine|selectionPara/.test(whichFragment) == true) {&lt;br /&gt;
&lt;br /&gt;
// setup selectionWord object for the words under the selection&lt;br /&gt;
			obj.selectionWord = {&lt;br /&gt;
				'from': 'selectionWord',&lt;br /&gt;
				'keepSel': false,&lt;br /&gt;
				'range': document.createRange(),&lt;br /&gt;
				'tableEdit': obj.tableEdit&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// setup selectionLine object for the lines under the selection&lt;br /&gt;
			obj.selectionLine = {&lt;br /&gt;
				'from': 'selectionLine',&lt;br /&gt;
				'keepSel': false,&lt;br /&gt;
				'range': document.createRange(),&lt;br /&gt;
				'tableEdit': obj.tableEdit&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// setup focusPara object for the paragraph under the selection&lt;br /&gt;
			obj.selectionPara = {&lt;br /&gt;
				'from': 'selectionPara',&lt;br /&gt;
				'keepSel': false,&lt;br /&gt;
				'range': document.createRange(),&lt;br /&gt;
				'tableEdit': obj.tableEdit&lt;br /&gt;
			};&lt;br /&gt;
&lt;br /&gt;
// find the word and line boundaries&lt;br /&gt;
			WikEdFindBoundaries(obj.selectionWord, obj.selectionLine, obj.selectionPara, obj.whole, obj.selection);&lt;br /&gt;
&lt;br /&gt;
// get the wikified plain text for the words under the selection&lt;br /&gt;
			var documentFragment = obj.selectionWord.range.cloneContents();&lt;br /&gt;
			WikEdGetInnerHTML(obj.selectionWord, documentFragment);&lt;br /&gt;
			obj.selectionWord.code = obj.selectionWord.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.selectionWord, wikify);&lt;br /&gt;
			obj.selectionWord.plain = obj.selectionWord.html;&lt;br /&gt;
			obj.selectionWord.plain = obj.selectionWord.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.selectionWord.plain = obj.selectionWord.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// get the wikified plain text for the lines under the selection&lt;br /&gt;
			var documentFragment = obj.selectionLine.range.cloneContents();&lt;br /&gt;
			WikEdGetInnerHTML(obj.selectionLine, documentFragment);&lt;br /&gt;
			obj.selectionLine.code = obj.selectionLine.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.selectionLine, wikify);&lt;br /&gt;
			obj.selectionLine.plain = obj.selectionLine.html;&lt;br /&gt;
			obj.selectionLine.plain = obj.selectionLine.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.selectionLine.plain = obj.selectionLine.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// get the wikified plain text for the paragraph under the selection&lt;br /&gt;
			var documentFragment = obj.selectionPara.range.cloneContents();&lt;br /&gt;
			WikEdGetInnerHTML(obj.selectionPara, documentFragment);&lt;br /&gt;
			obj.selectionPara.code = obj.selectionPara.html;&lt;br /&gt;
			WikEdRemoveHighlightingWikify(obj.selectionPara, wikify);&lt;br /&gt;
			obj.selectionPara.plain = obj.selectionPara.html;&lt;br /&gt;
			obj.selectionPara.plain = obj.selectionPara.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
			obj.selectionPara.plain = obj.selectionPara.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFind: custom find function with regexp properties, sets obj.changed.range, uses obj ranges&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFind = function(obj, findText, caseSensitive, backwards, wrap, regExp) {&lt;br /&gt;
&lt;br /&gt;
	if (obj.sel.rangeCount == 0) {&lt;br /&gt;
		obj.sel.collapse(wikEdFrameBody, 0);&lt;br /&gt;
	}&lt;br /&gt;
	var range = obj.sel.getRangeAt(obj.sel.rangeCount - 1);&lt;br /&gt;
	var found = false;&lt;br /&gt;
&lt;br /&gt;
// empty the range to avoid error messages for reverse direction ranges&lt;br /&gt;
	obj.changed.range = document.createRange();&lt;br /&gt;
&lt;br /&gt;
// use the fast built-in find function for non-regexp searches&lt;br /&gt;
	if (regExp == null) {&lt;br /&gt;
&lt;br /&gt;
// parameters: window.find(string, caseSensitive, backwards, wrapAround, wholeWord, searchInFrames, showDialog)&lt;br /&gt;
		found = wikEdFrameWindow.find(findText, caseSensitive, backwards, wrap, false, true, false);&lt;br /&gt;
		if (found == true) {&lt;br /&gt;
			range = obj.sel.getRangeAt(obj.sel.rangeCount - 1);&lt;br /&gt;
		}&lt;br /&gt;
		obj.changed.range = range.cloneRange();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// slow javascript regexp find and replace&lt;br /&gt;
	else {&lt;br /&gt;
&lt;br /&gt;
// perform find&lt;br /&gt;
		if (obj.plainArray === undefined) {&lt;br /&gt;
			WikEdParseDOM(obj, wikEdFrameBody);&lt;br /&gt;
		}&lt;br /&gt;
		var regExpMatch = [];&lt;br /&gt;
&lt;br /&gt;
// find next, search to the right&lt;br /&gt;
		if (backwards == false) {&lt;br /&gt;
&lt;br /&gt;
// set start position for search to right&lt;br /&gt;
			regExpMatch = regExp.exec(obj.plain);&lt;br /&gt;
			regExp.lastIndex = obj.plainFocus;&lt;br /&gt;
&lt;br /&gt;
// execute the regexp search to the right&lt;br /&gt;
			regExpMatch = regExp.exec(obj.plain);&lt;br /&gt;
&lt;br /&gt;
// remember position for repeated searches&lt;br /&gt;
			obj.plainFocus = regExp.lastIndex;&lt;br /&gt;
&lt;br /&gt;
// wrap around, start at beginning&lt;br /&gt;
			if ( (wrap == true) &amp;amp;&amp;amp; (regExpMatch == null) ) {&lt;br /&gt;
				regExp.lastIndex = 0;&lt;br /&gt;
				regExpMatch = regExp.exec(obj.plain);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// find previous, search to the left&lt;br /&gt;
		else {&lt;br /&gt;
&lt;br /&gt;
// cycle through the matches to the left&lt;br /&gt;
			var regExpMatchNext;&lt;br /&gt;
			do {&lt;br /&gt;
				regExpMatch = regExpMatchNext;&lt;br /&gt;
				regExpMatchNext = regExp.exec(obj.plain);&lt;br /&gt;
				if (regExpMatchNext == null) {&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
			} while (regExpMatchNext.index &amp;lt; obj.plainAnchor);&lt;br /&gt;
&lt;br /&gt;
// wrap around, find last occurrence&lt;br /&gt;
			if ( (wrap == true) &amp;amp;&amp;amp; (regExpMatch == null) ) {&lt;br /&gt;
				do {&lt;br /&gt;
					regExpMatch = regExpMatchNext;&lt;br /&gt;
					regExpMatchNext = regExp.exec(obj.plain);&lt;br /&gt;
				} while (regExpMatchNext != null);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// select the find&lt;br /&gt;
		if (regExpMatch != null) {&lt;br /&gt;
			found = true;&lt;br /&gt;
			var i = 0;&lt;br /&gt;
			while ( (obj.plainStart[i + 1] &amp;lt;= regExpMatch.index) &amp;amp;&amp;amp; (obj.plainStart[i + 1] != null) ) {&lt;br /&gt;
				i ++;&lt;br /&gt;
			}&lt;br /&gt;
			var j = i;&lt;br /&gt;
			while ( (obj.plainStart[j + 1] &amp;lt;= regExpMatch.index + regExpMatch[0].length) &amp;amp;&amp;amp; (obj.plainStart[j + 1] != null) ) {&lt;br /&gt;
				j ++;&lt;br /&gt;
			}&lt;br /&gt;
			obj.changed.range.setStart(obj.plainNode[i], regExpMatch.index - obj.plainStart[i]);&lt;br /&gt;
			obj.changed.range.setEnd  (obj.plainNode[j], regExpMatch.index + regExpMatch[0].length - obj.plainStart[j]);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
//// range over &amp;lt;br&amp;gt; not handled correctly by Seamonkey&lt;br /&gt;
	return(found);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdTextify: strip html off of text&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdTextify = function(obj) {&lt;br /&gt;
&lt;br /&gt;
// convert html to plain&lt;br /&gt;
	obj.plain = obj.html;&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// delete tags&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;(style|script|object|applet|embed)\b[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/\1&amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// newlines&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt; *()/g, '\n');&lt;br /&gt;
&lt;br /&gt;
// remove empty lines from block tags&lt;br /&gt;
	obj.plain = obj.plain.replace(/(&amp;lt;(blockquote|center|div|p|pre|gallery)\b[^&amp;gt;]*&amp;gt;)[\s\u0000]+/gi, '$1');&lt;br /&gt;
	obj.plain = obj.plain.replace(/[\s\u0000]+(&amp;lt;\/(blockquote|center|div|p|pre|gallery)&amp;gt;)/gi, '$1');&lt;br /&gt;
&lt;br /&gt;
// remove highlighting pre tags&lt;br /&gt;
	var isRemove = [];&lt;br /&gt;
	obj.plain = obj.plain.replace(/(&amp;lt;(\/?)pre\b([^&amp;gt;]*)&amp;gt;)/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 == '') {&lt;br /&gt;
				if (/\bclass=\&amp;quot;wikEd\w+\&amp;quot;/.test(p3)) {&lt;br /&gt;
					isRemove.push(true);&lt;br /&gt;
					return('');&lt;br /&gt;
				}&lt;br /&gt;
				isRemove.push(false);&lt;br /&gt;
				return(p1);&lt;br /&gt;
			}&lt;br /&gt;
			if (isRemove.pop() == true) {&lt;br /&gt;
				return('');&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// blocks&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;\/?(address|blockquote|center|div|hr|isindex|p|pre)\b[^&amp;gt;]*&amp;gt;/g, '\u0000\u0000');&lt;br /&gt;
&lt;br /&gt;
// keep headings only if starting with a newline&lt;br /&gt;
	obj.plain = obj.plain.replace(/[\s|\u0000]*(^|\n|\u0000)[\s|\u0000]*&amp;lt;h[1-6]\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/h[1-6]&amp;gt;[\s|\u0000]*()/g, '\u0000\u0000$2\u0000\u0000');&lt;br /&gt;
&lt;br /&gt;
// lists&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;\/?(dir|dl|menu|ol|ul)\b[^&amp;gt;]*&amp;gt;/g, '\u0000');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;\/(dd|dt|li)&amp;gt;/g, '\u0000');&lt;br /&gt;
&lt;br /&gt;
// forms&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;\/?(select|textarea)\b[^&amp;gt;]*&amp;gt;/g, '\u0000');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;\/(option|legend|optgroup)&amp;gt;/g, '\u0000');&lt;br /&gt;
&lt;br /&gt;
// tables&lt;br /&gt;
	if (wikEdTableMode == true) {&lt;br /&gt;
&lt;br /&gt;
// override pasted table class // {{TABLE}}&lt;br /&gt;
		obj.plain = obj.plain.replace(/(&amp;lt;table\b)([^&amp;gt;]*)(&amp;gt;)/gi,&lt;br /&gt;
			function (p, p1, p2, p3) {&lt;br /&gt;
				if (p2.match(/\bclass=/)) {&lt;br /&gt;
					p2 = p2.replace(/\bclass\s*=\s*([\'\&amp;quot;]?)[^&amp;lt;&amp;gt;\'\&amp;quot;\n]*?\2/g, 'class=&amp;quot;wikEdTableEdit&amp;quot;');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					p2 = ' class=&amp;quot;wikEdTableEdit&amp;quot;';&lt;br /&gt;
				}&lt;br /&gt;
				return(p1 + p2 + p3);&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
&lt;br /&gt;
// keep table html markup // {{TABLE}}&lt;br /&gt;
		obj.plain = obj.plain.replace(/[\s\u0000]*(&amp;lt;table\b[^&amp;gt;]*&amp;gt;)/g, '\u0000\u0000$1');&lt;br /&gt;
		obj.plain = obj.plain.replace(/(&amp;lt;\/table&amp;gt;)[\s\u0000]*()/g, '$1\u0000');&lt;br /&gt;
&lt;br /&gt;
		obj.plain = obj.plain.replace(/&amp;lt;(\/?(table|caption|tr|th|td)\b[^&amp;gt;]*)&amp;gt;/g, '\u0001$1\u0002');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// textify table&lt;br /&gt;
	else if (wikEdTableMode == false) {&lt;br /&gt;
		obj.plain = obj.plain.replace(/&amp;lt;\/?(table|caption)\b[^&amp;gt;]*&amp;gt;/g, '\u0000');&lt;br /&gt;
		obj.plain = obj.plain.replace(/&amp;lt;\/(tr|th|td)&amp;gt;/g, '\u0000');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// finish html to plain conversion&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;lt;[^&amp;gt;]*&amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// recover table html&lt;br /&gt;
	obj.plain = obj.plain.replace(/\u0001/g, '&amp;lt;');&lt;br /&gt;
	obj.plain = obj.plain.replace(/\u0002/g, '&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// remove spaces&lt;br /&gt;
	obj.plain = obj.plain.replace(/[ \t\u00a0]+(\u0000)/g, '$1');&lt;br /&gt;
	obj.plain = obj.plain.replace(/(\u0000)[ \t\u00a0]+/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// trim down \u0000 and \n&lt;br /&gt;
	obj.plain = obj.plain.replace(/\u0000+\n/g, '\n');&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n\u0000+/g, '\n');&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n*\u0000(\u0000|\n)+/g, '\n\n');&lt;br /&gt;
	obj.plain = obj.plain.replace(/\u0000/g, '\n');&lt;br /&gt;
	obj.plain = obj.plain.replace(/(&amp;lt;\/table&amp;gt;\n)\n+/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// remove empty lines and spaces from article start and end&lt;br /&gt;
	if (obj.from == 'whole') {&lt;br /&gt;
		obj.plain = obj.plain.replace(/^\s+|\s+$/g, '');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInactiveButtons: grey out inactive buttons, called after every change and click&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdInactiveButtons = function() {&lt;br /&gt;
&lt;br /&gt;
// undo&lt;br /&gt;
	if (wikEdFrameDocument.queryCommandEnabled('undo') == true ) {&lt;br /&gt;
		document.getElementById('wikEdUndo').className = 'wikEdButton';&lt;br /&gt;
		document.getElementById('wikEdUndoAll').className = 'wikEdButton';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		document.getElementById('wikEdUndo').className = 'wikEdButtonInactive';&lt;br /&gt;
		document.getElementById('wikEdUndoAll').className = 'wikEdButtonInactive';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// redo&lt;br /&gt;
	if (wikEdFrameDocument.queryCommandEnabled('redo') == true ) {&lt;br /&gt;
		document.getElementById('wikEdRedo').className = 'wikEdButton';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		document.getElementById('wikEdRedo').className = 'wikEdButtonInactive';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// redo all&lt;br /&gt;
	if (wikEdLastVersion != null) {&lt;br /&gt;
		document.getElementById('wikEdRedoAll').className = 'wikEdButton';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		document.getElementById('wikEdRedoAll').className = 'wikEdButtonInactive';&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixBasic: fix characters, spaces, empty lines, certain headings, needed for all fixing functions&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
//// change: double spaces ok after dot&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixBasic = function(obj) {&lt;br /&gt;
&lt;br /&gt;
// non-breaking space character to normal space&lt;br /&gt;
	obj.plain = obj.plain.replace(/\u00a0/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// tab to space&lt;br /&gt;
	obj.plain = obj.plain.replace(/ *\t[ \t]*()/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// remove trailing spaces&lt;br /&gt;
	obj.plain = obj.plain.replace(/(\t| |&amp;amp;nbsp;)+\n/g, '\n');&lt;br /&gt;
&lt;br /&gt;
// remove spaces in empty lines&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n( |&amp;amp;nbsp;|\t)+\n/g, '\n\n');&lt;br /&gt;
&lt;br /&gt;
// empty line before and after headings, spaces around word (lookahead), remove bold, italics, and extra =&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|\n)+(=+) *([^\n]*?) *(=+)(?=(\n|$))/g,&lt;br /&gt;
		function(p, p1, p2, p3, p4) {&lt;br /&gt;
			p3 = p3.replace(/\'{2,}/g, '');&lt;br /&gt;
			return('\n\n' + p2 + ' ' + p3 + ' ' + p2 + '\n\n');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// uppercase well known headings&lt;br /&gt;
	var regExp = new RegExp('\\n=+ ' + wikEdText['External links'] + '? =+\\n', 'gi');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp, '\n== ' + wikEdText['External links'] + ' ==\n');&lt;br /&gt;
	regExp = new RegExp('\\n=+ ' + wikEdText['See also'] + ' =+\\n', 'gi');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp, '\n== ' + wikEdText['See also'] + ' ==\n');&lt;br /&gt;
	regExp = new RegExp('\\n=+ ' + wikEdText['References'] + '? =+\\n', 'gi');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp, '\n== ' + wikEdText['References'] + ' ==\n');&lt;br /&gt;
&lt;br /&gt;
// add space after * # : ; (list) and after {| |- | (table)&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|\n)([\*\#\:\;]+|\{\||\|\-|\|\}|\|) *()/g, '$1$2 ');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ +\n/g, '\n');&lt;br /&gt;
&lt;br /&gt;
// empty line before and after tables&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n+(\{\|)/g, '\n\n$1');&lt;br /&gt;
	obj.plain = obj.plain.replace(/(\n\|\}([^\}]|$)) *([^\n]*)[\n|$]+/g, '$1\n\n$3\n\n');&lt;br /&gt;
&lt;br /&gt;
// empty line before and after lists&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|\n)([^\*\#\:\;\n][^\n]*)(?=\n[\*\#\:\;])/g, '$1$2\n\n');&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|\n)([\*\#\:\;][^\n]*?)(?=\n[^\*\#\:\;\n])/g, '$1$2\n\n');&lt;br /&gt;
&lt;br /&gt;
// split into lines and change single lines, used to handle tables&lt;br /&gt;
	var lines = obj.plain.split('\n');&lt;br /&gt;
	obj.plain = '';&lt;br /&gt;
	var tableflag = false;&lt;br /&gt;
	for (var i = 0; i &amp;lt; lines.length; i++) {&lt;br /&gt;
		var line = lines[i];&lt;br /&gt;
&lt;br /&gt;
// do not change lines starting with a blank&lt;br /&gt;
		if (/^ /.test(line) == false) {&lt;br /&gt;
&lt;br /&gt;
// detect table&lt;br /&gt;
			if (line.match(/^(\{\||\!|\|[^}])/) != null) {&lt;br /&gt;
				tableflag = true;&lt;br /&gt;
			}&lt;br /&gt;
			else if (line.match(/^\|\}/) != null) {&lt;br /&gt;
				tableflag = false;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// changes only to be done in tables&lt;br /&gt;
			if (tableflag == true) {&lt;br /&gt;
&lt;br /&gt;
// add spaces around ||&lt;br /&gt;
				line = line.replace(/ *\|\| *()/g, ' || ');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// changes not to be done in tables&lt;br /&gt;
			if (! tableflag) {&lt;br /&gt;
&lt;br /&gt;
// empty line before and after images&lt;br /&gt;
				var regExp = new RegExp('^(\\[\\[' + wikEdText['wikicode Image'] + ':.*?\\]\\])', 'ig');&lt;br /&gt;
				line = line.replace(regExp, '\n$1');&lt;br /&gt;
&lt;br /&gt;
				regExp = new RegExp('(\\[\\[' + wikEdText['wikicode Image'] + ':.*?(\\[\\[.*?\\]\\].*?)*\\]\\])$', 'ig');&lt;br /&gt;
				line = line.replace(regExp, '$1\n');&lt;br /&gt;
&lt;br /&gt;
// empty line before and after includes&lt;br /&gt;
				line = line.replace(/^(\{\{.*?\}\})/g, '\n$1');&lt;br /&gt;
				line = line.replace(/(\{\{.*?\}\})$/g, '$1\n');&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// concatenate the lines&lt;br /&gt;
		obj.plain += line;&lt;br /&gt;
		if (i &amp;lt; lines.length - 1) {&lt;br /&gt;
			obj.plain += '\n';&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// remove underscores in wikilinks&lt;br /&gt;
	obj.plain = obj.plain.replace(/\[\[(.*?)(\|.*?)?\]\]/g,&lt;br /&gt;
		function (p, p1, p2) {&lt;br /&gt;
			p1 = p1.replace(/_/g, ' ');&lt;br /&gt;
			return('[[' + p1 + p2 + ']]');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// remove spaces in wikilinks&lt;br /&gt;
	obj.plain = obj.plain.replace(/\[\[ *([^\n]*?) *\]\]/g, '[[$1]]');&lt;br /&gt;
&lt;br /&gt;
// remove spaces in external links&lt;br /&gt;
	obj.plain = obj.plain.replace(/\[ *([^\n]*?) *\]/g, '[$1]');&lt;br /&gt;
&lt;br /&gt;
// no space around pipes before brackets&lt;br /&gt;
	obj.plain = obj.plain.replace(/ +\| +\]\]/g, '|]]');&lt;br /&gt;
&lt;br /&gt;
// no space around pipes before curly brackets&lt;br /&gt;
	obj.plain = obj.plain.replace(/ +\| +\}\}/g, '|}}');&lt;br /&gt;
&lt;br /&gt;
// no empty line between headings and includes&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n(=+ [^\n]*? =+\n)\n+(\{\{.*?\}\})/g, '\n$1$2');&lt;br /&gt;
&lt;br /&gt;
// spaces in comments&lt;br /&gt;
	obj.plain = obj.plain.replace(/(&amp;amp;lt;!--) *([^\n]*?) *(--&amp;amp;gt;)/g, '$1 $2 $3');&lt;br /&gt;
&lt;br /&gt;
// empty line before and after categories&lt;br /&gt;
	var regExp = new RegExp('( |\\n)*(\\[\\[' + wikEdText['wikicode Category'] + ':[^\\n]*?\\]\\])( |\\n)*', 'gi');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp, '\n\n$2\n\n');&lt;br /&gt;
&lt;br /&gt;
// categories not separated by empty lines (lookahead)&lt;br /&gt;
	regExp = new RegExp('(\\[\\[category:[^\\n]*?\\]\\])\\n*(?=\\[\\[' + wikEdText['wikicode Category'] + ':[^\\n]*?\\]\\])', 'gi');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp, '$1\n');&lt;br /&gt;
&lt;br /&gt;
// single empty lines only&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n{3,}/g, '\n\n');&lt;br /&gt;
&lt;br /&gt;
// remove leading and trailing newlines&lt;br /&gt;
	obj.plain = obj.plain.replace(/^\n+/, '');&lt;br /&gt;
	obj.plain = obj.plain.replace(/\n{2,}$/, '\n');&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixPunct: remove (or add) space before .,:;&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixPunct = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
	if (wikEdFixPunctFrench == true) {&lt;br /&gt;
		obj.plain = obj.plain.replace(/(«) */g, '$1 ');&lt;br /&gt;
		obj.plain = obj.plain.replace(/ *(»)/g, ' $1');&lt;br /&gt;
		obj.plain = obj.plain.replace(/([a-zA-Z_À-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\'\&amp;quot;”\]\}\)]) *([\.\,])(?=([a-zA-ZÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\'\&amp;quot;”\[\{\(\s]|$))/g, '$1$2 ');&lt;br /&gt;
		obj.plain = obj.plain.replace(/([a-zA-Z_À-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\'\&amp;quot;”\]\}\)]) *([\:\;\?\!])/g, '$1 $2 ');&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		obj.plain = obj.plain.replace(/([a-zA-Z_À-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\'\&amp;quot;”\]\}\)]) *([\.\,\:\;])(?=([a-zA-ZÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\'\&amp;quot;”\[\{\(\s]|$))/g, '$1$2 ');&lt;br /&gt;
	}&lt;br /&gt;
	obj.plain = obj.plain.replace(/ +$/g, '');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ +\n/g, '\n');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ {2,}/g, ' ');&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixUnicode: fix unicode character representations&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixUnicode = function(obj) {&lt;br /&gt;
&lt;br /&gt;
// replace supported chars: change decimal, hex, and character entities into actual char&lt;br /&gt;
	for (var i = 0; i &amp;lt; wikEdSupportedChars.length; i ++) {&lt;br /&gt;
		var replaceChar = String.fromCharCode(parseInt(wikEdSupportedChars[i][0], 16));&lt;br /&gt;
&lt;br /&gt;
// decimal representation&lt;br /&gt;
		var regExpStr = '&amp;amp;amp;#0*' + parseInt(wikEdSupportedChars[i][0], 16) + ';|';&lt;br /&gt;
&lt;br /&gt;
// hex representation&lt;br /&gt;
		regExpStr += '&amp;amp;amp;#x0*' + wikEdSupportedChars[i][0] + ';';&lt;br /&gt;
&lt;br /&gt;
// case insensitive replace&lt;br /&gt;
		var regExp = new RegExp(regExpStr, 'gi');&lt;br /&gt;
		obj.plain = obj.plain.replace(regExp, replaceChar);&lt;br /&gt;
&lt;br /&gt;
// character entity representation&lt;br /&gt;
		regExpStr = '&amp;amp;amp;' + wikEdSupportedChars[i][1] + ';';&lt;br /&gt;
&lt;br /&gt;
// case sensitive replace&lt;br /&gt;
		regExp = new RegExp(regExpStr, 'g');&lt;br /&gt;
		obj.plain = obj.plain.replace(regExp, replaceChar);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// replace unsupported chars in IE6: change decimal, hex, and chars into character entities&lt;br /&gt;
	for (var i = 0; i &amp;lt; wikEdProblemChars.length; i ++) {&lt;br /&gt;
		replaceChar = '&amp;amp;amp;' + wikEdProblemChars[i][1] + ';';&lt;br /&gt;
&lt;br /&gt;
// decimal representation&lt;br /&gt;
		regExpStr = '&amp;amp;amp;#0*' + parseInt(wikEdProblemChars[i][0], 16) + ';|';&lt;br /&gt;
&lt;br /&gt;
// hex representation&lt;br /&gt;
		regExpStr += '&amp;amp;amp;#x0*' + wikEdProblemChars[i][0] + ';';&lt;br /&gt;
&lt;br /&gt;
// case insensitive replace&lt;br /&gt;
		regExp = new RegExp(regExpStr, 'gi');&lt;br /&gt;
		obj.plain = obj.plain.replace(regExp, replaceChar);&lt;br /&gt;
&lt;br /&gt;
// actual character representation&lt;br /&gt;
		regExpStr = '\\u' + wikEdProblemChars[i][0];&lt;br /&gt;
&lt;br /&gt;
// case sensitive replace&lt;br /&gt;
		regExp = new RegExp(regExpStr, 'g');&lt;br /&gt;
		obj.plain = obj.plain.replace(regExp, replaceChar);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// replace special chars (spaces and invisible characters): change decimal, hex, and chars into character entities&lt;br /&gt;
	for (var i = 0; i &amp;lt; wikEdSpecialChars.length; i ++) {&lt;br /&gt;
		var replaceChar = '&amp;amp;amp;' + wikEdSpecialChars[i][1] + ';';&lt;br /&gt;
&lt;br /&gt;
// decimal representation&lt;br /&gt;
		var regExpStr = '&amp;amp;amp;#0*' + parseInt(wikEdSpecialChars[i][0], 16) + ';|';&lt;br /&gt;
&lt;br /&gt;
// hex representation&lt;br /&gt;
		regExpStr += '&amp;amp;amp;#x0*' + wikEdSpecialChars[i][0] + ';';&lt;br /&gt;
&lt;br /&gt;
// case insensitive replace&lt;br /&gt;
		var regExp = new RegExp(regExpStr, 'gi');&lt;br /&gt;
		obj.plain = obj.plain.replace(regExp, replaceChar);&lt;br /&gt;
&lt;br /&gt;
// actual character representation&lt;br /&gt;
		regExpStr = '\\u' + wikEdSpecialChars[i][0];&lt;br /&gt;
&lt;br /&gt;
// case sensitive replace&lt;br /&gt;
		var regExp = new RegExp(regExpStr, 'g');&lt;br /&gt;
		obj.plain = obj.plain.replace(regExp, replaceChar);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// unicode line separator and paragraph separator&lt;br /&gt;
	obj.plain = obj.plain.replace(/\u2028/g, '\n');&lt;br /&gt;
	obj.plain = obj.plain.replace(/\u2029/g, '\n\n');&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixMath: math character fixer, originally from User:Omegatron&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixMath = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
&lt;br /&gt;
// change only outside &amp;lt;math&amp;gt; &amp;lt;/math&amp;gt; wikicode&lt;br /&gt;
	obj.plain = obj.plain.replace(/(.*?)((&amp;amp;lt;math(\b.*?)&amp;amp;gt;.*?&amp;amp;lt;\/math&amp;amp;gt;)|$)/gi,&lt;br /&gt;
		function (p, p1, p2) {&lt;br /&gt;
&lt;br /&gt;
// convert html entities into actual dash characters&lt;br /&gt;
			p1 = p1.replace(/&amp;amp;plus;/g, '+');&lt;br /&gt;
			p1 = p1.replace(/&amp;amp;minus;/g, '\u2212');&lt;br /&gt;
			p1 = p1.replace(/&amp;amp;middot;/g, '·');&lt;br /&gt;
&lt;br /&gt;
// convert dash next to a number into a minus sign character&lt;br /&gt;
			p1 = p1.replace(/([^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\,\{])-(\d)/g, '$1\u2212$2');&lt;br /&gt;
&lt;br /&gt;
// changes 2x3 to 2×3&lt;br /&gt;
			p1 = p1.replace(/(\d *)x( *\d)/g, '$1\u00d7$2');&lt;br /&gt;
&lt;br /&gt;
// changes 10^3 to 10&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
			p1 = p1.replace(/(\d*\.?\d+)\^(\u2212?\d+\.?\d*)/g, '$1&amp;amp;lt;sup&amp;amp;gt;$2&amp;amp;lt;/sup&amp;amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// change x^3 to x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
			p1 = p1.replace(/([\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9])\^(\u2212?\d+\.?\d*) /g, '$1&amp;amp;lt;sup&amp;amp;gt;$2&amp;amp;lt;/sup&amp;amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// change +/- to ±&lt;br /&gt;
			p1 = p1.replace(/( |\d)\+\/(-|\u2212)( |\d)/g, '$1\u00b1$3');&lt;br /&gt;
&lt;br /&gt;
// htmlize single char superscripts&lt;br /&gt;
			p1 = p1.replace(/(\u00b9|&amp;amp;sup1;)/g, '&amp;amp;lt;sup&amp;amp;gt;1&amp;amp;lt;/sup&amp;amp;gt;');&lt;br /&gt;
			p1 = p1.replace(/(\u00b2|&amp;amp;sup2;)/g, '&amp;amp;lt;sup&amp;amp;gt;2&amp;amp;lt;/sup&amp;amp;gt;');&lt;br /&gt;
			p1 = p1.replace(/(\u00b3|&amp;amp;sup3;)/g, '&amp;amp;lt;sup&amp;amp;gt;3&amp;amp;lt;/sup&amp;amp;gt;');&lt;br /&gt;
&lt;br /&gt;
			return(p1 + p2);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixChem: fix chemical formulas&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixChem = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
&lt;br /&gt;
	var realElements = 'H|He|Li|Be|B|C|N|O|F|Ne|Na|Mg|Al|Si|P|S|Cl|Ar|K|Ca|Sc|Ti|V|Cr|Mn|Fe|Co|Ni|Cu|Zn|Ga|Ge|As|Se|Br|Kr|Rb|Sr|Y|Zr|Nb|Mo|Tc|Ru|Rh|Pd|Ag|Cd|In|Sn|Sb|Te|I|Xe|Cs|Ba|Hf|Ta|W|Re|Os|Ir|Pt|Au|Hg|Tl|Pb|Bi|Po|At|Rn|Fr|Ra|Rf|Db|Sg|Bh|Hs|Mt|Ds|Rg|La|Ce|Pr|Nd|Pm|Sm|Eu|Gd|Tb|Dy|Ho|Er|Tm|Yb|Lu|Ac|Th|Pa|U|Np|Pu|Am|Cm|Bk|Cf|Es|Fm|Md|No|Lr';&lt;br /&gt;
	var pseudoElements = '|Me|Et|Pr|Bu|e';&lt;br /&gt;
&lt;br /&gt;
// fix common typos&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|[^a-z])h2o([^a-z]|$)/g, '$1H2O$2');&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|[^a-z])h3o+/g, '$1H3O+');&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|[^a-z])oh-/g, '$1OH+');&lt;br /&gt;
&lt;br /&gt;
// uppercase lowercased elements&lt;br /&gt;
	var regExp = new RegExp('(^|[^a-zA-Z])(' + realElements.toLowerCase() + pseudoElements.toLowerCase() + ')([^a-zA-Z]|$)', 'g');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 != 'e') {&lt;br /&gt;
				p2 = p2.substr(0, 1).toUpperCase() + p2.substr(1).toLowerCase();&lt;br /&gt;
			}&lt;br /&gt;
			return(p1 + p2 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// fix superscripts&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;plus;/g, '+');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;minus;/g, '\u2212');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;middot;/g, '·');&lt;br /&gt;
	regExp = new RegExp('(' + realElements + pseudoElements + '|\\))(\\d*(\\+|-|\\u2212))', 'g');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			p2 = p2.replace(/-/g, '\u2212');&lt;br /&gt;
			return(p1 + '&amp;amp;lt;sup&amp;amp;gt;' + p2 + '&amp;amp;lt;/sup&amp;amp;gt;');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// fix indices&lt;br /&gt;
	regExp = new RegExp('(' + realElements + pseudoElements + '|\\))(\\d+)', 'g');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp, '$1&amp;amp;lt;sub&amp;amp;gt;$2&amp;amp;lt;/sub&amp;amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// fix prefixes&lt;br /&gt;
	regExp = new RegExp('(\\d+) *(\\(|' + realElements + pseudoElements + ')', 'g');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp, '$1$2');&lt;br /&gt;
&lt;br /&gt;
// fix arrows&lt;br /&gt;
	obj.plain = obj.plain.replace(/ *-+&amp;amp;gt; *()/g, ' \u2192 ');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ *&amp;amp;lt;-+ *()/g, ' \u2190 ');&lt;br /&gt;
&lt;br /&gt;
// &amp;amp;hdarr; and &amp;quot;leftwards harpoon over rightwards harpoon&amp;quot; not supported in IE6&lt;br /&gt;
//	obj.plain = obj.plain.replace(/ *(&amp;amp;lt;=+&amp;amp;gt;|&amp;amp;hdarr;|&amp;amp;harr;|\u2190 *\u2192) *()/g, ' \u21cc ');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ *(&amp;amp;lt;==+&amp;amp;gt;|&amp;amp;hdarr;|&amp;amp;harr;|\u21cc|\u2190 *\u2192) *()/g, ' &amp;lt;=&amp;gt; ');&lt;br /&gt;
&lt;br /&gt;
// fix -&lt;br /&gt;
	obj.plain = obj.plain.replace(/([\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|\)|&amp;amp;gt;) +(-|\u2212) +([\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|\()/g, '$1 \u2212 $3');&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixUnits: unit formatter&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixUnits = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
&lt;br /&gt;
// convert into actual characters&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;amp;deg;|&amp;amp;amp;#00b0;/g, '°');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;amp;#00b5;|&amp;amp;amp;mu;|&amp;amp;amp;micro;/g, 'µ');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;amp;Omega;|&amp;amp;amp;#8486;/g, '\u03a9');&lt;br /&gt;
&lt;br /&gt;
// add space before units, remove space around /, and use abreviations&lt;br /&gt;
	obj.plain = obj.plain.replace(/( *\/ *|\d *)(Y|yotta|Z|zetta|E|exa|P|peta|T|tera|G|giga|M|mega|k|kilo|K|h|hecto|da|deca|d|deci|c|centi|m|mill?i|micro|u|µ|n|nano|p|pico|f|femto|a|atto|z|zepto|y|yocto|mibi|mebi|)(gramm?s?|g|metres?|meters?|m|amperes?|Amperes?|amps?|Amps?|A|Angstroms?|Angströms?|Å|Kelvins?|kelvins?|K|moles?|Moles?|mol|candelas?|cd|rad|Ci|sr|Hert?z|hert?z|Hz|newtons?|Newtons?|N|Joules?|joules?|J|watts?|Watts?|W|pascals?|Pascals?|Pa|lm|lx|C|volts?|Volts?|V|O|Farads?|F|Wb|T|H|S|bequerels?|Bequerels?|Bq|Gy|Sv|kat|centigrades?|°C|decibels?|db|dB|M|ohms?|Ohms?|\u03a9|sec|seconds?|s|minutes?|min|hour?|h|bits?|Bits?|bit|bytes?|Bytes?|B|bps|Bps)(?=[^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|$)/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
&lt;br /&gt;
			p1 = p1.replace(/ *\/ *()/g, '/');&lt;br /&gt;
			p1 = p1.replace(/(\d) *()/g, '$1 ');&lt;br /&gt;
&lt;br /&gt;
			p2 = p2.replace(/yotta/g, 'Y');&lt;br /&gt;
			p2 = p2.replace(/zetta/g, 'Z');&lt;br /&gt;
			p2 = p2.replace(/exa/g, 'E');&lt;br /&gt;
			p2 = p2.replace(/peta/g, 'P');&lt;br /&gt;
			p2 = p2.replace(/tera/g, 'T');&lt;br /&gt;
			p2 = p2.replace(/giga/g, 'G');&lt;br /&gt;
			p2 = p2.replace(/mega/g, 'M');&lt;br /&gt;
			p2 = p2.replace(/kilo/g, 'k');&lt;br /&gt;
			p2 = p2.replace(/K/g, 'k');&lt;br /&gt;
			p2 = p2.replace(/hecto/g, 'h');&lt;br /&gt;
			p2 = p2.replace(/deca/g, 'da');&lt;br /&gt;
			p2 = p2.replace(/deci/g, 'd');&lt;br /&gt;
			p2 = p2.replace(/centi/g, 'c');&lt;br /&gt;
			p2 = p2.replace(/mill?i/g, 'm');&lt;br /&gt;
			p2 = p2.replace(/micro|u/g, 'µ');&lt;br /&gt;
			p2 = p2.replace(/nano/g, 'n');&lt;br /&gt;
			p2 = p2.replace(/pico/g, 'p');&lt;br /&gt;
			p2 = p2.replace(/femto/g, 'f');&lt;br /&gt;
			p2 = p2.replace(/atto/g, 'a');&lt;br /&gt;
			p2 = p2.replace(/zepto/g, 'z');&lt;br /&gt;
			p2 = p2.replace(/yocto/g, 'y');&lt;br /&gt;
			p2 = p2.replace(/mibi/g, 'mebi');&lt;br /&gt;
&lt;br /&gt;
			p3 = p3.replace(/gramm?s?/g, 'g');&lt;br /&gt;
			p3 = p3.replace(/metres?|meters?/g, 'm');&lt;br /&gt;
			p3 = p3.replace(/amperes?|Amperes?|amps?|Amps?/g, 'A');&lt;br /&gt;
			p3 = p3.replace(/Angstroms?|Angströms?/g, 'Å');&lt;br /&gt;
			p3 = p3.replace(/Kelvins?|kelvins?/g, 'K');&lt;br /&gt;
			p3 = p3.replace(/moles?|Moles?/g, 'mol');&lt;br /&gt;
			p3 = p3.replace(/candelas?/g, 'cd');&lt;br /&gt;
			p3 = p3.replace(/Hert?z|hert?z/g, 'Hz');&lt;br /&gt;
			p3 = p3.replace(/newtons?|Newtons?/g, 'N');&lt;br /&gt;
			p3 = p3.replace(/Joules?|joules?/g, 'J');&lt;br /&gt;
			p3 = p3.replace(/watts?|Watts?/g, 'W');&lt;br /&gt;
			p3 = p3.replace(/pascals?|Pascals?/g, 'Pa');&lt;br /&gt;
			p3 = p3.replace(/volts?|Volts?/g, 'V');&lt;br /&gt;
			p3 = p3.replace(/ohms?|Ohms?/g, '\u03a9');&lt;br /&gt;
			p3 = p3.replace(/bequerels?|Bequerels?/g, 'Bq');&lt;br /&gt;
			p3 = p3.replace(/Farads?/g, 'F');&lt;br /&gt;
			p3 = p3.replace(/bits?|Bits?/g, 'bit');&lt;br /&gt;
			p3 = p3.replace(/bytes?|Bytes?/g, 'B');&lt;br /&gt;
			p3 = p3.replace(/sec|seconds?/g, 's');&lt;br /&gt;
			p3 = p3.replace(/minutes?/g, 'min');&lt;br /&gt;
			p3 = p3.replace(/hours?/g, 'h');&lt;br /&gt;
			p3 = p3.replace(/sec|seconds?/g, 's');&lt;br /&gt;
			p3 = p3.replace(/bps/g, 'bit/s');&lt;br /&gt;
			p3 = p3.replace(/Bps/g, 'B/s');&lt;br /&gt;
&lt;br /&gt;
			return(p1 + p2 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// fix prefix casing&lt;br /&gt;
	obj.plain = obj.plain.replace(/ K(bit\/s|B\/s)([^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|$)/g, ' k$1$2');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ m(bit\/s|B\/s)([^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|$)/g, ' M$1$2');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ g(bit\/s|B\/s)([^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|$)/g, ' G$1$2');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ t(bit\/s|B\/s)([^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|$)/g, ' T$1$2');&lt;br /&gt;
	obj.plain = obj.plain.replace(/ e(bit\/s|B\/s)([^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|$)/g, ' E$1$2');&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixDashes: fixes dashes and minus signs&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixDashes = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
&lt;br /&gt;
// convert html character entities into actual dash characters&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;amp;mdash;/g, '—');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;amp;ndash;/g, '–');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;amp;minus;/g, '\u2212');&lt;br /&gt;
&lt;br /&gt;
// remove spaces around em dashes&lt;br /&gt;
	obj.plain = obj.plain.replace(/([a-zA-Z\'\&amp;quot;”\]\}\)])( |&amp;amp;amp;nbsp;)*—( |&amp;amp;amp;nbsp;)*([a-zA-Z\'\&amp;quot;“\[\{\(])/g, '$1—$4');&lt;br /&gt;
&lt;br /&gt;
// convert -- to en dashes&lt;br /&gt;
	obj.plain = obj.plain.replace(/([a-zA-Z\'\&amp;quot;”\]\}\)])( |&amp;amp;amp;nbsp;)*--( |&amp;amp;amp;nbsp;)*([a-zA-Z\'\&amp;quot;“\[\{\(])/g, '$1 – $4');&lt;br /&gt;
&lt;br /&gt;
// convert hyphen next to lone number into a minus sign character&lt;br /&gt;
	obj.plain = obj.plain.replace(/([a-zA-Z\'\&amp;quot;”\]\&amp;gt;] ) *(\u2212|–)(\d)/g, '$1\u2212$3');&lt;br /&gt;
&lt;br /&gt;
// convert minus or en dashes to dashes with spaces&lt;br /&gt;
	obj.plain = obj.plain.replace(/([a-zA-Z\'\&amp;quot;”\]\}])( |&amp;amp;amp;nbsp;)*(\u2212|–)( |&amp;amp;amp;nbsp;)*([a-zA-Z\'\&amp;quot;“\[\{])/g, '$1 – $5');&lt;br /&gt;
&lt;br /&gt;
// convert dashes to en dashes in dates&lt;br /&gt;
	obj.plain = obj.plain.replace(/(^|[ \(\|])(\d\d(\d\d)?)(\u2212|-|–)(\d\d)(\u2212|-|–)(\d\d(\d\d)?)([ \)\}\|,.;—]|$)/gm, '$1$2–$5–$7$9');&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixHTML: fix html to wikicode&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixHTML = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
&lt;br /&gt;
// remove syntax highlighting&lt;br /&gt;
	obj.html = obj.plain;&lt;br /&gt;
	obj.html = obj.html.replace(/\n/g, '&amp;lt;br /&amp;gt;');&lt;br /&gt;
	WikEdRemoveHighlighting(obj);&lt;br /&gt;
&lt;br /&gt;
// turn visible html code into real html, exclude comments&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;amp;lt;(\/?\w.*?)&amp;amp;gt;/g, '&amp;lt;$1&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// wikify, keep user added attribute&lt;br /&gt;
	WikEdWikifyHTML(obj, true);&lt;br /&gt;
&lt;br /&gt;
// turn real html into visible html code&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/g, '\n');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
	obj.plain = obj.html;&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixCaps: fix capitalizing of lists, linklists, images, headings&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixCaps = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
&lt;br /&gt;
// uppercase lists&lt;br /&gt;
// start (listcode (char-ent|tag|category..|digit|non-word,non-ret))(word,non-digit..) end&lt;br /&gt;
	obj.plain = obj.plain.replace(/^([\*\#\:\;]+[ \'\&amp;quot;]*('+|\&amp;amp;\w+\;|&amp;amp;lt;[^\n]*?&amp;amp;gt;|\{\{.*?\}\}[^\n]*|\d|[^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\n])*)([^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\d].*?)?$/gm,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p3.match(/^(http|ftp|alpha|beta|gamma|delta|epsilon|kappa|lambda|$)/) == null) {&lt;br /&gt;
				p3 = p3.substr(0, 1).toUpperCase() + p3.substr(1);&lt;br /&gt;
			}&lt;br /&gt;
			return(p1 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// uppercase link lists (link)&lt;br /&gt;
	obj.plain = obj.plain.replace(/^([\*\#\:\;]+[ \'\&amp;quot;]*\[\[)([^\n]*?)(\]\])/gm,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
&lt;br /&gt;
// uppercase link&lt;br /&gt;
			p2 = p2.replace(/^((\&amp;amp;\w+\;|[^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|\d)*)([a-zA-ZÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9_].*)$/,&lt;br /&gt;
				function (p, p1, p2, p3) {&lt;br /&gt;
					if (p3.match(/^(http|ftp|alpha|beta|gamma|delta|epsilon|kappa|lambda)/) == null) {&lt;br /&gt;
						p3 = p3.substr(0, 1).toUpperCase() + p3.substr(1);&lt;br /&gt;
					}&lt;br /&gt;
					return(p1 + p3);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
&lt;br /&gt;
// uppercase comment&lt;br /&gt;
			p2 = p2.replace(/(\| *(\&amp;amp;\w+\;|&amp;amp;lt;[^\n]*?&amp;amp;gt;|[^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]|\d)*)([a-zA-ZÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9_].*)$/,&lt;br /&gt;
				function (p, p1, p2, p3) {&lt;br /&gt;
					if (p3.match(/^(http|ftp|alpha|beta|gamma|delta|epsilon|kappa|lambda)/) == null) {&lt;br /&gt;
						p3 = p3.substr(0, 1).toUpperCase() + p3.substr(1);&lt;br /&gt;
					}&lt;br /&gt;
					return(p1 + p3);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
			return(p1 + p2 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// uppercase headings&lt;br /&gt;
	obj.plain = obj.plain.replace(/^(=+ (\&amp;amp;\w+\;|&amp;amp;lt;[^\n]*?&amp;amp;gt;|\d|[^\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\n])*)([a-zA-ZÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9_].*? =+)$/gm,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p3.match(/^(http|ftp|alpha|beta|gamma|delta|epsilon|kappa|lambda)/) == null) {&lt;br /&gt;
				p3 = p3.substr(0, 1).toUpperCase() + p3.substr(1);&lt;br /&gt;
			}&lt;br /&gt;
			return(p1 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// uppercase images&lt;br /&gt;
	regExp = new RegExp('(\\[\\[)' + wikEdText['wikicode Image'] + ':([\\wÀ-ÖØ-öø-\\u0220\\u0222-\\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\\u0400-\\u0481\\u048a-\\u04ce\\u04d0-\\u04f5\\u04f8\\u04f9])([^\\n]*\\]\\])', 'igm');&lt;br /&gt;
	obj.plain = obj.plain.replace(regExp,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			return(p1 + wikEdText['wikicode Image'] + ':' + p2.toUpperCase() + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixTypos: fix typos using the AutoWikiBrowser/RegExTypoFix list (.test() is not faster)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixTypos = function(obj) {&lt;br /&gt;
&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
&lt;br /&gt;
//	split into alternating plain text and {{lang}} template fragments (does not support nested templates)&lt;br /&gt;
	var fragment = [];&lt;br /&gt;
	var nextPos = 0;&lt;br /&gt;
	var regExp = new RegExp('{{\\s*lang\\s*\\|(.|\\n)*?}}', 'g');&lt;br /&gt;
	while ( (regExpMatch = regExp.exec(obj.plain)) != null) {&lt;br /&gt;
		fragment.push(obj.plain.substring(nextPos, regExpMatch.index));&lt;br /&gt;
		fragment.push(regExpMatch[0]);&lt;br /&gt;
		nextPos = regExp.lastIndex;&lt;br /&gt;
	}&lt;br /&gt;
	fragment.push(obj.plain.substring(nextPos));&lt;br /&gt;
&lt;br /&gt;
// cycle through the RegExTypoFix rules&lt;br /&gt;
	for (var i = 0; i &amp;lt; wikEdTypoRulesFind.length; i ++) {&lt;br /&gt;
&lt;br /&gt;
// cycle through the fragments, jump over {{lang}} templates&lt;br /&gt;
		for (var j = 0; j &amp;lt; fragment.length; j = j + 2) {&lt;br /&gt;
			fragment[j] = fragment[j].replace(wikEdTypoRulesFind[i], wikEdTypoRulesReplace[i]);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// re-assemble text&lt;br /&gt;
	obj.plain = fragment.join('');&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFixAll:&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFixAll = function(obj) {&lt;br /&gt;
	WikEdFixBasic(obj);&lt;br /&gt;
	WikEdFixUnicode(obj);&lt;br /&gt;
	WikEdFixHTML(obj);&lt;br /&gt;
	WikEdFixCaps(obj);&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdRemoveElements: remove elements by tag name&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdRemoveElements = function(tagNameArray) {&lt;br /&gt;
&lt;br /&gt;
// cycle through the element names&lt;br /&gt;
	for (var property in tagNameArray) {&lt;br /&gt;
		if ((tagNameArray[property]) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		var elementArray = wikEdFrameDocument.getElementsByTagName(tagNameArray[property]);&lt;br /&gt;
		for (var i = 0; i &amp;lt; elementArray.length; i ++) {&lt;br /&gt;
			elementArray[i].parentNode.removeChild(elementArray[i]);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFindBoundaries: find word boundaries and line boundaries starting from selection.range&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFindBoundaries = function(word, line, para, whole, selection) {&lt;br /&gt;
&lt;br /&gt;
// get the start node and offset&lt;br /&gt;
	var startNode = selection.range.startContainer;&lt;br /&gt;
	var startNodeOffset = selection.range.startOffset;&lt;br /&gt;
&lt;br /&gt;
// get the end node and offset&lt;br /&gt;
	var endNode = selection.range.endContainer;&lt;br /&gt;
	var endNodeOffset = selection.range.endOffset;&lt;br /&gt;
&lt;br /&gt;
//// todo: when selecting whole lines with BR do not walk into next line&lt;br /&gt;
&lt;br /&gt;
	if (startNode.nodeType == 1) {&lt;br /&gt;
		startNode = startNode.childNodes[startNodeOffset];&lt;br /&gt;
		startNodeOffset = 0;&lt;br /&gt;
	}&lt;br /&gt;
	if (endNode.nodeType == 1) {&lt;br /&gt;
		endNode = endNode.childNodes[endNodeOffset];&lt;br /&gt;
		endNodeOffset = 0;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// find the start and end nodes in the whole plain text arrays&lt;br /&gt;
	var startNodeIndex;&lt;br /&gt;
	var endNodeIndex;&lt;br /&gt;
	for (var i = 0; i &amp;lt; whole.plainNode.length; i ++) {&lt;br /&gt;
		if (startNode == whole.plainNode[i]) {&lt;br /&gt;
			startNodeIndex = i;&lt;br /&gt;
		}&lt;br /&gt;
		if (endNode == whole.plainNode[i]) {&lt;br /&gt;
			endNodeIndex = i;&lt;br /&gt;
			break;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// find last previous word and line boundary&lt;br /&gt;
	var foundWord = false;&lt;br /&gt;
	var foundLine = false;&lt;br /&gt;
	var foundPara = false;&lt;br /&gt;
	var regExp = new RegExp('.*[^\\w\\-À-ÖØ-öø-\\u0220\\u0222-\\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\\u0400-\\u0481\\u048a-\\u04ce\\u04d0-\\u04f5\\u04f8\\u04f9]', 'g');&lt;br /&gt;
	var plainPrev = '';&lt;br /&gt;
&lt;br /&gt;
// check text nodes left-wise for a boundary&lt;br /&gt;
	var plain = '';&lt;br /&gt;
	for (var i = startNodeIndex; i &amp;gt;= 0; i --) {&lt;br /&gt;
		plainPrev = plain;&lt;br /&gt;
		plain = whole.plainArray[i];&lt;br /&gt;
		plain = plain.replace(/&amp;amp;amp;/g, '&amp;amp;');&lt;br /&gt;
		plain = plain.replace(/&amp;amp;lt;/g, '&amp;lt;');&lt;br /&gt;
		plain = plain.replace(/&amp;amp;gt;/g, '&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// boundary is a new paragraph&lt;br /&gt;
		if ( (plainPrev == '\n') &amp;amp;&amp;amp; (plain == '\n') ) {&lt;br /&gt;
			para.range.setStartAfter(whole.plainNode[i + 1]);&lt;br /&gt;
			foundPara = true;&lt;br /&gt;
			break;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// boundary is a newline&lt;br /&gt;
		else if (plain == '\n') {&lt;br /&gt;
			if (foundWord == false) {&lt;br /&gt;
				word.range.setStartAfter(whole.plainNode[i]);&lt;br /&gt;
				foundWord = true;&lt;br /&gt;
			}&lt;br /&gt;
			if (foundLine == false) {&lt;br /&gt;
				line.range.setStartAfter(whole.plainNode[i]);&lt;br /&gt;
				foundLine = true;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// check text node for a word boundary&lt;br /&gt;
		else if (foundWord == false) {&lt;br /&gt;
			if (i == startNodeIndex) {&lt;br /&gt;
				plain = plain.substr(0, startNodeOffset);&lt;br /&gt;
			}&lt;br /&gt;
			regExp.lastIndex = 0;&lt;br /&gt;
			if (regExp.exec(plain) != null) {&lt;br /&gt;
				word.range.setStart(whole.plainNode[i], regExp.lastIndex);&lt;br /&gt;
				foundWord = true;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// boundary is start of text&lt;br /&gt;
	if (foundPara == false) {&lt;br /&gt;
		para.range.setStartBefore(whole.plainNode[0]);&lt;br /&gt;
	}&lt;br /&gt;
	if (foundLine == false) {&lt;br /&gt;
		line.range.setStartBefore(whole.plainNode[0]);&lt;br /&gt;
	}&lt;br /&gt;
	if (foundWord == false) {&lt;br /&gt;
		word.range.setStartBefore(whole.plainNode[0]);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// find next word and line boundary&lt;br /&gt;
	regExp = new RegExp('[^\\w\\-À-ÖØ-öø-\\u0220\\u0222-\\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\\u0400-\\u0481\\u048a-\\u04ce\\u04d0-\\u04f5\\u04f8\\u04f9]', 'g');&lt;br /&gt;
	foundWord = false;&lt;br /&gt;
	foundLine = false;&lt;br /&gt;
	foundPara = false;&lt;br /&gt;
&lt;br /&gt;
// check text nodes right-wise for a boundary&lt;br /&gt;
	plain = '';&lt;br /&gt;
	for (var i = endNodeIndex; i &amp;lt; whole.plainArray.length; i ++) {&lt;br /&gt;
		plainPrev = plain;&lt;br /&gt;
		plain = whole.plainArray[i];&lt;br /&gt;
		plain = plain.replace(/&amp;amp;amp;/g, '&amp;amp;');&lt;br /&gt;
		plain = plain.replace(/&amp;amp;lt;/g, '&amp;lt;');&lt;br /&gt;
		plain = plain.replace(/&amp;amp;gt;/g, '&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// boundary is a double newline&lt;br /&gt;
		if ( (plainPrev == '\n') &amp;amp;&amp;amp; (plain == '\n') ) {&lt;br /&gt;
			para.range.setEndBefore(whole.plainNode[i]);&lt;br /&gt;
			foundPara = true;&lt;br /&gt;
			break;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// boundary is a newline&lt;br /&gt;
		else if (plain == '\n') {&lt;br /&gt;
			if (foundWord == false) {&lt;br /&gt;
				word.range.setEndBefore(whole.plainNode[i]);&lt;br /&gt;
				foundWord = true;&lt;br /&gt;
			}&lt;br /&gt;
			if (foundLine == false) {&lt;br /&gt;
				line.range.setEndBefore(whole.plainNode[i]);&lt;br /&gt;
				foundLine = true;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// check text node for a word boundary&lt;br /&gt;
		else if (foundWord == false) {&lt;br /&gt;
			if (i == endNodeIndex) {&lt;br /&gt;
				regExp.lastIndex = endNodeOffset;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				regExp.lastIndex = 0;&lt;br /&gt;
			}&lt;br /&gt;
			var regExpArray = regExp.exec(plain);&lt;br /&gt;
			if (regExpArray != null) {&lt;br /&gt;
				word.range.setEnd(whole.plainNode[i], regExpArray.index);&lt;br /&gt;
				foundWord = true;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// boundary is end of text&lt;br /&gt;
	if (foundPara == false) {&lt;br /&gt;
		para.range.setEndAfter(whole.plainNode[whole.plainArray.length - 1]);&lt;br /&gt;
	}&lt;br /&gt;
	if (foundLine == false) {&lt;br /&gt;
		line.range.setEndAfter(whole.plainNode[whole.plainArray.length - 1]);&lt;br /&gt;
	}&lt;br /&gt;
	if (foundWord == false) {&lt;br /&gt;
		word.range.setEndAfter(whole.plainNode[whole.plainArray.length - 1]);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// remove syntax highlighting and wikify&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdRemoveHighlightingWikify = function(obj, wikify) {&lt;br /&gt;
&lt;br /&gt;
	if ( (obj.html != '') || (wikify == true) ) {&lt;br /&gt;
&lt;br /&gt;
// remove syntax highlighting&lt;br /&gt;
		WikEdRemoveHighlighting(obj);&lt;br /&gt;
&lt;br /&gt;
// wikify, don't allow many attributes&lt;br /&gt;
		if ( (obj.htmlCode == true) &amp;amp;&amp;amp; (wikify != false) ) {&lt;br /&gt;
			WikEdWikifyHTML(obj, false);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdWikifyHTML:&lt;br /&gt;
//   obj.html contains the text to be wikified&lt;br /&gt;
//   expects &amp;lt; &amp;gt; &amp;amp;lt; &amp;amp;gt; &amp;amp;amp;  spaces instead of &amp;amp;nbsp; &amp;lt;br&amp;gt; (not \n)&lt;br /&gt;
//   returns &amp;lt;br&amp;gt; (not \n)&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
	allowed and converted tags:&lt;br /&gt;
			br|p&lt;br /&gt;
			h1|h2|h3|h4|h5|h6&lt;br /&gt;
			hr&lt;br /&gt;
			i|dfn|cite|em|var&lt;br /&gt;
			b|strong&lt;br /&gt;
			table|caption|col|thead|tfoot|tbody|tr|td|th&lt;br /&gt;
			dl|dt|dd|li|ol|ul&lt;br /&gt;
			a&lt;br /&gt;
	not allowed yet:&lt;br /&gt;
			bdo|q|kbd|samp|abbr|acronym|label&lt;br /&gt;
	other allowed tags:&lt;br /&gt;
			big|blockquote|colgroup|center|code|del|div|font|ins|pre|s|small|span|strike|sub|sup|tt|u|rb|rp|rt|ruby&lt;br /&gt;
	mediawiki tags:&lt;br /&gt;
			nowiki|math|gallery|noinclude|includeonly|ref|references|source|poem&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
window.WikEdWikifyHTML = function(obj, relaxed) {&lt;br /&gt;
&lt;br /&gt;
	var regExpStr;&lt;br /&gt;
	var regExp;&lt;br /&gt;
	var regExpMatch;&lt;br /&gt;
&lt;br /&gt;
// delete tags: &amp;lt;style&amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;(style)\b[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/\1&amp;gt;/gi, '');&lt;br /&gt;
&lt;br /&gt;
// remove MediaWiki section edit spans&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;span[^&amp;gt;]*class=\&amp;quot;editsection\&amp;quot;[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/span&amp;gt;\s*()/gi, '');&lt;br /&gt;
&lt;br /&gt;
// remove MediaWiki heading spans&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;span\b[^&amp;gt;]*\bclass=\&amp;quot;mw-headline\&amp;quot;[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/span&amp;gt;\s*()/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// remove MediaWiki divs from article top&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;h3\b[^&amp;gt;]*\bid=\&amp;quot;siteSub\&amp;quot;[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/h3&amp;gt;\s*()/g, '');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;div\b[^&amp;gt;]*\bid=\&amp;quot;contentSub\&amp;quot;[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/div&amp;gt;\s*()/g, '');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;div\b[^&amp;gt;]*\bid=\&amp;quot;jump-to-nav\&amp;quot;[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/div&amp;gt;\s*()/g, '');&lt;br /&gt;
&lt;br /&gt;
// remove MediaWiki table of contents&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;table\b[^&amp;gt;]*?\bid=\&amp;quot;toc\&amp;quot;[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/table&amp;gt;\s*()/g, '');&lt;br /&gt;
&lt;br /&gt;
// remove MediaWiki print footer&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;div\b[^&amp;gt;]*?\bclass=\&amp;quot;printfooter\&amp;quot;[^&amp;gt;]*&amp;gt;[^&amp;lt;&amp;gt;\&amp;quot;]+\&amp;quot;&amp;lt;a\b[^&amp;gt;]*&amp;gt;[^&amp;lt;]+&amp;lt;\/a&amp;gt;\&amp;quot;&amp;lt;\/div&amp;gt;\s*()/g, '');&lt;br /&gt;
&lt;br /&gt;
// remove MediaWiki category list tags&lt;br /&gt;
	regExp = /&amp;lt;div\b[^&amp;gt;]*\bid=\&amp;quot;catlinks\&amp;quot;[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/div&amp;gt;\s*()/g;&lt;br /&gt;
	while(regExp.test(obj.html) == true) {&lt;br /&gt;
		obj.html = obj.html.replace(regExp, '$1');&lt;br /&gt;
	}&lt;br /&gt;
	regExp = /&amp;lt;p\b[^&amp;gt;]*?\bclass=\&amp;quot;catlinks\&amp;quot;[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;a\b[^&amp;gt;]*&amp;gt;[^&amp;lt;&amp;gt;]+&amp;lt;\/a&amp;gt;: (.*?)&amp;lt;\/p&amp;gt;/g;&lt;br /&gt;
	while(regExp.test(obj.html) == true) {&lt;br /&gt;
		obj.html = obj.html.replace(regExp, '$1$2');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// convert MS-Word non-standard lists: *&lt;br /&gt;
	obj.html = obj.html.replace(/\s*&amp;lt;p [^&amp;gt;]*&amp;gt;\s*&amp;lt;!--\[if !supportLists\]--&amp;gt;.*?&amp;lt;!--\[endif\]--&amp;gt;\s*(.*?)\s*&amp;lt;\/p&amp;gt;\s*()/g, '* $1\n');&lt;br /&gt;
&lt;br /&gt;
// collect MS-Word footnote texts&lt;br /&gt;
	var footnotes = {};&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;div\b[^&amp;gt;]* id=&amp;quot;ftn(\d+)&amp;quot;[^&amp;gt;]*&amp;gt;\s*&amp;lt;p class=&amp;quot;MsoFootnoteText&amp;quot;&amp;gt;\s*&amp;lt;a(.|\n)*?&amp;lt;\/a&amp;gt;((.|\n)*?)&amp;lt;\/p&amp;gt;\s*&amp;lt;\/div&amp;gt;/g,&lt;br /&gt;
		function(p, p1, p2, p3) {&lt;br /&gt;
			footnotes[p1] = p3.replace(/^(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;)|(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;)$/g, '');&lt;br /&gt;
			return('');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// add footnotes as &amp;lt;ref&amp;gt; tags&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;a\b[^&amp;gt;]* name=&amp;quot;_ftnref(\d+)&amp;quot;[^&amp;gt;]*&amp;gt;(.|\n)*?&amp;lt;!--\[endif\]--&amp;gt;\s*&amp;lt;\/span&amp;gt;\s*&amp;lt;\/span&amp;gt;\s*&amp;lt;\/a&amp;gt;/g,&lt;br /&gt;
		function(p, p1) {&lt;br /&gt;
			var ref = '&amp;amp;lt;ref name=&amp;quot;footnote_' + p1 + '&amp;quot;&amp;amp;gt;' + footnotes[p1] + '&amp;amp;lt;/ref&amp;amp;gt;';&lt;br /&gt;
			return(ref);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// remove MS-Word footnote separator&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;!--\[if !supportFootnotes\]--&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;)*&amp;lt;hr\b[^&amp;gt;]*&amp;gt;\s*&amp;lt;!--\[endif\]--&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;)*/g, '');&lt;br /&gt;
&lt;br /&gt;
// correct name for MS-Word images&lt;br /&gt;
//                             1                                                    2    2                  3      3       4    4                                 1             5            5&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;v:imagedata\b[^&amp;gt;]*? src=&amp;quot;[^&amp;quot;&amp;gt;]*?[\\\/]clip_image\d+(\.\w+)&amp;quot;[^&amp;gt;]*? o:title=&amp;quot;([^&amp;quot;&amp;gt;]*)&amp;quot;[^&amp;gt;]*&amp;gt;(.|\s)*?&amp;lt;img\b[^&amp;gt;]*? src=&amp;quot;[^&amp;quot;&amp;gt;]*?[\\\/])clip_image\d+\.\w+(&amp;quot;[^&amp;gt;]*&amp;gt;)/g, '$1$3$2$5');&lt;br /&gt;
&lt;br /&gt;
// sanitize &amp;lt;span&amp;gt; &amp;lt;div&amp;gt; &amp;lt;p&amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;(span|div|p)\b *(.*?) *\/?&amp;gt;/gi,&lt;br /&gt;
		function (p, p1, p2) {&lt;br /&gt;
			return('&amp;lt;' + p1 + WikEdSanitizeAttributes(p1, p2, relaxed) +  '&amp;gt;');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// remove &amp;lt;span&amp;gt; ... &amp;lt;/span&amp;gt; pairs withhout attributes&lt;br /&gt;
	var isRemove = [];&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;(\/?)span\b([^&amp;gt;]*)&amp;gt;)/gi,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 == '') {&lt;br /&gt;
				if (p3 == '') {&lt;br /&gt;
					isRemove.push(true);&lt;br /&gt;
					return('');&lt;br /&gt;
				}&lt;br /&gt;
				isRemove.push(false);&lt;br /&gt;
				return(p1);&lt;br /&gt;
			}&lt;br /&gt;
			if (isRemove.pop() == true) {&lt;br /&gt;
				return('');&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// remove &amp;lt;p&amp;gt; ... &amp;lt;/p&amp;gt; pairs withhout attributes&lt;br /&gt;
	var isRemove = [];&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;(\/?)p\b([^&amp;gt;]*)&amp;gt;)/gi,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 == '') {&lt;br /&gt;
				if (p3 == '') {&lt;br /&gt;
					isRemove.push(true);&lt;br /&gt;
					return('\u0000\u0000');&lt;br /&gt;
				}&lt;br /&gt;
				isRemove.push(false);&lt;br /&gt;
				return(p1);&lt;br /&gt;
			}&lt;br /&gt;
			if (isRemove.pop() == true) {&lt;br /&gt;
				return('\u0000\u0000');&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// escape character entities&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;amp;(?!(amp;|lt;|gt;))/g, '&amp;amp;amp;');&lt;br /&gt;
&lt;br /&gt;
// remove comments&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;!--.*?--&amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;hr&amp;gt; horizontal rule&lt;br /&gt;
	obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;hr\b[^&amp;gt;]*&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000\u0000----\u0000\u0000');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;i&amp;gt; &amp;lt;em&amp;gt; &amp;lt;dfn&amp;gt; &amp;lt;var&amp;gt; &amp;lt;cite&amp;gt; italic&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;(i|em|dfn|var|cite)\b[^&amp;gt;]*&amp;gt;/gi, '\'\'');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;\/(i|em|dfn|var|cite)\b[^&amp;gt;]*&amp;gt;/gi, '\'\'');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;b&amp;gt; &amp;lt;strong&amp;gt; bold&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;(b|strong)\b[^&amp;gt;]*&amp;gt;/gi, '\'\'\'');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;\/(b|strong)\b[^&amp;gt;]*&amp;gt;/gi, '\'\'\'');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;h1&amp;gt; .. &amp;lt;h6&amp;gt; headings&lt;br /&gt;
	obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*(^|\n|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;h1\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/h1&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000\u0000= $4 =\u0000\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*(^|\n|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;h2\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/h2&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000\u0000== $4 ==\u0000\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*(^|\n|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;h3\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/h3&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000\u0000=== $4 ===\u0000\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*(^|\n|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;h4\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/h4&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000\u0000==== $4 ====\u0000\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*(^|\n|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;h5\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/h5&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000\u0000===== $4 =====\u0000\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*(^|\n|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;h6\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/h6&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000\u0000====== $4 ======\u0000\u0000');&lt;br /&gt;
&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;(h[0-6])\b[^&amp;gt;]*&amp;gt;(.*?)&amp;lt;\/\1&amp;gt;/gi, '$2');&lt;br /&gt;
&lt;br /&gt;
// {{TABLE}}&lt;br /&gt;
// convert html tables to wikicode&lt;br /&gt;
	if (wikEdTableMode == false) {&lt;br /&gt;
&lt;br /&gt;
// remove &amp;lt;thead&amp;gt; &amp;lt;tbody&amp;gt; &amp;lt;tfoot&amp;gt;&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|\u0000|&amp;lt;br\b[^&amp;gt;]*&amp;gt;)&amp;lt;\/?(thead|tbody|tfoot)\b[^&amp;gt;]*&amp;gt;(\s|\u0000|&amp;lt;br\b[^&amp;gt;]*&amp;gt;)*()/gi, '$1');&lt;br /&gt;
&lt;br /&gt;
// remove &amp;lt;col&amp;gt;&amp;lt;/col&amp;gt; and &amp;lt;colgroup&amp;gt;&amp;lt;/colgroup&amp;gt;\s&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;(col)\b[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/\2&amp;gt;(|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '');&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;(colgroup)\b[^&amp;gt;]*&amp;gt;.*?&amp;lt;\/\2&amp;gt;(|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '');&lt;br /&gt;
&lt;br /&gt;
// line breaks in table cells&lt;br /&gt;
		obj.html = obj.html.replace(/(&amp;lt;(td|th|caption)\b[^&amp;gt;]*&amp;gt;)(.*?)(&amp;lt;\/\2&amp;gt;)/gi,&lt;br /&gt;
			function(p, p1, p2, p3, p4) {&lt;br /&gt;
				p3 = p3.replace(/^(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000&amp;gt;)+/gi, '');&lt;br /&gt;
				p3 = p3.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000&amp;gt;)+$/gi, '');&lt;br /&gt;
				p3 = p3.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt; *()/gi, '&amp;amp;lt;br /&amp;amp;gt;');&lt;br /&gt;
				return(p1 + p3 + p4);&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
&lt;br /&gt;
// remove table closing tags&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;\/(tr|thead|tbody|tfoot)&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;td&amp;gt; table cells&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;td&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000| ');&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;(td) +([^&amp;gt;]*)&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi,&lt;br /&gt;
			function (p, p1, p2, p3, p4) {&lt;br /&gt;
				p3 = WikEdSanitizeAttributes(p2, p3, relaxed);&lt;br /&gt;
				if (p3 == '') {&lt;br /&gt;
					return('\u0000| ');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					return('\u0000|' + p3 + ' | ');&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;th&amp;gt; table cells&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;th&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000| ');&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;(th) +([^&amp;gt;]*)&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi,&lt;br /&gt;
			function (p, p1, p2, p3, p4) {&lt;br /&gt;
				p3 = WikEdSanitizeAttributes(p2, p3, relaxed);&lt;br /&gt;
				if (p3 == '') {&lt;br /&gt;
					return('\u0000| ');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					return('\u0000|' + p3 + ' | ');&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;tr&amp;gt; table rows&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;tr&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000|-\u0000');&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;(tr) +([^&amp;gt;]*)&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi,&lt;br /&gt;
			function (p, p1, p2, p3, p4) {&lt;br /&gt;
				return('\u0000|-' + WikEdSanitizeAttributes(p2, p3, relaxed) + '\u0000');&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;caption&amp;gt; table caption&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;caption&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '\u0000|+ ');&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*&amp;lt;(caption) +([^&amp;gt;]*)&amp;gt;(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi,&lt;br /&gt;
			function (p, p1, p2, p3, p4) {&lt;br /&gt;
				p3 = WikEdSanitizeAttributes(p2, p3, relaxed);&lt;br /&gt;
				if (p3 == '') {&lt;br /&gt;
					return('\u0000|+ ');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					return('\u0000|+' + p3 + ' | ');&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
&lt;br /&gt;
// remove closing tags&lt;br /&gt;
		obj.html = obj.html.replace(/\s*&amp;lt;\/(td|th|caption)&amp;gt;\s*()/gi, '');&lt;br /&gt;
&lt;br /&gt;
// line breaks, also in table cells (continued)&lt;br /&gt;
		obj.html = obj.html.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/gi, '\u0000');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;table&amp;gt;&lt;br /&gt;
		obj.html = obj.html.replace(/[\s\u0000]*&amp;lt;table&amp;gt;[\s\u0000]*(\|-(?=[\n\u0000]))?/gi, '\u0000\u0000{|\u0000');&lt;br /&gt;
		obj.html = obj.html.replace(/[\s\u0000]*&amp;lt;(table) +([^&amp;gt;]*)&amp;gt;[\s\u0000]*(\|-(?=[\n\u0000]))?/gi,&lt;br /&gt;
			function (p, p1, p2) {&lt;br /&gt;
				var table = '\u0000\u0000{|';&lt;br /&gt;
				if (wikEdWikifyTableParameters != '') {&lt;br /&gt;
					table += ' ' + wikEdWikifyTableParameters;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					table += WikEdSanitizeAttributes(p1, p2);&lt;br /&gt;
				}&lt;br /&gt;
				return(table);&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
		obj.html = obj.html.replace(/[\s\u0000]*&amp;lt;\/table&amp;gt;[\s\u0000]*()/gi, '\u0000|}\u0000\u0000');&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// for table mode override pasted table class // {{TABLE}}&lt;br /&gt;
	else if (wikEdTableMode == true) {&lt;br /&gt;
		obj.html = obj.html.replace(/(&amp;lt;table\b)([^&amp;gt;]*)(&amp;gt;)/gi,&lt;br /&gt;
			function (p, p1, p2, p3) {&lt;br /&gt;
				if (p2.match(/\bclass=/)) {&lt;br /&gt;
					p2 = p2.replace(/\bclass\s*=\s*([\'\&amp;quot;]?)[^&amp;lt;&amp;gt;\'\&amp;quot;\n]*?\2/g, 'class=&amp;quot;wikEdTableEdit&amp;quot;');&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					p2 = ' class=&amp;quot;wikEdTableEdit&amp;quot;';&lt;br /&gt;
				}&lt;br /&gt;
				return(p1 + p2 + p3);&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
&lt;br /&gt;
// table block element needs only one newline&lt;br /&gt;
		obj.html = obj.html.replace(/(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*(&amp;lt;table\b[^&amp;gt;]*&amp;gt;)/gi, '\u0000\u0000$2');&lt;br /&gt;
		obj.html = obj.html.replace(/(&amp;lt;\/table&amp;gt;)(\s|&amp;lt;br\b[^&amp;gt;]*&amp;gt;|\u0000)*()/gi, '$1\u0000');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// line breaks (continued)&lt;br /&gt;
	if (wikEdTableMode == true) {&lt;br /&gt;
		obj.html = obj.html.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;[\r\n ]*()/gi, '\u0000');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// convert links&lt;br /&gt;
	var regExpMatch = [];&lt;br /&gt;
	var regExpStr = '(&amp;lt;a(\\b[^&amp;gt;]*)&amp;gt;(.*?)&amp;lt;/a&amp;gt;)';&lt;br /&gt;
	var regExp = new RegExp(regExpStr, 'gi');&lt;br /&gt;
	obj.html = obj.html.replace(regExp,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			var linkParam = p2;&lt;br /&gt;
			var linkText = p3;&lt;br /&gt;
			var hrefUrlParam;&lt;br /&gt;
			var hrefUrlArticle;&lt;br /&gt;
			var imgWidth = '';&lt;br /&gt;
			var hrefParamTitle;&lt;br /&gt;
			var hrefParamISBN;&lt;br /&gt;
			var hrefParamSpecial;&lt;br /&gt;
			var linkArticleAnchor = '';&lt;br /&gt;
			var linkArticle = '';&lt;br /&gt;
			var linkTitle = '';&lt;br /&gt;
&lt;br /&gt;
// get href value&lt;br /&gt;
			var hrefValue;&lt;br /&gt;
			regExpMatch = linkParam.match(/ href=\&amp;quot;([^\&amp;quot;&amp;gt;]*)\&amp;quot;/);&lt;br /&gt;
			if (regExpMatch != null) {&lt;br /&gt;
				hrefValue = regExpMatch[1];&lt;br /&gt;
&lt;br /&gt;
// get absolute path from ./index.php and ../../index.php&lt;br /&gt;
				hrefValue = WikEdRelativeToAbsolutePath(hrefValue);&lt;br /&gt;
&lt;br /&gt;
// check for wiki article link and get parameters&lt;br /&gt;
//                                 1                        2 article   2                       3article 314 anchor 4                          6                       7   8 urlpar 87539 anchor 9&lt;br /&gt;
				regExpStr = wikEdServer + '(' + wikEdArticlePath + '([^\\&amp;quot;\\?#]+)|' + wikEdScript + '\\?([^\\&amp;quot;#]*))(#[^\\&amp;quot;]*)?';&lt;br /&gt;
				regExp = new RegExp(regExpStr);&lt;br /&gt;
				regExpMatch = regExp.exec(hrefValue);&lt;br /&gt;
				if (regExpMatch != null) {&lt;br /&gt;
&lt;br /&gt;
// article name from url path &amp;lt;a href=&amp;quot;../wiki/ hrefUrlArticle &amp;quot;&amp;gt;&lt;br /&gt;
					if (regExpMatch[2] != null) {&lt;br /&gt;
						hrefUrlArticle = regExpMatch[2];&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// article name from url parameters &amp;lt;a href=&amp;quot;url? hrefUrlParam &amp;quot;&amp;gt;&lt;br /&gt;
					else if (regExpMatch[3] != null) {&lt;br /&gt;
						hrefUrlParam = regExpMatch[3];&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// link anchor &amp;lt;a href=&amp;quot;link #anchor&amp;quot;&amp;gt;&lt;br /&gt;
					if (regExpMatch[4] != null) {&lt;br /&gt;
						linkArticleAnchor = regExpMatch[4];&lt;br /&gt;
						linkArticleAnchor = linkArticleAnchor.replace(/\.([0-9A-F]{2})/g, '%$1');&lt;br /&gt;
						linkArticleAnchor = decodeURIComponent(linkArticleAnchor);&lt;br /&gt;
						linkArticleAnchor = linkArticleAnchor.replace(/_\d+$/g, '');&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// parse hrefUrlParam and check for special parameters&lt;br /&gt;
					if (hrefUrlParam != null) {&lt;br /&gt;
						regExp = new RegExp('(^|&amp;amp;amp;)(\\w+)=([^\\&amp;quot;\\&amp;amp;]+)', 'g');&lt;br /&gt;
						while ( (regExpMatch = regExp.exec(hrefUrlParam)) != null) {&lt;br /&gt;
							switch (regExpMatch[2]) {&lt;br /&gt;
								case 'title':&lt;br /&gt;
									hrefParamTitle = regExpMatch[3];&lt;br /&gt;
									break;&lt;br /&gt;
								case 'isbn':&lt;br /&gt;
									hrefParamISBN = regExpMatch[3];&lt;br /&gt;
									break;&lt;br /&gt;
								case 'redlink':&lt;br /&gt;
									break;&lt;br /&gt;
								case 'action':&lt;br /&gt;
									hrefParamAction = regExpMatch[3];&lt;br /&gt;
									if (hrefParamAction == 'edit') {&lt;br /&gt;
										break;&lt;br /&gt;
									}&lt;br /&gt;
								default:&lt;br /&gt;
									hrefParamSpecial = true;&lt;br /&gt;
							}&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// ISBN links&lt;br /&gt;
					if ( (hrefParamISBN != null) &amp;amp;&amp;amp; (hrefParamSpecial != true) ) {&lt;br /&gt;
						var isbn = hrefParamISBN;&lt;br /&gt;
						regExpMatch = /((\d\-?){13}|(\d\-?){10})/.exec(linkText);&lt;br /&gt;
						if (regExpMatch != null) {&lt;br /&gt;
							isbn = regExpMatch[1];&lt;br /&gt;
						}&lt;br /&gt;
						return('ISBN ' + isbn);&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// get article from href parameters&lt;br /&gt;
					else if ( (hrefParamTitle != null) &amp;amp;&amp;amp; (hrefParamSpecial != true) ) {&lt;br /&gt;
						linkArticle = hrefParamTitle;&lt;br /&gt;
						linkArticle = linkArticle.replace(/_/g, ' ');&lt;br /&gt;
						linkArticle = decodeURIComponent(linkArticle);&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// get article name from url path&lt;br /&gt;
					else if (hrefUrlArticle != null) {&lt;br /&gt;
						linkArticle = hrefUrlArticle;&lt;br /&gt;
						linkArticle = linkArticle.replace(/_/g, ' ');&lt;br /&gt;
						linkArticle = decodeURIComponent(linkArticle);&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// get article name from &amp;lt;a title=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
					else {&lt;br /&gt;
						regExpMatch = / title=\&amp;quot;([^\&amp;quot;&amp;gt;]+)\&amp;quot;/.exec(linkParam);&lt;br /&gt;
						if (regExpMatch != null) {&lt;br /&gt;
							linkArticle = regExpMatch[1];&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// format wiki link&lt;br /&gt;
				if (linkArticle != '') {&lt;br /&gt;
&lt;br /&gt;
// check for wiki image&lt;br /&gt;
					regExpStr = '^&amp;lt;img\\b[^&amp;gt;]*?\\bwidth=\\&amp;quot;(\\d+)\\&amp;quot;[^&amp;gt;]*?&amp;gt;$';&lt;br /&gt;
					regExp = new RegExp(regExpStr);&lt;br /&gt;
					regExpMatch = regExp.exec(linkText);&lt;br /&gt;
					if (regExpMatch != null) {&lt;br /&gt;
						imgWidth = regExpMatch[1];&lt;br /&gt;
						imgWidth = '|' + imgWidth + 'px';&lt;br /&gt;
						if ( (linkTitle != '') &amp;amp;&amp;amp; (linkTitle != 'Enlarge') ) {&lt;br /&gt;
							linkTitle = '|' + linkTitle;&lt;br /&gt;
							return('[[' + linkArticle + imgWidth + linkTitle + ']]');&lt;br /&gt;
						}&lt;br /&gt;
						else {&lt;br /&gt;
							return('[[' + linkArticle + imgWidth + ']]');&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// category link&lt;br /&gt;
					var regExp = new RegExp('^' + wikEdText['wikicode Category'] + ':(.*)','i');&lt;br /&gt;
					regExpMatch = regExp.exec(linkArticle);&lt;br /&gt;
					if (regExpMatch != null) {&lt;br /&gt;
						return('[[' + wikEdText['wikicode Category'] + ':' + regExpMatch[1].substr(0, 1).toUpperCase() + linkText.substr(1) + ']]');&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// wiki link&lt;br /&gt;
					if (linkArticle == linkText.substr(0, 1).toUpperCase() + linkText.substr(1)) {&lt;br /&gt;
						return('[[' + linkText + linkArticleAnchor + ']]');&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// date link (English only)&lt;br /&gt;
					regExpMatch = /^(January|February|March|April|May|June|July|August|September|October|November|December) (\d{1,2})$/.exec(linkArticle);&lt;br /&gt;
					if (regExpMatch != null) {&lt;br /&gt;
						var month = regExpMatch[1];&lt;br /&gt;
						var day = regExpMatch[2];&lt;br /&gt;
						if (linkText == (day + ' ' + month) ) {&lt;br /&gt;
							return('[[' + linkArticle + linkArticleAnchor + ']]');&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// lowercase the article name if the first char of the link text can exist in lower/uppercase and is lowercase&lt;br /&gt;
					if ( linkText.substr(0, 1).toLowerCase() != linkText.substr(0, 1).toUpperCase() ) {&lt;br /&gt;
						if ( linkText.substr(0, 1) == linkText.substr(0, 1).toLowerCase() ) {&lt;br /&gt;
							linkArticle = linkArticle.substr(0, 1).toLowerCase() + linkArticle.substr(1);&lt;br /&gt;
						}&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// suffix links&lt;br /&gt;
					regExpStr = '^' + linkArticle.replace(/(\W)/g, '\\$1') + '([\\wÀ-ÖØ-öø-\\u0220\\u0222-\\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\\u0400-\\u0481\\u048a-\\u04ce\\u04d0-\\u04f5\\u04f8\\u04f9]+)$';&lt;br /&gt;
					regExp = new RegExp(regExpStr);&lt;br /&gt;
					regExpMatch = regExp.exec(linkText);&lt;br /&gt;
					if (regExpMatch != null) {&lt;br /&gt;
						return('[[' + linkArticle + linkArticleAnchor + ']]' + regExpMatch[1]);&lt;br /&gt;
					}&lt;br /&gt;
					return('[[' + linkArticle + linkArticleAnchor + '|' + linkText + ']]');&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// external link&lt;br /&gt;
				if (hrefValue != '') {&lt;br /&gt;
&lt;br /&gt;
// PubMed link&lt;br /&gt;
					regExpMatch = /^http:\/\/www\.ncbi\.nlm\.nih\.gov\/entrez\/query\.fcgi\?cmd=Retrieve&amp;amp;amp;db=pubmed&amp;amp;amp;.*?&amp;amp;amp;list_uids=(\d+)/.exec(hrefValue);&lt;br /&gt;
					if (regExpMatch != null) {&lt;br /&gt;
						return('PMID ' + regExpMatch[1]);&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// DOI link&lt;br /&gt;
					regExpMatch = /^http:\/\/dx\.doi\.org\/(.*)/.exec(hrefValue);&lt;br /&gt;
					if (regExpMatch != null) {&lt;br /&gt;
						return('{{doi|' + regExpMatch[1] + '}}');&lt;br /&gt;
					}&lt;br /&gt;
&lt;br /&gt;
// other external link&lt;br /&gt;
					return('[' + hrefValue + ' ' + linkText + ']');&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// return unchanged text&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// clean up MediaWiki category list&lt;br /&gt;
	var regExp = new RegExp('&amp;lt;span\\b[^&amp;gt;]*&amp;gt;(\\[\\[' + wikEdText['wikicode Category'] + ':[^\\]]+\\]\\])&amp;lt;\\/span&amp;gt;[\\s\\u0000\\|]*', 'gi');&lt;br /&gt;
	obj.html = obj.html.replace(regExp, '$1\u0000');&lt;br /&gt;
&lt;br /&gt;
// clean up DOI&lt;br /&gt;
	obj.html = obj.html.replace(/\[\[Digital object identifier\|DOI\]\]:(\{\{doi\|[^\}\s]+\}\})/gi, '$1');&lt;br /&gt;
&lt;br /&gt;
// convert images&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;img\b([^&amp;gt;]*)&amp;gt;/gi,&lt;br /&gt;
		function (p, p1) {&lt;br /&gt;
&lt;br /&gt;
// get and format parameters&lt;br /&gt;
			var address = '';&lt;br /&gt;
			var regExpMatch = /\bsrc\s*=\s*(\'|\&amp;quot;)([^\'\&amp;quot;]*)(\'|\&amp;quot;)/i.exec(p1);&lt;br /&gt;
			if (regExpMatch != null) {&lt;br /&gt;
				address = regExpMatch[2].replace(/^ +| +$/g, '');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			var imgAlt = '';&lt;br /&gt;
			regExpMatch = /\balt\s*=\s*(\'|\&amp;quot;)([^\'\&amp;quot;]*)(\'|\&amp;quot;)/i.exec(p1);&lt;br /&gt;
			if (regExpMatch != null) {&lt;br /&gt;
				imgAlt = regExpMatch[2].replace(/^ +| +$/g, '');&lt;br /&gt;
				imgAlt = imgAlt.replace(/&amp;amp;amp;nbsp;|[\n\u0000]/g, ' ');&lt;br /&gt;
				imgAlt = imgAlt.replace(/ {2,}/g, ' ');&lt;br /&gt;
				imgAlt = imgAlt.replace(/^ | $/g, '');&lt;br /&gt;
				if (imgAlt != '') {&lt;br /&gt;
					imgAlt = '|' + imgAlt;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			var imgWidth = '';&lt;br /&gt;
			regExpMatch = /\bwidth\s*=\s*(\'|\&amp;quot;)([^\'\&amp;quot;]*)(\'|\&amp;quot;)/i.exec(p1);&lt;br /&gt;
			if (regExpMatch != null) {&lt;br /&gt;
				imgWidth = '|' + regExpMatch[2].replace(/^ +| +$/g, '') + 'px';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			var imgLink = '';&lt;br /&gt;
			regExpMatch = /([^\/]+)$/.exec(address);&lt;br /&gt;
			if (regExpMatch != null) {&lt;br /&gt;
				imgLink = regExpMatch[1];&lt;br /&gt;
				if (imgLink != '') {&lt;br /&gt;
					return('[[' + wikEdText['wikicode Image'] + ':' + imgLink + imgWidth + imgAlt + ']]');&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			return('');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// convert lists: * # : ;&lt;br /&gt;
	var listObj = {};&lt;br /&gt;
	listObj.prefix = '';&lt;br /&gt;
	obj.html = obj.html.replace(/[\s\u0000]*&amp;lt;(\/?(ol|ul|li|dl|dd|dt))\b[^&amp;gt;]*&amp;gt;[\s\u0000]*()/gi,&lt;br /&gt;
		function (p, p1, p2, p3, p4) {&lt;br /&gt;
			switch (p1.toLowerCase()) {&lt;br /&gt;
				case 'ol':&lt;br /&gt;
					listObj.prefix += '#';&lt;br /&gt;
					return('\u0000');&lt;br /&gt;
				case 'ul':&lt;br /&gt;
					listObj.prefix += '*';&lt;br /&gt;
					return('\u0000');&lt;br /&gt;
				case 'dl':&lt;br /&gt;
					listObj.prefix += ':';&lt;br /&gt;
					return('\u0000');&lt;br /&gt;
				case '/ol':&lt;br /&gt;
				case '/ul':&lt;br /&gt;
				case '/dl':&lt;br /&gt;
					listObj.prefix = listObj.prefix.substr(0, listObj.prefix.length - 1);&lt;br /&gt;
					return('\u0000\u0000');&lt;br /&gt;
				case 'li':&lt;br /&gt;
				case 'dd':&lt;br /&gt;
					return('\u0000' + listObj.prefix + ' ');&lt;br /&gt;
				case 'dt':&lt;br /&gt;
					return('\u0000' + listObj.prefix.replace(/:$/, ';') + ' ');&lt;br /&gt;
				case '/li':&lt;br /&gt;
				case '/dt':&lt;br /&gt;
				case '/dd':&lt;br /&gt;
					return('');&lt;br /&gt;
			}&lt;br /&gt;
			return('');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
	obj.html = obj.html.replace(/[\n|\u0000]+[#\*:\;]+ (?=[\n|\u0000])/g, '');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;&amp;gt; remove not allowed tags&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;\/?)(\/?)(\w+)(.*?&amp;gt;)/g,&lt;br /&gt;
		function (p, p1, p2, p3, p4) {&lt;br /&gt;
			if (wikEdTableMode == true) {&lt;br /&gt;
				if ( /^(table|tr|td|th|thead|tbody|tfoot|col|colgroup|caption)$/i.test(p3) ) {&lt;br /&gt;
					var tag = p1 + p2 + p3 + p4;&lt;br /&gt;
					tag = tag.replace(/&amp;lt;/g, '\u0001');&lt;br /&gt;
					tag = tag.replace(/&amp;gt;/g, '\u0002');&lt;br /&gt;
					return(tag);&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					return('');&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			else if ( /^(big|blockquote|colgroup|center|code|del|div|font|ins|p|pre|s|small|span|strike|sub|sup|tt|u|rb|rp|rt|ruby|nowiki|math|gallery|noinclude|includeonly|ref|references|source|poem)$/i.test(p3) ) {&lt;br /&gt;
				return(p1 + p2 + p3 + p4);&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				return('');&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// sanitize attributes in opening html tags&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;(\w+) +(.*?) *(\/?)&amp;gt;/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p3 != '') {&lt;br /&gt;
				p3 = ' ' + p3;&lt;br /&gt;
			}&lt;br /&gt;
			return('&amp;lt;' + p1 + WikEdSanitizeAttributes(p1, p2, relaxed) + p3 + '&amp;gt;');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// unformat underlined, italic or bold blanks&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;u&amp;gt;(\'\'\'|\'\'|\s|\u0000)*([\s\u0000]+)(\'\'\'|\'\'|\s|\u0000)*&amp;lt;\/u&amp;gt;/g, '$2');&lt;br /&gt;
	obj.html = obj.html.replace(/\'\'\'(\'\'|\s|\u0000)*([\s\u0000]+)(\'\'|\s|\u0000)*\'\'\'/g, '$2');&lt;br /&gt;
	obj.html = obj.html.replace(/\'\'([\s\u0000]+)\'\'/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// fix MS Word non-style heading formatting&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000(={1,6}) *)(&amp;lt;u&amp;gt;|\'\'\'|\'\')+(.*?)(&amp;lt;\/u&amp;gt;|\'\'\'|\'\')+( *\2\u0000)/gi, '$1$4$6');&lt;br /&gt;
&lt;br /&gt;
// remove empty headings&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000(={1,6})\s+\1\u0000/g, '\u0000');&lt;br /&gt;
&lt;br /&gt;
// remove space-only lines&lt;br /&gt;
	obj.html = obj.html.replace(/([\s\u0000]*\u0000[\s\u0000]*)/g,&lt;br /&gt;
		function (p, p1) {&lt;br /&gt;
			return(p1.replace(/\n/g, '\u0000'));&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000\s+/g, '\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/\s+(?=\u0000)/g, '\u0000');&lt;br /&gt;
&lt;br /&gt;
// remove trailing linebreaks from table cells&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000{2,}(\|)/g, '\u0000$1');&lt;br /&gt;
&lt;br /&gt;
// remove leading and trailing spaces&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;gt;\s+\u0000/g, '&amp;gt;\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000\s+&amp;lt;/g, '\u0000&amp;lt;');&lt;br /&gt;
&lt;br /&gt;
// remove empty inline and block tag pairs&lt;br /&gt;
	obj.html = obj.html.replace(/( *)&amp;lt;(big|colgroup|code|del|font|ins|pre|s|small|span|strike|sub|sup|tt|u|rb|rp|rt|ruby|nowiki)\b[^&amp;gt;]*&amp;gt;&amp;lt;\/\1&amp;gt; *()/gi, '$1');&lt;br /&gt;
	obj.html = obj.html.replace(/[\s\u0000]*&amp;lt;(blockquote|center|div|math|gallery|noinclude|includeonly|ref|references|source|poem)\b[^&amp;gt;]*&amp;gt;&amp;lt;\/\1&amp;gt;[\s\u0000]*()/gi, '\u0000\u0000');&lt;br /&gt;
&lt;br /&gt;
// remove empty lines from block tags&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;(blockquote|center|div|p|pre|gallery)\b[^&amp;gt;]*&amp;gt;)[\s\u0000]+/gi, '$1');&lt;br /&gt;
	obj.html = obj.html.replace(/[\s\u0000]+(&amp;lt;\/(blockquote|center|div|p|pre|gallery)&amp;gt;)/gi, '$1');&lt;br /&gt;
&lt;br /&gt;
// escape &amp;lt; &amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// preserved table tags&lt;br /&gt;
	obj.html = obj.html.replace(/\u0001/g, '&amp;lt;');&lt;br /&gt;
	obj.html = obj.html.replace(/\u0002/g, '&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// newlines to &amp;lt;br /&amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000+\n/g, '\n');&lt;br /&gt;
	obj.html = obj.html.replace(/\n\u0000+/g, '\n');&lt;br /&gt;
	obj.html = obj.html.replace(/\n*\u0000(\u0000|\n)+/g, '\n\n');&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000/g, '\n');&lt;br /&gt;
	obj.html = obj.html.replace(/\n/g, '&amp;lt;br /&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// table block element needs only one newline&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;\/table&amp;gt;&amp;lt;br\b[^&amp;gt;]*&amp;gt;)(&amp;lt;br\b[^&amp;gt;]*&amp;gt;)+/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// remove empty lines from article start and end&lt;br /&gt;
	if (obj.from == 'whole') {&lt;br /&gt;
		obj.html = obj.html.replace(/^(&amp;lt;br\b[^&amp;gt;]*&amp;gt;)+/gi, '');&lt;br /&gt;
		obj.html = obj.html.replace(/(&amp;lt;br\b[^&amp;gt;]*&amp;gt;)+$/gi, '');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdRelativeToAbsolutePath&lt;br /&gt;
//   broken for editing article names containing &amp;quot;/&amp;quot;, https://bugzilla.mozilla.org/show_bug.cgi?id=430910&lt;br /&gt;
&lt;br /&gt;
window.WikEdRelativeToAbsolutePath = function(relativePath, fullPath) {&lt;br /&gt;
&lt;br /&gt;
	var absolutePath = '';&lt;br /&gt;
&lt;br /&gt;
// get current url&lt;br /&gt;
	if (fullPath == null) {&lt;br /&gt;
		fullPath = window.location.href;&lt;br /&gt;
		fullPath = fullPath.replace(/#.*/, '');&lt;br /&gt;
		fullPath = fullPath.replace(/\?.*/, '');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// ./index.php&lt;br /&gt;
	if (/^\.\/()/.test(relativePath) == true) {&lt;br /&gt;
		relativePath = relativePath.replace(/^\.\/()/, '');&lt;br /&gt;
		fullPath = fullPath.replace(/\/[^\/]*$/, '');&lt;br /&gt;
		absolutePath = fullPath + '/' + relativePath;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// ../../index.php&lt;br /&gt;
	else if (/^\.\.\/()/.test(relativePath) == true) {&lt;br /&gt;
		while (/^\.\.\/()/.test(relativePath) == true) {&lt;br /&gt;
			relativePath = relativePath.replace(/^\.\.\/()/, '');&lt;br /&gt;
			fullPath = fullPath.replace(/\/[^\/]*$/, '');&lt;br /&gt;
		}&lt;br /&gt;
		absolutePath = fullPath + '/' + relativePath;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// full path&lt;br /&gt;
	else {&lt;br /&gt;
		absolutePath = relativePath;&lt;br /&gt;
	}&lt;br /&gt;
	return(absolutePath);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSanitizeAttributes: see Sanitizer.php&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSanitizeAttributes = function(tag, attributes, relaxed) {&lt;br /&gt;
	var common;&lt;br /&gt;
	var tablealign;&lt;br /&gt;
	var tablecell;&lt;br /&gt;
	var table;&lt;br /&gt;
	if (relaxed == true) {&lt;br /&gt;
		common = 'dir|style|class'; // not needed: lang|id|title&lt;br /&gt;
		tablealign = '|align|char|charoff|valign';&lt;br /&gt;
		table = '|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor';&lt;br /&gt;
		tablecell = '|abbr|axis|headers|scope|rowspan|colspan|nowrap|width|height|bgcolor';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		common = 'dir';&lt;br /&gt;
		table = '|border|cellspacing|cellpadding|align|bgcolor';&lt;br /&gt;
		tablealign = '|align|valign';&lt;br /&gt;
		tablecell = '|rowspan|colspan|nowrap|bgcolor';&lt;br /&gt;
	}&lt;br /&gt;
	tag = tag.toLowerCase();&lt;br /&gt;
	var sanitized = '';&lt;br /&gt;
	var regExp = /(\w+)\s*=\s*((\'|\&amp;quot;)(.*?)\3|(\w+))/g;&lt;br /&gt;
	var regExpMatch;&lt;br /&gt;
	while ( (regExpMatch = regExp.exec(attributes)) != null) {&lt;br /&gt;
		var attrib = regExpMatch[1];&lt;br /&gt;
		var attribValue = regExpMatch[4] || regExpMatch[5];&lt;br /&gt;
		if (attribValue == '') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		var valid = false;&lt;br /&gt;
&lt;br /&gt;
// relaxed, for existing text tags&lt;br /&gt;
		if (relaxed == true) {&lt;br /&gt;
			if ('center|em|strong|cite|code|var|sub|supdl|dd|dt|tt|b|i|big|small|strike|s|u|rb|rp|ruby'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if (common.indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('div|span|h1|h2|h3|h4|h5|h6|p'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|align').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('blockquote'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|cite').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('br'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ('style|clear'.indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('pre'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|width').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('ins|del'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|cite|datetime').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('ul'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|type').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('ol'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|type|start').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('li'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|type|value').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('table'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + table).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('caption'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|align').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('thead|tfoot|tbody'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('colgroup|col'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|span|width' + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('tr'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|bgcolor' + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('td|th'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + tablecell + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('font'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|size|color|face').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('hr'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|noshade|size|width').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('rt'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|rbspan').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('ref'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if (('name').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('references'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
			}&lt;br /&gt;
			else if ('source'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if (('lang').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('poem'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
			}&lt;br /&gt;
			else if ('gallery'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|perrow|widths|heights').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// strict, for html code to be wikified from external sources (websites, Word)&lt;br /&gt;
		else {&lt;br /&gt;
			if ('center|em|strong|cite|code|var|sub|supdl|dd|dt|tt|b|i|big|small|strike|s|u|rb|rp|ruby|blockquote|pre|ins|del'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if (common.indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('div|span|h1|h2|h3|h4|h5|h6|p'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|align').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('br'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ('clear'.indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('ul'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|type').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('ol'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|type|start').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('li'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|type|value').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('table'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + table).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('caption'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|align').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('thead|tfoot|tbody'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('colgroup|col'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|span' + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('tr'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|bgcolor' + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('td|th'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + tablecell + tablealign).indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('font'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|color').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('hr'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|noshade|size').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('rt'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if ((common + '|rbspan').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('ref'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if (('name').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('references'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
			}&lt;br /&gt;
			else if ('source'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
				if (('lang').indexOf(attrib) &amp;gt;= 0) { valid = true; }&lt;br /&gt;
			}&lt;br /&gt;
			else if ('poem'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
			}&lt;br /&gt;
			else if ('gallery'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// clean up&lt;br /&gt;
		if (valid == true) {&lt;br /&gt;
&lt;br /&gt;
// clean up defaults for align&lt;br /&gt;
			if (attrib == 'align') {&lt;br /&gt;
				if ('tr|td|th'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
					if (attribValue == 'left') {&lt;br /&gt;
						attribValue = '';&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// clean up defaults for valign&lt;br /&gt;
			else if (attrib == 'valign') {&lt;br /&gt;
				if ('tr|td|th'.indexOf(tag) &amp;gt;= 0) {&lt;br /&gt;
					if (attribValue == 'top') {&lt;br /&gt;
						attribValue = '';&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// clean up style&lt;br /&gt;
			else if (attrib == 'style') {&lt;br /&gt;
&lt;br /&gt;
// remove non-standard Mozilla styles&lt;br /&gt;
				attribValue = attribValue.replace(/(^| )(-moz-[\w\-]+): [\w\-]+; *()/g, '$1');&lt;br /&gt;
				attribValue = attribValue.replace(/(^| )([\w\-]+): [^;]*(-moz-[\w\-]+|windowtext)[^;]*; *()/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// remove dimensions from null values&lt;br /&gt;
				attribValue = attribValue.replace(/\b0(%|in|cm|mm|em|ex|pt|pc|px)\b/g, '0');&lt;br /&gt;
&lt;br /&gt;
// remove empty definitions and spaces&lt;br /&gt;
				attribValue = attribValue.replace(/[\w\-]+ *\: *\; *()/g, '');&lt;br /&gt;
				attribValue = attribValue.replace(/ *(;|:) *()/g, '$1 ');&lt;br /&gt;
				attribValue = attribValue.replace(/( |;)+$/g, ';');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// clean up class&lt;br /&gt;
			else if (attrib == 'class') {&lt;br /&gt;
&lt;br /&gt;
// remove MS Word classes&lt;br /&gt;
				attribValue = attribValue.replace(/^Ms.*$/g, '');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			if (attribValue != '') {&lt;br /&gt;
				sanitized += ' ' + attrib + '=&amp;quot;' + attribValue + '&amp;quot;';&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return(sanitized);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
//&lt;br /&gt;
// WikEdRemoveHighlighting: remove syntax highlighting in obj.html; sets obj.htmlCode if text contains html code&lt;br /&gt;
//    expects &amp;lt;br /&amp;gt; instead of \n&lt;br /&gt;
&lt;br /&gt;
window.WikEdRemoveHighlighting = function(obj) {&lt;br /&gt;
&lt;br /&gt;
// remove highlighting and atttribute-free span tags&lt;br /&gt;
	var isRemove = [];&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;(\/?)span\b([^&amp;gt;]*)&amp;gt;)/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 == '') {&lt;br /&gt;
				if (/\bclass=\&amp;quot;wikEd\w+\&amp;quot;/.test(p3)) {&lt;br /&gt;
					isRemove.push(true);&lt;br /&gt;
					return('');&lt;br /&gt;
				}&lt;br /&gt;
				isRemove.push(false);&lt;br /&gt;
				return(p1);&lt;br /&gt;
			}&lt;br /&gt;
			if (isRemove.pop() == true) {&lt;br /&gt;
				return('');&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// remove highlighting div tags&lt;br /&gt;
	var isRemove = [];&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;(\/?)div\b([^&amp;gt;]*)&amp;gt;)/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 == '') {&lt;br /&gt;
				if (/\bclass=\&amp;quot;wikEd\w+\&amp;quot;/.test(p3)) {&lt;br /&gt;
					isRemove.push(true);&lt;br /&gt;
					return('');&lt;br /&gt;
				}&lt;br /&gt;
				isRemove.push(false);&lt;br /&gt;
				return(p1);&lt;br /&gt;
			}&lt;br /&gt;
			if (isRemove.pop() == true) {&lt;br /&gt;
				return('');&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// remove highlighting pre tags&lt;br /&gt;
	var isRemove = [];&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;(\/?)pre\b([^&amp;gt;]*)&amp;gt;)/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 == '') {&lt;br /&gt;
				if (/\bclass=\&amp;quot;wikEd\w+\&amp;quot;/.test(p3)) {&lt;br /&gt;
					isRemove.push(true);&lt;br /&gt;
					return('');&lt;br /&gt;
				}&lt;br /&gt;
				isRemove.push(false);&lt;br /&gt;
				return(p1);&lt;br /&gt;
			}&lt;br /&gt;
			if (isRemove.pop() == true) {&lt;br /&gt;
				return('');&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// comments&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;!--wikEd\w+--&amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// newlines&lt;br /&gt;
	obj.html = obj.html.replace(/[\n\r ]+/g, ' ');&lt;br /&gt;
&lt;br /&gt;
// non-breaking spaces&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;amp;nbsp;/g, '\u00a0');&lt;br /&gt;
&lt;br /&gt;
// check for pasted html content&lt;br /&gt;
	if (obj.html.match(/&amp;lt;(?!br\b)/) != null) {&lt;br /&gt;
		obj.htmlCode = true;&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		obj.htmlCode = false;&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdHighlightSyntax: highlight syntax in obj.html; if singleLine is set, no block syntax will be highlighted; call WikEdRemoveHighlighting first&lt;br /&gt;
//   expects &amp;lt; &amp;gt; &amp;amp;lt; &amp;amp;gt; &amp;amp;amp;  \u00a0 instead of &amp;amp;nbsp;  \n instead of &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
window.WikEdHighlightSyntax = function(obj, singleLine) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix: use \n instead of \r\n&lt;br /&gt;
	obj.html = obj.html.replace(/\r\n?/g, '\n');&lt;br /&gt;
&lt;br /&gt;
// &amp;amp;lt; &amp;amp;gt; &amp;amp;amp; to \u0000 \u0001  \u0002&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;amp;lt;/g, '\u0000');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;amp;gt;/g, '\u0001');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;amp;amp;/g, '\u0002');&lt;br /&gt;
&lt;br /&gt;
// #REDIRECT&lt;br /&gt;
	obj.html = obj.html.replace(/(^|\n)(#)(redirect\b)/gi, '$1&amp;lt;span class=&amp;quot;wikEdWikiRedir&amp;quot;&amp;gt;$3&amp;lt;/span&amp;gt;&amp;lt;!--wikEdWikiRedir--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// nowiki (no html highlighting)&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000nowiki\b.*?\u0001)(.*?)(\u0000\/nowiki\b.*?\u0001)/gi,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			p2 = p2.replace(/\u0000/g, '&amp;amp;lt;');&lt;br /&gt;
			p2 = p2.replace(/\u0001/g, '&amp;amp;gt;');&lt;br /&gt;
			return(p1 + p2 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// blocks&lt;br /&gt;
&lt;br /&gt;
// lists * # : ;&lt;br /&gt;
	obj.html = obj.html.replace(/^((\u0000!--.*?--\u0001)*)([\*\#\:\;]+)(.*?)$/gm, '&amp;lt;span class=&amp;quot;wikEdListLine&amp;quot;&amp;gt;$1&amp;lt;span class=&amp;quot;wikEdListTag&amp;quot;&amp;gt;$3&amp;lt;/span&amp;gt;&amp;lt;!--wikEdListTag--&amp;gt;$4&amp;lt;/span&amp;gt;&amp;lt;!--wikEdListLine--&amp;gt;');&lt;br /&gt;
	if (singleLine != true) {&lt;br /&gt;
		obj.html = obj.html.replace(/((&amp;lt;span class=\&amp;quot;wikEdListLine\&amp;quot;&amp;gt;[^\n]*\n)+)/g, '&amp;lt;span class=&amp;quot;wikEdListBlock&amp;quot;&amp;gt;$1');&lt;br /&gt;
		obj.html = obj.html.replace(/(&amp;lt;span class=\&amp;quot;wikEdListLine\&amp;quot;&amp;gt;[^\n]*)(\n)(?!&amp;lt;span class=\&amp;quot;wikEdListLine\&amp;quot;&amp;gt;)/g, '$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdListBlock--&amp;gt;$2');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// #REDIRECT (finish)&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;span class=\&amp;quot;wikEdWikiRedir\&amp;quot;&amp;gt;)(.*?&amp;lt;\/span&amp;gt;&amp;lt;!--wikEdWikiRedir--&amp;gt;)/g, '$1#$2');&lt;br /&gt;
&lt;br /&gt;
// various blocks&lt;br /&gt;
	if (singleLine != true) {&lt;br /&gt;
		obj.html = obj.html.replace(/(\u0000(blockquote|center|div|pre|timeline|imagemap|source)\b[^\u0001]*\u0001.*?\u0000\/\2\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdBlock&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdBlock--&amp;gt;');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// space-pre&lt;br /&gt;
	if (singleLine != true) {&lt;br /&gt;
		obj.html = obj.html.replace(/^((\u0000!--.*?--\u0001)*)[\u00a0 ]([\u00a0 ]*)(.*?)$/gm, '&amp;lt;span class=&amp;quot;wikEdSpaceLine&amp;quot;&amp;gt;$1&amp;lt;span class=&amp;quot;wikEdSpaceTag&amp;quot;&amp;gt;&amp;amp;nbsp;$3&amp;lt;/span&amp;gt;&amp;lt;!--wikEdSpaceTag--&amp;gt;$4&amp;lt;/span&amp;gt;&amp;lt;!--wikEdSpaceLine--&amp;gt;');&lt;br /&gt;
		obj.html = obj.html.replace(/((&amp;lt;span class=\&amp;quot;wikEdSpaceLine\&amp;quot;&amp;gt;[^\n]*\n)+)/g, '&amp;lt;span class=&amp;quot;wikEdSpaceBlock&amp;quot;&amp;gt;$1');&lt;br /&gt;
		obj.html = obj.html.replace(/(&amp;lt;span class=\&amp;quot;wikEdSpaceLine\&amp;quot;&amp;gt;[^\n]*)(\n)(?!&amp;lt;span class=&amp;quot;wikEdSpaceLine&amp;quot;&amp;gt;)/g, '$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdSpaceBlock--&amp;gt;$2');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// ---- &amp;lt;hr&amp;gt; horizontal rule&lt;br /&gt;
	obj.html = obj.html.replace(/(^|\n)((\u0000!--.*?--\u0001|&amp;lt;[^&amp;gt;]*&amp;gt;)*)(----)((\u0000!--.*?--\u0001|&amp;lt;[^&amp;gt;]*&amp;gt;)*)(\n|$)/g, '$1&amp;lt;span class=&amp;quot;wikEdHR&amp;quot;&amp;gt;$2$4&amp;lt;/span&amp;gt;&amp;lt;!--wikEdHR--&amp;gt;$5$7');&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000hr\u0001)/g, '&amp;lt;span class=&amp;quot;wikEdHRInline&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdHRInline--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// == headings&lt;br /&gt;
	obj.html = obj.html.replace(/(^|\n)((\u0000!--.*?--\u0001|&amp;lt;[^&amp;gt;]*&amp;gt;)*)(=+[\u00a0 ]*)([^\n]*?)([\u00a0 ]*=+)(?=([\u00a0 ]|&amp;lt;[^&amp;gt;]*&amp;gt;|\u0000!--.*?--\u0001)*(\n|$))/g,&lt;br /&gt;
		function (p, p1, p2, p3, p4, p5, p6) {&lt;br /&gt;
			p4 = p4.replace(/(=+)/g, '&amp;lt;span class=&amp;quot;wikEdWiki&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdWiki--&amp;gt;');&lt;br /&gt;
			p6 = p6.replace(/(=+)/g, '&amp;lt;span class=&amp;quot;wikEdWiki&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdWiki--&amp;gt;');&lt;br /&gt;
			var regExp = new RegExp('^' + wikEdText['External links'] + '?|' + wikEdText['External links'] + '|' + wikEdText['See also'] + '|'  + wikEdText['References'] + '$', 'i');&lt;br /&gt;
			if (regExp.test(p5) ) {&lt;br /&gt;
				p1 = p1 + '&amp;lt;span class=&amp;quot;wikEdHeadingWp&amp;quot;&amp;gt;';&lt;br /&gt;
				p6 = p6 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdHeadingWp--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				p1 = p1 + '&amp;lt;span class=&amp;quot;wikEdHeading&amp;quot;&amp;gt;';&lt;br /&gt;
				p6 = p6 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdHeading--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
			return(p1 + p2 + p4 + p5 + p6);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// tables                                                  {|   |+   |-   ! |}            |&lt;br /&gt;
	obj.html = obj.html.replace(/^((\u0000!--.*?--\u0001)*)(\{\||\|\+|\|\-|\!|\|\}([^\}]|$)|\|)(.*?)$/gm, '&amp;lt;span class=&amp;quot;wikEdTableLine&amp;quot;&amp;gt;$1&amp;lt;span class=&amp;quot;wikEdTableTag&amp;quot;&amp;gt;$3&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTableTag--&amp;gt;$5&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTableLine--&amp;gt;');&lt;br /&gt;
	if (singleLine != true) {&lt;br /&gt;
		obj.html = obj.html.replace(/(^|\n)((&amp;lt;[^&amp;gt;]*&amp;gt;|\u0000!--.*?--\u0001)*\{\|)/g, '$1&amp;lt;span class=&amp;quot;wikEdTableBlock&amp;quot;&amp;gt;$2');&lt;br /&gt;
		obj.html = obj.html.replace(/(^|\n)((&amp;lt;[^&amp;gt;]*&amp;gt;|\u0000!--.*?--\u0001)*\|\}(&amp;lt;[^&amp;gt;]*&amp;gt;)*)/g, '$1$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTableBlock--&amp;gt;');&lt;br /&gt;
		obj.html = obj.html.replace(/(\u0000table\b[^\u0001]*\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdTableBlock&amp;quot;&amp;gt;$1');&lt;br /&gt;
		obj.html = obj.html.replace(/(\u0000\/table\u0001)/gi, '$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTableBlock--&amp;gt;');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;gallery&amp;gt; wiki markup&lt;br /&gt;
	if (singleLine != true) {&lt;br /&gt;
		obj.html = obj.html.replace(/(\u0000(gallery)\b[^\u0001]*\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdWiki&amp;quot;&amp;gt;$1');&lt;br /&gt;
		obj.html = obj.html.replace(/(\u0000\/(gallery)\u0001)/gi, '$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdWiki--&amp;gt;');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// various block tags&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000\/?(blockquote|center|div|pre|timeline|imagemap|source)\b[^\u0001]*\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdBlockTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdBlockTag--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;p&amp;gt; ... &amp;lt;/p&amp;gt; pairs with (wikEdBlockTag) and withhout attributes (wikEdUnknown)&lt;br /&gt;
	var isRemove = [];&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000(\/?)p\b([^\u0001]*?)\u0001)/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if (p2 == '') {&lt;br /&gt;
				if (p3 == '') {&lt;br /&gt;
					isRemove.push(true);&lt;br /&gt;
					return('&amp;lt;span class=&amp;quot;wikEdUnknown&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdUnknown--&amp;gt;');&lt;br /&gt;
				}&lt;br /&gt;
				if (/\/$/.test(p3)) {&lt;br /&gt;
					return('&amp;lt;span class=&amp;quot;wikEdUnknown&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdUnknown--&amp;gt;');&lt;br /&gt;
				}&lt;br /&gt;
				isRemove.push(false);&lt;br /&gt;
				return('&amp;lt;span class=&amp;quot;wikEdBlockTag&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdBlockTag--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
			if (isRemove.pop() == true) {&lt;br /&gt;
				return('&amp;lt;span class=&amp;quot;wikEdUnknown&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdUnknown--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
			return('&amp;lt;span class=&amp;quot;wikEdBlockTag&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdBlockTag--&amp;gt;');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// inline elements&lt;br /&gt;
&lt;br /&gt;
// magic words&lt;br /&gt;
	obj.html = obj.html.replace(/(__(NOTOC|FORCETOC|TOC|NOEDITSECTION|NEWSECTIONLINK|NOCONTENTCONVERT|NOCC|NOGALLERY|NOTITLECONVERT|NOTC|END|START)__)/gi, '&amp;lt;span class=&amp;quot;wikEdMagic&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdMagic--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;sup&amp;gt; &amp;lt;/sub&amp;gt; &amp;lt;ins&amp;gt; &amp;lt;del&amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000sup\b[^\u0001]*\u0001((.|\n)*?)\u0000\/sup\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdSuperscript&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdSuperscript--&amp;gt;');&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000sub\b[^\u0001]*\u0001((.|\n)*?)\u0000\/sub\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdSubscript&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdSubscript--&amp;gt;');&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000(ins|u)\b[^\u0001]*\u0001((.|\n)*?)\u0000\/(ins|u)\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdIns&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdIns--&amp;gt;');&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000(del|s|strike)\b[^\u0001]*\u0001((.|\n)*?)\u0000\/(del|s|strike)\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdDel&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdDel--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;ref /&amp;gt; and &amp;lt;ref&amp;gt; wiki markup&lt;br /&gt;
	if (wikEdRefHide != true) {&lt;br /&gt;
		obj.html = obj.html.replace(/\u0000(ref\b[^\u0001]*?\/)\u0001/gi, '&amp;lt;span class=&amp;quot;wikEdRef&amp;quot;&amp;gt;&amp;amp;lt;$1&amp;amp;gt;&amp;lt;/span&amp;gt;&amp;lt;!--wikEdRef--&amp;gt;');&lt;br /&gt;
		obj.html = obj.html.replace(/(\u0000ref\b[^\u0001]*\u0001((.|\n)*?)\u0000\/ref\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdRef&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdRef--&amp;gt;');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// various inline tags&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000\/?(sub|sup|ins|u|del|s|strike|big|br|colgroup|code|font|small|span|tt|rb|rp|rt|ruby|ref)\b[^\u0001]*\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdInlineTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdInlineTag--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;references/&amp;gt; wiki markup&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000((references)\b[^\u0001]*?\/)\u0001/gi, '&amp;lt;span class=&amp;quot;wikEdWiki&amp;quot;&amp;gt;&amp;amp;lt;$1&amp;amp;gt;&amp;lt;/span&amp;gt;&amp;lt;!--wikEdWiki--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;math&amp;gt; &amp;lt;noinclude&amp;gt; &amp;lt;includeonly&amp;gt; &amp;lt;references&amp;gt; wiki markup&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000(math|gallery|noinclude|includeonly|references)\b[^\u0001]*\u0001((.|\n)*?)(\u0000)\/\2\u0001)/gi, '&amp;lt;span class=&amp;quot;wikEdWiki&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdWiki--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// unsupported or not needed &amp;lt;&amp;gt; tags&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000\/?)(\w+)(.*?\/?\u0001)/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
			if ( ! /^(col|thead|tfoot|tbody|big|br|blockquote|colgroup|center|code|del|div|font|ins|p|pre|s|small|span|strike|sub|sup|tt|u|rb|rp|rt|ruby|nowiki|math|gallery|noinclude|includeonly|ref|references|timeline|imagemap|source)$/i.test(p2) ) {&lt;br /&gt;
				p1 = '&amp;lt;span class=&amp;quot;wikEdUnknown&amp;quot;&amp;gt;' + p1;&lt;br /&gt;
				p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdUnknown--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
			return(p1 + p2 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// comments&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000!--(.|\n)*?--\u0001)/g, '&amp;lt;span class=&amp;quot;wikEdComment&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdComment--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// named html colors in quotation marks&lt;br /&gt;
	obj.html = obj.html.replace(/(\'|\&amp;quot;)(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|blanchedalmond|burlywood|chartreuse|coral|cornsilk|cyan|darkgray|darkgrey|darkkhaki|darkorange|darksalmon|darkseagreen|floralwhite|fuchsia|gainsboro|ghostwhite|gold|goldenrod|greenyellow|honeydew|hotpink|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightskyblue|lightsteelblue|lightyellow|lime|linen|magenta|mediumaquamarine|mediumspringgreen|mediumturquoise|mintcream|mistyrose|moccasin|navajowhite|oldlace|orange|palegoldenrod|palegreen|paleturquoise|papayawhip|peachpuff|peru|pink|plum|powderblue|salmon|sandybrown|seashell|silver|skyblue|snow|springgreen|tan|thistle|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen)(\1)/g, '$1&amp;lt;span style=&amp;quot;background-color: $2;&amp;quot; class=&amp;quot;wikEdColorsLight&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsLight--&amp;gt;$3');&lt;br /&gt;
	obj.html = obj.html.replace(/(\'|\&amp;quot;)(black|blue|blueviolet|brown|cadetblue|chocolate|cornflowerblue|crimson|darkblue|darkcyan|darkgoldenrod|darkgreen|darkmagenta|darkolivegreen|darkorchid|darkred|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|forestgreen|gray|green|grey|indianred|indigo|lightseagreen|lightslategray|lightslategrey|limegreen|maroon|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumvioletred|midnightblue|navy|olive|olivedrab|orangered|orchid|palevioletred|purple|red|rosybrown|royalblue|saddlebrown|seagreen|sienna|slateblue|slategray|slategrey|steelblue|teal|tomato)(\1)/g, '$1&amp;lt;span style=&amp;quot;background-color: $2;&amp;quot; class=&amp;quot;wikEdColorsDark&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsDark--&amp;gt;$3');&lt;br /&gt;
&lt;br /&gt;
// RGB hex colors #d4d0cc, exclude links and character entities starting with &amp;amp;&lt;br /&gt;
	obj.html = obj.html.replace(/(^|[^\/\w\u0002])(#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2}))(?=(\W|$))/g,&lt;br /&gt;
		function (p, p1, p2, p3, p4, p5) {&lt;br /&gt;
			var luminance = parseInt(p3, 16) * 0.299 + parseInt(p4, 16) * 0.587 + parseInt(p5, 16) * 0.114;&lt;br /&gt;
			if (luminance &amp;gt; 128) {&lt;br /&gt;
				return(p1 + '&amp;lt;span style=&amp;quot;background-color: ' + p2 + '&amp;quot; class=&amp;quot;wikEdColorsLight&amp;quot;&amp;gt;' + p2 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsLight--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				return(p1 + '&amp;lt;span style=&amp;quot;background-color: ' + p2 + '&amp;quot; class=&amp;quot;wikEdColorsDark&amp;quot;&amp;gt;' + p2 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsDark--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// RGB hex colors #ddc, exclude links and character entities starting with &amp;amp;&lt;br /&gt;
	obj.html = obj.html.replace(/(^|[^\/\w\u0002])(#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F]))(?=(\W|$))/g,&lt;br /&gt;
		function (p, p1, p2, p3, p4, p5) {&lt;br /&gt;
			var luminance = parseInt(p3, 16) * 16 * 0.299 + parseInt(p4, 16) * 16 * 0.587 + parseInt(p5, 16) * 16  * 0.114;&lt;br /&gt;
			if (luminance &amp;gt; 128) {&lt;br /&gt;
				return(p1 + '&amp;lt;span style=&amp;quot;background-color: ' + p2 + '&amp;quot; class=&amp;quot;wikEdColorsLight&amp;quot;&amp;gt;' + p2 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsLight--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				return(p1 + '&amp;lt;span style=&amp;quot;background-color: ' + p2 + '&amp;quot; class=&amp;quot;wikEdColorsDark&amp;quot;&amp;gt;' + p2 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsDark--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// RGB decimal colors rgb(128,64,265)&lt;br /&gt;
	obj.html = obj.html.replace(/(rgb\(\s*(\d+),\s*(\d+),\s*(\d+)\s*\))/gi,&lt;br /&gt;
		function (p, p1, p2, p3, p4) {&lt;br /&gt;
			var luminance = p2 * 0.299 + p3 * 0.587 + p4  * 0.114;&lt;br /&gt;
			if (luminance &amp;gt; 128) {&lt;br /&gt;
				return('&amp;lt;span style=&amp;quot;background-color: ' + p1 + '&amp;quot; class=&amp;quot;wikEdColorsLight&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsLight--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				return('&amp;lt;span style=&amp;quot;background-color: ' + p1 + '&amp;quot; class=&amp;quot;wikEdColorsDark&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdColorsDark--&amp;gt;');&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// clear array of link addresses&lt;br /&gt;
	if (obj.whole == true) {&lt;br /&gt;
		wikEdFollowLinkIdNo = 0;&lt;br /&gt;
		wikEdFollowLinkHash = {};&lt;br /&gt;
	}&lt;br /&gt;
	obj.whole = false;&lt;br /&gt;
&lt;br /&gt;
// URLs, allowed chars: \w / . &amp;amp; ? = - @ # % ~ + : (; allowed because of common misuse, : allowed for wikipedia links)&lt;br /&gt;
	obj.html = obj.html.replace(/((http:\/\/|https:\/\/|ftp:\/\/|irc:\/\/|gopher:\/\/|news:|mailto:)[^\u0000\u0001\u0003-\u0020\!\&amp;quot;\$\'\(\)\*\,\&amp;lt;\&amp;gt;\[\\\]\^\`\{-\|\}\u007f-\uffff]*)/gi,&lt;br /&gt;
		function (p, p1, p2) {&lt;br /&gt;
			return('&amp;lt;span class=&amp;quot;wikEdURLLink&amp;quot;' + WikEdFollowLinkUrl(null, null, p1) + '&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdURLLink--&amp;gt;');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// URLs with text&lt;br /&gt;
	obj.html = obj.html.replace(/(\[)( *&amp;lt;span class=\&amp;quot;wikEdURLLink\&amp;quot;[^&amp;gt;]*&amp;gt;.*?&amp;lt;\!--wikEdURLLink--&amp;gt; *)([^\]\n]*?)( *\])/gi,&lt;br /&gt;
		function (p, p1, p2, p3, p4) {&lt;br /&gt;
&lt;br /&gt;
// link text&lt;br /&gt;
			p3 = p3.replace(/(.*)/, '&amp;lt;span class=&amp;quot;wikEdURLText&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdURLText--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// link tags&lt;br /&gt;
			p1 = p1.replace(/(\[)/, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
			p4 = p4.replace(/(\])/, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
			return(p1 + p2 + p3 + p4);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// highlight images&lt;br /&gt;
&lt;br /&gt;
// p10 needed to prevent freezing for certain nested tags&lt;br /&gt;
//                            1       2                                         3                 45   67                        8                                  6 5 49    10&lt;br /&gt;
//                            ( [[   )( Image:                                 )( name           )(( | (( wikilink             ) ( link              ) non-link     )*)*)(   )( ]]  )&lt;br /&gt;
	var regExpImg = new RegExp('(\\[\\[)(' + wikEdText['wikicode Image'] + ' *: *)([^\\[\\]\\|\\n]*)((\\|((\\[\\[[^\\]\\n]*\\]\\])?(\\[[^\\[\\]\\n]*\\])?[^\\[\\]\\|]*)*)*)(.*?)(\\]\\])', 'gi');&lt;br /&gt;
	obj.html = obj.html.replace(regExpImg,&lt;br /&gt;
		function (p, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10) {&lt;br /&gt;
			var linkTitle = p3;&lt;br /&gt;
			linkTitle = linkTitle.replace(/\|.*()/g, '');&lt;br /&gt;
			linkTitle = linkTitle.replace(/\n.*()/g, '');&lt;br /&gt;
&lt;br /&gt;
			p1 = '&amp;lt;span class=&amp;quot;wikEdImage&amp;quot;' + WikEdFollowLinkUrl(p2, linkTitle) + '&amp;gt;' + p1;&lt;br /&gt;
			p10 = p10 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdImage--&amp;gt;';&lt;br /&gt;
			p2 = '&amp;lt;span class=&amp;quot;wikEdImageName&amp;quot;&amp;gt;' + p2;&lt;br /&gt;
			p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdImageName--&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
// parameters and capture&lt;br /&gt;
			p4 = p4.replace(/((\[[^\]]\]|\[\[[^\]]\]\]|[^\]\|])+)/g,&lt;br /&gt;
				function (p, p1) {&lt;br /&gt;
					if (/^(thumb|thumbnail|frame|right|left|center|none|\d+px|\d+x\d+px)$/.test(p1) == true) {&lt;br /&gt;
						p1 = '&amp;lt;span class=&amp;quot;wikEdImageParam&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdImageParam--&amp;gt;';&lt;br /&gt;
					}&lt;br /&gt;
					else {&lt;br /&gt;
						p1 = '&amp;lt;span class=&amp;quot;wikEdImageCaption&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdImageCaption--&amp;gt;';&lt;br /&gt;
					}&lt;br /&gt;
					return(p1);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
&lt;br /&gt;
// link tags&lt;br /&gt;
			p1 = p1.replace(/(\[+)/, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
			p10 = p10.replace(/(\]+)/, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
			p4 = p4.replace(/(\|)/g, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
			return(p1 + p2 + p3 + p4 + p9 + p10);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// [[ ]] links, categories&lt;br /&gt;
	obj.html = obj.html.replace(/(\[\[)([^\[\]]*)(\]\])/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
&lt;br /&gt;
// omit image tags&lt;br /&gt;
			var regExpImg = new RegExp('^(&amp;lt;[^&amp;gt;]*&amp;gt;)*' + wikEdText['wikicode Image'] + '\\s*:', 'i');&lt;br /&gt;
			if (regExpImg.test(p2) == true) {&lt;br /&gt;
				return(p1 + p2 + p3);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// get url&lt;br /&gt;
			var linkParam = '';&lt;br /&gt;
			var linkInter;&lt;br /&gt;
			var linkMatch = p2.match(/^\s*(([\w À-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\-]*\s*:)*)\s*([^\|]+)/);&lt;br /&gt;
			if (linkMatch != null) {&lt;br /&gt;
				linkInter = linkMatch[1];&lt;br /&gt;
				linkParam = WikEdFollowLinkUrl(linkInter, linkMatch[3]);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// category&lt;br /&gt;
			var regExpCat = new RegExp('^\\s*' + wikEdText['wikicode Category'] + '\\s*:', 'i');&lt;br /&gt;
			if (regExpCat.test(p2)) {&lt;br /&gt;
				var regExp = new RegExp('\\s*[\\w\\- À-ÖØ-öø-\\u0220\\u0222-\\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\\u0400-\\u0481\\u048a-\\u04ce\\u04d0-\\u04f5\\u04f8\\u04f9]+\\s*:\\s*' + wikEdText['wikicode Category'] + '\\s*:', 'i');&lt;br /&gt;
				if (p2.match(regExp) != null) {&lt;br /&gt;
					p1 = '&amp;lt;span class=&amp;quot;wikEdCatInter&amp;quot;' + linkParam + '&amp;gt;' + p1;&lt;br /&gt;
					p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdCatInter--&amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					p1 = '&amp;lt;span class=&amp;quot;wikEdCat&amp;quot;' + linkParam + '&amp;gt;' + p1;&lt;br /&gt;
					p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdCat--&amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				p2 = p2.replace(/^(\s*)(([\w ]*:)+)/, '$1&amp;lt;span class=&amp;quot;wikEdInter&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdInter--&amp;gt;');&lt;br /&gt;
				p2 = p2.replace(/(\s*)([^&amp;gt;:\|]+)(\s*\|\s*|$)/, '$1&amp;lt;span class=&amp;quot;wikEdCatName&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdCatName--&amp;gt;$3');&lt;br /&gt;
				p2 = p2.replace(/(\|\s*)(.*)/,&lt;br /&gt;
					function (p, p1, p2) {&lt;br /&gt;
						p2 = p2.replace(/(.*?)(\s*(\||$))/g, '&amp;lt;span class=&amp;quot;wikEdCatText&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdCatText--&amp;gt;$2');&lt;br /&gt;
						return(p1 + p2);&lt;br /&gt;
					}&lt;br /&gt;
				);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// wikilink&lt;br /&gt;
			else {&lt;br /&gt;
				if (linkInter != '') {&lt;br /&gt;
					p1 = '&amp;lt;span class=&amp;quot;wikEdLinkInter&amp;quot;' + linkParam + '&amp;gt;' + p1;&lt;br /&gt;
					p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkInter--&amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					p1 = '&amp;lt;span class=&amp;quot;wikEdLink&amp;quot;' + linkParam + '&amp;gt;' + p1;&lt;br /&gt;
					p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLink--&amp;gt;';&lt;br /&gt;
				}&lt;br /&gt;
				p2 = p2.replace(/^(\s*)(([\w ]*:)+)/, '$1&amp;lt;span class=&amp;quot;wikEdInter&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdInter--&amp;gt;');&lt;br /&gt;
				p2 = p2.replace(/(\s*)([^&amp;gt;:\|]+)(\s*\|\s*|$)/, '$1&amp;lt;span class=&amp;quot;wikEdLinkName&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkName--&amp;gt;$3');&lt;br /&gt;
				p2 = p2.replace(/(\|\s*)(.*)/,&lt;br /&gt;
					function (p, p1, p2) {&lt;br /&gt;
						p2 = p2.replace(/(.*?)(\s*(\||$))/g, '&amp;lt;span class=&amp;quot;wikEdLinkText&amp;quot;&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkText--&amp;gt;$2');&lt;br /&gt;
						return(p1 + p2);&lt;br /&gt;
					}&lt;br /&gt;
				);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// link tags&lt;br /&gt;
			p1 = p1.replace(/(\[+)/, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
			p2 = p2.replace(/(\|)/g, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
			p3 = p3.replace(/(\]+)/, '&amp;lt;span class=&amp;quot;wikEdLinkTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdLinkTag--&amp;gt;');&lt;br /&gt;
			return(p1 + p2 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// {{ }} simple non-nested templates&lt;br /&gt;
	obj.html = obj.html.replace(/(\{{2,3})([^\{\}\&amp;lt;\&amp;gt;\u0000\u0001\n]+)(\}{2,3})/g,&lt;br /&gt;
		function (p, p1, p2, p3) {&lt;br /&gt;
&lt;br /&gt;
// get url&lt;br /&gt;
			var linkParam = '';&lt;br /&gt;
			var linkInter;&lt;br /&gt;
			var linkMatch = p2.match(/^\s*(([\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]*\s*:)*)\s*([^\|]+)/);&lt;br /&gt;
			if (linkMatch != null) {&lt;br /&gt;
				linkInter = linkMatch[1];&lt;br /&gt;
				linkParam = WikEdFollowLinkUrl(linkInter + wikEdText['wikicode Template'] + ':', linkMatch[3])&lt;br /&gt;
			}&lt;br /&gt;
			if (linkInter != '') {&lt;br /&gt;
				p1 = '&amp;lt;span class=&amp;quot;wikEdTemplInter&amp;quot;' + linkParam + '&amp;gt;' + p1;&lt;br /&gt;
				p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTemplInter--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				p1 = '&amp;lt;span class=&amp;quot;wikEdTempl&amp;quot;' + linkParam + '&amp;gt;' + p1;&lt;br /&gt;
				p3 = p3 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTempl--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
			p2 = p2.replace(/^(\s*)((\w*:)+)/, '$1&amp;lt;span class=&amp;quot;wikEdInter&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdInter--&amp;gt;');&lt;br /&gt;
			p2 = p2.replace(/(\s*)([^&amp;gt;:\|]+)(\s*\|\s*|$)/, '$1&amp;lt;span class=&amp;quot;wikEdTemplName&amp;quot;&amp;gt;$2&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTemplName--&amp;gt;$3');&lt;br /&gt;
			p2 = p2.replace(/(\|\s*)(.*)/,&lt;br /&gt;
				function (p, p1, p2) {&lt;br /&gt;
					p2 = p2.replace(/(.*?)(\s*(\||$))/g, '&amp;lt;span class=&amp;quot;wikEdTemplText&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTemplText--&amp;gt;$2');&lt;br /&gt;
					return(p1 + p2);&lt;br /&gt;
				}&lt;br /&gt;
			);&lt;br /&gt;
&lt;br /&gt;
// template tags&lt;br /&gt;
			p2 = p2.replace(/(\|)/g, '&amp;lt;span class=&amp;quot;wikEdTemplTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTemplTag--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
			return(p1 + p2 + p3);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// highlighting curly template brackets at template start&lt;br /&gt;
	obj.html = obj.html.replace(/(\{{2,})(\s*[^\{\}\&amp;lt;\&amp;gt;\u0000\u0001\n\|]+)/g,&lt;br /&gt;
		function (p, p1, p2) {&lt;br /&gt;
			var linkMatch = p2.match(/^\s*(([\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9]*\s*:)*)\s*([^\|]+)/);&lt;br /&gt;
			var linkParam = '';&lt;br /&gt;
			var linkInter;&lt;br /&gt;
			if (linkMatch != null) {&lt;br /&gt;
				linkInter = linkMatch[1];&lt;br /&gt;
				linkParam = WikEdFollowLinkUrl(linkInter + wikEdText['wikicode Template'] + ':', linkMatch[3])&lt;br /&gt;
			}&lt;br /&gt;
			return('&amp;lt;span class=&amp;quot;wikEdTempl&amp;quot;' + linkParam + '&amp;gt;&amp;lt;span class=&amp;quot;wikEdTemplTag&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;wikEdTemplName&amp;quot;&amp;gt;' + p2 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTemplName--&amp;gt;&amp;lt;!--wikEdTemplTag--&amp;gt;');&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// highlighting curly template brackets at template end&lt;br /&gt;
	obj.html = obj.html.replace(/(\}{2,})(?!&amp;lt;\/span&amp;gt;&amp;lt;!--wikEdTemplTag--&amp;gt;)/g, '&amp;lt;span class=&amp;quot;wikEdTemplTag&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTemplTag--&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTempl--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;b&amp;gt; &amp;lt;i&amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/(\'\'\')(\'*)(.*?)(\'*)(\'\'\')/g, '&amp;lt;span class=&amp;quot;wikEdBold&amp;quot;&amp;gt;$2$3$4&amp;lt;/span&amp;gt;&amp;lt;!--wikEdBold--&amp;gt;');&lt;br /&gt;
	obj.html = obj.html.replace(/(\'\')(.*?)(\'\')/g, '&amp;lt;span class=&amp;quot;wikEdItalic&amp;quot;&amp;gt;$1$2$3&amp;lt;/span&amp;gt;&amp;lt;!--wikEdItalic--&amp;gt;');&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;span class=\&amp;quot;wikEdBold\&amp;quot;&amp;gt;)/g, '$1\'\'\'');&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;\/span&amp;gt;&amp;lt;!--wikEdBold--&amp;gt;)/g, '\'\'\'$1');&lt;br /&gt;
	obj.html = obj.html.replace(/(\'{2,})/g, '&amp;lt;span class=&amp;quot;wikEdWiki&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdWiki--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// nowiki (remove highlighting)&lt;br /&gt;
	obj.html = obj.html.replace(/(\u0000nowiki\b[^\u0001]*\u0001)((.|\n)*?)(\u0000\/nowiki\u0001)/gi,&lt;br /&gt;
		function (p, p1, p2, p3, p4) {&lt;br /&gt;
			p1 = '&amp;lt;span class=&amp;quot;wikEdNowiki&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;wikEdInlineTag&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdInlineTag--&amp;gt;';&lt;br /&gt;
			p2 = p2.replace(/&amp;lt;[^&amp;gt;]*&amp;gt;/g, '');&lt;br /&gt;
			p4 = '&amp;lt;span class=&amp;quot;wikEdInlineTag&amp;quot;&amp;gt;' + p4 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdInlineTag--&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;!--wikEdNowiki--&amp;gt;';&lt;br /&gt;
			return(p1 + p2 + p4);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// hide (fade) &amp;lt;ref&amp;gt;&lt;br /&gt;
	if (wikEdRefHide == true) {&lt;br /&gt;
&lt;br /&gt;
// escape &amp;lt;ref /&amp;gt;&lt;br /&gt;
		obj.html = obj.html.replace(/\u0000(ref\b[^\u0001]*?\/)\u0001/g, '&amp;lt;span class=&amp;quot;wikEdRefHide&amp;quot;&amp;gt;&amp;amp;lt;$1&amp;amp;gt;&amp;lt;/span&amp;gt;&amp;lt;!--wikEdRefHide--&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// remove &amp;lt;ref&amp;gt; inner highlighting&lt;br /&gt;
		obj.html = obj.html.replace(/(\u0000ref\b[^\u0001]*\u0001)((.|\n)*?)(\u0000\/ref\u0001)/gi,&lt;br /&gt;
			function (p, p1, p2, p3, p4) {&lt;br /&gt;
				p2 = p2.replace(/&amp;lt;[^&amp;gt;]*&amp;gt;/g, '');&lt;br /&gt;
				var str = '&amp;lt;span class=&amp;quot;wikEdRefHide&amp;quot;&amp;gt;' + p1 + p2 + p4 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdRefHide--&amp;gt;';&lt;br /&gt;
				return(str);&lt;br /&gt;
			}&lt;br /&gt;
		);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// \u0000 and \u0001 back to &amp;amp;lt; and &amp;amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/\u0000/g, '&amp;amp;lt;');&lt;br /&gt;
	obj.html = obj.html.replace(/\u0001/g, '&amp;amp;gt;');&lt;br /&gt;
	obj.html = obj.html.replace(/\u0002/g, '&amp;amp;amp;');&lt;br /&gt;
&lt;br /&gt;
// display control chars with popup title&lt;br /&gt;
	var regExp = new RegExp('([' + wikEdControlCharsStr + '])', 'g');&lt;br /&gt;
	obj.html = obj.html.replace(regExp,&lt;br /&gt;
		function (p, p1) {&lt;br /&gt;
&lt;br /&gt;
// handle tab&lt;br /&gt;
			if (p1 == '\u0009') {&lt;br /&gt;
				p1 =  '&amp;lt;span class=&amp;quot;wikEdTab&amp;quot; title=&amp;quot;' + wikEdControlChars[p1.charCodeAt(0).toString()] + '&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTab--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// exclude new line&lt;br /&gt;
			else if (p1 != '\u000a') {&lt;br /&gt;
				p1 = '&amp;lt;span class=&amp;quot;wikEdCtrl&amp;quot; title=&amp;quot;' + wikEdControlChars[p1.charCodeAt(0).toString()] + '&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdCtrl--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// display strange spaces with popup title&lt;br /&gt;
	var regExpStr = '';&lt;br /&gt;
	for (var decimalValue in wikEdStrangeSpaces) {&lt;br /&gt;
		if (typeof(wikEdStrangeSpaces[decimalValue]) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		regExpStr += String.fromCharCode(decimalValue);&lt;br /&gt;
	}&lt;br /&gt;
	var regExp = new RegExp('([' + regExpStr + '])', 'g');&lt;br /&gt;
	obj.html = obj.html.replace(regExp,&lt;br /&gt;
		function (p, p1) {&lt;br /&gt;
&lt;br /&gt;
// exclude nbsp&lt;br /&gt;
			if (p1 != '\u00a0') {&lt;br /&gt;
				p1 = '&amp;lt;span class=&amp;quot;wikEdBlank&amp;quot; title=&amp;quot;' + wikEdStrangeSpaces[p1.charCodeAt(0).toString()] + '&amp;quot;&amp;gt;' + p1 + '&amp;lt;/span&amp;gt;&amp;lt;!--wikEdBlank--&amp;gt;';&lt;br /&gt;
			}&lt;br /&gt;
			return(p1);&lt;br /&gt;
		}&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
// remove comments&lt;br /&gt;
	if (wikEdRemoveHighlightComments == true) {&lt;br /&gt;
		obj.html = obj.html.replace(/&amp;lt;!--wikEd\w+--&amp;gt;/g, '');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFollowLinkUrl: prepare the span tag parameters for ctrl-click opening of highlighted links&lt;br /&gt;
//   add support for [[/subpage]]&lt;br /&gt;
&lt;br /&gt;
window.WikEdFollowLinkUrl = function(linkPrefix, linkTitle, linkUrl) {&lt;br /&gt;
&lt;br /&gt;
	var linkName = '';&lt;br /&gt;
&lt;br /&gt;
// generate url from interlanguage or namespace prefix and title&lt;br /&gt;
	if (linkUrl == null) {&lt;br /&gt;
&lt;br /&gt;
// test for templates&lt;br /&gt;
		if ( (/\{|\}/.test(linkPrefix) == true) || (/\{|\}/.test(linkTitle) ) == true) {&lt;br /&gt;
			return('');&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// remove highlighting code&lt;br /&gt;
		linkPrefix = linkPrefix.replace(/&amp;lt;[^&amp;gt;]*&amp;gt;/g, '');&lt;br /&gt;
		linkTitle = linkTitle.replace(/&amp;lt;[^&amp;gt;]*&amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// remove control chars&lt;br /&gt;
		var regExp = new RegExp('[' + wikEdControlCharsStr + ']', 'g');&lt;br /&gt;
		linkPrefix = linkPrefix.replace(regExp, '');&lt;br /&gt;
		linkTitle = linkTitle.replace(regExp, '');&lt;br /&gt;
&lt;br /&gt;
// remove strange white spaces&lt;br /&gt;
		linkPrefix = linkPrefix.replace(/\s/, ' ');&lt;br /&gt;
		linkTitle = linkTitle.replace(/\s/, ' ');&lt;br /&gt;
		linkPrefix = linkPrefix.replace(/\s/g, '');&lt;br /&gt;
		linkPrefix = linkPrefix.replace(/^:+/g, '');&lt;br /&gt;
		linkTitle = linkTitle.replace(/ /g, '_');&lt;br /&gt;
&lt;br /&gt;
// Wiktionary differentiates between lower and uppercased titles&lt;br /&gt;
		linkUrl = linkPrefix + linkTitle;&lt;br /&gt;
		linkUrl = encodeURI(linkUrl);&lt;br /&gt;
		linkUrl = linkUrl.replace(/%25(\d\d)/g, '%$1');&lt;br /&gt;
		linkUrl = linkUrl.replace(/\'/g, '%27');&lt;br /&gt;
		linkUrl = linkUrl.replace(/#/g, '%23');&lt;br /&gt;
		if (wikEdWikiGlobals['wgArticlePath'] == null) {&lt;br /&gt;
			linkUrl = '';&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			linkUrl = wikEdWikiGlobals['wgArticlePath'].replace(/\$1/, linkUrl);&lt;br /&gt;
			linkName = linkPrefix + linkTitle;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// url provided&lt;br /&gt;
	else {&lt;br /&gt;
&lt;br /&gt;
// test for templates&lt;br /&gt;
		if (/\{|\}/.test(linkUrl) == true) {&lt;br /&gt;
			return('');&lt;br /&gt;
		}&lt;br /&gt;
		linkName = linkUrl;&lt;br /&gt;
		linkUrl = encodeURI(linkUrl);&lt;br /&gt;
		linkUrl = linkUrl.replace(/%25(\d\d)/g, '%$1');&lt;br /&gt;
		linkUrl = linkUrl.replace(/\'/g, '%27');&lt;br /&gt;
	}&lt;br /&gt;
	linkName = linkName.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
	linkName = linkName.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
	linkName = linkName.replace(/\&amp;quot;/g, '&amp;amp;quot;');&lt;br /&gt;
	linkName = linkName.replace(/\'/g, '\\u0027');&lt;br /&gt;
&lt;br /&gt;
	var linkParam = '';&lt;br /&gt;
	if (linkUrl != '') {&lt;br /&gt;
		var linkId = 'wikEdFollowLink' + wikEdFollowLinkIdNo;&lt;br /&gt;
		wikEdFollowLinkIdNo ++;&lt;br /&gt;
&lt;br /&gt;
		linkParam += 'id=&amp;quot;' + linkId + '&amp;quot; title=&amp;quot;' + linkName + ' ' + wikEdText['followLink'] + '&amp;quot;';&lt;br /&gt;
		wikEdFollowLinkHash[linkId] = linkUrl;&lt;br /&gt;
	}&lt;br /&gt;
	return(linkParam)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdUpdateTextarea: copy frame content to textarea&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdUpdateTextarea = function() {&lt;br /&gt;
&lt;br /&gt;
// get frame content&lt;br /&gt;
	var obj = {};&lt;br /&gt;
	obj.html = wikEdFrameBody.innerHTML;&lt;br /&gt;
	obj.html = obj.html.replace(/(&amp;lt;br\b[^&amp;gt;]*&amp;gt;)\n* *()/g, '$1');&lt;br /&gt;
&lt;br /&gt;
// textify so that no html formatting is submitted&lt;br /&gt;
	WikEdTextify(obj);&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;nbsp;/g, ' ');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;lt;/g, '&amp;lt;');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;gt;/g, '&amp;gt;');&lt;br /&gt;
	obj.plain = obj.plain.replace(/&amp;amp;amp;/g, '&amp;amp;');&lt;br /&gt;
&lt;br /&gt;
// copy to textarea&lt;br /&gt;
	wikEdTextarea.value = obj.plain;&lt;br /&gt;
&lt;br /&gt;
// remember frame scroll position&lt;br /&gt;
	wikEdFrameScrollTop = wikEdFrameBody.scrollTop;&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdUpdateFrame: copy textarea content to frame&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdUpdateFrame = function() {&lt;br /&gt;
&lt;br /&gt;
// get textarea content&lt;br /&gt;
	var obj = {};&lt;br /&gt;
	obj.html = wikEdTextarea.value;&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
	obj.html = obj.html.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
&lt;br /&gt;
// highlight the syntax&lt;br /&gt;
	if (wikEdHighlightSyntax == true) {&lt;br /&gt;
		obj.whole = true;&lt;br /&gt;
		WikEdHighlightSyntax(obj);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// display tabs&lt;br /&gt;
	else {&lt;br /&gt;
		obj.html = obj.html.replace(/(\t)/g, '&amp;lt;span class=&amp;quot;wikEdTabPlain&amp;quot;&amp;gt;$1&amp;lt;/span&amp;gt;&amp;lt;!--wikEdTabPlain--&amp;gt;');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// multiple blanks to blank-&amp;amp;nbsp;&lt;br /&gt;
	obj.html = obj.html.replace(/  /g, '&amp;amp;nbsp; ');&lt;br /&gt;
	obj.html = obj.html.replace(/  /g, '&amp;amp;nbsp; ');&lt;br /&gt;
	obj.html = obj.html.replace(/ \n/g, '&amp;amp;nbsp;\n');&lt;br /&gt;
&lt;br /&gt;
// newlines to &amp;lt;br /&amp;gt;&lt;br /&gt;
	obj.html = obj.html.replace(/\n/g, '&amp;lt;br /&amp;gt;');&lt;br /&gt;
&lt;br /&gt;
// select the whole text after replacing the whole text and scroll to same height&lt;br /&gt;
	if (wikEdMSIE == true) {&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		obj.sel = WikEdGetSelection();&lt;br /&gt;
		WikEdRemoveAllRanges(obj.sel);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// insert content into empty frame&lt;br /&gt;
	if ( (wikEdFrameBody.firstChild == null) || (wikEdFrameBody.innerHTML == '&amp;lt;br&amp;gt;') ) {&lt;br /&gt;
		wikEdFrameBody.innerHTML = obj.html;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// insert content into frame, preserve history&lt;br /&gt;
	else {&lt;br /&gt;
		var range = document.createRange();&lt;br /&gt;
		range.setStartBefore(wikEdFrameBody.firstChild);&lt;br /&gt;
		range.setEndAfter(wikEdFrameBody.lastChild);&lt;br /&gt;
		obj.sel.addRange(range);&lt;br /&gt;
&lt;br /&gt;
// replace the frame content with the new text&lt;br /&gt;
		if (obj.html != '') {&lt;br /&gt;
			WikEdFrameExecCommand('inserthtml', obj.html);&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			WikEdFrameExecCommand('delete');&lt;br /&gt;
		}&lt;br /&gt;
		WikEdRemoveAllRanges(obj.sel);&lt;br /&gt;
&lt;br /&gt;
// scroll to previous position&lt;br /&gt;
		if (wikEdFrameScrollTop != null) {&lt;br /&gt;
			wikEdFrameBody.scrollTop = wikEdFrameScrollTop;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	wikEdFrameScrollTop = null;&lt;br /&gt;
&lt;br /&gt;
// add event handler to make highlighted frame links ctrl-clickable&lt;br /&gt;
	if (wikEdHighlightSyntax == true) {&lt;br /&gt;
		WikEdFollowLinks();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdKeyFrameHandler: event handler for key and mouse events in the frame&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdKeyFrameHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
	if (event == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		switch (event.type) {&lt;br /&gt;
&lt;br /&gt;
// trap the tab key&lt;br /&gt;
			case 'keydown':&lt;br /&gt;
				switch (event.keyCode) {&lt;br /&gt;
					case 9:&lt;br /&gt;
						if (event.shiftKey == false) {&lt;br /&gt;
							event.preventDefault();&lt;br /&gt;
&lt;br /&gt;
// scroll to text input top&lt;br /&gt;
							if (wikEdFullScreenMode == false) {&lt;br /&gt;
								var inputWrapperTop = WikEdGetOffsetTop(wikEdInputWrapper);&lt;br /&gt;
								window.scroll(0, inputWrapperTop);&lt;br /&gt;
							}&lt;br /&gt;
&lt;br /&gt;
// focus the summary&lt;br /&gt;
							wikEdSummaryText.focus();&lt;br /&gt;
						}&lt;br /&gt;
						break;&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
&lt;br /&gt;
// trap any other frame event&lt;br /&gt;
			case 'keyup':&lt;br /&gt;
			case 'keypress':&lt;br /&gt;
			case 'mouseup':&lt;br /&gt;
&lt;br /&gt;
// grey out inactive buttons&lt;br /&gt;
				WikEdInactiveButtons();&lt;br /&gt;
&lt;br /&gt;
// reset the frame DOM cache&lt;br /&gt;
				wikEdFrameDOMCache = null;&lt;br /&gt;
				break;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdShiftAltHandler: event handler for emulated accesskey keydown events in main document and frame&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdShiftAltHandler = function(event) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility fix&lt;br /&gt;
	event = WikEdEvent(event);&lt;br /&gt;
&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		if ( (event.shiftKey == true) &amp;amp;&amp;amp; (event.ctrlKey == false) &amp;amp;&amp;amp; (event.altKey == true) ) {&lt;br /&gt;
&lt;br /&gt;
// get wikEd button id from keycode&lt;br /&gt;
			var buttonId = wikEdButtonKeyCode[event.keyCode];&lt;br /&gt;
			if (buttonId != null) {&lt;br /&gt;
				event.preventDefault();&lt;br /&gt;
				event.stopPropagation();&lt;br /&gt;
&lt;br /&gt;
// execute the button click handler code&lt;br /&gt;
				var obj = document.getElementById(buttonId);&lt;br /&gt;
				eval(wikEdEditButtonHandler[buttonId]);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFrameExecCommand: wrapper for execCommand method&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFrameExecCommand = function(command, option) {&lt;br /&gt;
&lt;br /&gt;
	wikEdFrameDocument.execCommand(command, false, option);&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFindAhead: non-regexp and case-insensitive find-as-you-type, event handler for find field&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFindAhead = function() {&lt;br /&gt;
&lt;br /&gt;
	if (WikEdGetAttribute(wikEdFindAhead, 'checked') == 'true') {&lt;br /&gt;
&lt;br /&gt;
// get the find text&lt;br /&gt;
		var findText = wikEdFindText.value;&lt;br /&gt;
		if (findText == '') {&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// remember position&lt;br /&gt;
		var sel = WikEdGetSelection();&lt;br /&gt;
		var range = sel.getRangeAt(sel.rangeCount - 1).cloneRange();&lt;br /&gt;
		var rangeClone = range.cloneRange();&lt;br /&gt;
		var scrollTop = wikEdFrameBody.scrollTop;&lt;br /&gt;
		sel.removeAllRanges();&lt;br /&gt;
		sel.addRange(range);&lt;br /&gt;
		range.collapse(true);&lt;br /&gt;
&lt;br /&gt;
// parameters: window.find(string, caseSensitive, backwards, wrapAround, wholeWord, searchInFrames, showDialog)&lt;br /&gt;
// Mozilla bug: searchInFrames must be true, otherwise wrapAround does not work&lt;br /&gt;
		var found = wikEdFrameWindow.find(findText, false, false, true, false, true, false);&lt;br /&gt;
&lt;br /&gt;
// add original selection&lt;br /&gt;
		if (found == false) {&lt;br /&gt;
			wikEdFrameBody.scrollTop = scrollTop;&lt;br /&gt;
			sel.removeAllRanges();&lt;br /&gt;
			sel.addRange(rangeClone);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdMainSwitch: click handler for program logo&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdMainSwitch = function() {&lt;br /&gt;
&lt;br /&gt;
// disable function if browser is incompatible&lt;br /&gt;
	if (wikEdBrowserNotSupported == true) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// enable wikEd&lt;br /&gt;
	if (wikEdDisabled == true) {&lt;br /&gt;
		wikEdDisabled = false;&lt;br /&gt;
		WikEdSetPersistent('wikEdDisabled', '0', 0, '/');&lt;br /&gt;
&lt;br /&gt;
// turn rich text frame on&lt;br /&gt;
		if (wikEdTurnedOn == true) {&lt;br /&gt;
			WikEdSetLogo();&lt;br /&gt;
			WikEdUpdateFrame();&lt;br /&gt;
			WikEdSetEditArea(true);&lt;br /&gt;
			wikEdButtonsWrapper.style.display = 'block';&lt;br /&gt;
			wikEdButtonBarPreview.style.display = 'block';&lt;br /&gt;
			if (wikEdButtonBarJump != null) {&lt;br /&gt;
				wikEdButtonBarJump.style.display = 'block';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// run scheduled custom functions&lt;br /&gt;
			WikEdExecuteHook(wikEdOnHook);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// setup wikEd&lt;br /&gt;
		else {&lt;br /&gt;
			WikEdTurnOn(false);&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// disable wikEd&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdUseWikEd = false;&lt;br /&gt;
		wikEdDisabled = true;&lt;br /&gt;
		WikEdSetLogo();&lt;br /&gt;
		WikEdSetPersistent('wikEdDisabled', '1', 0, '/');&lt;br /&gt;
		if (wikEdTurnedOn == true) {&lt;br /&gt;
			if (wikEdFullScreenMode == true) {&lt;br /&gt;
				WikEdFullScreen(false);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// turn classic textarea on&lt;br /&gt;
			WikEdUpdateTextarea();&lt;br /&gt;
			WikEdSetEditArea(false);&lt;br /&gt;
			wikEdButtonsWrapper.style.display = 'none';&lt;br /&gt;
			wikEdButtonBarPreview.style.display = 'none';&lt;br /&gt;
			wikEdLocalPrevWrapper.style.display = 'none';&lt;br /&gt;
			if (wikEdButtonBarJump != null) {&lt;br /&gt;
				wikEdButtonBarJump.style.display = 'none';&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// run scheduled custom functions&lt;br /&gt;
			WikEdExecuteHook(wikEdOffHook);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdFullScreen: change to fullscreen edit area or back to normal view&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdFullScreen = function(fullscreen, notFrame) {&lt;br /&gt;
&lt;br /&gt;
// hide or show elements&lt;br /&gt;
	var displayStyle;&lt;br /&gt;
	if (fullscreen == true) {&lt;br /&gt;
		displayStyle = 'none';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		displayStyle = 'block';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// elements above input wrapper&lt;br /&gt;
	var node = document.getElementById('editform').previousSibling;&lt;br /&gt;
	while (node != null) {&lt;br /&gt;
		if ( (node.nodeName == 'DIV') || (node.nodeName == 'H3') ) {&lt;br /&gt;
			node.style.display = displayStyle;&lt;br /&gt;
		}&lt;br /&gt;
		node = node.previousSibling;&lt;br /&gt;
	}&lt;br /&gt;
	document.getElementsByTagName('H1')[0].style.display = displayStyle;&lt;br /&gt;
&lt;br /&gt;
// divs below input wrapper&lt;br /&gt;
	var node = wikEdInputWrapper.nextSibling;&lt;br /&gt;
	while (node != null) {&lt;br /&gt;
		if (node.nodeName == 'DIV') {&lt;br /&gt;
			node.style.display = displayStyle;&lt;br /&gt;
		}&lt;br /&gt;
		node = node.nextSibling;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// divs below input wrapper, some levels up&lt;br /&gt;
	var node = document.getElementById('column-one');&lt;br /&gt;
	while (node != null) {&lt;br /&gt;
		if (node.nodeName == 'DIV') {&lt;br /&gt;
			node.style.display = displayStyle;&lt;br /&gt;
		}&lt;br /&gt;
		node = node.nextSibling;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// insert wrapper&lt;br /&gt;
	document.getElementById('wikEdInsertWrapper').style.display = displayStyle;&lt;br /&gt;
&lt;br /&gt;
// change styles&lt;br /&gt;
	if (fullscreen == true) {&lt;br /&gt;
		if (notFrame != true) {&lt;br /&gt;
			wikEdInputWrapper.className = 'wikEdInputWrapperFull';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarPreview.className = 'wikEdButtonBarPreviewFull';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		if (notFrame != true) {&lt;br /&gt;
			wikEdInputWrapper.className = 'wikEdInputWrapper';&lt;br /&gt;
		}&lt;br /&gt;
		wikEdButtonBarPreview.className = 'wikEdButtonBarPreview';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// resize the frame&lt;br /&gt;
	if (fullscreen == true) {&lt;br /&gt;
		var consoleTop = WikEdGetOffsetTop(wikEdConsoleWrapper);&lt;br /&gt;
		var consoleHeight = wikEdConsoleWrapper.offsetHeight;&lt;br /&gt;
		var frameHeight = wikEdFrame.offsetHeight;&lt;br /&gt;
		var windowHeight = WikEdGetWindowInnerHeight();&lt;br /&gt;
		var windowWidth = WikEdGetWindowInnerWidth();&lt;br /&gt;
		var frameHeightNew =  frameHeight + (windowHeight - (consoleTop + consoleHeight) ) - 2;&lt;br /&gt;
		wikEdFrame.style.height = frameHeightNew + 'px';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdFrame.style.height = wikEdTextareaHeight + 'px';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// scroll to edit-frame&lt;br /&gt;
	if (fullscreen == false) {&lt;br /&gt;
		window.scroll(0, WikEdGetOffsetTop(wikEdInputWrapper) - 2);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set the fullscreen button state&lt;br /&gt;
	WikEdButton(document.getElementById('wikEdFullScreen'), 'wikEdFullScreen', null, fullscreen);&lt;br /&gt;
&lt;br /&gt;
// grey out or re-activate scroll-to buttons&lt;br /&gt;
	var buttonClass;&lt;br /&gt;
	if (fullscreen == true) {&lt;br /&gt;
		buttonClass = 'wikEdButtonInactive';&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		buttonClass = 'wikEdButton';&lt;br /&gt;
	}&lt;br /&gt;
	document.getElementById('wikEdScrollToPreview').className = buttonClass;&lt;br /&gt;
	document.getElementById('wikEdScrollToPreview2').className = buttonClass;&lt;br /&gt;
	document.getElementById('wikEdScrollToEdit').className = buttonClass;&lt;br /&gt;
	document.getElementById('wikEdScrollToEdit2').className = buttonClass;&lt;br /&gt;
&lt;br /&gt;
// resize the summary field&lt;br /&gt;
	WikEdResizeSummary();&lt;br /&gt;
&lt;br /&gt;
	wikEdFullScreenMode = fullscreen;&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdResizeSummary: recalculate the summary width after resizing the window&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdResizeSummary = function() {&lt;br /&gt;
&lt;br /&gt;
// check if combo field exists&lt;br /&gt;
	if (wikEdSummarySelect == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	wikEdSummaryText.style.width = '';&lt;br /&gt;
	wikEdSummarySelect.style.width = '';&lt;br /&gt;
&lt;br /&gt;
	wikEdSummaryTextWidth = wikEdSummaryWrapper.clientWidth - ( WikEdGetOffsetLeft(wikEdSummaryText) - WikEdGetOffsetLeft(wikEdSummaryWrapper) );&lt;br /&gt;
	if (wikEdSummaryTextWidth &amp;lt; 150) {&lt;br /&gt;
		wikEdSummaryTextWidth = 150;&lt;br /&gt;
	}&lt;br /&gt;
	wikEdSummaryText.style.width = wikEdSummaryTextWidth + 'px';&lt;br /&gt;
	WikEdResizeComboInput('summary');&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdResizeComboInput: set the size of the background select boxes so that the button is visible&lt;br /&gt;
//   calculates the select button width as the difference between select and option width&lt;br /&gt;
//   adjusts widths so that only the select button is visible behind the input field&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdResizeComboInput = function(field) {&lt;br /&gt;
&lt;br /&gt;
// check if combo field exists&lt;br /&gt;
	if (wikEdSelectElement[field] == null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// detect browser for MS IE fixes&lt;br /&gt;
	var standardBrowser = true;&lt;br /&gt;
	if (wikEdSelectElement[field].options.offsetWidth != null ) {&lt;br /&gt;
		standardBrowser = false;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set select height and top&lt;br /&gt;
	if (standardBrowser == false) {&lt;br /&gt;
		wikEdSelectElement[field].style.height = (wikEdInputElement[field].clientHeight + 6) + 'px';&lt;br /&gt;
		wikEdSelectElement[field].style.top = '3px';&lt;br /&gt;
		wikEdInputElement[field].style.top = '3px';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add a dummy option if no option exists yet&lt;br /&gt;
	var dummy;&lt;br /&gt;
	var testOption = 1;&lt;br /&gt;
	if (standardBrowser == true) {&lt;br /&gt;
		if (wikEdSelectElement[field].options.length == 0) {&lt;br /&gt;
			testOption = 0;&lt;br /&gt;
			wikEdSelectElement[field].options[0] = new Option('');&lt;br /&gt;
			dummy = true;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set option widths to 0&lt;br /&gt;
	if (standardBrowser == true) {&lt;br /&gt;
		for (var i = 0; i &amp;lt; wikEdSelectElement[field].options.length; i ++) {&lt;br /&gt;
			wikEdSelectElement[field].options[i].style.width = '0';&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// get input width&lt;br /&gt;
	var inputBorder = (wikEdInputElement[field].offsetWidth - wikEdInputElement[field].clientWidth);&lt;br /&gt;
	var inputWidthInner = wikEdInputElement[field].clientWidth;&lt;br /&gt;
	var inputWidthOuter = wikEdInputElement[field].offsetWidth;&lt;br /&gt;
&lt;br /&gt;
// get select width&lt;br /&gt;
	var selectWidthInner = wikEdSelectElement[field].clientWidth;&lt;br /&gt;
	var selectWidthOuter = wikEdSelectElement[field].offsetWidth;&lt;br /&gt;
&lt;br /&gt;
// get option width and calculate button width&lt;br /&gt;
	var optionWidthInner;&lt;br /&gt;
	var buttonWidth;&lt;br /&gt;
	if (standardBrowser == true) {&lt;br /&gt;
&lt;br /&gt;
// Firefox &amp;lt; 3.0&lt;br /&gt;
		if ( typeof(wikEdSelectElement[field].options[testOption].clientLeft) == 'undefined' ) {&lt;br /&gt;
			optionWidthInner = wikEdSelectElement[field].options[testOption].clientWidth;&lt;br /&gt;
			buttonWidth = selectWidthInner - optionWidthInner - 6;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// Firefox &amp;gt;= 3.0&lt;br /&gt;
		else {&lt;br /&gt;
			optionWidthInner = wikEdSelectElement[field].options[testOption].clientWidth;&lt;br /&gt;
			buttonWidth = selectWidthInner - optionWidthInner;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		buttonWidth = selectWidthOuter - selectWidthInner - 4;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// for long fields shorten input&lt;br /&gt;
	if (inputWidthOuter + buttonWidth &amp;gt; 150) {&lt;br /&gt;
		wikEdInputElement[field].style.width = (inputWidthInner - inputBorder - buttonWidth) + 'px';&lt;br /&gt;
		wikEdSelectElement[field].style.width = (inputWidthInner) + 'px';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// otherwise increase select width&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdSelectElement[field].style.width = (inputWidthOuter + buttonWidth) + 'px';&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// delete dummy option&lt;br /&gt;
	if (dummy == true) {&lt;br /&gt;
		wikEdSelectElement[field].options[0] = null;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set option widths to auto&lt;br /&gt;
	if (standardBrowser == true) {&lt;br /&gt;
		for (var i = 0; i &amp;lt; wikEdSelectElement[field].options.length; i ++) {&lt;br /&gt;
			wikEdSelectElement[field].options[i].style.width = 'auto';&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdChangeComboInput: set the input value to selected option; onchange event handler for select boxes&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdChangeComboInput = function(field) {&lt;br /&gt;
&lt;br /&gt;
	wikEdInputElement[field].focus;&lt;br /&gt;
&lt;br /&gt;
// get selection index (-1 for unselected)&lt;br /&gt;
	var selected = wikEdSelectElement[field].selectedIndex;&lt;br /&gt;
	if (selected &amp;gt;= 0) {&lt;br /&gt;
		wikEdSelectElement[field].selectedIndex = -1;&lt;br /&gt;
&lt;br /&gt;
// get selected option&lt;br /&gt;
		var option = wikEdSelectElement[field].options[selected];&lt;br /&gt;
		if (option.text != '') {&lt;br /&gt;
&lt;br /&gt;
// jump to heading&lt;br /&gt;
			if ( (field == 'find') &amp;amp;&amp;amp; (/^=.*?=$/.test(option.value) == true) ) {&lt;br /&gt;
&lt;br /&gt;
// parameters: window.find(string, caseSensitive, backwards, wrapAround, wholeWord, searchInFrames, showDialog)&lt;br /&gt;
// Mozilla bug: searchInFrames must be true, otherwise wrapAround does not work&lt;br /&gt;
				wikEdFrameWindow.find(option.value, true, false, true, false, true, false);&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// update input field&lt;br /&gt;
			else {&lt;br /&gt;
&lt;br /&gt;
// add a tag to the summary box&lt;br /&gt;
				if (field == 'summary') {&lt;br /&gt;
					wikEdInputElement[field].value = WikEdAppendToSummary(wikEdInputElement[field].value, option.text);&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// add case and regexp checkboxes to find / replace fields&lt;br /&gt;
				else if (option.value == 'setcheck') {&lt;br /&gt;
					WikEdButton(document.getElementById('wikEdCaseSensitive'), 'wikEdCaseSensitive', null, (option.text.charAt(0) == wikEdCheckMarker[true]) );&lt;br /&gt;
					WikEdButton(document.getElementById('wikEdRegExp'), 'wikEdRegExp', null, (option.text.charAt(1) == wikEdCheckMarker[true]) );&lt;br /&gt;
					wikEdInputElement[field].value = option.text.substr(3);&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// add option text&lt;br /&gt;
				else {&lt;br /&gt;
					wikEdInputElement[field].value = option.text;&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
// find the new text&lt;br /&gt;
				if ( (field == 'find') &amp;amp;&amp;amp; (WikEdGetAttribute(wikEdFindAhead, 'checked') == 'true') ) {&lt;br /&gt;
					WikEdFindAhead();&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdAppendToSummary: append a phrase to the summary text&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdAppendToSummary = function(summary, append) {&lt;br /&gt;
&lt;br /&gt;
	summary = summary.replace(/^[, ]+/, '');&lt;br /&gt;
	summary = summary.replace(/[, ]+$/, '');&lt;br /&gt;
	if (summary != '') {&lt;br /&gt;
		if (summary.match(/ \*\/$/) != null) {&lt;br /&gt;
			summary += ' ';&lt;br /&gt;
		}&lt;br /&gt;
		else if (summary.match(/[\.\;\:]$/) != null) {&lt;br /&gt;
			summary += ' ';&lt;br /&gt;
		}&lt;br /&gt;
		else if (summary.match(/^[\wÀ-ÖØ-öø-\u0220\u0222-\u0233ΆΈΉΊΌΎΏΑ-ΡΣ-ώ\u0400-\u0481\u048a-\u04ce\u04d0-\u04f5\u04f8\u04f9\(\)\&amp;quot;\'\+\-]/) == null) {&lt;br /&gt;
			summary += ' ';&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			summary += ', ';&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	summary += append;&lt;br /&gt;
&lt;br /&gt;
	return(summary);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdAddToHistory: add an input value to the saved history&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdAddToHistory = function(field) {&lt;br /&gt;
&lt;br /&gt;
	if (wikEdInputElement[field].value != '') {&lt;br /&gt;
&lt;br /&gt;
// load history from saved settings&lt;br /&gt;
		WikEdLoadHistoryFromSettings(field);&lt;br /&gt;
&lt;br /&gt;
// add current value to history&lt;br /&gt;
		wikEdFieldHist[field].unshift(wikEdInputElement[field].value);&lt;br /&gt;
&lt;br /&gt;
// add case and regexp checkboxes to find / replace value&lt;br /&gt;
		if ( (field == 'find') || (field == 'replace') ) {&lt;br /&gt;
			wikEdFieldHist[field][0] =&lt;br /&gt;
				wikEdCheckMarker[ (WikEdGetAttribute(wikEdCaseSensitive, 'checked') == 'true') ] +&lt;br /&gt;
				wikEdCheckMarker[ (WikEdGetAttribute(wikEdRegExp, 'checked') == 'true') ] +&lt;br /&gt;
				' ' + wikEdFieldHist[field][0];&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// remove paragraph names from summary&lt;br /&gt;
		if (field == 'summary') {&lt;br /&gt;
			wikEdFieldHist[field][0] = wikEdFieldHist[field][0].replace(/^\/\* .*? \*\/ *()/, '');&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// remove multiple old copies from history&lt;br /&gt;
		var i = 1;&lt;br /&gt;
		while (i &amp;lt; wikEdFieldHist[field].length) {&lt;br /&gt;
			if (wikEdFieldHist[field][i] == wikEdFieldHist[field][0]) {&lt;br /&gt;
				wikEdFieldHist[field].splice(i, 1);&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				i ++;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// remove new value if it is a preset value&lt;br /&gt;
		if (wikEdComboPresetOptions[field] != null) {&lt;br /&gt;
			var i = 0;&lt;br /&gt;
			while (i &amp;lt; wikEdComboPresetOptions[field].length) {&lt;br /&gt;
				if (wikEdComboPresetOptions[field][i] == wikEdFieldHist[field][0]) {&lt;br /&gt;
					wikEdFieldHist[field].shift();&lt;br /&gt;
					break;&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					i ++;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// cut history number to maximal history length&lt;br /&gt;
		wikEdFieldHist[field] = wikEdFieldHist[field].slice(0, wikEdHistoryLength[field]);&lt;br /&gt;
&lt;br /&gt;
// save history to settings&lt;br /&gt;
		if (wikEdFieldHist[field][0] != '') {&lt;br /&gt;
			WikEdSaveHistoryToSetting(field);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSetComboOptions: generate the select options from saved history; onfocus handler for select box&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSetComboOptions = function(field) {&lt;br /&gt;
&lt;br /&gt;
// load history from saved settings&lt;br /&gt;
	WikEdLoadHistoryFromSettings(field);&lt;br /&gt;
&lt;br /&gt;
	var option = {};&lt;br /&gt;
	var selectedOption = null;&lt;br /&gt;
&lt;br /&gt;
// delete options&lt;br /&gt;
	var options = wikEdSelectElement[field].options;&lt;br /&gt;
	for (var i = 0; i &amp;lt; options.length; i ++) {&lt;br /&gt;
		wikEdSelectElement[field].remove(i);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// delete optgroup&lt;br /&gt;
	option = document.getElementById(field + 'Optgroup');&lt;br /&gt;
	if (option != null) {&lt;br /&gt;
		wikEdSelectElement[field].removeChild(option);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// workaround for onchange not firing when selecting first option from unselected dropdown&lt;br /&gt;
	option = document.createElement('option');&lt;br /&gt;
	option.style.display = 'none';&lt;br /&gt;
	j = 0;&lt;br /&gt;
	wikEdSelectElement[field].options[j++] = option;&lt;br /&gt;
&lt;br /&gt;
// add history entries&lt;br /&gt;
	for (var i = 0; i &amp;lt; wikEdFieldHist[field].length; i ++) {&lt;br /&gt;
		if (wikEdFieldHist[field][i] != null) {&lt;br /&gt;
			if (wikEdFieldHist[field][i] == wikEdInputElement[field].value) {&lt;br /&gt;
				selectedOption = j;&lt;br /&gt;
			}&lt;br /&gt;
			option = document.createElement('option');&lt;br /&gt;
&lt;br /&gt;
// replace spaces with nbsp to allow for multiple, leading, and trailing spaces&lt;br /&gt;
			option.text = wikEdFieldHist[field][i].replace(/ /g, '\u00a0');&lt;br /&gt;
			if ( (field == 'find') || (field == 'replace') ) {&lt;br /&gt;
				option.value = 'setcheck';&lt;br /&gt;
			}&lt;br /&gt;
			wikEdSelectElement[field].options[j++] = option;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add preset entries&lt;br /&gt;
	var startPreset = 0;&lt;br /&gt;
	if (wikEdComboPresetOptions[field] != null) {&lt;br /&gt;
		startPreset = j;&lt;br /&gt;
		for (var i = 0; i &amp;lt; wikEdComboPresetOptions[field].length; i ++) {&lt;br /&gt;
			if (wikEdComboPresetOptions[field][i] != null) {&lt;br /&gt;
&lt;br /&gt;
// replace spaces with nbsp to allow for multiple, leading, and trailing spaces&lt;br /&gt;
				wikEdComboPresetOptions[field][i] = wikEdComboPresetOptions[field][i].replace(/ /g, '\u00a0');&lt;br /&gt;
&lt;br /&gt;
// select a dropdown value&lt;br /&gt;
				if (wikEdComboPresetOptions[field][i] == wikEdInputElement[field].value) {&lt;br /&gt;
					selectedOption = j;&lt;br /&gt;
				}&lt;br /&gt;
&lt;br /&gt;
				option = document.createElement('option');&lt;br /&gt;
				option.text = wikEdComboPresetOptions[field][i].replace(/ /g, '\u00a0');&lt;br /&gt;
				if (field == 'summary') {&lt;br /&gt;
					option.text = option.text.replace(/\{wikEdUsing\}/g, wikEdSummaryUsing);&lt;br /&gt;
				}&lt;br /&gt;
				wikEdSelectElement[field].options[j++] = option;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set the selection&lt;br /&gt;
	wikEdSelectElement[field].selectedIndex = selectedOption;&lt;br /&gt;
&lt;br /&gt;
// add a blank preset separator&lt;br /&gt;
	if ( (startPreset &amp;gt; 1) &amp;amp;&amp;amp; (startPreset &amp;lt; j) ) {&lt;br /&gt;
		option = document.createElement('optgroup');&lt;br /&gt;
		option.label = '\u00a0';&lt;br /&gt;
		option.id = field + 'Optgroup';&lt;br /&gt;
		wikEdSelectElement[field].insertBefore(option, wikEdSelectElement[field].options[startPreset]);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add the TOC jumper to the find field&lt;br /&gt;
	var startTOC = 0;&lt;br /&gt;
	if (field == 'find') {&lt;br /&gt;
		startTOC = j;&lt;br /&gt;
&lt;br /&gt;
// get the whole plain text&lt;br /&gt;
		var plain = wikEdFrameBody.innerHTML;&lt;br /&gt;
		plain = plain.replace(/&amp;lt;br\b[^&amp;gt;]*&amp;gt;/g, '\n');&lt;br /&gt;
		plain = plain.replace(/&amp;lt;.*?&amp;gt;/g, '');&lt;br /&gt;
&lt;br /&gt;
// cycle through the headings&lt;br /&gt;
		var heading = plain.match(/(^|\n)=+[^\n]+?=+[^\n=]*[ =\t]*(?=(\n|$))/g);&lt;br /&gt;
		if (heading != null) {&lt;br /&gt;
			for (var i = 0; i &amp;lt; heading.length; i ++) {&lt;br /&gt;
				var headingMatch = heading[i].match(/\n?((=+) *([^\n]+?)( *\2))/);&lt;br /&gt;
				var headingIndent = headingMatch[2]&lt;br /&gt;
				headingIndent = headingIndent.replace(/^=/g, '');&lt;br /&gt;
				headingIndent = headingIndent.replace(/=/g, '\u00a0');&lt;br /&gt;
&lt;br /&gt;
// add headings to the select element&lt;br /&gt;
				option = document.createElement('option');&lt;br /&gt;
				option.text = '\u21d2' + headingIndent + headingMatch[3];&lt;br /&gt;
				option.value = headingMatch[1];&lt;br /&gt;
				wikEdSelectElement[field].options[j++] = option;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// add a blank TOC separator&lt;br /&gt;
	if ( (startTOC &amp;gt; 1) &amp;amp;&amp;amp; (startTOC &amp;lt; j) ) {&lt;br /&gt;
		option = document.createElement('optgroup');&lt;br /&gt;
		option.label = '\u00a0';&lt;br /&gt;
		option.id = field + 'Optgroup';&lt;br /&gt;
		wikEdSelectElement[field].insertBefore(option, wikEdSelectElement[field].options[startTOC]);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdClearHistory: clear the history of combo input fields&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdClearHistory = function(field) {&lt;br /&gt;
	WikEdSetPersistent(wikEdSavedName[field], '', 0, '/');&lt;br /&gt;
	WikEdSetComboOptions(field);&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdLoadHistoryFromSettings: get the input box history from the respective saved settings&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdLoadHistoryFromSettings = function(field) {&lt;br /&gt;
	var setting = WikEdGetPersistent(wikEdSavedName[field]);&lt;br /&gt;
	if (setting != '') {&lt;br /&gt;
		setting = decodeURIComponent(setting);&lt;br /&gt;
		wikEdFieldHist[field] = setting.split('\n');&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		wikEdFieldHist[field] = [];&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSaveHistoryToSetting: save the input box history to the respective saved settings&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSaveHistoryToSetting = function(field) {&lt;br /&gt;
&lt;br /&gt;
	var setting = '';&lt;br /&gt;
	setting = wikEdFieldHist[field].join('\n')&lt;br /&gt;
	setting = setting.replace(/\n$/, '');&lt;br /&gt;
	setting = encodeURIComponent(setting);&lt;br /&gt;
	WikEdSetPersistent(wikEdSavedName[field], setting, 0, '/');&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetSelection: cross-browser method to get the current selection&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetSelection = function() {&lt;br /&gt;
&lt;br /&gt;
	var sel = wikEdFrameWindow.getSelection();&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility&lt;br /&gt;
	if (sel == null) {&lt;br /&gt;
		sel = wikEdFrameDocument.selection;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// make sure there is at least an empty range&lt;br /&gt;
	if (sel.rangeCount == 0) {&lt;br /&gt;
		sel.collapse(wikEdFrameBody, 0);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	return(sel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdClearSelection: cross-browser method to clear the currently selected text&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdRemoveAllRanges = function(sel) {&lt;br /&gt;
&lt;br /&gt;
	if (typeof(sel.removeAllRanges) == 'function') {&lt;br /&gt;
		sel.removeAllRanges();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility&lt;br /&gt;
	else if (typeof(sel.empty) == 'function') {&lt;br /&gt;
		sel.empty();&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetSavedSetting: get a wikEd setting&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetSavedSetting = function(settingName, preset) {&lt;br /&gt;
&lt;br /&gt;
	var setting = WikEdGetPersistent(settingName);&lt;br /&gt;
	if (setting == '') {&lt;br /&gt;
		setting = preset;&lt;br /&gt;
	}&lt;br /&gt;
	else if (setting == '1') {&lt;br /&gt;
		setting = true;&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		setting = false;&lt;br /&gt;
	}&lt;br /&gt;
	return(setting);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetPersistent: get a cookie or a Greasemonkey persistent value (code copied to wikEdDiff.js)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetPersistent = function(name) {&lt;br /&gt;
&lt;br /&gt;
	var getStr = '';&lt;br /&gt;
&lt;br /&gt;
// get a Greasemonkey persistent value&lt;br /&gt;
	if (wikEdGreasemonkey == true) {&lt;br /&gt;
		getStr = GM_getValue(name, '');&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// get a cookie value&lt;br /&gt;
	else {&lt;br /&gt;
		getStr = WikEdGetCookie(name);&lt;br /&gt;
	}&lt;br /&gt;
	return(getStr);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSetPersistent: set a cookie or a Greasemonkey persistent value, deletes the value for expire = -1&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSetPersistent = function(name, value, expires, path, domain, secure) {&lt;br /&gt;
&lt;br /&gt;
// set a Greasemonkey persistent value&lt;br /&gt;
	if (wikEdGreasemonkey == true) {&lt;br /&gt;
		if (expires == -1) {&lt;br /&gt;
			GM_setValue(name, '');&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			GM_setValue(name, value);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// set a cookie value&lt;br /&gt;
	else {&lt;br /&gt;
		WikEdSetCookie(name, value, expires, path, domain, secure);&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetCookie: get a cookie (code copied to wikEdDiff.js)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetCookie = function(cookieName) {&lt;br /&gt;
&lt;br /&gt;
	var cookie = ' ' + document.cookie;&lt;br /&gt;
	var search = ' ' + cookieName + '=';&lt;br /&gt;
	var cookieValue = '';&lt;br /&gt;
	var offset = 0;&lt;br /&gt;
	var end = 0;&lt;br /&gt;
	offset = cookie.indexOf(search);&lt;br /&gt;
	if (offset != -1) {&lt;br /&gt;
		offset += search.length;&lt;br /&gt;
		end = cookie.indexOf(';', offset)&lt;br /&gt;
		if (end == -1) {&lt;br /&gt;
			end = cookie.length;&lt;br /&gt;
		}&lt;br /&gt;
		cookieValue = cookie.substring(offset, end);&lt;br /&gt;
		cookieValue = cookieValue.replace(/\\+/g, ' ');&lt;br /&gt;
		cookieValue = decodeURIComponent(cookieValue);&lt;br /&gt;
	}&lt;br /&gt;
	return(cookieValue);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdSetCookie: set a cookie, deletes a cookie for expire = -1&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdSetCookie = function(name, value, expires, path, domain, secure) {&lt;br /&gt;
&lt;br /&gt;
	var cookie = name + '=' + encodeURIComponent(value);&lt;br /&gt;
&lt;br /&gt;
	if (expires != null) {&lt;br /&gt;
&lt;br /&gt;
// generate a date 1 hour ago to delete the cookie&lt;br /&gt;
		if (expires == -1) {&lt;br /&gt;
			var cookieExpire = new Date();&lt;br /&gt;
			expires = cookieExpire.setTime(cookieExpire.getTime() - 60 * 60 * 1000);&lt;br /&gt;
			expires = cookieExpire.toUTCString();&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// get date from expiration preset&lt;br /&gt;
		else if (expires == 0) {&lt;br /&gt;
			var cookieExpire = new Date();&lt;br /&gt;
			expires = cookieExpire.setTime(cookieExpire.getTime() + wikEdCookieExpireSec * 1000);&lt;br /&gt;
			expires = cookieExpire.toUTCString();&lt;br /&gt;
		}&lt;br /&gt;
		cookie += '; expires=' + expires;&lt;br /&gt;
	}&lt;br /&gt;
	if (path != null) {&lt;br /&gt;
		cookie += '; path=' + path;&lt;br /&gt;
	}&lt;br /&gt;
	if (domain != null)  {&lt;br /&gt;
		cookie += '; domain=' + domain;&lt;br /&gt;
	}&lt;br /&gt;
	if (secure != null) {&lt;br /&gt;
		cookie += '; secure';&lt;br /&gt;
	}&lt;br /&gt;
	document.cookie = cookie;&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetOffsetTop: get element offset relative to window top (code copied to wikEdDiff.js)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetOffsetTop = function(element) {&lt;br /&gt;
	var offset = 0;&lt;br /&gt;
	do {&lt;br /&gt;
		offset += element.offsetTop;&lt;br /&gt;
	} while ( (element = element.offsetParent) != null );&lt;br /&gt;
	return(offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetOffsetLeft: get element offset relative to left window border&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetOffsetLeft = function(element) {&lt;br /&gt;
	var offset = 0;&lt;br /&gt;
	do {&lt;br /&gt;
		offset += element.offsetLeft;&lt;br /&gt;
	} while ( (element = element.offsetParent) != null );&lt;br /&gt;
	return(offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// define leaf elements for WikEdGetInnerHTML&lt;br /&gt;
window.wikEdLeafElements = [];&lt;br /&gt;
wikEdLeafElements['IMG'] = true;&lt;br /&gt;
wikEdLeafElements['HR'] = true;&lt;br /&gt;
wikEdLeafElements['BR'] = true;&lt;br /&gt;
wikEdLeafElements['INPUT'] = true;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdParseDOM: parses a DOM subtree and and adds plain text into a complex data structure&lt;br /&gt;
//   wikEdFrameDOMCache contains the last parse if the frame has not changed&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdParseDOM = function(obj, topNode) {&lt;br /&gt;
&lt;br /&gt;
/* problematic because of obj.changed ////&lt;br /&gt;
	if (wikEdFrameDOMCache != null) {&lt;br /&gt;
		obj = wikEdFrameDOMCache;&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
	obj.plainLength = 0;&lt;br /&gt;
	obj.plainArray = [];&lt;br /&gt;
	obj.plainNode = [];&lt;br /&gt;
	obj.plainStart = [];&lt;br /&gt;
	obj.plainPos = [];&lt;br /&gt;
	WikEdParseDOMRecursive(obj, topNode);&lt;br /&gt;
	obj.plain = obj.plainArray.join('');&lt;br /&gt;
	wikEdFrameDOMCache = obj;&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdParseDOMRecursive: parses a DOM tree and and adds plain text into the data structure&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdParseDOMRecursive = function(obj, currentNode) {&lt;br /&gt;
&lt;br /&gt;
// cycle through the child nodes of currentNode&lt;br /&gt;
	for (var property in currentNode.childNodes) {&lt;br /&gt;
		var childNode = currentNode.childNodes[property];&lt;br /&gt;
		if (typeof(childNode) == 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		if (childNode == null) {&lt;br /&gt;
			break;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// check for selection&lt;br /&gt;
		if (childNode == obj.sel.focusNode) {&lt;br /&gt;
			obj.plainFocus = obj.plainLength + obj.sel.focusOffset;&lt;br /&gt;
		}&lt;br /&gt;
		if (childNode == obj.sel.anchorNode) {&lt;br /&gt;
			obj.plainAnchor = obj.plainLength + obj.sel.anchorOffset;&lt;br /&gt;
		}&lt;br /&gt;
		var value = null;&lt;br /&gt;
&lt;br /&gt;
// get text of child node&lt;br /&gt;
		switch (childNode.nodeType) {&lt;br /&gt;
			case 1:&lt;br /&gt;
				if ( (childNode.childNodes.length == 0) &amp;amp;&amp;amp; (wikEdLeafElements[childNode.nodeName] == true) ) {&lt;br /&gt;
					if (childNode.nodeName == 'BR') {&lt;br /&gt;
						value = '\n';&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					WikEdParseDOMRecursive(obj, childNode);&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
			case 3:&lt;br /&gt;
				value = childNode.nodeValue;&lt;br /&gt;
				value = value.replace(/\n/g, ' ');&lt;br /&gt;
				break;&lt;br /&gt;
			case 5:&lt;br /&gt;
				value = '&amp;amp;' + childNode.nodeName + ';';&lt;br /&gt;
				break;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// add text to text object&lt;br /&gt;
		if (value != null) {&lt;br /&gt;
&lt;br /&gt;
// array of text fragments&lt;br /&gt;
			obj.plainArray.push(value);&lt;br /&gt;
&lt;br /&gt;
// array of text fragment node references&lt;br /&gt;
			obj.plainNode.push(childNode);&lt;br /&gt;
&lt;br /&gt;
// array of text fragment text positions&lt;br /&gt;
			obj.plainStart.push(obj.plainLength);&lt;br /&gt;
&lt;br /&gt;
// node references containing text positions&lt;br /&gt;
			obj.plainPos[childNode] = obj.plainLength;&lt;br /&gt;
&lt;br /&gt;
// current text length&lt;br /&gt;
			obj.plainLength += value.length;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetInnerHTML: get the innerHTML from a document fragment&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetInnerHTML = function(obj, currentNode) {&lt;br /&gt;
&lt;br /&gt;
// initialize string&lt;br /&gt;
	if (obj.html == null) {&lt;br /&gt;
		obj.html = '';&lt;br /&gt;
	}&lt;br /&gt;
	if (obj.plain == null) {&lt;br /&gt;
		obj.plain = '';&lt;br /&gt;
	}&lt;br /&gt;
	if (obj.plainArray == null) {&lt;br /&gt;
		obj.plainArray = [];&lt;br /&gt;
		obj.plainNode = [];&lt;br /&gt;
		obj.plainStart = [];&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	for (var i = 0; i &amp;lt; currentNode.childNodes.length; i ++) {&lt;br /&gt;
		var childNode = currentNode.childNodes.item(i);&lt;br /&gt;
		switch (childNode.nodeType) {&lt;br /&gt;
			case 1:&lt;br /&gt;
				obj.html += '&amp;lt;' + childNode.nodeName.toLowerCase();&lt;br /&gt;
				for (var j = 0; j &amp;lt; childNode.attributes.length; j ++) {&lt;br /&gt;
					if (childNode.attributes.item(j).nodeValue != null) {&lt;br /&gt;
						obj.html += ' ' + childNode.attributes.item(j).nodeName + '=&amp;quot;' + childNode.attributes.item(j).nodeValue.replace(/&amp;lt;/g, '&amp;amp;lt;').replace(/&amp;gt;/g, '&amp;amp;gt;') + '&amp;quot;';&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				if ( (childNode.childNodes.length == 0) &amp;amp;&amp;amp; wikEdLeafElements[childNode.nodeName] ) {&lt;br /&gt;
					obj.html += '&amp;gt;';&lt;br /&gt;
					if (childNode.nodeName == 'BR') {&lt;br /&gt;
						obj.plainArray.push('\n');&lt;br /&gt;
						obj.plainNode.push(childNode);&lt;br /&gt;
						obj.plainStart.push(obj.plain.length);&lt;br /&gt;
						obj.plain += '\n';&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				else {&lt;br /&gt;
					obj.html += '&amp;gt;';&lt;br /&gt;
					WikEdGetInnerHTML(obj, childNode);&lt;br /&gt;
					obj.html += '&amp;lt;/' + childNode.nodeName.toLowerCase() + '&amp;gt;'&lt;br /&gt;
				}&lt;br /&gt;
				break;&lt;br /&gt;
			case 3:&lt;br /&gt;
				var value = childNode.nodeValue;&lt;br /&gt;
				value = value.replace(/\n/g, ' '); // important for pasted page content&lt;br /&gt;
				obj.plainArray.push(value);        // plain array contains &amp;amp; &amp;lt; &amp;gt; instead of &amp;amp;amp; &amp;amp;lt; &amp;amp;gt;&lt;br /&gt;
				obj.plainNode.push(childNode);&lt;br /&gt;
				obj.plainStart.push(obj.plain.length);&lt;br /&gt;
				value = value.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
				value = value.replace(/&amp;lt;/g, '&amp;amp;lt;');&lt;br /&gt;
				value = value.replace(/&amp;gt;/g, '&amp;amp;gt;');&lt;br /&gt;
				obj.html += value;&lt;br /&gt;
				obj.plain += value;&lt;br /&gt;
				break;&lt;br /&gt;
			case 4: obj.html += '&amp;lt;![CDATA[' + childNode.nodeValue + ']]&amp;gt;';&lt;br /&gt;
				break;&lt;br /&gt;
			case 5:&lt;br /&gt;
				var value = '&amp;amp;' + childNode.nodeName + ';';&lt;br /&gt;
				obj.plainArray.push(value);&lt;br /&gt;
				obj.plainNode.push(childNode);&lt;br /&gt;
				obj.plainStart.push(obj.plain.length);&lt;br /&gt;
				value = value.replace(/&amp;amp;/g, '&amp;amp;amp;');&lt;br /&gt;
				obj.html += value;&lt;br /&gt;
				obj.plain += value;&lt;br /&gt;
				break;&lt;br /&gt;
			case 8: obj.html += '&amp;lt;!--' + childNode.nodeValue + '--&amp;gt;';&lt;br /&gt;
				break;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdStyleSheet: create a new style sheet object (code copied to wikEdDiff.js)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdStyleSheet = function(contextObj) {&lt;br /&gt;
&lt;br /&gt;
	if (contextObj == null) {&lt;br /&gt;
		contextObj = document;&lt;br /&gt;
	}&lt;br /&gt;
	this.styleElement = null;&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility&lt;br /&gt;
	if (contextObj.createStyleSheet) {&lt;br /&gt;
		this.styleElement = contextObj.createStyleSheet();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// standards compliant browsers&lt;br /&gt;
	else {&lt;br /&gt;
		this.styleElement = contextObj.createElement('style');&lt;br /&gt;
		this.styleElement.from = 'text/css';&lt;br /&gt;
		var insert = contextObj.getElementsByTagName('head')[0];&lt;br /&gt;
		if (insert != null) {&lt;br /&gt;
			this.styleElement.appendChild(contextObj.createTextNode('')); // Safari 3 fix&lt;br /&gt;
			insert.appendChild(this.styleElement);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdStyleSheet.addRule: add one rule at the time using DOM method, very slow&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
	this.addRule = function(selector, declaration) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility&lt;br /&gt;
		if (this.styleElement.addRule != null) {&lt;br /&gt;
			if (declaration.length &amp;gt; 0) {&lt;br /&gt;
				this.styleElement.addRule(selector, declaration);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// standards compliant browsers&lt;br /&gt;
		else {&lt;br /&gt;
			if (this.styleElement.sheet != null) {&lt;br /&gt;
				if (this.styleElement.sheet.insertRule != null) {&lt;br /&gt;
					this.styleElement.sheet.insertRule(selector + ' { ' + declaration + ' } ', 0);&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdStyleSheet.addRules: add all rules at once, much faster&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
	this.addRules = function(rules) {&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility&lt;br /&gt;
		if (this.styleElement.innerHTML == null) {&lt;br /&gt;
			this.styleElement.cssText = rules;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// Safari&lt;br /&gt;
		else if (wikEdSafari == true) {&lt;br /&gt;
			this.styleElement.appendChild(contextObj.createTextNode(rules));&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// via innerHTML&lt;br /&gt;
		else {&lt;br /&gt;
			this.styleElement.innerHTML = rules;&lt;br /&gt;
		}&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetStyle: get computed style properties for non-inline css definitions&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetStyle = function(element, styleProperty) {&lt;br /&gt;
&lt;br /&gt;
	var style;&lt;br /&gt;
	if (element != null) {&lt;br /&gt;
		if ( (document.defaultView != null) &amp;amp;&amp;amp; (document.defaultView.getComputedStyle != null) ) {&lt;br /&gt;
			style = document.defaultView.getComputedStyle(element, null)[styleProperty];&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility&lt;br /&gt;
		else if (element.currentStyle != null) {&lt;br /&gt;
			style = element.currentStyle[styleProperty];&lt;br /&gt;
&lt;br /&gt;
// recurse up trough the DOM tree&lt;br /&gt;
			if (style == 'inherit') {&lt;br /&gt;
				style = WikEdGetStyle(element.parent, styleProperty);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			style = element.style[styleProperty];&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return(style);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdAjaxRequest: cross browser wrapper for Ajax requests (code copied to wikEdDiff.js)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdAjaxRequest = function(requestMethod, requestUrl, headerName, headerValue, bodyData, overrideMimeType, responseHandler) {&lt;br /&gt;
&lt;br /&gt;
	var request;&lt;br /&gt;
&lt;br /&gt;
// use Greasemonkey GM_xmlhttpRequest&lt;br /&gt;
	if (wikEdGreasemonkey == true) {&lt;br /&gt;
&lt;br /&gt;
		var headerArray = { 'User-Agent': navigator.userAgent }&lt;br /&gt;
		if (headerName != null) {&lt;br /&gt;
			headerArray[headerName] = headerValue;&lt;br /&gt;
		}&lt;br /&gt;
		request = new GM_xmlhttpRequest({&lt;br /&gt;
			'method':  requestMethod,&lt;br /&gt;
			'url':     requestUrl,&lt;br /&gt;
			'headers': headerArray,&lt;br /&gt;
			'data':    bodyData,&lt;br /&gt;
			'onreadystatechange':&lt;br /&gt;
				function(ajax) {&lt;br /&gt;
					if (ajax.readyState != 4) {&lt;br /&gt;
						return;&lt;br /&gt;
					}&lt;br /&gt;
					responseHandler(ajax);&lt;br /&gt;
					return;&lt;br /&gt;
				}&lt;br /&gt;
		});&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// use standard XMLHttpRequest&lt;br /&gt;
	else {&lt;br /&gt;
&lt;br /&gt;
// allow ajax request from local copy for testing&lt;br /&gt;
		if (wikEdAllowLocalAjax == true) {&lt;br /&gt;
			if (typeof(netscape) == 'object') {&lt;br /&gt;
				netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// new ajax request object&lt;br /&gt;
		try {&lt;br /&gt;
			request = new XMLHttpRequest();&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
// IE 6&lt;br /&gt;
		catch(err) {&lt;br /&gt;
			try {&lt;br /&gt;
				request = new ActiveXObject('Microsoft.XMLHTTP');&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
// IE 5.5&lt;br /&gt;
			catch(err) {&lt;br /&gt;
				try {&lt;br /&gt;
					request = new ActiveXObject('Msxml2.XMLHTTP');&lt;br /&gt;
				}&lt;br /&gt;
				catch(err) {&lt;br /&gt;
					return;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		request.open(requestMethod, requestUrl, true);&lt;br /&gt;
		if (headerName != null) {&lt;br /&gt;
			request.setRequestHeader(headerName, headerValue);&lt;br /&gt;
		}&lt;br /&gt;
		if ( (request.overrideMimeType != null) &amp;amp;&amp;amp; (overrideMimeType != null) ) {&lt;br /&gt;
			request.overrideMimeType(overrideMimeType);&lt;br /&gt;
		}&lt;br /&gt;
		request.send(bodyData);&lt;br /&gt;
		request.onreadystatechange = function() {&lt;br /&gt;
			if (request.readyState != 4) {&lt;br /&gt;
				return;&lt;br /&gt;
			}&lt;br /&gt;
			responseHandler(request);&lt;br /&gt;
			return;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetGlobal: access values of global variables from Greasemonkey scripts using the 'location hack' (code copied to wikEdDiff.js)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetGlobal = function(globalName) {&lt;br /&gt;
	var globalValue;&lt;br /&gt;
	if (wikEdGreasemonkey == true) {&lt;br /&gt;
		if (wikEdGetGlobalNode == null) {&lt;br /&gt;
			wikEdGetGlobalNode = document.getElementById('wikEdGetGlobalNode');&lt;br /&gt;
		}&lt;br /&gt;
		if (wikEdGetGlobalNode == null) {&lt;br /&gt;
			wikEdGetGlobalNode = document.createElement('textarea');&lt;br /&gt;
			wikEdGetGlobalNode.id = 'wikEdGetGlobalNode';&lt;br /&gt;
			wikEdGetGlobalNode.style.display = 'none';&lt;br /&gt;
			wikEdGetGlobalNode.style.visibility = 'hidden';&lt;br /&gt;
			document.body.appendChild(wikEdGetGlobalNode);&lt;br /&gt;
		}&lt;br /&gt;
		location.href = 'javascript:void(typeof(' + globalName + ')!=\'undefined\'?(' + globalName + '!=null?(document.getElementById(\'wikEdGetGlobalNode\').value=' + globalName + '.toString()):null):null)';&lt;br /&gt;
		globalValue = wikEdGetGlobalNode.value;&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		try {&lt;br /&gt;
			globalValue = eval(globalName + '.toString();');&lt;br /&gt;
		}&lt;br /&gt;
		catch(err) { }&lt;br /&gt;
	}&lt;br /&gt;
	return(globalValue);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetAttribute: MS IE compatibility wrapper for element.getAttribute()&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetAttribute = function(element, attribName) {&lt;br /&gt;
&lt;br /&gt;
	var attribValue = element.getAttribute(attribName);&lt;br /&gt;
&lt;br /&gt;
// MS IE compatibility for checked&lt;br /&gt;
	if (attribName == 'checked') {&lt;br /&gt;
		if ( typeof(attribValue) == 'boolean' ) {&lt;br /&gt;
			if (attribValue == true) {&lt;br /&gt;
				attribValue = 'true';&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				attribValue = 'false';&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return(attribValue);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetWindowInnerHeight: MS IE compatibility wrapper for window.innerHeight&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetWindowInnerHeight = function() {&lt;br /&gt;
&lt;br /&gt;
	var value = window.innerHeight;&lt;br /&gt;
	if (value == null) {&lt;br /&gt;
		if (document.documentElement != null) {&lt;br /&gt;
			value = document.documentElement.clientHeight;&lt;br /&gt;
		}&lt;br /&gt;
		if ( (value == null) || (value == 0) ) {&lt;br /&gt;
			value = document.body.clientHeight&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return(value);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdGetWindowInnerWidth: MS IE compatibility wrapper for window.innerWidth&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdGetWindowInnerWidth = function() {&lt;br /&gt;
&lt;br /&gt;
	var value = window.innerWidth;&lt;br /&gt;
	if (value == null) {&lt;br /&gt;
		if (document.documentElement != null) {&lt;br /&gt;
			value = document.documentElement.clientWidth;&lt;br /&gt;
		}&lt;br /&gt;
		if ( (value == null) || (value == 0) ) {&lt;br /&gt;
			value = document.body.clientWidth&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return(value);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdAddEventListener: wrapper for addEventListener (http://ejohn.org/projects/flexible-javascript-events/)&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdAddEventListener = function(domElement, eventType, eventHandler, useCapture) {&lt;br /&gt;
&lt;br /&gt;
	if (domElement != null) {&lt;br /&gt;
		if (domElement.attachEvent != null) {&lt;br /&gt;
			domElement['wikEd' + eventType + eventHandler] = eventHandler;&lt;br /&gt;
			domElement[eventType + eventHandler] = function() {&lt;br /&gt;
				domElement['wikEd' + eventType + eventHandler](window.event);&lt;br /&gt;
			}&lt;br /&gt;
			domElement.attachEvent('on' + eventType, domElement[eventType + eventHandler] );&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			domElement.addEventListener(eventType, eventHandler, useCapture);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdRemoveEventListener: wrapper for removeEventListener&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdRemoveEventListener = function(domElement, eventType, eventHandler, useCapture) {&lt;br /&gt;
&lt;br /&gt;
	if (domElement.detachEvent != null) {&lt;br /&gt;
		domElement.detachEvent('on' + eventType, domElement[eventType + eventHandler]);&lt;br /&gt;
		domElement[eventType + eventHandler] = null;&lt;br /&gt;
	}&lt;br /&gt;
	else {&lt;br /&gt;
		domElement.removeEventListener(eventType, eventHandler, useCapture);&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdEvent: MS IE compatibility fix for event object&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdEvent = function(event) {&lt;br /&gt;
&lt;br /&gt;
	var eventAlt;&lt;br /&gt;
	if (window.event != null) {&lt;br /&gt;
		eventAlt = window.event;&lt;br /&gt;
	}&lt;br /&gt;
	else if (wikEdFrameWindow.event != null) {&lt;br /&gt;
		eventAlt = wikEdFrameWindow.event;&lt;br /&gt;
	}&lt;br /&gt;
	if (eventAlt != null) {&lt;br /&gt;
		event = eventAlt;&lt;br /&gt;
		event.stopPropagation = function() {&lt;br /&gt;
			event.cancelBubble = true;&lt;br /&gt;
		};&lt;br /&gt;
		event.preventDefault = function() {&lt;br /&gt;
			event.returnValue = false;&lt;br /&gt;
		};&lt;br /&gt;
		event.target = event.srcElement;&lt;br /&gt;
		if (event.type == 'mouseout') {&lt;br /&gt;
	    event.relatedTarget = event.toElement;&lt;br /&gt;
		}&lt;br /&gt;
		else if (event.type == 'mouseover') {&lt;br /&gt;
	    event.relatedTarget = event.fromElement;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	return(event);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdDebug: print the value of variables&lt;br /&gt;
//   use either a single value or a description followed by a value&lt;br /&gt;
//   popup = true: use alert popup if debug textarea is not yet setup&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdDebug = function(objectName, object, usePopup) {&lt;br /&gt;
&lt;br /&gt;
	var useDebug;&lt;br /&gt;
	if (typeof(wikEdDebug) != 'undefined') {&lt;br /&gt;
		if (wikEdDebug != null) {&lt;br /&gt;
			useDebug = true;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// use debug textarea&lt;br /&gt;
	if (useDebug == true) {&lt;br /&gt;
		wikEdDebugWrapper.style.position = 'static';&lt;br /&gt;
		wikEdDebugWrapper.style.visibility = 'visible';&lt;br /&gt;
		wikEdDebug.style.display = 'block';&lt;br /&gt;
		if (objectName == null) {&lt;br /&gt;
			wikEdDebug.value = '';&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			if (object == null) {&lt;br /&gt;
				wikEdDebug.value = objectName + '\n' + wikEdDebug.value;&lt;br /&gt;
			}&lt;br /&gt;
			else {&lt;br /&gt;
				wikEdDebug.value = objectName + ': ' + object + '\n' + wikEdDebug.value;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// use popup alert&lt;br /&gt;
	else if (usePopup == true) {&lt;br /&gt;
		if (object == null) {&lt;br /&gt;
			alert(objectName);&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			alert(objectName + ': ' + object);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// use error console&lt;br /&gt;
	else {&lt;br /&gt;
		var msg;&lt;br /&gt;
		if (object == null) {&lt;br /&gt;
			msg = objectName + '';&lt;br /&gt;
		}&lt;br /&gt;
		else {&lt;br /&gt;
			msg = objectName + ': ' + object;&lt;br /&gt;
		}&lt;br /&gt;
		msg = msg.replace(/\'/g, '\\\'');&lt;br /&gt;
		setTimeout('throw new Error(\'WikEdDebug: ' + msg + '\')', 0);&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdDebugTimer: show all measured timepoints&lt;br /&gt;
//   add a new time measurement: wikEdDebugTimer.push([1234, new Date]);&lt;br /&gt;
&lt;br /&gt;
window.WikEdDebugTimer = function() {&lt;br /&gt;
	var times = '';&lt;br /&gt;
	var start = wikEdDebugTimer[0][1].getTime();&lt;br /&gt;
	var prev = 0;&lt;br /&gt;
	for (var i = 0; i &amp;lt; wikEdDebugTimer.length; i ++) {&lt;br /&gt;
		var curr = wikEdDebugTimer[i][1].getTime() - start;&lt;br /&gt;
		var diff = curr - prev;&lt;br /&gt;
		var prev = curr;&lt;br /&gt;
		times += wikEdDebugTimer[i][0] + ': ' + curr + ' ms (+' + diff + 'ms)\n';&lt;br /&gt;
	}&lt;br /&gt;
	WikEdDebug(times);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInsertTags: overrides the insertTags function in wikibits.js used by the standard button toolbar and the editpage special chars&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdInsertTags = function(tagOpen, tagClose, sampleText) {&lt;br /&gt;
&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		WikEdEditButton(document.getElementById('wikEdInsertTags'), 'wikEdInsertTags', [tagOpen, tagClose, sampleText]);&lt;br /&gt;
	}&lt;br /&gt;
	else if (WikEdInsertTagsOriginal != null) {&lt;br /&gt;
		WikEdInsertTagsOriginal(tagOpen, tagClose, sampleText);&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInsertAtCursor: overrides the insertAtCursor function in wikia.com MediaWiki:Functions.js&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdInsertAtCursor = function(myField, myValue) {&lt;br /&gt;
&lt;br /&gt;
	if (wikEdUseWikEd == true) {&lt;br /&gt;
		if (myField == wikEdTextarea) {&lt;br /&gt;
			WikEdEditButton(document.getElementById('wikEdInsertTags'), 'wikEdInsertTags', [ myValue ]);&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	else if (WikEdInsertAtCursorOriginal != null) {&lt;br /&gt;
		WikEdInsertAtCursorOriginal(myField, myValue);&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdExecuteHook: executes scheduled custom functions from functionsHook array&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
window.WikEdExecuteHook = function(functionsHook) {&lt;br /&gt;
&lt;br /&gt;
	for (var i = 0; i &amp;lt; functionsHook.length; i++) {&lt;br /&gt;
		functionsHook[i]();&lt;br /&gt;
	}&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
// WikEdInitUnicode: define character tables used in WikedFixUnicode()&lt;br /&gt;
//   see http://kmi.open.ac.uk/projects/ceryle/doc/docs/NOTE-charents.html&lt;br /&gt;
//   removed because of internal use: &amp;lt; ['003c', 'lt']; &amp;gt; ['003e', 'gt']; &amp;amp; ['0026', 'amp'], ['00a0', 'nbsp']&lt;br /&gt;
&lt;br /&gt;
window.WikEdInitUnicode = function() {&lt;br /&gt;
&lt;br /&gt;
// define only once&lt;br /&gt;
	if (wikEdSupportedChars != null) {&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// supported chars in Mozilla and IE&lt;br /&gt;
	wikEdSupportedChars = [&lt;br /&gt;
		[  'a1', 'iexcl'],  // ¡&lt;br /&gt;
		[  'a2', 'cent'],   // ¢&lt;br /&gt;
		[  'a3', 'pound'],  // £&lt;br /&gt;
		[  'a4', 'curren'], // ¤&lt;br /&gt;
		[  'a5', 'yen'],    // ¥&lt;br /&gt;
		[  'a6', 'brvbar'], // ¦&lt;br /&gt;
		[  'a7', 'sect'],   // §&lt;br /&gt;
		[  'a8', 'uml'],    // ¨&lt;br /&gt;
		[  'a9', 'copy'],   // ©&lt;br /&gt;
		[  'aa', 'ordf'],   // ª&lt;br /&gt;
		[  'ab', 'laquo'],  // «&lt;br /&gt;
		[  'ac', 'not'],    // ¬&lt;br /&gt;
		[  'ae', 'reg'],    // ®&lt;br /&gt;
		[  'af', 'macr'],   // ¯&lt;br /&gt;
		[  'b0', 'deg'],    // °&lt;br /&gt;
		[  'b1', 'plusmn'], // ±&lt;br /&gt;
		[  'b2', 'sup2'],   // ²&lt;br /&gt;
		[  'b3', 'sup3'],   // ³&lt;br /&gt;
		[  'b4', 'acute'],  // ´&lt;br /&gt;
		[  'b5', 'micro'],  // µ&lt;br /&gt;
		[  'b6', 'para'],   // ¶&lt;br /&gt;
		[  'b7', 'middot'], // ·&lt;br /&gt;
		[  'b8', 'cedil'],  // ¸&lt;br /&gt;
		[  'b9', 'sup1'],   // ¹&lt;br /&gt;
		[  'ba', 'ordm'],   // º&lt;br /&gt;
		[  'bb', 'raquo'],  // »&lt;br /&gt;
		[  'bc', 'frac14'], // ¼&lt;br /&gt;
		[  'bd', 'frac12'], // ½&lt;br /&gt;
		[  'be', 'frac34'], // ¾&lt;br /&gt;
		[  'bf', 'iquest'], // ¿&lt;br /&gt;
		[  'c0', 'Agrave'], // À&lt;br /&gt;
		[  'c1', 'Aacute'], // Á&lt;br /&gt;
		[  'c2', 'Acirc'],  // Â&lt;br /&gt;
		[  'c3', 'Atilde'], // Ã&lt;br /&gt;
		[  'c4', 'Auml'],   // Ä&lt;br /&gt;
		[  'c5', 'Aring'],  // Å&lt;br /&gt;
		[  'c6', 'AElig'],  // Æ&lt;br /&gt;
		[  'c7', 'Ccedil'], // Ç&lt;br /&gt;
		[  'c8', 'Egrave'], // È&lt;br /&gt;
		[  'c9', 'Eacute'], // É&lt;br /&gt;
		[  'ca', 'Ecirc'],  // Ê&lt;br /&gt;
		[  'cb', 'Euml'],   // Ë&lt;br /&gt;
		[  'cc', 'Igrave'], // Ì&lt;br /&gt;
		[  'cd', 'Iacute'], // Í&lt;br /&gt;
		[  'ce', 'Icirc'],  // Î&lt;br /&gt;
		[  'cf', 'Iuml'],   // Ï&lt;br /&gt;
		[  'd0', 'ETH'],    // Ð&lt;br /&gt;
		[  'd1', 'Ntilde'], // Ñ&lt;br /&gt;
		[  'd2', 'Ograve'], // Ò&lt;br /&gt;
		[  'd3', 'Oacute'], // Ó&lt;br /&gt;
		[  'd4', 'Ocirc'],  // Ô&lt;br /&gt;
		[  'd5', 'Otilde'], // Õ&lt;br /&gt;
		[  'd6', 'Ouml'],   // Ö&lt;br /&gt;
		[  'd7', 'times'],  // ×&lt;br /&gt;
		[  'd8', 'Oslash'], // Ø&lt;br /&gt;
		[  'd9', 'Ugrave'], // Ù&lt;br /&gt;
		[  'da', 'Uacute'], // Ú&lt;br /&gt;
		[  'db', 'Ucirc'],  // Û&lt;br /&gt;
		[  'dc', 'Uuml'],   // Ü&lt;br /&gt;
		[  'dd', 'Yacute'], // Ý&lt;br /&gt;
		[  'de', 'THORN'],  // Þ&lt;br /&gt;
		[  'df', 'szlig'],  // ß&lt;br /&gt;
		[  'e0', 'agrave'], // à&lt;br /&gt;
		[  'e1', 'aacute'], // á&lt;br /&gt;
		[  'e2', 'acirc'],  // â&lt;br /&gt;
		[  'e3', 'atilde'], // ã&lt;br /&gt;
		[  'e4', 'auml'],   // ä&lt;br /&gt;
		[  'e5', 'aring'],  // å&lt;br /&gt;
		[  'e6', 'aelig'],  // æ&lt;br /&gt;
		[  'e7', 'ccedil'], // ç&lt;br /&gt;
		[  'e8', 'egrave'], // è&lt;br /&gt;
		[  'e9', 'eacute'], // é&lt;br /&gt;
		[  'ea', 'ecirc'],  // ê&lt;br /&gt;
		[  'eb', 'euml'],   // ë&lt;br /&gt;
		[  'ec', 'igrave'], // ì&lt;br /&gt;
		[  'ed', 'iacute'], // í&lt;br /&gt;
		[  'ee', 'icirc'],  // î&lt;br /&gt;
		[  'ef', 'iuml'],   // ï&lt;br /&gt;
		[  'f0', 'eth'],    // ð&lt;br /&gt;
		[  'f1', 'ntilde'], // ñ&lt;br /&gt;
		[  'f2', 'ograve'], // ò&lt;br /&gt;
		[  'f3', 'oacute'], // ó&lt;br /&gt;
		[  'f4', 'ocirc'],  // ô&lt;br /&gt;
		[  'f5', 'otilde'], // õ&lt;br /&gt;
		[  'f6', 'ouml'],   // ö&lt;br /&gt;
		[  'f7', 'divide'], // ÷&lt;br /&gt;
		[  'f8', 'oslash'], // ø&lt;br /&gt;
		[  'f9', 'ugrave'], // ù&lt;br /&gt;
		[  'fa', 'uacute'], // ú&lt;br /&gt;
		[  'fb', 'ucirc'],  // û&lt;br /&gt;
		[  'fc', 'uuml'],   // ü&lt;br /&gt;
		[  'fd', 'yacute'], // ý&lt;br /&gt;
		[  'fe', 'thorn'],  // þ&lt;br /&gt;
		[  'ff', 'yuml'],   // ÿ&lt;br /&gt;
		[  '27', 'apos'],   // '&lt;br /&gt;
		[  '22', 'quot'],   // &amp;quot;&lt;br /&gt;
		[ '152', 'OElig'],  // Œ&lt;br /&gt;
		[ '153', 'oelig'],  // œ&lt;br /&gt;
		[ '160', 'Scaron'], // Š&lt;br /&gt;
		[ '161', 'scaron'], // š&lt;br /&gt;
		[ '178', 'Yuml'],   // Ÿ&lt;br /&gt;
		[ '2c6', 'circ'],   // ˆ&lt;br /&gt;
		[ '2dc', 'tilde'],  // ˜&lt;br /&gt;
		['2013', 'ndash'],  // –&lt;br /&gt;
		['2014', 'mdash'],  // —&lt;br /&gt;
		['2018', 'lsquo'],  // ‘&lt;br /&gt;
		['2019', 'rsquo'],  // ’&lt;br /&gt;
		['201a', 'sbquo'],  // ‚&lt;br /&gt;
		['201c', 'ldquo'],  // “&lt;br /&gt;
		['201d', 'rdquo'],  // ”&lt;br /&gt;
		['201e', 'bdquo'],  // „&lt;br /&gt;
		['2020', 'dagger'], // †&lt;br /&gt;
		['2021', 'Dagger'], // ‡&lt;br /&gt;
		['2030', 'permil'], // ‰&lt;br /&gt;
		['2039', 'lsaquo'], // ‹&lt;br /&gt;
		['203a', 'rsaquo'], // ›&lt;br /&gt;
		['20ac', 'euro'],   // €&lt;br /&gt;
		[ '192', 'fnof'],   // ƒ&lt;br /&gt;
		[ '391', 'Alpha'],  // Α&lt;br /&gt;
		[ '392', 'Beta'],   // Β&lt;br /&gt;
		[ '393', 'Gamma'],  // Γ&lt;br /&gt;
		[ '394', 'Delta'],  // Δ&lt;br /&gt;
		[ '395', 'Epsilon'],// Ε&lt;br /&gt;
		[ '396', 'Zeta'],   // Ζ&lt;br /&gt;
		[ '397', 'Eta'],    // Η&lt;br /&gt;
		[ '398', 'Theta'],  // Θ&lt;br /&gt;
		[ '399', 'Iota'],   // Ι&lt;br /&gt;
		[ '39a', 'Kappa'],  // Κ&lt;br /&gt;
		[ '39b', 'Lambda'], // Λ&lt;br /&gt;
		[ '39c', 'Mu'],     // Μ&lt;br /&gt;
		[ '39d', 'Nu'],     // Ν&lt;br /&gt;
		[ '39e', 'Xi'],     // Ξ&lt;br /&gt;
		[ '39f', 'Omicron'],// Ο&lt;br /&gt;
		[ '3a0', 'Pi'],     // Π&lt;br /&gt;
		[ '3a1', 'Rho'],    // Ρ&lt;br /&gt;
		[ '3a3', 'Sigma'],  // Σ&lt;br /&gt;
		[ '3a4', 'Tau'],    // Τ&lt;br /&gt;
		[ '3a5', 'Upsilon'],// Υ&lt;br /&gt;
		[ '3a6', 'Phi'],    // Φ&lt;br /&gt;
		[ '3a7', 'Chi'],    // Χ&lt;br /&gt;
		[ '3a8', 'Psi'],    // Ψ&lt;br /&gt;
		[ '3a9', 'Omega'],  // Ω&lt;br /&gt;
		[ '3b1', 'alpha'],  // α&lt;br /&gt;
		[ '3b2', 'beta'],   // β&lt;br /&gt;
		[ '3b3', 'gamma'],  // γ&lt;br /&gt;
		[ '3b4', 'delta'],  // δ&lt;br /&gt;
		[ '3b5', 'epsilon'],// ε&lt;br /&gt;
		[ '3b6', 'zeta'],   // ζ&lt;br /&gt;
		[ '3b7', 'eta'],    // η&lt;br /&gt;
		[ '3b8', 'theta'],  // θ&lt;br /&gt;
		[ '3b9', 'iota'],   // ι&lt;br /&gt;
		[ '3ba', 'kappa'],  // κ&lt;br /&gt;
		[ '3bb', 'lambda'], // λ&lt;br /&gt;
		[ '3bc', 'mu'],     // μ&lt;br /&gt;
		[ '3bd', 'nu'],     // ν&lt;br /&gt;
		[ '3be', 'xi'],     // ξ&lt;br /&gt;
		[ '3bf', 'omicron'],// ο&lt;br /&gt;
		[ '3c0', 'pi'],     // π&lt;br /&gt;
		[ '3c1', 'rho'],    // ρ&lt;br /&gt;
		[ '3c2', 'sigmaf'], // ς&lt;br /&gt;
		[ '3c3', 'sigma'],  // σ&lt;br /&gt;
		[ '3c4', 'tau'],    // τ&lt;br /&gt;
		[ '3c5', 'upsilon'],// υ&lt;br /&gt;
		[ '3c6', 'phi'],    // φ&lt;br /&gt;
		[ '3c7', 'chi'],    // χ&lt;br /&gt;
		[ '3c8', 'psi'],    // ψ&lt;br /&gt;
		[ '3c9', 'omega'],  // ω&lt;br /&gt;
		['2022', 'bull'],   // •&lt;br /&gt;
		['2026', 'hellip'], // …&lt;br /&gt;
		['2032', 'prime'],  // ′&lt;br /&gt;
		['2033', 'Prime'],  // ″&lt;br /&gt;
		['203e', 'oline'],  // ‾&lt;br /&gt;
		['2044', 'frasl'],  // ⁄&lt;br /&gt;
		['2122', 'trade'],  // ™&lt;br /&gt;
		['2190', 'larr'],   // ←&lt;br /&gt;
		['2191', 'uarr'],   // ↑&lt;br /&gt;
		['2192', 'rarr'],   // →&lt;br /&gt;
		['2193', 'darr'],   // ↓&lt;br /&gt;
		['2194', 'harr'],   // ↔&lt;br /&gt;
		['21d2', 'rArr'],   // ⇒&lt;br /&gt;
		['21d4', 'hArr'],   // ⇔&lt;br /&gt;
		['2200', 'forall'], // ∀&lt;br /&gt;
		['2202', 'part'],   // ∂&lt;br /&gt;
		['2203', 'exist'],  // ∃&lt;br /&gt;
		['2207', 'nabla'],  // ∇&lt;br /&gt;
		['2208', 'isin'],   // ∈&lt;br /&gt;
		['220b', 'ni'],     // ∋&lt;br /&gt;
		['220f', 'prod'],   // ∏&lt;br /&gt;
		['2211', 'sum'],    // ∑&lt;br /&gt;
		['2212', 'minus'],  // −&lt;br /&gt;
		['221a', 'radic'],  // √&lt;br /&gt;
		['221d', 'prop'],   // ∝&lt;br /&gt;
		['221e', 'infin'],  // ∞&lt;br /&gt;
		['2220', 'ang'],    // ∠&lt;br /&gt;
		['2227', 'and'],    // ∧&lt;br /&gt;
		['2228', 'or'],     // ∨&lt;br /&gt;
		['2229', 'cap'],    // ∩&lt;br /&gt;
		['222a', 'cup'],    // ∪&lt;br /&gt;
		['222b', 'int'],    // ∫&lt;br /&gt;
		['2234', 'there4'], // ∴&lt;br /&gt;
		['223c', 'sim'],    // ∼&lt;br /&gt;
		['2248', 'asymp'],  // ≈&lt;br /&gt;
		['2260', 'ne'],     // ≠&lt;br /&gt;
		['2261', 'equiv'],  // ≡&lt;br /&gt;
		['2264', 'le'],     // ≤&lt;br /&gt;
		['2265', 'ge'],     // ≥&lt;br /&gt;
		['2282', 'sub'],    // ⊂&lt;br /&gt;
		['2283', 'sup'],    // ⊃&lt;br /&gt;
		['2286', 'sube'],   // ⊆&lt;br /&gt;
		['2287', 'supe'],   // ⊇&lt;br /&gt;
		['2295', 'oplus'],  // ⊕&lt;br /&gt;
		['22a5', 'perp'],   // ⊥&lt;br /&gt;
		['25ca', 'loz'],    // ◊&lt;br /&gt;
		['2660', 'spades'], // ♠&lt;br /&gt;
		['2663', 'clubs'],  // ♣&lt;br /&gt;
		['2665', 'hearts'], // ♥&lt;br /&gt;
		['2666', 'diams']   // ♦&lt;br /&gt;
	];&lt;br /&gt;
&lt;br /&gt;
// special chars (spaces and invisible characters)&lt;br /&gt;
	wikEdSpecialChars = [&lt;br /&gt;
		['2002', 'ensp'],   //   en space&lt;br /&gt;
		[  'ad', 'shy'],    // ­ soft hyphen&lt;br /&gt;
		['2003', 'emsp'],   //   em space&lt;br /&gt;
		['2009', 'thinsp'], //    thin space&lt;br /&gt;
		['200c', 'zwnj'],   // ‌ zero width non-joiner&lt;br /&gt;
		['200d', 'zwj'],    // ‍ zero width joiner&lt;br /&gt;
		['200e', 'lrm'],    // ‎ left-to-right mark&lt;br /&gt;
		['200f', 'rlm']     // ‏ right-to-left mark&lt;br /&gt;
	];&lt;br /&gt;
&lt;br /&gt;
// unsupported chars in IE6&lt;br /&gt;
	wikEdProblemChars = [&lt;br /&gt;
		[ '3d1', 'thetasym'], // ϑ&lt;br /&gt;
		[ '3d2', 'upsih'],    // ϒ&lt;br /&gt;
		[ '3d6', 'piv'],      // ϖ&lt;br /&gt;
		['2118', 'weierp'],   // ℘&lt;br /&gt;
		['2111', 'image'],    // ℑ&lt;br /&gt;
		['211c', 'real'],     // ℜ&lt;br /&gt;
		['2135', 'alefsym'],  // ℵ&lt;br /&gt;
		['21b5', 'crarr'],    // ↵&lt;br /&gt;
		['21d0', 'lArr'],     // ⇐&lt;br /&gt;
		['21d1', 'uArr'],     // ⇑&lt;br /&gt;
		['21d3', 'dArr'],     // ⇓&lt;br /&gt;
		['2205', 'empty'],    // ∅&lt;br /&gt;
		['2209', 'notin'],    // ∉&lt;br /&gt;
		['2217', 'lowast'],   // ∗&lt;br /&gt;
		['2245', 'cong'],     // ≅&lt;br /&gt;
		['2284', 'nsub'],     // ⊄&lt;br /&gt;
		['22a5', 'perp'],     // ⊥&lt;br /&gt;
		['2297', 'otimes'],   // ⊗&lt;br /&gt;
		['22c5', 'sdot'],     // ⋅&lt;br /&gt;
		['2308', 'lceil'],    // ⌈&lt;br /&gt;
		['2309', 'rceil'],    // ⌉&lt;br /&gt;
		['230a', 'lfloor'],   // ⌊&lt;br /&gt;
		['230b', 'rfloor'],   // ⌋&lt;br /&gt;
		['2329', 'lang'],     // 〈&lt;br /&gt;
		['232a', 'rang']      // 〉&lt;br /&gt;
	];&lt;br /&gt;
&lt;br /&gt;
// ASCII control characters and invisibles, used for syntax highlighting&lt;br /&gt;
	wikEdControlChars = {&lt;br /&gt;
		'0': 'null',&lt;br /&gt;
		'1': 'start of heading',&lt;br /&gt;
		'2': 'start of text',&lt;br /&gt;
		'3': 'end of text',&lt;br /&gt;
		'4': 'end of transmission',&lt;br /&gt;
		'5': 'enquiry',&lt;br /&gt;
		'6': 'acknowledge',&lt;br /&gt;
		'7': 'bell',&lt;br /&gt;
		'8': 'backspace',&lt;br /&gt;
		'9': 'horizontal tab',&lt;br /&gt;
		'10': 'line feed, new line',&lt;br /&gt;
		'11': 'vertical tab',&lt;br /&gt;
		'12': 'form feed, new page',&lt;br /&gt;
		'13': 'carriage return',&lt;br /&gt;
		'14': 'shift out',&lt;br /&gt;
		'15': 'shift in',&lt;br /&gt;
		'16': 'data link escape',&lt;br /&gt;
		'17': 'device control 1',&lt;br /&gt;
		'18': 'device control 2',&lt;br /&gt;
		'19': 'device control 3',&lt;br /&gt;
		'20': 'device control 4',&lt;br /&gt;
		'21': 'negative acknowledge',&lt;br /&gt;
		'22': 'synchronous idle',&lt;br /&gt;
		'23': 'end of trans. block',&lt;br /&gt;
		'24': 'cancel',&lt;br /&gt;
		'25': 'end of medium',&lt;br /&gt;
		'26': 'substitute',&lt;br /&gt;
		'27': 'escape',&lt;br /&gt;
		'28': 'file separator',&lt;br /&gt;
		'29': 'group separator',&lt;br /&gt;
		'30': 'record separator',&lt;br /&gt;
		'31': 'unit separator',&lt;br /&gt;
		'173' : 'soft hyphen',           // \u00ad&lt;br /&gt;
		'8204': 'zero width non-joiner', // \u200c&lt;br /&gt;
		'8205': 'zero width joiner',     // \u200d&lt;br /&gt;
		'8206': 'left-to-right mark',    // \u200e&lt;br /&gt;
		'8207': 'right-to-left mark',    // \u200f&lt;br /&gt;
		'8232': 'line separator',        // \u2028&lt;br /&gt;
		'8233': 'paragraph separator'    // \u2028&lt;br /&gt;
	};&lt;br /&gt;
	for (var decimalValue in wikEdControlChars) {&lt;br /&gt;
		if (typeof(wikEdControlChars[decimalValue]) != 'string') {&lt;br /&gt;
			continue;&lt;br /&gt;
		}&lt;br /&gt;
		wikEdControlCharsStr += String.fromCharCode(decimalValue);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
// strange spaces, used for syntax highlighting&lt;br /&gt;
	wikEdStrangeSpaces = {&lt;br /&gt;
		'160':  'non-breaking space', // \u00a0&lt;br /&gt;
		'8194': 'en space',           // \u2002&lt;br /&gt;
		'8195': 'em space',           // \u2003&lt;br /&gt;
		'8201': 'thin space'          // \u2009&lt;br /&gt;
	};&lt;br /&gt;
&lt;br /&gt;
	return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// call wikEd startup&lt;br /&gt;
WikEdStartup();&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Übersetzung &lt;br /&gt;
// includePage('MediaWiki:Gadget-wikEd.js/' + wgUserLanguage);&lt;/div&gt;</description>
			<pubDate>Sat, 06 Sep 2008 14:31:46 GMT</pubDate>			<dc:creator>Lustiger seth</dc:creator>			<comments>http://de.kitakujo.de/w/index.php?title=MediaWiki_Diskussion:Gadget-wikEd.js</comments>		</item>
		<item>
			<title>MediaWiki:Monobook.js</title>
			<link>http://de.kitakujo.de/w/index.php?title=MediaWiki:Monobook.js</link>
			<description>&lt;p&gt;Lustiger seth:&amp;#32;code etwas zusammengefasst&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Der Grossteil der Codes befindet sich in [[MediaWiki:Common.js]] */&lt;br /&gt;
&lt;br /&gt;
//================================================================================&lt;br /&gt;
//*** moveEditsection: Moving of the editsection links&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * moveEditsection&lt;br /&gt;
 * Dieses Script verschiebt die [Bearbeiten]-Buttons vom rechten Fensterrand&lt;br /&gt;
 * direkt rechts neben die jeweiligen Überschriften.&lt;br /&gt;
 * This script moves the [edit]-buttons from the right border of the window&lt;br /&gt;
 * directly right next to the corresponding headings.&lt;br /&gt;
 *&lt;br /&gt;
 * Zum Abschalten die folgende Zeile (ohne führendes Sternchen) in die eigene&lt;br /&gt;
 * monobook.js (zu finden unter [[Special:Mypage/monobook.js|Benutzer:Name/monobook.js]]) kopieren:&lt;br /&gt;
 * var oldEditsectionLinks = true;&lt;br /&gt;
 *&lt;br /&gt;
 * dbenzhuser (de:Benutzer:Dbenzhuser)&lt;br /&gt;
 */&lt;br /&gt;
addOnloadHook(function() {&lt;br /&gt;
    if (typeof oldEditsectionLinks != 'undefined' &amp;amp;&amp;amp; oldEditsectionLinks)   return;&lt;br /&gt;
    var spans = document.getElementsByTagName(&amp;quot;span&amp;quot;);&lt;br /&gt;
    for (var i=0; i&amp;lt;spans.length; i++) {&lt;br /&gt;
        var span = spans[i];&lt;br /&gt;
        if (span.className != &amp;quot;editsection&amp;quot;)    continue;&lt;br /&gt;
        span.style.fontSize = &amp;quot;x-small&amp;quot;;&lt;br /&gt;
        span.style.fontWeight = &amp;quot;normal&amp;quot;;&lt;br /&gt;
        span.style.cssFloat = &amp;quot;none&amp;quot;;&lt;br /&gt;
        span.style.marginLeft = &amp;quot;0px&amp;quot;;&lt;br /&gt;
        span.parentNode.appendChild(document.createTextNode(&amp;quot; &amp;quot;));&lt;br /&gt;
        span.parentNode.appendChild(span);&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
//================================================================================&lt;br /&gt;
//*** Add button 'Inverse selection' on [[Special:Undelete]]&lt;br /&gt;
&lt;br /&gt;
/** Fügt das Bookmarklet zum Markieren aller Versionen auf Special:Undelete ein */&lt;br /&gt;
addOnloadHook(function() {&lt;br /&gt;
   var form        = document.forms[&amp;quot;undelete&amp;quot;];&lt;br /&gt;
   if (!form)  return;&lt;br /&gt;
   var elements    = form.elements;&lt;br /&gt;
   var resetBtn   = elements[&amp;quot;mw-undelete-reset&amp;quot;];&lt;br /&gt;
   if (!resetBtn) return;&lt;br /&gt;
   var toggleBtn   = document.createElement(&amp;quot;input&amp;quot;);&lt;br /&gt;
   toggleBtn.type  = &amp;quot;button&amp;quot;;&lt;br /&gt;
   toggleBtn.value =&amp;quot;Auswahl umkehren&amp;quot;;&lt;br /&gt;
   toggleBtn.onclick   = function() {&lt;br /&gt;
       for (var i=0; i&amp;lt;elements.length; i++) {&lt;br /&gt;
           var input   = elements[i];&lt;br /&gt;
           if (input.type != &amp;quot;checkbox&amp;quot;)   continue;&lt;br /&gt;
           input.checked   = !input.checked;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
   resetBtn.parentNode.insertBefore(toggleBtn, resetBtn);&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
addOnloadHook(function() {&lt;br /&gt;
 if (wgAction == &amp;quot;delete&amp;quot;) {&lt;br /&gt;
     (function () {&lt;br /&gt;
         var wpReason = document.getElementById(&amp;quot;wpReason&amp;quot;);&lt;br /&gt;
         if (!wpReason) return;&lt;br /&gt;
         var regexp = /(\{\{(?:SLA|Löschen|delete).*\}\}(?:.*CES?T\))?)/i;&lt;br /&gt;
         if (regexp.test(wpReason.value)) {&lt;br /&gt;
             wpReason.value = RegExp.$1;&lt;br /&gt;
         } else {&lt;br /&gt;
             wpReason.value = '';&lt;br /&gt;
         }&lt;br /&gt;
     })();&lt;br /&gt;
 }&lt;br /&gt;
});&lt;/div&gt;</description>
			<pubDate>Thu, 28 Aug 2008 10:41:49 GMT</pubDate>			<dc:creator>Lustiger seth</dc:creator>			<comments>http://de.kitakujo.de/w/index.php?title=MediaWiki_Diskussion:Monobook.js</comments>		</item>
		<item>
			<title>Vorlage:Unsigned/Doku</title>
			<link>http://de.kitakujo.de/w/index.php?title=Vorlage:Unsigned/Doku</link>
			<description>&lt;p&gt;Lustiger seth:&amp;#32;ach, hier ist die doku versteckt. update, siehe DS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Dokumentation/Dokuseite}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;{{Tausendfach verwendet}}&lt;br /&gt;
&lt;br /&gt;
== Vorlagendokumentation ==&lt;br /&gt;
{| {{Bausteindesign3}}&lt;br /&gt;
| Die Werte der Parameter können aus der Versions-History kopiert werden. Falls es sich um einen der letzten Beiträge handelt, kann [[Vorlage Diskussion:Unsigned#JS_Funktion|dieses Script]] verwendet werden. In der [[Sommerzeit]] erscheint als Zeitzonencode &amp;lt;code&amp;gt;(CEST)&amp;lt;/code&amp;gt; statt &amp;lt;code&amp;gt;(CET)&amp;lt;/code&amp;gt; in der Zeitangabe der eigenen Signatur.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|Benutzername oder IP-Adresse des Benutzers|Uhrzeit, Datum des unsignierten Beitrags}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
wird der Text&lt;br /&gt;
: {{unsigned|Benutzername oder IP-Adresse des Benutzers|Uhrzeit, Datum des unsignierten Beitrags}}&lt;br /&gt;
erzeugt.&lt;br /&gt;
&lt;br /&gt;
Mit dem Parameter: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;|ALT=falsch|&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; kann man falsch signierte Beiträge kennzeichnen:&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|Benutzername oder IP-Adresse des Benutzers|ALT=falsch|Uhrzeit, Datum des Beitrags}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
wird zu&lt;br /&gt;
: {{unsigned|Benutzername oder IP-Adresse des Benutzers|ALT=falsch|Uhrzeit, Datum des Beitrags}}&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{unsigned|127.0.0.1|06:06, 6. Jun. 2006 (CEST)}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
ergibt&lt;br /&gt;
: {{unsigned|127.0.0.1|06:06, 6. Jun. 2006 (CEST)}}&lt;br /&gt;
&lt;br /&gt;
== Anmerkungen ==&lt;br /&gt;
&lt;br /&gt;
'''Wirkung auf die automatische Archivierung'''&amp;lt;br /&amp;gt;&lt;br /&gt;
Damit der [[Benutzer:ArchivBot|ArchivBot]] in Zusammenhang mit der [[Vorlage:Autoarchiv]] den Zeitstempel erkennt, muss er mit einem Zeitzonencode ergänzt werden, &amp;lt;code&amp;gt;(CET)&amp;lt;/code&amp;gt;=Winterzeit &amp;lt;code&amp;gt;(CEST)&amp;lt;/code&amp;gt;=[[Sommerzeit]], zum Beispiel: &amp;lt;code&amp;gt;21:46, 24. Jan. 2007 (CET)&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;21:46, 24. Aug. 2007 (CEST)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
&lt;br /&gt;
* [[Vorlage:Unterschreiben]]&lt;/div&gt;</description>
			<pubDate>Fri, 11 Jul 2008 10:08:24 GMT</pubDate>			<dc:creator>Lustiger seth</dc:creator>			<comments>http://de.kitakujo.de/w/index.php?title=Vorlage_Diskussion:Unsigned/Doku</comments>		</item>
		<item>
			<title>MediaWiki:Monobook.js</title>
			<link>http://de.kitakujo.de/w/index.php?title=MediaWiki:Monobook.js</link>
			<description>&lt;p&gt;Lustiger seth:&amp;#32;hinweis auf common.js. siehe [http://de.wikipedia.org/w/index.php?title=Wikipedia:Administratoren/Anfragen&amp;amp;oldid=47804667#.C3.84nderungen_im_MediaWiki-Namensraum]&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Der Grossteil der Codes befindet sich in [[MediaWiki:Common.js]] */&lt;br /&gt;
&lt;br /&gt;
//================================================================================&lt;br /&gt;
//*** moveEditsection: Moving of the editsection links&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * moveEditsection&lt;br /&gt;
 * Dieses Script verschiebt die [Bearbeiten]-Buttons vom rechten Fensterrand&lt;br /&gt;
 * direkt rechts neben die jeweiligen Überschriften.&lt;br /&gt;
 * This script moves the [edit]-buttons from the right border of the window&lt;br /&gt;
 * directly right next to the corresponding headings.&lt;br /&gt;
 *&lt;br /&gt;
 * Zum Abschalten die folgende Zeile (ohne führendes Sternchen) in die eigene&lt;br /&gt;
 * monobook.js (zu finden unter [[Special:Mypage/monobook.js|Benutzer:Name/monobook.js]]) kopieren:&lt;br /&gt;
 * var oldEditsectionLinks = true;&lt;br /&gt;
 *&lt;br /&gt;
 * dbenzhuser (de:Benutzer:Dbenzhuser)&lt;br /&gt;
 */&lt;br /&gt;
addOnloadHook(function() {&lt;br /&gt;
    if (typeof oldEditsectionLinks != 'undefined' &amp;amp;&amp;amp; oldEditsectionLinks)   return;&lt;br /&gt;
    var spans = document.getElementsByTagName(&amp;quot;span&amp;quot;);&lt;br /&gt;
    for (var i=0; i&amp;lt;spans.length; i++) {&lt;br /&gt;
        var span = spans[i];&lt;br /&gt;
        if (span.className != &amp;quot;editsection&amp;quot;)    continue;&lt;br /&gt;
        span.style.fontSize = &amp;quot;x-small&amp;quot;;&lt;br /&gt;
        span.style.fontWeight = &amp;quot;normal&amp;quot;;&lt;br /&gt;
        span.style.cssFloat = &amp;quot;none&amp;quot;;&lt;br /&gt;
        span.style.marginLeft = &amp;quot;0px&amp;quot;;&lt;br /&gt;
        span.parentNode.appendChild(document.createTextNode(&amp;quot; &amp;quot;));&lt;br /&gt;
        span.parentNode.appendChild(span);&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
//================================================================================&lt;br /&gt;
//*** Add button 'Inverse selection' on [[Special:Undelete]]&lt;br /&gt;
&lt;br /&gt;
/** Fügt das Bookmarklet zum Markieren aller Versionen auf Special:Undelete ein */&lt;br /&gt;
addOnloadHook(function() {&lt;br /&gt;
   var form        = document.forms[&amp;quot;undelete&amp;quot;];&lt;br /&gt;
   if (!form)  return;&lt;br /&gt;
   var elements    = form.elements;&lt;br /&gt;
   var resetBtn   = elements[&amp;quot;mw-undelete-reset&amp;quot;];&lt;br /&gt;
   if (!resetBtn) return;&lt;br /&gt;
   var toggleBtn   = document.createElement(&amp;quot;input&amp;quot;);&lt;br /&gt;
   toggleBtn.type  = &amp;quot;button&amp;quot;;&lt;br /&gt;
   toggleBtn.value =&amp;quot;Auswahl umkehren&amp;quot;;&lt;br /&gt;
   toggleBtn.onclick   = function() {&lt;br /&gt;
       for (var i=0; i&amp;lt;elements.length; i++) {&lt;br /&gt;
           var input   = elements[i];&lt;br /&gt;
           if (input.type != &amp;quot;checkbox&amp;quot;)   continue;&lt;br /&gt;
           input.checked   = !input.checked;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
   resetBtn.parentNode.insertBefore(toggleBtn, resetBtn);&lt;br /&gt;
});&lt;/div&gt;</description>
			<pubDate>Sun, 29 Jun 2008 13:03:57 GMT</pubDate>			<dc:creator>Lustiger seth</dc:creator>			<comments>http://de.kitakujo.de/w/index.php?title=MediaWiki_Diskussion:Monobook.js</comments>		</item>
	</channel>
</rss>