<?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=User%3AVery_Keynes</id>
	<title>User:Very Keynes - 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=User%3AVery_Keynes"/>
	<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;action=history"/>
	<updated>2026-06-04T21:42:18Z</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=User:Very_Keynes&amp;diff=1197014&amp;oldid=prev</id>
		<title>Johan Neddings: /* Wikifying the LSL Source */</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;diff=1197014&amp;oldid=prev"/>
		<updated>2015-07-25T19:14:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Wikifying the LSL Source&lt;/span&gt;&lt;/span&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 12:14, 25 July 2015&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;&amp;lt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;lsl&lt;/del&gt;&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;&amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;source lang=&quot;lsl2&quot;&lt;/ins&gt;&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;// dbLib.Date.Time&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;// dbLib.Date.Time&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-l147&quot;&gt;Line 147:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 147:&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;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;&amp;lt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;lsl&lt;/del&gt;&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;&amp;lt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;source&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Johan Neddings</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;diff=1176067&amp;oldid=prev</id>
		<title>Johan Neddings: /* Replaced Code with correct Coding tag */</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;diff=1176067&amp;oldid=prev"/>
		<updated>2013-01-12T00:34:12Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Replaced Code with correct Coding tag&lt;/span&gt;&lt;/span&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 17:34, 11 January 2013&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;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[code]&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;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;lsl&amp;gt;&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;//&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;// dbLib.Date.Time&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;// dbLib.Date.Time&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-l147&quot;&gt;Line 147:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 147:&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;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;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code]&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;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;lsl&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Johan Neddings</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;diff=995752&amp;oldid=prev</id>
		<title>Very Keynes: dbLib.Date.Time - Compression Algorithm and support functions for Date and Time</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;diff=995752&amp;oldid=prev"/>
		<updated>2010-08-07T10:18:52Z</updated>

		<summary type="html">&lt;p&gt;dbLib.Date.Time - Compression Algorithm and support functions for Date and Time&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 03:18, 7 August 2010&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 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;[code]&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;//&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;// dbLib.Date.Time&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;// dbLib.Date.Time&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-l146&quot;&gt;Line 146:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 147:&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;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;[/code]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Very Keynes</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;diff=995742&amp;oldid=prev</id>
		<title>Very Keynes: dbLib.Date.Time - Compression Algorithm and support functions for Date and Time</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=User:Very_Keynes&amp;diff=995742&amp;oldid=prev"/>
		<updated>2010-08-07T10:17:35Z</updated>

		<summary type="html">&lt;p&gt;dbLib.Date.Time - Compression Algorithm and support functions for Date and Time&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;//&lt;br /&gt;
