<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.secondlife.com/w/index.php?action=history&amp;feed=atom&amp;title=HexText%2FHexText_Generic</id>
	<title>HexText/HexText Generic - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.secondlife.com/w/index.php?action=history&amp;feed=atom&amp;title=HexText%2FHexText_Generic"/>
	<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;action=history"/>
	<updated>2026-07-24T07:53:43Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209714&amp;oldid=prev</id>
		<title>Hexadeci Mole at 20:12, 10 November 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209714&amp;oldid=prev"/>
		<updated>2020-11-10T20:12:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:12, 10 November 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;HexText Unicode Display (Generic). One prim face for each character.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;HexText Unicode Display (Generic). One prim face for each character.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Note: This script has been superseded. The 2XKanji version has been modified to support both single cell and 2 cell Kanji characters.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;This version is left in place for reference.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209666&amp;oldid=prev</id>
		<title>Hexadeci Mole at 20:55, 6 October 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209666&amp;oldid=prev"/>
		<updated>2020-10-06T20:55:18Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:55, 6 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l598&quot;&gt;Line 598:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 598:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         if (pos == 0)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         if (pos == 0)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         {&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;                        	&lt;/del&gt;gColor = &amp;lt;llFrand(1.0), llFrand(1.0), llFrand(1.0), 1.0&amp;gt;;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;                            &lt;/ins&gt;gColor = &amp;lt;llFrand(1.0), llFrand(1.0), llFrand(1.0), 1.0&amp;gt;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         }&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         else if (pos % 2 == 0)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         else if (pos % 2 == 0)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209665&amp;oldid=prev</id>
		<title>Hexadeci Mole at 20:54, 6 October 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209665&amp;oldid=prev"/>
		<updated>2020-10-06T20:54:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:54, 6 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l228&quot;&gt;Line 228:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 228:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;list    gColors = [&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;list    gColors = [&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			&lt;/del&gt;&quot;rand&quot;,	&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		&lt;/del&gt;&amp;lt;0.0, 0.0, 0.0, 1.0&amp;gt;,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;            &lt;/ins&gt;&quot;rand&quot;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;&amp;lt;0.0, 0.0, 0.0, 1.0&amp;gt;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             &amp;quot;white&amp;quot;,        &amp;lt;1.0, 1.0, 1.0, 1.0&amp;gt;,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             &amp;quot;white&amp;quot;,        &amp;lt;1.0, 1.0, 1.0, 1.0&amp;gt;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             &amp;quot;black&amp;quot;,        &amp;lt;0.0, 0.0, 0.0, 1.0&amp;gt;,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;             &amp;quot;black&amp;quot;,        &amp;lt;0.0, 0.0, 0.0, 1.0&amp;gt;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209631&amp;oldid=prev</id>
		<title>Hexadeci Mole at 02:43, 6 October 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209631&amp;oldid=prev"/>
		<updated>2020-10-06T02:43:13Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:43, 5 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l22&quot;&gt;Line 22:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 22:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/*&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/*&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;MIT License&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;MIT License&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Copyright (c) 2018-&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;2019 &lt;/del&gt;Hexadeci Mole, HexText&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Copyright (c) 2018-&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;2020 &lt;/ins&gt;Hexadeci Mole, HexText&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Permission is hereby granted, free of charge, to any person obtaining a copy&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Permission is hereby granted, free of charge, to any person obtaining a copy&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;of this software and associated documentation files (the &amp;quot;Software&amp;quot;), to deal&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;of this software and associated documentation files (the &amp;quot;Software&amp;quot;), to deal&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l63&quot;&gt;Line 63:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 63:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gAlign = 0;			// Alignment: 0 = Left, 1 = Center, 2 = Right&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gAlign = 0;			// Alignment: 0 = Left, 1 = Center, 2 = Right&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gWrap = 2;			// Wrapping: 0 = None, 1 = Char, 2 = Word&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gWrap = 2;			// Wrapping: 0 = None, 1 = Char, 2 = Word&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gNotify = FALSE;	// Notify when drawing is &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;completee&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gNotify = FALSE;	// Notify when drawing is &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;complete&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gTrim = TRUE;		// Trim whitespace from lines&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gTrim = TRUE;		// Trim whitespace from lines&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gForce = FALSE;    	// Ignore optimizations for drawing&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;integer gForce = FALSE;    	// Ignore optimizations for drawing&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209629&amp;oldid=prev</id>
		<title>Hexadeci Mole at 02:32, 6 October 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209629&amp;oldid=prev"/>
		<updated>2020-10-06T02:32:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:32, 5 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l5&quot;&gt;Line 5:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;////////// DESCRIPTION /////////////////////////////////////&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;////////// DESCRIPTION /////////////////////////////////////&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//                                                        //&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//                                                        //&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//  HexText 1.0 Unicode Display System &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;                   &lt;/del&gt;//&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//  HexText 1.0 Unicode Display System &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;by Hexadeci Mole   &lt;/ins&gt;//&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//  Single face per character version                     //&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//  Single face per character version                     //&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//  &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Many thanks &lt;/del&gt;to Ochi Wolfe for the FURWARE toolset     //&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//  &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Thanks &lt;/ins&gt;to Ochi Wolfe for the FURWARE &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;text &lt;/ins&gt;toolset     //&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//                                                        //&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//                                                        //&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;////////////////////////////////////////////////////////////&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;////////////////////////////////////////////////////////////&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209610&amp;oldid=prev</id>
		<title>Hexadeci Mole at 01:55, 5 October 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209610&amp;oldid=prev"/>
		<updated>2020-10-05T01:55:24Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:55, 4 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;HexText Unicode Display (Generic). One &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;texture &lt;/del&gt;face &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;foreach &lt;/del&gt;character.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;HexText Unicode Display (Generic). One &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;prim &lt;/ins&gt;face &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;for each &lt;/ins&gt;character.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209608&amp;oldid=prev</id>
		<title>Hexadeci Mole at 01:51, 5 October 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209608&amp;oldid=prev"/>
		<updated>2020-10-05T01:51:39Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:51, 4 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;HexText Generic &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Script&lt;/del&gt;. One texture face &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;for all characters&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;HexText &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Unicode Display (&lt;/ins&gt;Generic&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;)&lt;/ins&gt;. One texture face &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;foreach character&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209606&amp;oldid=prev</id>
		<title>Hexadeci Mole: Created page with &quot;HexText Generic Script. One texture face for all characters.  &lt;source lang=&quot;lsl2&quot;&gt;  ////////// DESCRIPTION ///////////////////////////////////// //...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=HexText/HexText_Generic&amp;diff=1209606&amp;oldid=prev"/>
		<updated>2020-10-04T23:07:57Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;HexText Generic Script. One texture face for all characters.  &amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;  ////////// DESCRIPTION ///////////////////////////////////// //...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;HexText Generic Script. One texture face for all characters.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;lsl2&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
////////// DESCRIPTION /////////////////////////////////////&lt;br /&gt;
//                                                        //&lt;br /&gt;
//  HexText 1.0 Unicode Display System                    //&lt;br /&gt;
//  Single face per character version                     //&lt;br /&gt;
//  Many thanks to Ochi Wolfe for the FURWARE toolset     //&lt;br /&gt;
//                                                        //&lt;br /&gt;
////////////////////////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
////////// DOCUMENTATION ///////////////////////////////////&lt;br /&gt;
//                                                        //&lt;br /&gt;
//  Documentation is available at:                        //&lt;br /&gt;
//  http://wiki.secondlife.com/wiki/HexText               //&lt;br /&gt;
//                                                        //&lt;br /&gt;
////////////////////////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
////////// LICENSE /////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
MIT License&lt;br /&gt;
Copyright (c) 2018-2019 Hexadeci Mole, HexText&lt;br /&gt;
Permission is hereby granted, free of charge, to any person obtaining a copy&lt;br /&gt;
of this software and associated documentation files (the &amp;quot;Software&amp;quot;), to deal&lt;br /&gt;
in the Software without restriction, including without limitation the rights&lt;br /&gt;
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell&lt;br /&gt;
copies of the Software, and to permit persons to whom the Software is&lt;br /&gt;
furnished to do so, subject to the following conditions:&lt;br /&gt;
The above copyright notice and this permission notice shall be included in&lt;br /&gt;
all copies or substantial portions of the Software.&lt;br /&gt;
THE SOFTWARE IS PROVIDED &amp;quot;AS IS&amp;quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR&lt;br /&gt;
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,&lt;br /&gt;
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE&lt;br /&gt;
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER&lt;br /&gt;
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,&lt;br /&gt;
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN&lt;br /&gt;
THE SOFTWARE.&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
////////// CONSTANTS ///////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
// Modified slightly for Furware faces to remove character cell bleed caused by bitmap font overlap&lt;br /&gt;
vector  gOffset = &amp;lt;0.55425, 0.023, 0.0&amp;gt;;&lt;br /&gt;
vector  gCellSize = &amp;lt;0.061, 0.061, 0.0&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
// Numerically accurate for Furware faces, but there can be a bit of character cell bleed&lt;br /&gt;
//vector  gOffset = &amp;lt;0.53125, 0.0123, 0.0&amp;gt;;&lt;br /&gt;
//vector  gCellSize = &amp;lt;0.0625, 0.0625, 0.0&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
// Modified slightly for normal UV faces to remove character cell bleed caused by bitmap font overlap&lt;br /&gt;
//vector  gOffset = &amp;lt;0.46855, 0.46855, 0.0&amp;gt;;&lt;br /&gt;
//vector  gCellSize = &amp;lt;0.06, 0.06, 0.0&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
// Numerically accurate for normal UV faces, but there can be a bit of character cell bleed&lt;br /&gt;
//vector  gOffset = &amp;lt;0.46875, 0.46875, 0.0&amp;gt;;&lt;br /&gt;
//vector  gCellSize = &amp;lt;0.0625, 0.0625, 0.0&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
////////// DEFAULTS ////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
rotation gColor = &amp;lt;1.0, 1.0, 1.0, 1.0&amp;gt;;	// &amp;lt;R, G, B, A&amp;gt;&lt;br /&gt;
integer gAlign = 0;			// Alignment: 0 = Left, 1 = Center, 2 = Right&lt;br /&gt;
integer gWrap = 2;			// Wrapping: 0 = None, 1 = Char, 2 = Word&lt;br /&gt;
integer gNotify = FALSE;	// Notify when drawing is completee&lt;br /&gt;
integer gTrim = TRUE;		// Trim whitespace from lines&lt;br /&gt;
integer gForce = FALSE;    	// Ignore optimizations for drawing&lt;br /&gt;
float   gWrapLimit = 0.75; 	// Percentage of display width before which word wrap is cancelled.&lt;br /&gt;
&lt;br /&gt;
////////// END USER CONFIG /////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
integer gPrimCount;&lt;br /&gt;
integer gCols;&lt;br /&gt;
integer gColPrims;&lt;br /&gt;
integer gRows;&lt;br /&gt;
vector	gSpaceOffset;&lt;br /&gt;
vector	gBlankColor = &amp;lt;1.0, 1.0, 1.0&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
list    gTextLinks;&lt;br /&gt;
list    gRowLengths;&lt;br /&gt;
&lt;br /&gt;
list    gCodePages;&lt;br /&gt;
list    gCodePageUUIDs = [&lt;br /&gt;
            0x00, &amp;quot;27e9e604-b315-454f-770e-cf5dc6333879&amp;quot;,&lt;br /&gt;
            0x01, &amp;quot;fdcf478b-302d-70f8-fb72-c2cbf403d242&amp;quot;,&lt;br /&gt;
            0x02, &amp;quot;10b6e068-571f-c912-1177-c25533b5350b&amp;quot;,&lt;br /&gt;
            0x03, &amp;quot;ed4b350a-d0cb-68fa-e01c-7a4662837ad6&amp;quot;,&lt;br /&gt;
            0x04, &amp;quot;090834da-5503-aeb9-8f42-f979c76a0f35&amp;quot;,&lt;br /&gt;
            0x05, &amp;quot;d2378c82-ce3a-19c2-a25c-ea84b5d87b39&amp;quot;,&lt;br /&gt;
            0x06, &amp;quot;93917f55-2427-365b-6d81-46871d3eb8d7&amp;quot;,&lt;br /&gt;
            0x0E, &amp;quot;deadeda9-4676-9f75-b11d-0c1c4cc320af&amp;quot;,&lt;br /&gt;
            0x10, &amp;quot;03088af6-b6e2-7a93-3ac4-b275b650a12b&amp;quot;,&lt;br /&gt;
            0x14, &amp;quot;92c4d466-02c3-6063-440d-686a17287ef3&amp;quot;,&lt;br /&gt;
            0x15, &amp;quot;96424a86-271d-2d64-4807-d6710e27afd8&amp;quot;,&lt;br /&gt;
            0x16, &amp;quot;b7f7a0e7-e528-a504-2c52-171ea216982b&amp;quot;,&lt;br /&gt;
            0x1D, &amp;quot;756ad03c-2e87-1bd2-8265-edf77f9493e6&amp;quot;,&lt;br /&gt;
            0x1E, &amp;quot;6ba77713-1017-72d5-96c0-9b9305659e1e&amp;quot;,&lt;br /&gt;
            0x1F, &amp;quot;047f7d75-cfcd-5515-227f-668554d7427d&amp;quot;,&lt;br /&gt;
            0x20, &amp;quot;f40f5d7d-58e5-68e3-5c21-ba2a0f18e0a9&amp;quot;,&lt;br /&gt;
            0x21, &amp;quot;6fce7405-d606-bb55-8ddd-f32f444b78da&amp;quot;,&lt;br /&gt;
            0x22, &amp;quot;bb7bea3c-9044-e505-41d6-afafd6a9f5de&amp;quot;,&lt;br /&gt;
            0x23, &amp;quot;5ca29772-2722-011f-8e04-3bfe1e713864&amp;quot;,&lt;br /&gt;
            0x24, &amp;quot;0dede3b3-e632-8059-1a33-125f3e100e52&amp;quot;,&lt;br /&gt;
            0x25, &amp;quot;87a27d99-2e97-2613-c47b-63806981b6e5&amp;quot;,&lt;br /&gt;
            0x26, &amp;quot;8c382389-5701-4d3a-62d2-6e8720dc665f&amp;quot;,&lt;br /&gt;
            0x27, &amp;quot;c76498fc-03a3-f598-fa7d-24b4876f0c26&amp;quot;,&lt;br /&gt;
            0x2C, &amp;quot;7a702e38-9304-cbde-e5ab-a60a020f1d1d&amp;quot;,&lt;br /&gt;
            0x30, &amp;quot;bbed1e3f-f89b-49c4-999c-80cc352189f6&amp;quot;,&lt;br /&gt;
            0x31, &amp;quot;504c15c1-e9b5-8691-8b9a-574b0eb16633&amp;quot;,&lt;br /&gt;
            0x32, &amp;quot;3f47af69-cb2e-8e85-d2d9-09c869822419&amp;quot;,&lt;br /&gt;
            0x33, &amp;quot;eb7c701e-ac4a-9c2b-19a9-afc7f08c4675&amp;quot;,&lt;br /&gt;
            0x34, &amp;quot;2cf174bd-0deb-2970-d63d-e359f7512521&amp;quot;,&lt;br /&gt;
            0x35, &amp;quot;1f9bb5a7-2f4a-15e3-8d6d-504cd0d250de&amp;quot;,&lt;br /&gt;
            0x36, &amp;quot;99d49a10-42bb-45a9-03ed-c81dea3f2d12&amp;quot;,&lt;br /&gt;
            0x37, &amp;quot;441e23c4-0608-59fe-7e56-99e53f1c71ba&amp;quot;,&lt;br /&gt;
            0x38, &amp;quot;9582249b-5370-dd77-0925-c97e72f6d8e9&amp;quot;,&lt;br /&gt;
            0x39, &amp;quot;3c79958e-bdf2-73cd-2e6c-f2acc297bfcd&amp;quot;,&lt;br /&gt;
            0x3A, &amp;quot;2286bbb7-f805-690f-0b0b-0593c12e2f2a&amp;quot;,&lt;br /&gt;
            0x3B, &amp;quot;a2e5a0d0-f5aa-913f-1c00-f641f2ca5091&amp;quot;,&lt;br /&gt;
            0x3C, &amp;quot;955e9609-afde-ebb7-a5e1-ddae46455090&amp;quot;,&lt;br /&gt;
            0x3D, &amp;quot;431e9f87-41a2-a7f3-22ad-c17b4ec5a237&amp;quot;,&lt;br /&gt;
            0x3E, &amp;quot;b5db2e3b-2271-a0bd-00d6-8b40812097ac&amp;quot;,&lt;br /&gt;
            0x3F, &amp;quot;76f2d1fe-826d-f30a-c1af-1b09387c2936&amp;quot;,&lt;br /&gt;
            0x40, &amp;quot;f90e3a5e-9404-0729-0ddc-46f52fc8e919&amp;quot;,&lt;br /&gt;
            0x41, &amp;quot;70a5bc82-7abb-763b-fd46-12c9e4c60a84&amp;quot;,&lt;br /&gt;
            0x42, &amp;quot;1b4af3ed-1ca2-54da-2f13-2c378476c50b&amp;quot;,&lt;br /&gt;
            0x43, &amp;quot;33c44a35-5bdd-3cf0-9e20-bbebc4390ae7&amp;quot;,&lt;br /&gt;
            0x44, &amp;quot;78468268-b9dc-57f4-554a-097341f9e37f&amp;quot;,&lt;br /&gt;
            0x45, &amp;quot;be4f77d7-e86d-9c19-50f4-ff70fa0bbcdd&amp;quot;,&lt;br /&gt;
            0x46, &amp;quot;cecc557a-e740-3468-787a-a8efc50afb82&amp;quot;,&lt;br /&gt;
            0x47, &amp;quot;04d78b83-693d-8c16-4a1f-634c5dd6615a&amp;quot;,&lt;br /&gt;
            0x48, &amp;quot;7e01d0db-b456-3cb8-b97c-f688dc27f705&amp;quot;,&lt;br /&gt;
            0x49, &amp;quot;55d04868-f003-4de0-5237-a04862cc4697&amp;quot;,&lt;br /&gt;
            0x4A, &amp;quot;afa697ab-2885-8d7c-f59b-b0f48b94941f&amp;quot;,&lt;br /&gt;
            0x4B, &amp;quot;07f7427f-fc20-9d10-7ffd-556fb3c480a9&amp;quot;,&lt;br /&gt;
            0x4C, &amp;quot;ff6b4d03-ca92-e7d4-46e9-9121352dec6e&amp;quot;,&lt;br /&gt;
            0x4D, &amp;quot;c41ac88b-4e71-d997-cd33-fd1d81ca992c&amp;quot;,&lt;br /&gt;
            0x4E, &amp;quot;c2309d45-43b7-15f4-e482-886dbf9b8419&amp;quot;,&lt;br /&gt;
            0x4F, &amp;quot;3190730d-de06-ea8a-3a5d-757b5ef9c04d&amp;quot;,&lt;br /&gt;
            0x50, &amp;quot;dcdf69a0-83c0-68d3-7883-9d6b142ab522&amp;quot;,&lt;br /&gt;
            0x51, &amp;quot;8214ba5e-af73-0ed3-84f6-1251d668ce09&amp;quot;,&lt;br /&gt;
            0x52, &amp;quot;0aa80f45-305c-a8b7-fdc5-c49cdb837d43&amp;quot;,&lt;br /&gt;
            0x53, &amp;quot;261cb0e8-a2d7-b90d-734f-409064920bec&amp;quot;,&lt;br /&gt;
            0x54, &amp;quot;0ad4e700-c8db-dc9f-6dea-45d126ce1781&amp;quot;,&lt;br /&gt;
            0x55, &amp;quot;81f351a3-4a90-e052-22d7-daa869ee3656&amp;quot;,&lt;br /&gt;
            0x56, &amp;quot;7df297e5-79cd-7036-9443-f0f8a9fa7e8f&amp;quot;,&lt;br /&gt;
            0x57, &amp;quot;e06b0624-4363-2202-96b9-47b1321abafe&amp;quot;,&lt;br /&gt;
            0x58, &amp;quot;9dfa4ed2-5146-0c20-4c1b-d67611591a2d&amp;quot;,&lt;br /&gt;
            0x59, &amp;quot;7a0d489d-bf9c-4e76-bc30-65f9606a77a9&amp;quot;,&lt;br /&gt;
            0x5A, &amp;quot;ab196901-2d9c-23d5-a10a-e28fd7b784a9&amp;quot;,&lt;br /&gt;
            0x5B, &amp;quot;c569ab67-1c18-307a-0d57-bafa4e0320e7&amp;quot;,&lt;br /&gt;
            0x5C, &amp;quot;cc92b193-1ed3-72ed-428f-de27c971e53e&amp;quot;,&lt;br /&gt;
            0x5D, &amp;quot;3d9233a1-acbf-e28b-bfd9-db9d080daaaf&amp;quot;,&lt;br /&gt;
            0x5E, &amp;quot;7da71ac2-af51-48b8-5207-70991b2b172b&amp;quot;,&lt;br /&gt;
            0x5F, &amp;quot;cf34309e-b3e7-9777-6b04-2a64893ccc83&amp;quot;,&lt;br /&gt;
            0x60, &amp;quot;6a449a86-c107-d264-ff67-8241347d865d&amp;quot;,&lt;br /&gt;
            0x61, &amp;quot;e4f9c21d-8508-e64b-d390-3c85f06dea17&amp;quot;,&lt;br /&gt;
            0x62, &amp;quot;c3a3ce13-6dec-8e81-d2a4-3125559bb782&amp;quot;,&lt;br /&gt;
            0x63, &amp;quot;52bff60e-65c7-a540-ff35-95c5a8220f81&amp;quot;,&lt;br /&gt;
            0x64, &amp;quot;9aeca54a-3ed9-6692-098b-2ec3da979cb3&amp;quot;,&lt;br /&gt;
            0x65, &amp;quot;20c82000-a1d8-9cc3-bf40-e4b4e2472018&amp;quot;,&lt;br /&gt;
            0x66, &amp;quot;58ae46d4-2e5b-cacb-101a-6cef0987d75a&amp;quot;,&lt;br /&gt;
            0x67, &amp;quot;cf8f267d-6b6f-fd88-8588-48e886dc3010&amp;quot;,&lt;br /&gt;
            0x68, &amp;quot;e603db4d-1e85-516a-b612-4b1b748fc3e2&amp;quot;,&lt;br /&gt;
            0x69, &amp;quot;4122d3ed-68b9-2eba-dd7d-b8a0f59126a2&amp;quot;,&lt;br /&gt;
            0x6A, &amp;quot;6a4425cf-46c7-1dd3-1e15-bc58b6e63522&amp;quot;,&lt;br /&gt;
            0x6B, &amp;quot;3402c9d6-b776-2f3f-7d8d-855cd9a7f7e7&amp;quot;,&lt;br /&gt;
            0x6C, &amp;quot;09710c77-9db2-65ff-db0b-400f42b55671&amp;quot;,&lt;br /&gt;
            0x6D, &amp;quot;b0fca79a-5060-324f-f4f5-71cffac18e1f&amp;quot;,&lt;br /&gt;
            0x6E, &amp;quot;cd8d52f4-32d1-4ea3-6908-8ed9204d4f8f&amp;quot;,&lt;br /&gt;
            0x6F, &amp;quot;90e38c28-d6a9-fca4-0e39-b24adf825ba8&amp;quot;,&lt;br /&gt;
            0x70, &amp;quot;b25aadb4-f64a-6420-b479-277edea2a169&amp;quot;,&lt;br /&gt;
            0x71, &amp;quot;ced5dcf5-58a8-d7b3-0da8-cb10f9b708f8&amp;quot;,&lt;br /&gt;
            0x72, &amp;quot;515461e6-1aca-5056-d289-705a1c070ef4&amp;quot;,&lt;br /&gt;
            0x73, &amp;quot;226100cc-10ce-8cb7-f7a8-d13873493374&amp;quot;,&lt;br /&gt;
            0x74, &amp;quot;37d54277-71b2-dd6f-ebff-666aa4c6efd0&amp;quot;,&lt;br /&gt;
            0x75, &amp;quot;38b2a124-4ef3-9dc0-e4c4-b4d1ee25811a&amp;quot;,&lt;br /&gt;
            0x76, &amp;quot;d8c218ff-97b0-f320-7f2e-ba74fcd3e19c&amp;quot;,&lt;br /&gt;
            0x77, &amp;quot;8d68593e-90fb-c442-b320-c6e99cd831b2&amp;quot;,&lt;br /&gt;
            0x78, &amp;quot;a1b3619d-eb8f-03c2-e219-375ab2e978c3&amp;quot;,&lt;br /&gt;
            0x79, &amp;quot;b25f989c-ea35-3398-7809-d0e47415e1ec&amp;quot;,&lt;br /&gt;
            0x7A, &amp;quot;b3d35e10-70f0-4004-3d4f-8987e77c3ce6&amp;quot;,&lt;br /&gt;
            0x7B, &amp;quot;6ff601ba-64fb-f61b-c11a-95c4e26cc3b5&amp;quot;,&lt;br /&gt;
            0x7C, &amp;quot;5c5508de-ca4a-1a85-3662-7767af1d45f1&amp;quot;,&lt;br /&gt;
            0x7D, &amp;quot;f334c84a-8a89-4dca-1a0a-3f57869b383a&amp;quot;,&lt;br /&gt;
            0x7E, &amp;quot;6d4992fc-1891-7bb8-e8c8-080b0c7f0f53&amp;quot;,&lt;br /&gt;
            0x7F, &amp;quot;1c087c0c-2f44-70c6-f386-9fff328645af&amp;quot;,&lt;br /&gt;
            0x80, &amp;quot;ae6217d8-a650-393d-4c12-244924e50091&amp;quot;,&lt;br /&gt;
            0x81, &amp;quot;5bac0887-f686-1486-123d-c9cc203a97d7&amp;quot;,&lt;br /&gt;
            0x82, &amp;quot;4c00bbf3-25d7-c781-ad69-f2c8b151844d&amp;quot;,&lt;br /&gt;
            0x83, &amp;quot;02146f13-b5a4-34d4-eae3-b87e8a622446&amp;quot;,&lt;br /&gt;
            0x84, &amp;quot;149a8ebe-fa15-b985-b6ca-4b4f8c8dcbc6&amp;quot;,&lt;br /&gt;
            0x85, &amp;quot;899f9215-92ca-39bc-b157-46b4e56ffee2&amp;quot;,&lt;br /&gt;
            0x86, &amp;quot;07c72032-8ba0-58b5-7dbb-1e26d4a9c29d&amp;quot;,&lt;br /&gt;
            0x87, &amp;quot;021ca04d-5893-f615-9357-5ec1fd1e0985&amp;quot;,&lt;br /&gt;
            0x88, &amp;quot;f13f10ab-8526-a061-b90e-38b0f13876a9&amp;quot;,&lt;br /&gt;
            0x89, &amp;quot;9d8895f4-1080-69f7-0f78-cc7c42068402&amp;quot;,&lt;br /&gt;
            0x8A, &amp;quot;35363fbc-f952-3833-f2b8-ac1685decb41&amp;quot;,&lt;br /&gt;
            0x8B, &amp;quot;ece7161f-2360-e294-55f8-18593cfe268e&amp;quot;,&lt;br /&gt;
            0x8C, &amp;quot;b199f897-ce70-3715-05e0-a58c234e21e7&amp;quot;,&lt;br /&gt;
            0x8D, &amp;quot;066676e6-5640-399e-0191-b061e56a9277&amp;quot;,&lt;br /&gt;
            0x8E, &amp;quot;b5e67788-bd9b-9603-9f5f-8c8fc90dbcdf&amp;quot;,&lt;br /&gt;
            0x8F, &amp;quot;180bb534-f8fb-b8cd-fcb9-938eb41876f6&amp;quot;,&lt;br /&gt;
            0x90, &amp;quot;42d6a5c7-3537-0e6a-ceb1-c7ec1408843e&amp;quot;,&lt;br /&gt;
            0x91, &amp;quot;28d50a1f-aae9-e9ae-df70-dad6d0dd494b&amp;quot;,&lt;br /&gt;
            0x92, &amp;quot;4638765a-bf63-95fb-dfef-df43e3fd6b0e&amp;quot;,&lt;br /&gt;
            0x93, &amp;quot;c183e0ac-c3bf-cbcc-79d8-2877e5aeaa87&amp;quot;,&lt;br /&gt;
            0x94, &amp;quot;db5df7a0-b48e-28ac-e24a-0222a3cda022&amp;quot;,&lt;br /&gt;
            0x95, &amp;quot;3f5e9f00-86bc-b5a4-8930-61a8c2f94dbc&amp;quot;,&lt;br /&gt;
            0x96, &amp;quot;d92d47bf-0582-fa1c-5e62-3ef591f2a12b&amp;quot;,&lt;br /&gt;
            0x97, &amp;quot;a2603a86-209d-d36c-2df8-03ad69418439&amp;quot;,&lt;br /&gt;
            0x98, &amp;quot;d1b3c91d-3d5a-53f8-9fdc-149fb77cfdfc&amp;quot;,&lt;br /&gt;
            0x99, &amp;quot;c4a69385-91f1-375c-b9d6-86eb1b8ed537&amp;quot;,&lt;br /&gt;
            0x9A, &amp;quot;4c9dd325-deb5-b5b3-7b94-c6dd0aec5a99&amp;quot;,&lt;br /&gt;
            0x9B, &amp;quot;8ba75a75-1421-bc42-6a41-3cef5ff131ad&amp;quot;,&lt;br /&gt;
            0x9C, &amp;quot;33aecc7d-ab14-c2d8-1428-1379a73a69a2&amp;quot;,&lt;br /&gt;
            0x9D, &amp;quot;dbb8d20e-e182-67ec-955d-33de256e6241&amp;quot;,&lt;br /&gt;
            0x9E, &amp;quot;9dd876bf-f802-4cd6-5395-ba00d5e1b3b2&amp;quot;,&lt;br /&gt;
            0x9F, &amp;quot;a60a2bea-4e28-78a1-d9da-887b60a219ef&amp;quot;,&lt;br /&gt;
            0xA6, &amp;quot;24f26d30-c396-b3fb-42b6-f3ba01b7ed87&amp;quot;,&lt;br /&gt;
            0xA7, &amp;quot;39102d6d-227b-86f1-e44b-324a7bf58bf4&amp;quot;,&lt;br /&gt;
            0xF8, &amp;quot;21ad1fb8-214f-c9db-74d5-317e692d7bb7&amp;quot;,&lt;br /&gt;
            0xFE, &amp;quot;33d6e3ce-e1bb-816a-6133-1af0077a67b5&amp;quot;,&lt;br /&gt;
            0xFF, &amp;quot;5709c611-6a62-244f-5963-dda110a59f04&amp;quot;];&lt;br /&gt;
&lt;br /&gt;
string  gBlankUUID = &amp;quot;a2d3fdcf-febe-1481-09c7-a662f352f15e&amp;quot;; // Used for unrendered Unicode blocks.&lt;br /&gt;
string  gASCII_UUID; // Used to speed up rendering for ASCII, set to 0x00 code page above.&lt;br /&gt;
&lt;br /&gt;
list    gColors = [&lt;br /&gt;
			&amp;quot;rand&amp;quot;,			&amp;lt;0.0, 0.0, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;white&amp;quot;,        &amp;lt;1.0, 1.0, 1.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;black&amp;quot;,        &amp;lt;0.0, 0.0, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;darkred&amp;quot;,      &amp;lt;0.5, 0.0, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;darkgreen&amp;quot;,    &amp;lt;0.0, 0.5, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;darkblue&amp;quot;,     &amp;lt;0.0, 0.0, 0.5, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;darkcyan&amp;quot;,     &amp;lt;0.0, 0.5, 0.5, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;darkmagenta&amp;quot;,  &amp;lt;0.5, 0.0, 0.5, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;darkyellow&amp;quot;,   &amp;lt;0.5, 0.5, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;gray&amp;quot;,         &amp;lt;0.5, 0.5, 0.5, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;red&amp;quot;,          &amp;lt;1.0, 0.0, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;green&amp;quot;,        &amp;lt;0.0, 1.0, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;blue&amp;quot;,         &amp;lt;0.0, 0.0, 1.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;cyan&amp;quot;,         &amp;lt;0.0, 1.0, 1.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;magenta&amp;quot;,      &amp;lt;1.0, 0.0, 1.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;yellow&amp;quot;,       &amp;lt;1.0, 1.0, 0.0, 1.0&amp;gt;,&lt;br /&gt;
            &amp;quot;silver&amp;quot;,       &amp;lt;0.75, 0.75, 0.75, 1.0&amp;gt;];&lt;br /&gt;
&lt;br /&gt;
Flush()&lt;br /&gt;
{&lt;br /&gt;
    integer i = 0; &lt;br /&gt;
    gRowLengths = [];&lt;br /&gt;
    &lt;br /&gt;
    while (i++ &amp;lt; gRows) gRowLengths += 0xFFFF;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Render(string line, integer col, integer row, integer direct)&lt;br /&gt;
{&lt;br /&gt;
    if (col &amp;lt; 0 || col &amp;gt;= gCols || row &amp;lt; 0 || row &amp;gt;= gRows) return;&lt;br /&gt;
    &lt;br /&gt;
    integer len = llStringLength(line);&lt;br /&gt;
    integer cursor;&lt;br /&gt;
    integer unicode;&lt;br /&gt;
    integer i;&lt;br /&gt;
    integer row_index = row * gColPrims;&lt;br /&gt;
    integer clear = (gForce || len &amp;lt; llList2Integer(gRowLengths, row)) &amp;amp;&amp;amp; !direct; // Never clear if using direct access&lt;br /&gt;
    string  input;&lt;br /&gt;
    string  char;&lt;br /&gt;
    list    params;&lt;br /&gt;
    &lt;br /&gt;
    if      (direct)        cursor =  col;&lt;br /&gt;
    else if (gAlign == 0 || len == 0) cursor =  0;&lt;br /&gt;
    else if (gAlign == 1)   cursor = (gCols - len) / 2;&lt;br /&gt;
    else                    cursor =  gCols - len;&lt;br /&gt;
    &lt;br /&gt;
    if (cursor + len &amp;gt; gCols) len = gCols - cursor;&lt;br /&gt;
    &lt;br /&gt;
    // Using direct invalidates optimization for this row.&lt;br /&gt;
    if (direct) gRowLengths = llListReplaceList(gRowLengths, [0xFFFF], row, row);&lt;br /&gt;
    else        gRowLengths = llListReplaceList(gRowLengths, [len], row, row);&lt;br /&gt;
    &lt;br /&gt;
    // Clear out everything before first char&lt;br /&gt;
    // Clear routines don&amp;#039;t really need to set PRIM_TEXTURE, but doing so prevents problems with&lt;br /&gt;
    // scripts using llSetAlpha to hide/show an entire linkset&lt;br /&gt;
    if (cursor &amp;gt; 0 &amp;amp;&amp;amp; clear)&lt;br /&gt;
    {&lt;br /&gt;
        while (i &amp;lt; cursor)&lt;br /&gt;
        {&lt;br /&gt;
            if (i &amp;amp; 7)&lt;br /&gt;
            {&lt;br /&gt;
                // Clear out individual faces&lt;br /&gt;
                params += [ PRIM_TEXTURE, i &amp;amp; 7, gASCII_UUID, gCellSize, gSpaceOffset, 0.0, PRIM_COLOR, i &amp;amp; 7, gBlankColor, 0.0 ];&lt;br /&gt;
                ++i;&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
            {&lt;br /&gt;
            	// New prim, issue PRIM_LINK_TARGET&lt;br /&gt;
                params += [ PRIM_LINK_TARGET, llList2Integer(gTextLinks, row_index + (i &amp;gt;&amp;gt; 3)) ];&lt;br /&gt;
                if (i + 7 &amp;lt; cursor)&lt;br /&gt;
                {&lt;br /&gt;
                    // Deal with whole prims when possible&lt;br /&gt;
                    params += [ PRIM_TEXTURE, ALL_SIDES, gASCII_UUID, gCellSize, gSpaceOffset, 0.0, PRIM_COLOR, ALL_SIDES, gBlankColor, 0.0 ];&lt;br /&gt;
                    i += 8;&lt;br /&gt;
                }&lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    // Clear out individual faces&lt;br /&gt;
                    params += [ PRIM_TEXTURE, i &amp;amp; 7, gASCII_UUID, gCellSize, gSpaceOffset, 0.0, PRIM_COLOR, i &amp;amp; 7, gBlankColor, 0.0 ];&lt;br /&gt;
                    ++i;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        llSetLinkPrimitiveParamsFast(0, params);&lt;br /&gt;
        params = [];&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // Draw the line&lt;br /&gt;
    for (i = 0; i &amp;lt; len; ++i)&lt;br /&gt;
    {&lt;br /&gt;
        // Unicode Decoder: http://wiki.secondlife.com/wiki/UTF-8&lt;br /&gt;
        unicode = llBase64ToInteger(llStringToBase64(input = llGetSubString(line, i, i)));&lt;br /&gt;
        if(unicode &amp;amp; 0x80000000) //multibyte, continuing to use base64 is impractical because it requires smart shifting.&lt;br /&gt;
        {&lt;br /&gt;
            unicode = (   (  0x0000003f &amp;amp;  unicode       ) |&lt;br /&gt;
                          (( 0x00003f00 &amp;amp;  unicode) &amp;gt;&amp;gt; 2 ) |&lt;br /&gt;
                          (( 0x003f0000 &amp;amp;  unicode) &amp;gt;&amp;gt; 4 ) |&lt;br /&gt;
                          (( 0x3f000000 &amp;amp; (unicode = (integer)(&amp;quot;0x&amp;quot;+llGetSubString(input,-8,-1)))) &amp;gt;&amp;gt; 6 ) |&lt;br /&gt;
                          (( 0x0000003f &amp;amp;  unicode) &amp;lt;&amp;lt; 24) |&lt;br /&gt;
                          (( 0x00000100 &amp;amp; (unicode = (integer)(&amp;quot;0x&amp;quot;+llDeleteSubString(input = (string)llParseString2List(llEscapeURL(input),[&amp;quot;%&amp;quot;],[]),-8,-1)))) &amp;lt;&amp;lt; 22)&lt;br /&gt;
                      ) &amp;amp; (  0x7FFFFFFF &amp;gt;&amp;gt; (5 * ((integer)(llLog(~unicode) / 0.69314718055994530941723212145818) - 25)));&lt;br /&gt;
                          &lt;br /&gt;
            params += [ PRIM_TEXTURE, cursor &amp;amp; 7, llList2String(gCodePages, unicode &amp;gt;&amp;gt; 8 &amp;amp; 0xFF),&lt;br /&gt;
                        gCellSize, &amp;lt;(unicode &amp;amp; 0xF) * 0.0625 - gOffset.x, gOffset.y - (unicode &amp;gt;&amp;gt; 4 &amp;amp; 0xF) * 0.0625, 0.0&amp;gt;, 0.0,&lt;br /&gt;
                        PRIM_COLOR, cursor &amp;amp; 7, &amp;lt;gColor.x, gColor.y, gColor.z&amp;gt;, gColor.s ];&lt;br /&gt;
        }&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            //unicode = unicode &amp;gt;&amp;gt; 24;&lt;br /&gt;
            params += [ PRIM_TEXTURE, cursor &amp;amp; 7, gASCII_UUID,&lt;br /&gt;
                    gCellSize, &amp;lt;(unicode &amp;gt;&amp;gt; 24 &amp;amp; 0xF) * 0.0625 - gOffset.x, gOffset.y - (unicode &amp;gt;&amp;gt; 28 &amp;amp; 0xF) * 0.0625, 0.0&amp;gt;, 0.0,&lt;br /&gt;
                    PRIM_COLOR, cursor &amp;amp; 7, &amp;lt;gColor.x, gColor.y, gColor.z&amp;gt;, gColor.s ];&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        if (cursor &amp;amp; 7 == 7)&lt;br /&gt;
        {&lt;br /&gt;
            llSetLinkPrimitiveParamsFast(llList2Integer(gTextLinks, row_index + (cursor &amp;gt;&amp;gt; 3)), params);&lt;br /&gt;
            params = [];&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        ++cursor;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // If there are any faces left to draw, set them.&lt;br /&gt;
    if (llGetListLength(params)) llSetLinkPrimitiveParamsFast(llList2Integer(gTextLinks, row_index + (cursor &amp;gt;&amp;gt; 3)), params);&lt;br /&gt;
    params = [];&lt;br /&gt;
    &lt;br /&gt;
    // Clear out everything after last char&lt;br /&gt;
    if (cursor &amp;lt; gCols &amp;amp;&amp;amp; clear)&lt;br /&gt;
    {&lt;br /&gt;
        i = cursor;&lt;br /&gt;
        if (i &amp;amp; 7) params = [ PRIM_LINK_TARGET, llList2Integer(gTextLinks, row_index + (i &amp;gt;&amp;gt; 3)) ];&lt;br /&gt;
        &lt;br /&gt;
        while (i &amp;lt; gCols)&lt;br /&gt;
        {&lt;br /&gt;
            if (i &amp;amp; 7)&lt;br /&gt;
            {&lt;br /&gt;
            	// Clear out individual faces&lt;br /&gt;
                params += [ PRIM_TEXTURE, i &amp;amp; 7, gASCII_UUID, gCellSize, gSpaceOffset, 0.0, PRIM_COLOR, i &amp;amp; 7, gBlankColor, 0.0 ];&lt;br /&gt;
                ++i;&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
            {&lt;br /&gt;
            	// New prim, issue PRIM_LINK_TARGET&lt;br /&gt;
                params += [ PRIM_LINK_TARGET, llList2Integer(gTextLinks, row_index + (i &amp;gt;&amp;gt; 3)) ];&lt;br /&gt;
                if (i + 7 &amp;lt; gCols)&lt;br /&gt;
                {&lt;br /&gt;
                    // Deal with whole prims when possible&lt;br /&gt;
                    params += [ PRIM_TEXTURE, ALL_SIDES, gASCII_UUID, gCellSize, gSpaceOffset, 0.0, PRIM_COLOR, ALL_SIDES, gBlankColor, 0.0 ];&lt;br /&gt;
                    i += 8;&lt;br /&gt;
                }&lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    // Clear out individual faces&lt;br /&gt;
                    params += [ PRIM_TEXTURE, i &amp;amp; 7, gASCII_UUID, gCellSize, gSpaceOffset, 0.0, PRIM_COLOR, i &amp;amp; 7, gBlankColor, 0.0 ];&lt;br /&gt;
                    ++i;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        llSetLinkPrimitiveParamsFast(0, params);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Draw(string text)&lt;br /&gt;
{&lt;br /&gt;
    integer row;&lt;br /&gt;
    list    lines;&lt;br /&gt;
    string  line;&lt;br /&gt;
    integer line_num;&lt;br /&gt;
    integer pos;&lt;br /&gt;
    string  char;&lt;br /&gt;
    string  out;&lt;br /&gt;
    &lt;br /&gt;
    lines = llParseStringKeepNulls(text, [ &amp;quot;\n&amp;quot;, &amp;quot;&amp;lt;br&amp;gt;&amp;quot; ], []);&lt;br /&gt;
    line_num = 0;&lt;br /&gt;
    row = 0;&lt;br /&gt;
    do&lt;br /&gt;
    {&lt;br /&gt;
        // For future right to left language support, we could test&lt;br /&gt;
        // last char of a line to see if it is in a RTL unicode block,&lt;br /&gt;
        // and then use a different do block to work through them right to left.&lt;br /&gt;
        // It would be especially important when splitting lines to display&lt;br /&gt;
        // them in the correct order.&lt;br /&gt;
        &lt;br /&gt;
        if (gTrim) line = llStringTrim(llList2String(lines, line_num), STRING_TRIM);&lt;br /&gt;
        else line = llList2String(lines, line_num);&lt;br /&gt;
        &lt;br /&gt;
        do // Left to Right block&lt;br /&gt;
        {&lt;br /&gt;
            if (llStringLength(line) &amp;lt;= gCols)&lt;br /&gt;
            {&lt;br /&gt;
                Render(line, 0, row, FALSE);&lt;br /&gt;
                line = &amp;quot;&amp;quot;;&lt;br /&gt;
            }&lt;br /&gt;
            else if (llGetSubString(line, gCols, gCols) == &amp;quot; &amp;quot; || gWrap &amp;lt; 2)&lt;br /&gt;
            {&lt;br /&gt;
                if (gTrim)  Render(llStringTrim(llGetSubString(line, 0, gCols - 1), STRING_TRIM), 0, row, FALSE);&lt;br /&gt;
                else        Render(llGetSubString(line, 0, gCols - 1), 0, row, FALSE);&lt;br /&gt;
                &lt;br /&gt;
                if (gWrap)&lt;br /&gt;
                {&lt;br /&gt;
                    // If we got here with wrap = 2, then there was a space, and we want to skip it.&lt;br /&gt;
                    line = llGetSubString(line, gCols + (gWrap == 2), -1);&lt;br /&gt;
                }&lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    line = &amp;quot;&amp;quot;;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
            {&lt;br /&gt;
                pos = gCols - 1;&lt;br /&gt;
                out = &amp;quot;&amp;quot;;&lt;br /&gt;
                &lt;br /&gt;
                do&lt;br /&gt;
                {&lt;br /&gt;
                    char = llGetSubString(line, pos, pos);&lt;br /&gt;
                    &lt;br /&gt;
                    if (char == &amp;quot; &amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        out = llGetSubString(line, 0, pos - 1);&lt;br /&gt;
                        line = llGetSubString(line, pos + 1, -1);&lt;br /&gt;
                    }&lt;br /&gt;
                    else if (char == &amp;quot;-&amp;quot;) // Japanese: &amp;quot;、&amp;quot; and &amp;quot;。&amp;quot;, Hebrew uses &amp;quot;־‬&amp;quot;, Armenian uses &amp;quot;֊&amp;quot;&lt;br /&gt;
                    {&lt;br /&gt;
                        out = llGetSubString(line, 0, pos);&lt;br /&gt;
                        line = llGetSubString(line, pos + 1, -1);&lt;br /&gt;
                    }&lt;br /&gt;
                    else if (pos &amp;lt; gCols * gWrapLimit)&lt;br /&gt;
                    {&lt;br /&gt;
                        out = llGetSubString(line, 0, gCols - 1);&lt;br /&gt;
                        line = llGetSubString(line, gCols, -1);&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
                while (out == &amp;quot;&amp;quot; &amp;amp;&amp;amp; --pos &amp;gt;= 0);&lt;br /&gt;
                &lt;br /&gt;
                if (gTrim)  Render(llStringTrim(out, STRING_TRIM), 0, row, FALSE);&lt;br /&gt;
                else        Render(out, 0, row, FALSE);&lt;br /&gt;
            }&lt;br /&gt;
            &lt;br /&gt;
            ++row;&lt;br /&gt;
        }&lt;br /&gt;
        while (line != &amp;quot;&amp;quot; &amp;amp;&amp;amp; row &amp;lt; gRows);&lt;br /&gt;
    }&lt;br /&gt;
    while (++line_num &amp;lt; llGetListLength(lines));&lt;br /&gt;
    &lt;br /&gt;
    // Blank out any remaining display lines&lt;br /&gt;
    while (row &amp;lt; gRows)&lt;br /&gt;
    {&lt;br /&gt;
        Render(&amp;quot;&amp;quot;, 0, row, FALSE);&lt;br /&gt;
        ++row;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    if (gNotify) llMessageLinked(LINK_SET, 0, &amp;quot;&amp;quot;, &amp;quot;fw_done&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        gPrimCount = llGetObjectPrimCount(llGetKey())+llGetNumberOfPrims()*!!llGetAttached();&lt;br /&gt;
        &lt;br /&gt;
        integer link = gPrimCount;&lt;br /&gt;
        integer col = -1;&lt;br /&gt;
        integer row = -1;&lt;br /&gt;
        integer i;&lt;br /&gt;
        integer j;&lt;br /&gt;
        list    items;&lt;br /&gt;
        &lt;br /&gt;
        do&lt;br /&gt;
        {&lt;br /&gt;
            items = llParseString2List(llGetLinkName(link), [ &amp;quot;:&amp;quot; ], []);&lt;br /&gt;
            if (llList2String(items, 0) == &amp;quot;FURWARE text mesh&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                if (llGetLinkNumberOfSides(link) == 8)&lt;br /&gt;
                {&lt;br /&gt;
                    if (llList2Integer(items, 2) &amp;gt; row) row = llList2Integer(items, 2);&lt;br /&gt;
                    if (llList2Integer(items, 3) &amp;gt; col) col = llList2Integer(items, 3);&lt;br /&gt;
                }&lt;br /&gt;
                else&lt;br /&gt;
                {&lt;br /&gt;
                    llOwnerSay(&amp;quot;Only 8 face prims are supported.&amp;quot;);&lt;br /&gt;
                    return;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        while (--link &amp;gt; 0);&lt;br /&gt;
        &lt;br /&gt;
        if (col &amp;lt; 0 || row &amp;lt; 0)&lt;br /&gt;
        {&lt;br /&gt;
            llOwnerSay(&amp;quot;No text prims found&amp;quot;);&lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        gCols = ++col * 8;&lt;br /&gt;
        gColPrims = col;&lt;br /&gt;
        gRows = ++row;&lt;br /&gt;
        gTextLinks = [];&lt;br /&gt;
        link = gPrimCount;&lt;br /&gt;
        &lt;br /&gt;
        for (i = 0; i &amp;lt; row * col; ++i) gTextLinks += 0;&lt;br /&gt;
        &lt;br /&gt;
        do&lt;br /&gt;
        {&lt;br /&gt;
            items = llParseString2List(llGetLinkName(link), [ &amp;quot;:&amp;quot; ], []);&lt;br /&gt;
            if (llList2String(items, 0) == &amp;quot;FURWARE text mesh&amp;quot;)&lt;br /&gt;
            {&lt;br /&gt;
                i = llList2Integer(items, 2) * col + llList2Integer(items, 3);&lt;br /&gt;
                gTextLinks = llListReplaceList(gTextLinks, [ link ], i, i);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        while (--link &amp;gt;= 0);&lt;br /&gt;
        &lt;br /&gt;
        for (i = 0; i &amp;lt; 256; ++i)&lt;br /&gt;
        {&lt;br /&gt;
            j = llListFindList(gCodePageUUIDs, [ i ]);&lt;br /&gt;
            if (~j) gCodePages += llList2String(gCodePageUUIDs, j + 1);&lt;br /&gt;
            else    gCodePages += gBlankUUID;&lt;br /&gt;
        }&lt;br /&gt;
        gCodePageUUIDs = []; // No longer needed, empty it to free up memory?&lt;br /&gt;
        gASCII_UUID = llList2String(gCodePages, 0);&lt;br /&gt;
        gSpaceOffset = &amp;lt;-gOffset.x, gOffset.y - 2 * 0.0625, 0.0&amp;gt;;&lt;br /&gt;
		&lt;br /&gt;
        Flush(); // Invalidate the whole display&lt;br /&gt;
        Draw(&amp;quot;&amp;quot;);&lt;br /&gt;
        &lt;br /&gt;
        llMessageLinked(LINK_SET, 0, &amp;quot;&amp;quot;, &amp;quot;fw_ready&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    link_message(integer source, integer num, string str, key id)&lt;br /&gt;
    {&lt;br /&gt;
        if (llGetSubString(id, 0, 2) != &amp;quot;fw_&amp;quot;) return;&lt;br /&gt;
        &lt;br /&gt;
        list    commands = llParseString2List(id, [ &amp;quot;:&amp;quot; ], []);&lt;br /&gt;
        string  command  = llToLower(llStringTrim(llList2String(commands, 0), STRING_TRIM));&lt;br /&gt;
        list    options;&lt;br /&gt;
        list    params;&lt;br /&gt;
        string  param;&lt;br /&gt;
        string  value_lc;&lt;br /&gt;
        integer i;&lt;br /&gt;
        integer pos;&lt;br /&gt;
        &lt;br /&gt;
        if      (command == &amp;quot;fw_data&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            Draw(str);&lt;br /&gt;
        }&lt;br /&gt;
        else if (command == &amp;quot;fw_direct&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            Render(str, llList2Integer(commands, 1),llList2Integer(commands, 2), TRUE);&lt;br /&gt;
        }&lt;br /&gt;
        else if (command == &amp;quot;fw_conf&amp;quot; || command == &amp;quot;fw_defaultconf&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            options = llParseString2List(str, [ &amp;quot;;&amp;quot; ], []);&lt;br /&gt;
            &lt;br /&gt;
            for(i = 0; i &amp;lt; llGetListLength(options); ++i)&lt;br /&gt;
            {&lt;br /&gt;
                params = llParseString2List(llList2String(options, i), [ &amp;quot;=&amp;quot; ], []);&lt;br /&gt;
                &lt;br /&gt;
                if (llGetListLength(params) &amp;gt; 1)&lt;br /&gt;
                {&lt;br /&gt;
                    param = llToLower(llStringTrim(llList2String(params, 0), STRING_TRIM));&lt;br /&gt;
                    value_lc = llToLower(llStringTrim(llList2String(params, 1), STRING_TRIM));&lt;br /&gt;
                    &lt;br /&gt;
                    if (param == &amp;quot;c&amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        pos = llListFindList(gColors, [ value_lc ]);&lt;br /&gt;
                        &lt;br /&gt;
                        if (pos == 0)&lt;br /&gt;
                        {&lt;br /&gt;
                        	gColor = &amp;lt;llFrand(1.0), llFrand(1.0), llFrand(1.0), 1.0&amp;gt;;&lt;br /&gt;
                        }&lt;br /&gt;
                        else if (pos % 2 == 0)&lt;br /&gt;
                        {&lt;br /&gt;
                            gColor = llList2Rot(gColors, pos + 1);&lt;br /&gt;
                        }&lt;br /&gt;
                        else&lt;br /&gt;
                        {&lt;br /&gt;
                            value_lc = &amp;quot;&amp;lt;&amp;quot; + value_lc + &amp;quot;&amp;gt;&amp;quot;;&lt;br /&gt;
                            gColor = (rotation)value_lc;&lt;br /&gt;
                            if (gColor == ZERO_ROTATION)&lt;br /&gt;
                            {&lt;br /&gt;
                                vector tmp = (vector)value_lc;&lt;br /&gt;
                                gColor = &amp;lt;tmp.x, tmp.y, tmp.z, 1.0&amp;gt;;&lt;br /&gt;
                            }&lt;br /&gt;
                        }&lt;br /&gt;
                    }&lt;br /&gt;
                    else if (param == &amp;quot;w&amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        pos = llListFindList([ &amp;quot;none&amp;quot;, &amp;quot;char&amp;quot;, &amp;quot;word&amp;quot; ], [ value_lc ]);&lt;br /&gt;
                        if (~pos)&lt;br /&gt;
                        {&lt;br /&gt;
                            if (gWrap != pos) Flush();&lt;br /&gt;
                            gWrap = pos;&lt;br /&gt;
                        }&lt;br /&gt;
                    }&lt;br /&gt;
                    else if (param == &amp;quot;a&amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        pos = llListFindList([ &amp;quot;left&amp;quot;, &amp;quot;center&amp;quot;, &amp;quot;right&amp;quot; ], [ value_lc ]);&lt;br /&gt;
                        if (~pos)&lt;br /&gt;
                        {&lt;br /&gt;
                            if (gAlign != pos) Flush();&lt;br /&gt;
                            gAlign = pos;&lt;br /&gt;
                        }&lt;br /&gt;
                    }&lt;br /&gt;
                    else if (param == &amp;quot;t&amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        pos = llListFindList([ &amp;quot;off&amp;quot;, &amp;quot;on&amp;quot; ], [ value_lc ]);&lt;br /&gt;
                        if (~pos)&lt;br /&gt;
                        {&lt;br /&gt;
                            if (gTrim != pos) Flush();&lt;br /&gt;
                            gTrim = pos;&lt;br /&gt;
                        }&lt;br /&gt;
                    }&lt;br /&gt;
                    else if (param == &amp;quot;force&amp;quot;)&lt;br /&gt;
                    {&lt;br /&gt;
                        pos = llListFindList([ &amp;quot;off&amp;quot;, &amp;quot;on&amp;quot; ], [ value_lc ]);&lt;br /&gt;
                        if (~pos) gForce = pos;&lt;br /&gt;
                    }&lt;br /&gt;
                } // more than 1 param&lt;br /&gt;
            } // iterate options&lt;br /&gt;
        }&lt;br /&gt;
        else if (command == &amp;quot;fw_memory&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            llOwnerSay(&amp;quot;HexText Free Mem: &amp;quot; + (string)llGetFreeMemory());&lt;br /&gt;
        }&lt;br /&gt;
        else if (command == &amp;quot;fw_notify&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            gNotify = (llToLower(llStringTrim(str, STRING_TRIM)) == &amp;quot;on&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
        else if (command == &amp;quot;fw_reset&amp;quot;)&lt;br /&gt;
        {&lt;br /&gt;
            llResetScript();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    changed(integer change)&lt;br /&gt;
    {&lt;br /&gt;
        // Must reset, only time we search for link names.&lt;br /&gt;
        if (change &amp;amp; CHANGED_LINK &amp;amp;&amp;amp;&lt;br /&gt;
            gPrimCount != llGetObjectPrimCount(llGetKey())+llGetNumberOfPrims()*!!llGetAttached())&lt;br /&gt;
        {&lt;br /&gt;
            llResetScript();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hexadeci Mole</name></author>
	</entry>
</feed>