// dbLib.Date.Time&lt;br /&gt;
//&lt;br /&gt;
//    Function:    integer dbDateTime(string date, float time)&lt;br /&gt;
//    Compresses a Date and Time into a single 32bit Integer value&lt;br /&gt;
//&lt;br /&gt;
//    Range of dates supported is 2000-03-01 to 2058-12-16&lt;br /&gt;
//    &lt;br /&gt;
//    Concieved as a DataType for VK-DBMS it allows for Compact staorage&lt;br /&gt;
//    of a DateTime String in a form that allows for Numerical compares&lt;br /&gt;
//    and easy sorting of data by Date and Time, as well as making other&lt;br /&gt;
//    Date Time Functions such as Day of Week and Differance between two&lt;br /&gt;
//    Dates perform as simple Numerical Computations.&lt;br /&gt;
//&lt;br /&gt;
//    Input Formats Supported:&lt;br /&gt;
//&lt;br /&gt;
//    LSL functions useualy supply the date in string format and the&lt;br /&gt;
//    time as  float. This function is compatable with the following:&lt;br /&gt;
//&lt;br /&gt;
//    A string formated as Date and Time such as the output of&lt;br /&gt;
//    llGetTimeStamp() - &amp;quot;YYYY-MM-DDThh:mm:ss.ff..fZ&amp;quot;&lt;br /&gt;
//        Only the date and hh:mm:ss are encoded, the fractions are discarded&lt;br /&gt;
//        if the time is provided as part of the date string the format is:&lt;br /&gt;
//&lt;br /&gt;
//            dbDateTime(llGetTimeStamp(), 0)&lt;br /&gt;
//            dbDateTime(&amp;quot;2010-08-12T13:04:27&amp;quot;, 0) &lt;br /&gt;
//&lt;br /&gt;
//        Valid Seperators are [&amp;quot;-&amp;quot;,&amp;quot;/&amp;quot;,&amp;quot;T&amp;quot;,&amp;quot;:&amp;quot;,&amp;quot;.&amp;quot;,&amp;quot;,&amp;quot;] so this format works:&lt;br /&gt;
//&lt;br /&gt;
//            dbDateTime(&amp;quot;2010/08/12,13:04&amp;quot;, 0)&lt;br /&gt;
//&lt;br /&gt;
//        AM/PM format is Also Suppoerted in addition to 24Hour Clock&lt;br /&gt;
//&lt;br /&gt;
//            dbDateTime(&amp;quot;2010/08/12,1:04PM&amp;quot;, 0)&lt;br /&gt;
//&lt;br /&gt;
//    The Date and Time may also be suppled seperately as a string, float pair&lt;br /&gt;
//    where the float represents seconds past midnight as provided by LSL.&lt;br /&gt;
//&lt;br /&gt;
//        dbDateTime(llGetDate(), llGetGMTClock())&lt;br /&gt;
//        dbDateTime(llGetDate(), llGetWallClock())&lt;br /&gt;
//        dbDateTime{&amp;quot;2010,8,12&amp;quot;, 47040.0000)&lt;br /&gt;
//&lt;br /&gt;
integer dbDateTime(string date, float time)    &lt;br /&gt;
{&lt;br /&gt;
    list DateTime = llParseString2List(date, [&amp;quot;-&amp;quot;,&amp;quot;/&amp;quot;,&amp;quot;T&amp;quot;,&amp;quot;:&amp;quot;,&amp;quot;.&amp;quot;,&amp;quot;,&amp;quot;],[]);&lt;br /&gt;
    if(llToUpper(llGetSubString(llList2String(DateTime, -1),-2,-1)) == &amp;quot;PM&amp;quot;)&lt;br /&gt;
        DateTime = llListReplaceList(DateTime,[llList2Integer(DateTime,3) + 12], 3, 3);&lt;br /&gt;
    integer Y = llList2Integer(DateTime,0) - 2000 - ((llList2Integer(DateTime,1) + 9) % 12) / 10;&lt;br /&gt;
    return (Y * 365 + Y / 4 - Y / 100 + Y/400 + (((llList2Integer(DateTime,1) + 9) % 12) * 306 + 5) / 10 + (llList2Integer(DateTime,2) - 1))&lt;br /&gt;
        * 100000 + llList2Integer(DateTime,3) * 3600 + llList2Integer(DateTime,4) * 60 + llList2Integer(DateTime,5) + (integer)time;&lt;br /&gt;
}&lt;br /&gt;
//&lt;br /&gt;
//    Function:    string asDateTime(integer dt)&lt;br /&gt;
//    Expand 32bit Integer DateTime into a TimeStamp Format String&lt;br /&gt;
//&lt;br /&gt;
//    output format &amp;quot;YYYY-MM-DDThh:mm:ss&amp;quot;&lt;br /&gt;
//&lt;br /&gt;
string asDateTime(integer dt)&lt;br /&gt;
{&lt;br /&gt;
    integer t = dt % 100000;&lt;br /&gt;
    integer y = (10000 * (dt / 100000) + 14780)/3652425;&lt;br /&gt;
    if ((dt / 100000) - (y*365 + y/4 - y/100 + y/400) &amp;lt; 0){y--;}&lt;br /&gt;
    dt = (dt / 100000) - (y * 365 + y / 4 - y / 100 + y / 400);&lt;br /&gt;
    list DateTime = [(2000 + y + ((52 + 100 * dt) / 3060 + 2) / 12),&lt;br /&gt;
        (((52 + 100 * dt) / 3060 + 2) % 12 + 1),&lt;br /&gt;
        (dt - ((52 + 100 * dt) / 3060 * 306 + 5) / 10 + 1),&lt;br /&gt;
        ((t - (((t - (t % 60)) % 3600) / 60) - (t % 60)) / 3600),&lt;br /&gt;
        (((t - (t % 60)) % 3600) / 60), (t % 60)];&lt;br /&gt;
    dt = llGetListLength(DateTime);&lt;br /&gt;
    while(--dt &amp;gt; 0)if(llStringLength(llList2String(DateTime, dt)) &amp;lt; 2)&lt;br /&gt;
        DateTime = llListReplaceList(DateTime,[&amp;quot;0&amp;quot; + llList2String(DateTime, dt)], dt, dt);&lt;br /&gt;
    return&lt;br /&gt;
        llList2String(DateTime,0) + &amp;quot;-&amp;quot; +&lt;br /&gt;
        llList2String(DateTime,1) + &amp;quot;-&amp;quot; +&lt;br /&gt;
        llList2String(DateTime,2) + &amp;quot;T&amp;quot; +&lt;br /&gt;
        llList2String(DateTime,3) + &amp;quot;:&amp;quot; +&lt;br /&gt;
        llList2String(DateTime,4) + &amp;quot;:&amp;quot; +&lt;br /&gt;
        llList2String(DateTime,5);&lt;br /&gt;
}&lt;br /&gt;
//&lt;br /&gt;
//    Function:    integer GetDofW(string date)&lt;br /&gt;
//    Find the Day of the week for the Date provided&lt;br /&gt;
//&lt;br /&gt;
//    intput may be a date srting or any of the LSL date functions&lt;br /&gt;
//&lt;br /&gt;
//        GetDow(&amp;quot;2010/8/12&amp;quot;)&lt;br /&gt;
//        GetDow(llGetTimStamp())&lt;br /&gt;
//        GetDoW(llGetDate())&lt;br /&gt;
//&lt;br /&gt;
//    output format 0 -&amp;gt; 6 where Sunday = day 0&lt;br /&gt;
//&lt;br /&gt;
integer GetDoW(string date){return ((3 + (dbDateTime(date,0)/100000))%7);}&lt;br /&gt;
//&lt;br /&gt;
//    Function:    integer GetDif(string date1, string date2)&lt;br /&gt;
//    Find the Differance between the two dates Date1 - Date2&lt;br /&gt;
//&lt;br /&gt;
//    intput may be a date srting &amp;quot;2010/8/12&amp;quot; or any of the LSL date functions&lt;br /&gt;
//&lt;br /&gt;
//        GetDow(llGetDate(), &amp;quot;2009,12,31&amp;quot;)     = Day Number in Year 2010&lt;br /&gt;
//        GetDow(&amp;quot;2010-12-31&amp;quot;, llGetTimStamp()) = Number of days remaining in Year &lt;br /&gt;
//&lt;br /&gt;
//    output format integer in the range 0 --&amp;gt; 21474&lt;br /&gt;
//    being the date diferance (2058-12-16) - (2000-03-01)&lt;br /&gt;
//&lt;br /&gt;
integer GetDif(string date1, string date2){return((dbDateTime(date1,0) - dbDateTime(date2,0))/100000);}&lt;br /&gt;
//&lt;br /&gt;
//    Function:    string GetSLTimeStamp()&lt;br /&gt;
//        Return a TimeStamp corrected to PST Time including Daylight Saving&lt;br /&gt;
//&lt;br /&gt;
string  GetSLTimeStamp(){&lt;br /&gt;
    if (llGetGMTclock() -  llGetWallclock() &amp;lt; 0)return asDateTime(dbDateTime(llGetDate(),llGetWallclock()) - 100000);&lt;br /&gt;
    else return asDateTime(dbDateTime(llGetDate(),llGetWallclock()));}&lt;br /&gt;
//        &lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        // formating and range tests&lt;br /&gt;
        llSay(0, &amp;quot;Today &amp;amp; 2:15PM            &amp;quot;+asDateTime(dbDateTime(llGetDate()+&amp;quot;T2:15PM&amp;quot;,0)));&lt;br /&gt;
        llSay(0, &amp;quot;Today &amp;amp; 2:15am            &amp;quot;+asDateTime(dbDateTime(llGetDate()+&amp;quot;T2:15am&amp;quot;,0)));&lt;br /&gt;
        llSay(0, &amp;quot;minimum date              &amp;quot;+asDateTime(0));&lt;br /&gt;
        llSay(0, &amp;quot;maximum date              &amp;quot;+asDateTime(0x7FFFFFFF));&lt;br /&gt;
        llSay(0, &amp;quot;maximum date Differance   &amp;quot;+GetDif(asDateTime(0x7FFFFFFF), asDateTime(0)));&lt;br /&gt;
        llSay(0, &amp;quot;Overflow                  &amp;quot;+asDateTime(0x80000000));&lt;br /&gt;
        llSay(0, &amp;quot;\n\ntouch for inforamtion on the current day\n&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer total_number)&lt;br /&gt;
    {&lt;br /&gt;
        // examples of use&lt;br /&gt;
        //&lt;br /&gt;
        string SLdate = llGetSubString(GetSLTimeStamp(), 0, 9);&lt;br /&gt;
        llSay(0, &amp;quot;The Date Today in Second Life is &amp;quot; + SLdate);&lt;br /&gt;
        llSay(0, &amp;quot;The Day of the Week Today is &amp;quot;+llList2String([&amp;quot;Sun&amp;quot;,&amp;quot;Mon&amp;quot;,&amp;quot;Tue&amp;quot;,&amp;quot;Wed&amp;quot;,&amp;quot;Thu&amp;quot;,&amp;quot;Fri&amp;quot;,&amp;quot;Sat&amp;quot;],GetDoW(SLdate)));&lt;br /&gt;
        llSay(0, &amp;quot;it is day number &amp;quot;+(string)GetDif(SLdate,&amp;quot;2009,12,31&amp;quot;)+&amp;quot; of the Year&amp;quot;);&lt;br /&gt;
        llSay(0, &amp;quot;in Week &amp;quot;+(string)(GetDif(SLdate,&amp;quot;2009,12,31&amp;quot;)/7) + &amp;quot; of 52&amp;quot;);       &lt;br /&gt;
        llSay(0, &amp;quot;with &amp;quot;+(string)GetDif(&amp;quot;2010-12-31&amp;quot;, SLdate)+&amp;quot; Days left this year\n&amp;quot;);&lt;br /&gt;
        integer UTC = dbDateTime(llGetTimestamp(),0);&lt;br /&gt;
        llSay(0, (string)UTC + &amp;quot; is the integer Date &amp;amp; Time now in UTC&amp;quot; );&lt;br /&gt;
        integer PST = dbDateTime(GetSLTimeStamp(),0);&lt;br /&gt;
        llSay(0, (string)PST + &amp;quot; is the integer Date &amp;amp; Time now in PST&amp;quot; );&lt;br /&gt;
        llSay(0, llGetSubString(asDateTime(UTC - PST), 11, -1) + &amp;quot; is the time differance\n&amp;quot;);&lt;br /&gt;
        llSay(0, asDateTime(dbDateTime(llGetDate(),llGetGMTclock()))+&amp;quot; is the date and time derived from llGetDate &amp;amp; llGetGMTclock &amp;quot;);&lt;br /&gt;
        llSay(0, asDateTime(dbDateTime(llGetDate(),llGetWallclock()))+&amp;quot; is the date and time derived from llGetDate &amp;amp; llGetWallclock &amp;quot;);&lt;br /&gt;
        llSay(0, &amp;quot;llGetTimeStamp() = &amp;quot; + llGetTimestamp());&lt;br /&gt;
        llSay(0, &amp;quot;GetSLTimeStamp() = &amp;quot; + GetSLTimeStamp() + &amp;quot; with GetSLTimeStamp() both Date and Time are corrected for daylight Saving&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Very Keynes</name></author>
	</entry>
</feed>