<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_msn㊣Microshaoft.comnaIBnaiM nOracle (大舌头) I Love download EditPlus.v3.12(602)!</title><subtitle type="text">&amp;copy; 0000 - 9999 ㊣ Microshaoft &amp;trade; &amp;reg;砍头不要紧 爱情价更高 欲穷千里目 粒粒皆辛苦 身披七彩祥云 脚踏金甲圣衣 卧鼠藏虫http://microshaoft.googlepages.com/</subtitle><id>http://feed.cnblogs.com/blog/u/10296/rss</id><updated>2012-05-11T15:40:47Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/10296/rss"/><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/05/11/2496777.html</id><title type="text">DateTimeHelper R2</title><summary type="text">namespace Microshaoft{ using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; using System.IO; class Program { static void Main() { string r = string.Empty; string rootPath =...</summary><published>2012-05-11T14:58:00Z</published><updated>2012-05-11T14:58:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/11/2496777.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/11/2496777.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Tasks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;IO&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;class &lt;/font&gt;&lt;font color="#000000"&gt;Program&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Main&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;rootPath = @&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;e:\temp4&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;测试项目1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;按任意键测试该项目, 按\&amp;quot;q\&amp;quot;退出该测试项目&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;((r = &lt;/font&gt;&lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;()) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;q&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;now = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;2012&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;5&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;12&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;CodeTimer.&lt;/font&gt;&lt;font color="#008000"&gt;Time&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#ff00ff"&gt;&amp;quot;写文件&amp;quot;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#800000"&gt;Parallel&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;For&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;86400&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, (x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;DateTimeHelper.GetAlignSecondsDateTimes&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;now.&lt;/font&gt;&lt;font color="#ff0000"&gt;AddSeconds&lt;/font&gt;&lt;font color="#000000"&gt;(x)&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Create&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#800080"&gt;24 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;60 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;60&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, (time, alignSeconds, alignedTime, data) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#008000"&gt;//Console.WriteLine(alignedTime);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;directory = alignedTime.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;yyyy-MM-dd&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;path = (&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrEmpty&lt;/font&gt;&lt;font color="#000000"&gt;(data) || &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrWhiteSpace&lt;/font&gt;&lt;font color="#000000"&gt;(data) ? rootPath : data);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;path = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#ff00ff"&gt;&amp;quot;{1}{0}{2}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, @&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, path.&lt;/font&gt;&lt;font color="#ff0000"&gt;Trim&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;new char&lt;/font&gt;&lt;font color="#000000"&gt;[] { &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\' &lt;/font&gt;&lt;font color="#000000"&gt;})&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, directory&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Exists&lt;/font&gt;&lt;font color="#000000"&gt;(path))&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CreateDirectory&lt;/font&gt;&lt;font color="#000000"&gt;(path);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;path;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Create&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#800080"&gt;1 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;60 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;60&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, (time, alignSeconds, alignedTime, data) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#008000"&gt;//Console.WriteLine(alignedTime);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;directory = alignedTime.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;yyyy-MM-dd_HH&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;path = (&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrEmpty&lt;/font&gt;&lt;font color="#000000"&gt;(data) || &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrWhiteSpace&lt;/font&gt;&lt;font color="#000000"&gt;(data) ? rootPath : data);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;path = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#ff00ff"&gt;&amp;quot;{1}{0}{2}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, @&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, path.&lt;/font&gt;&lt;font color="#ff0000"&gt;Trim&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;new char&lt;/font&gt;&lt;font color="#000000"&gt;[] { &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\' &lt;/font&gt;&lt;font color="#000000"&gt;})&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, directory&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Exists&lt;/font&gt;&lt;font color="#000000"&gt;(path))&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CreateDirectory&lt;/font&gt;&lt;font color="#000000"&gt;(path);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;path;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Create&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#800080"&gt;5 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;60&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, (time, alignSeconds, alignedTime, data) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;directory = DateTimeHelper.GetDateTimeString(alignedTime, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;yyyy-MM-dd_HH-mm&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;path = (&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrEmpty&lt;/font&gt;&lt;font color="#000000"&gt;(data) || &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrWhiteSpace&lt;/font&gt;&lt;font color="#000000"&gt;(data) ? rootPath : data);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;path = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#ff00ff"&gt;&amp;quot;{1}{0}{2}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, @&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, path.&lt;/font&gt;&lt;font color="#ff0000"&gt;Trim&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;new char&lt;/font&gt;&lt;font color="#000000"&gt;[] { &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\' &lt;/font&gt;&lt;font color="#000000"&gt;})&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;, directory&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Exists&lt;/font&gt;&lt;font color="#000000"&gt;(path))&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CreateDirectory&lt;/font&gt;&lt;font color="#000000"&gt;(path);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(x % &lt;/font&gt;&lt;font color="#800080"&gt;300 &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#0000ff"&gt;return string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;file = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;s = DateTimeHelper.GetDateTimeString(alignedTime, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;yyyyMMdd-HHmmss&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;file = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                                            &lt;font color="#ff00ff"&gt;&amp;quot;{1}{0}{2}.{3}.txt&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                            &lt;font color="#000000"&gt;, @&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                                                                                            &lt;font color="#000000"&gt;, path&lt;/font&gt;&lt;br/&gt;                                                                                                                            &lt;font color="#000000"&gt;, s&lt;/font&gt;&lt;br/&gt;                                                                                                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Guid&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;NewGuid&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;N&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;StreamWriter &lt;/font&gt;&lt;font color="#000000"&gt;sw = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;StreamWriter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;File&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;OpenWrite&lt;/font&gt;&lt;font color="#000000"&gt;(file)))&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;sw.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(s);&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;return string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;ok&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;测试项目2&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;按任意键测试该项目, 按\&amp;quot;q\&amp;quot;退出该测试项目&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;((r = &lt;/font&gt;&lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;()) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;q&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;CodeTimer.ParallelTime&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#ff00ff"&gt;&amp;quot;GetFiles&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;5&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Environment&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ProcessorCount&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#008000"&gt;//Console.WriteLine(Directory.GetDirectories(@&amp;quot;e:\temp2&amp;quot;, &amp;quot;*.*&amp;quot;, SearchOption.AllDirectories).Length);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;[] files = &lt;/font&gt;&lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetFiles&lt;/font&gt;&lt;font color="#000000"&gt;(rootPath, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;*.*&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;SearchOption&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;AllDirectories&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;list = files.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Parallel&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;list&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ParallelOptions&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#008000"&gt;MaxDegreeOfParallelism &lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#008000"&gt;//            1&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#800000"&gt;Environment&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ProcessorCount &lt;/font&gt;&lt;font color="#000000"&gt;- &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, (x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;s = &lt;/font&gt;&lt;font color="#800000"&gt;File&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadAllText&lt;/font&gt;&lt;font color="#000000"&gt;(x);&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Tasks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;InteropServices&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;CodeTimer&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Initialize&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Process&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetCurrentProcess&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;PriorityClass &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;ProcessPriorityClass&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;High&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentThread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Priority &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;ThreadPriority&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Highest&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;Time&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;, () =&amp;gt; { });&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#000000"&gt;ParallelTime(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;name, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;iteration, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;maxDegreeOfParallelism, &lt;/font&gt;&lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;InternalIterationProcess&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;name&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#800000"&gt;Parallel&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;For&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ParallelOptions&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#008000"&gt;MaxDegreeOfParallelism &lt;/font&gt;&lt;font color="#000000"&gt;= maxDegreeOfParallelism&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#008000"&gt;//, TaskScheduler = null&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, i =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static void &lt;/font&gt;&lt;font color="#000000"&gt;InternalIterationProcess(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;name, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;iteration, &lt;/font&gt;&lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrEmpty&lt;/font&gt;&lt;font color="#000000"&gt;(name))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 1.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;ConsoleColor &lt;/font&gt;&lt;font color="#000000"&gt;currentForeColor = &lt;/font&gt;&lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ForegroundColor&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ForegroundColor &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;ConsoleColor&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Yellow&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(name);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 2.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Collect&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;GCCollectionMode&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Forced&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;[] gcCounts = &lt;/font&gt;&lt;font color="#0000ff"&gt;new int&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt;= &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;gcCounts[i] = &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CollectionCount&lt;/font&gt;&lt;font color="#000000"&gt;(i);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 3.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Stopwatch &lt;/font&gt;&lt;font color="#000000"&gt;watch = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Stopwatch&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;watch.&lt;/font&gt;&lt;font color="#008000"&gt;Start&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;ulong &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount = GetCycleCount();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;ulong &lt;/font&gt;&lt;font color="#000000"&gt;cpuCycles = GetCycleCount() - cycleCount;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;watch.&lt;/font&gt;&lt;font color="#ff0000"&gt;Stop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 4.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ForegroundColor &lt;/font&gt;&lt;font color="#000000"&gt;= currentForeColor;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#ff00ff"&gt;&amp;quot;{0}Time Elapsed:{0}{1}ms&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\t&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, watch.&lt;/font&gt;&lt;font color="#008000"&gt;ElapsedMilliseconds&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;N0&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#ff00ff"&gt;&amp;quot;{0}CPU Cycles:{0}{1}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\t&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, cpuCycles.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;N0&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 5.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt;= &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;count = &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CollectionCount&lt;/font&gt;&lt;font color="#000000"&gt;(i) - gcCounts[i];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#ff00ff"&gt;&amp;quot;{0}Gen{1}:{0}{0}{2}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\t&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, i&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, count&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#008000"&gt;Time&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;name, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;iteration, &lt;/font&gt;&lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;InternalIterationProcess&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;name&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt; iteration; i++)&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static ulong &lt;/font&gt;&lt;font color="#000000"&gt;GetCycleCount()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;ulong &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;QueryThreadCycleTime(GetCurrentThread(), &lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DllImport&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;kernel32.dll&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#800000"&gt;MarshalAs&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;UnmanagedType&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Bool&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static extern bool &lt;/font&gt;&lt;font color="#000000"&gt;QueryThreadCycleTime(&lt;/font&gt;&lt;font color="#800000"&gt;IntPtr &lt;/font&gt;&lt;font color="#000000"&gt;threadHandle, &lt;/font&gt;&lt;font color="#0000ff"&gt;ref ulong &lt;/font&gt;&lt;font color="#000000"&gt;cycleTime);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DllImport&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;kernel32.dll&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static extern &lt;/font&gt;&lt;font color="#800000"&gt;IntPtr &lt;/font&gt;&lt;font color="#000000"&gt;GetCurrentThread();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;IO&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Globalization&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;DateTimeHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#000000"&gt;GetAlignSecondsDateTimes&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;time&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;params &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;long&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;[] processAlignSecondsDateTimesFuncs&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;default&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;foreach &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;x &lt;/font&gt;&lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;processAlignSecondsDateTimesFuncs)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;alignSeconds = x.&lt;/font&gt;&lt;font color="#008000"&gt;Item1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;alignTime = DateTimeHelper.GetAlignSecondsDateTime(time, alignSeconds);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(x.&lt;/font&gt;&lt;font color="#008000"&gt;Item2 &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;r = x.&lt;/font&gt;&lt;font color="#008000"&gt;Item2&lt;/font&gt;&lt;font color="#000000"&gt;(time, alignSeconds, alignTime, r);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static bool &lt;/font&gt;&lt;font color="#000000"&gt;IsVaildateTimestamp(&lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;timeStamp, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;timeoutSeconds)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;long &lt;/font&gt;&lt;font color="#000000"&gt;l = SecondsDiffNow(timeStamp);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;((l &amp;gt; &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; (l &amp;lt; timeoutSeconds));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static long &lt;/font&gt;&lt;font color="#000000"&gt;MillisecondsDiffNow(&lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;time)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;long &lt;/font&gt;&lt;font color="#000000"&gt;now = &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Ticks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;long &lt;/font&gt;&lt;font color="#000000"&gt;t = time.&lt;/font&gt;&lt;font color="#008000"&gt;Ticks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t - now) / &lt;/font&gt;&lt;font color="#800080"&gt;10000&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static long &lt;/font&gt;&lt;font color="#000000"&gt;SecondsDiffNow(&lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;time)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;MillisecondsDiffNow(time) / &lt;/font&gt;&lt;font color="#800080"&gt;1000&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;GetAlignSecondsDateTime(&lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;time, &lt;/font&gt;&lt;font color="#0000ff"&gt;long &lt;/font&gt;&lt;font color="#000000"&gt;alignSeconds)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;long &lt;/font&gt;&lt;font color="#000000"&gt;ticks = time.&lt;/font&gt;&lt;font color="#008000"&gt;Ticks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ticks -= ticks % (&lt;/font&gt;&lt;font color="#800080"&gt;10000 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;1000 &lt;/font&gt;&lt;font color="#000000"&gt;* alignSeconds);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;dt = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;(ticks);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;dt;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;GetDateTimeString(&lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;time, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;format)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;time.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(format);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;? ParseDateTimeNullable(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;text, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;format)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;time;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;? r = &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryParseExact&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;text&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, format&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTimeFormatInfo&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;InvariantInfo&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;DateTimeStyles&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;None&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;out &lt;/font&gt;&lt;font color="#000000"&gt;time&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;) ? time &lt;/font&gt;&lt;font color="#0000ff"&gt;as &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;? : &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;r;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2496777.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/05/11/2496777.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485342.html</id><title type="text">jsbeautifier + JScript.NET/JavaScript 编程实现 JavaScript、HTML、CSS 代码格式化脚本命令行工具 并集成到 EditPlus</title><summary type="text">/* * Source Code File Name: * Microshaoft.beautify.JScript.NET.js * Microshaoft invent for EditPlus user tool by using Microsoft JScript.NET"); * Thanks for "http://jsbeautifier.org/" supply \"https://github.com/einars/js-beautify\""); * JavaScript Source References: * </summary><published>2012-05-05T13:58:00Z</published><updated>2012-05-05T13:58:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485342.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485342.html"/><content type="html">&lt;font size="3"&gt;&lt;span style="line-height: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* Source Code File Name:&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;*            Microshaoft.beautify.JScript.NET.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* Microshaoft invent for EditPlus user tool by using Microsoft JScript.NET&amp;quot;);&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* Thanks for &amp;quot;http://jsbeautifier.org/&amp;quot; supply \&amp;quot;https://github.com/einars/js-beautify\&amp;quot;&amp;quot;);&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* JavaScript Source References:&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/beautify-css.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/beautify-html.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/beautify.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/javascriptobfuscator_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/myobfuscate_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/p_a_c_k_e_r_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/urlencode_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/tests/sanitytest.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* http://jsbeautifier.org/ HTML source&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* Compile Command Line:&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;*            C:\Windows\Microsoft.NET\Framework64\v4.0.30319\jsc.exe Microshaoft.beautify.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft begin ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;import System;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;import System.Enviroment;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;import System.IO;&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;args : &lt;/font&gt;&lt;font color="#ff0000"&gt;String&lt;/font&gt;&lt;font color="#000000"&gt;[] = &lt;/font&gt;&lt;font color="#800080"&gt;Environment&lt;/font&gt;&lt;font color="#000000"&gt;.GetCommandLineArgs();&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;path : &lt;/font&gt;&lt;font color="#ff0000"&gt;String &lt;/font&gt;&lt;font color="#000000"&gt;= args[1];&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//print(path);&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;stream : Stream = File.OpenRead(path);&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reader : StreamReader = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;StreamReader(stream);&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;s : &lt;/font&gt;&lt;font color="#ff0000"&gt;String &lt;/font&gt;&lt;font color="#000000"&gt;= reader.ReadToEnd();&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;stream.&lt;/font&gt;&lt;font color="#000080"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;stream.Dispose();&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*jslint onevar: false, plusplus: false */&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;JS Beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;---------------&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Written by Einar Lielmanis, &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;http://jsbeautifier.org/&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Originally converted to javascript by Vital, &amp;lt;vital76@gmail.com&amp;gt;&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;&amp;quot;End braces on own line&amp;quot; added by Chris J. Shull, &amp;lt;chrisjshull@gmail.com&amp;gt;&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;You are free to use this in any way you want, in case you find this useful or working for you.&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Usage:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;js_beautify(js_source_text);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;js_beautify(js_source_text, options);&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;The options are:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_size (default 4)          ?? indentation size,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_char (default space)      ?? character to indent with,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;preserve_newlines (default true) ?? whether existing line breaks should be preserved,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;preserve_max_newlines (default unlimited) - maximum number of line breaks to be preserved in one chunk,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;jslint_happy (default false) ?? if true, then jslint-stricter mode is enforced.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;jslint_happy   !jslint_happy&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;---------------------------------&lt;/font&gt;&lt;br/&gt;             &lt;font color="#008000"&gt;function ()      function()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;brace_style (default &amp;quot;collapse&amp;quot;) - &amp;quot;collapse&amp;quot; | &amp;quot;expand&amp;quot; | &amp;quot;end-expand&amp;quot; | &amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;put braces on the same line as control statements (default), or put braces on own line (Allman / ANSI style), or just put end braces on own line.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;expand-strict: put brace on own line even in such cases:&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;var a =&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;a: 5,&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;b: 6&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;This mode may break your scripts - e.g &amp;quot;return { a: 1 }&amp;quot; will be broken into two lines, so beware.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;space_before_conditional: should the space before conditional statement be added, &amp;quot;if(true)&amp;quot; vs &amp;quot;if (true)&amp;quot;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;e.g&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;js_beautify(js_source_text, {&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_size': 1,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_char': '\t'&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;});&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;js_beautify(js_source_text, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft begin ===========================================================::&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#ff0000"&gt;String&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//return &amp;quot;&amp;quot;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;, output, token_text, last_type, last_text, last_last_text, last_word, flags, flag_store, indent_string;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;whitespace, wordchar, punct, parser_pos, line_starters, digits;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;prefix, token_type, do_block_just_closed;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;wanted_newline, just_added_newline, n_newlines;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;preindent_string = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// Some interpreters have unexpected results with foo = baz || bar;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;: {};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_brace_style;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// compatibility&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_after_anon_function !== &lt;/font&gt;&lt;font color="#008080"&gt;undefined &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy === &lt;/font&gt;&lt;font color="#008080"&gt;undefined&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_after_anon_function;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.braces_on_own_line !== &lt;/font&gt;&lt;font color="#008080"&gt;undefined&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//graceful handling of deprecated option&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_brace_style = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.braces_on_own_line ? &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;collapse&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;opt_brace_style = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style ? &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style : (opt_brace_style ? opt_brace_style : &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;collapse&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_indent_size = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size ? &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size : 4;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_indent_char = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char ? &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char : &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_preserve_newlines = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.preserve_newlines === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;true &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.preserve_newlines;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_max_preserve_newlines = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_preserve_newlines === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_preserve_newlines;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_jslint_happy = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.keep_array_indentation === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.keep_array_indentation;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_space_before_conditional = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_before_conditional === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;true &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_before_conditional;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_indent_case = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_case === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_case;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// cache the source's length.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_length = js_source_text.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;trim_output(eat_newlines)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;eat_newlines = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;eat_newlines === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: eat_newlines;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;' ' &lt;/font&gt;&lt;font color="#000000"&gt;|| output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === indent_string || output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === preindent_string || (eat_newlines &amp;amp;&amp;amp; (output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;|| output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r'&lt;/font&gt;&lt;font color="#000000"&gt;))))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(s)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;s.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s\s*|\s\s*&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;force_newline()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;old_keep_array_indentation = opt_keep_array_indentation;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;print_newline()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_keep_array_indentation = old_keep_array_indentation;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;print_newline(ignore_repeated)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.eat_next_space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_keep_array_indentation &amp;amp;&amp;amp; is_array(flags.mode))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;ignore_repeated = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;ignore_repeated === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;true &lt;/font&gt;&lt;font color="#000000"&gt;: ignore_repeated;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;trim_output();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!output.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// no newline on start of file&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| !ignore_repeated)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(preindent_string)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(preindent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; flags.indentation_level; i += 1)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line &amp;amp;&amp;amp; flags.var_line_reindented)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string); &lt;/font&gt;&lt;font color="#008000"&gt;// skip space-stuffing, if indenting with a tab&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.case_body)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;print_single_space()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// no you will not print just a space after a comment&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.eat_next_space)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.eat_next_space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;last_output = &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;last_output = output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_output !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;' ' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_output !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_output !== indent_string)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// prevent occassional duplicate space&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;print_token()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.eat_next_space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(token_text);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;indent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.indentation_level += 1;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;remove_indent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === indent_string)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;set_mode(mode)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flag_store.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(flags);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags =&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;previous_mode: flags ? flags.mode : &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;mode: mode,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;var_line: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;var_line_tainted: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;var_line_reindented: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;in_html_comment: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;if_line: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;in_case: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;case_body: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eat_next_space: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;indentation_baseline: -1,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;indentation_level: (flags ? flags.indentation_level + (flags.case_body ? 1 : 0) + ((flags.var_line &amp;amp;&amp;amp; flags.var_line_reindented) ? 1 : 0) : 0),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ternary_depth: 0&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;is_array(mode)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]' &lt;/font&gt;&lt;font color="#000000"&gt;|| mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;is_expression(mode)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;in_array(mode, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;restore_mode()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;do_block_just_closed = flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'DO_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flag_store.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; 0)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;mode = flags.mode;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags = flag_store.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.previous_mode = mode;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;all_lines_start_with(lines, c)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; lines.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(lines[i])[0] != c)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;is_special_word(word)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;in_array(word, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'case'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'return'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'do'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'if'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'throw'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;in_array(what, arr)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; arr.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i += 1)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(arr[i] === what)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;look_up(exclude)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;local_pos = parser_pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(local_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, whitespace) &amp;amp;&amp;amp; c != exclude)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;local_pos++;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(local_pos &amp;gt;= input_length) &lt;/font&gt;&lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(local_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;c;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;get_next_token()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;n_newlines = 0;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;wanted_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;keep_whitespace = opt_keep_array_indentation &amp;amp;&amp;amp; is_array(flags.mode);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(keep_whitespace)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// slight mess to allow nice preservation of array indentation and reindent that correctly&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// first time when we get to the arrays:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// var a = [&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// ....'something'&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// we make note of whitespace_count = 4 into flags.indentation_baseline&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// so we know that 4 whitespaces in original source match indent_level of reindented source&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// and afterwards, when we get to&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//    'something,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// .......'something else'&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// we know that this should be indented to indent_level + (7 - indentation_baseline) spaces&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;whitespace_count = 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, whitespace))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;trim_output();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;whitespace_count = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\t'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;whitespace_count += 4;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// nothing&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;whitespace_count += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.indentation_baseline === -1)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.indentation_baseline = whitespace_count;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(just_added_newline)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; flags.indentation_level + 1; i += 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.indentation_baseline !== -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; whitespace_count - flags.indentation_baseline; i++)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, whitespace))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;n_newlines += ((opt_max_preserve_newlines) ? (n_newlines &amp;lt;= opt_max_preserve_newlines) ? 1 : 0 : 1);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_preserve_newlines)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(n_newlines &amp;gt; 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; n_newlines; i += 1)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline(i === 0);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;wanted_newline = n_newlines &amp;gt; 0;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, wordchar))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), wordchar))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;c += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos === input_length)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// small and surprisingly unugly hack for 1E-10 representation&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos !== input_length &amp;amp;&amp;amp; c.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^[0-9]+[Ee]&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/) &amp;amp;&amp;amp; (&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'-' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'+'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sign = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = get_next_token(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c += sign + t[0];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'in'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// hack for 'in' operator&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline &amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; !flags.if_line &amp;amp;&amp;amp; (opt_preserve_newlines || last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(' &lt;/font&gt;&lt;font color="#000000"&gt;|| c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;')' &lt;/font&gt;&lt;font color="#000000"&gt;|| c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// peek for comment /* ... */&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;inline_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(!(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;comment += c;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\x0d' &lt;/font&gt;&lt;font color="#000000"&gt;|| c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\x0a'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;inline_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(inline_comment &amp;amp;&amp;amp; n_newlines == 0)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/*' &lt;/font&gt;&lt;font color="#000000"&gt;+ comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*/'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_INLINE_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/*' &lt;/font&gt;&lt;font color="#000000"&gt;+ comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*/'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_BLOCK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// peek for comment // ...&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;comment = c;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;comment += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[comment, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008000"&gt;// string&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008000"&gt;// string&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; ((last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; is_special_word(last_text)) || (last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;')' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; in_array(flags.previous_mode, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;])) || (last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;))))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// regexp&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sep = c;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;resulting_string = c;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(sep === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// handle regexp separately...&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;in_char_class = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(esc || in_char_class || &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== sep)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;resulting_string += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!esc)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;in_char_class = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;in_char_class = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// incomplete string/rexp when end-of-file reached.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// bail out with what had been received so far.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[resulting_string, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// and handle string also separately&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(esc || &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== sep)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;resulting_string += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!esc)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// incomplete string/rexp when end-of-file reached.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// bail out with what had been received so far.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[resulting_string, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;resulting_string += sep;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(sep === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// regexps may have modifiers /regexp/MOD , so fetch those, too&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; in_array(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), wordchar))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;resulting_string += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[resulting_string, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;=== 0 &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// shebang&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;resulting_string = c;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; c != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;resulting_string += c;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(resulting_string) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;get_next_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// Spidermonkey-specific sharp variables for circular references&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// https://developer.mozilla.org/En/Sharp_variables_in_JavaScript&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// http://mxr.mozilla.org/mozilla-central/source/js/src/jsscan.cpp around line 1935&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sharp = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; in_array(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), digits))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;sharp += c;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; c !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; c !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;sharp += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;sharp += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{}'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[sharp, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos - 1, parser_pos + 3) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;!--'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parser_pos += 3;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;!--'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;[parser_pos] != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;[parser_pos];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos++;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.in_html_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'-' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; flags.in_html_comment &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos - 1, parser_pos + 2) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.in_html_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, punct))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; in_array(c + &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), punct))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_UNKNOWN'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//----------------------------------&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;indent_string = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(opt_indent_size &amp;gt; 0)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indent_string += opt_indent_char;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_indent_size -= 1;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(js_source_text &amp;amp;&amp;amp; (js_source_text[0] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;' ' &lt;/font&gt;&lt;font color="#000000"&gt;|| js_source_text[0] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\t'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;preindent_string += js_source_text[0];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;js_source_text = js_source_text.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(1);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;input &lt;/font&gt;&lt;font color="#000000"&gt;= js_source_text;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_word = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// last 'TK_WORD' passed&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// last token type&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_text = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// last token text&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_last_text = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// pre-last token text&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;output = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;do_block_just_closed = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;whitespace = &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n\r\t &amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;wordchar = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_$'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;digits = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'0123456789'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;punct = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'+ - * / % &amp;amp; ++ -- = += -= *= /= %= == === != !== &amp;gt; &amp;lt; &amp;gt;= &amp;lt;= &amp;gt;&amp;gt; &amp;lt;&amp;lt; &amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;= &amp;gt;&amp;gt;= &amp;lt;&amp;lt;= &amp;amp;&amp;amp; &amp;amp;= | || ! !! , : ? ^ ^= |= ::'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;punct += &lt;/font&gt;&lt;font color="#ff00ff"&gt;' &amp;lt;%= &amp;lt;% %&amp;gt; &amp;lt;?= &amp;lt;? ?&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// try to be a good boy and try not to break the markup language identifiers&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;punct = punct.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// words which should always start on new line.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;line_starters = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'continue,try,throw,return,var,if,switch,case,default,for,while,break,function'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// states showing if we are currently in expression (i.e. &amp;quot;if&amp;quot; case) - 'EXPRESSION', or in usual block (like, procedure), 'BLOCK'.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// some formatting depends on that.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;flag_store = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;parser_pos = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = get_next_token(parser_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;token_text = t[0];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;token_type = t[1];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;switch &lt;/font&gt;&lt;font color="#000000"&gt;(token_type)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// this is array index specifier, break immediately&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// a[x], fn()[x]&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(last_text, line_starters))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]' &lt;/font&gt;&lt;font color="#000000"&gt;|| flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// ], [ goes to new line&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'for'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(last_word, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'if'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'while'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'.'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// do nothing on (( and )( and ][ and ]( and .(&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'typeof'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// function() vs function ()&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_jslint_happy)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(last_text, line_starters) || last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'catch'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_space_before_conditional)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// trim_output();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// print_newline(true);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;remove_indent();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'do'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'DO_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;empty_braces = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;empty_braces = (look_up() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!empty_braces)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'=' &lt;/font&gt;&lt;font color="#000000"&gt;|| (is_special_word(last_text) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!empty_braces) indent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// if TK_OPERATOR or TK_START_EXPR&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_array(flags.previous_mode) &amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// }, { in array context&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline(); &lt;/font&gt;&lt;font color="#008000"&gt;// [a, b, c, {&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// nothing&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(just_added_newline)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;remove_indent();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// {}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;trim_output();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_array(flags.mode) &amp;amp;&amp;amp; opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// we REALLY need a newline here, but newliner would skip that&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// no, it's not you. even I have problems understanding how this works&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// and what does what.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(do_block_just_closed)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// do {} ## while ()&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;do_block_just_closed = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((just_added_newline || last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_BLOCK_COMMENT' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// make sure there is a nice clean space of at least one blank line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// before a new function definition&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;n_newlines = just_added_newline ? n_newlines : 0;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_preserve_newlines)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;n_newlines = 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; 2 - n_newlines; i++)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'case' &lt;/font&gt;&lt;font color="#000000"&gt;|| token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'default'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;':' &lt;/font&gt;&lt;font color="#000000"&gt;|| flags.case_body)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// switch cases following one another&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;remove_indent();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// case statement starts in the same line where switch&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_indent_case) flags.indentation_level--;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_indent_case) flags.indentation_level++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.in_case = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.case_body = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NONE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!in_array(token_text.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;(), [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'catch'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'finally'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;end-expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'DO_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; is_expression(flags.mode))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// eat newlines between ...else *** some_op...&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// won't preserve extra newlines in this place (if any), but don't care that much&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;trim_output(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text, line_starters) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'get' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'set'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.if_line &amp;amp;&amp;amp; last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;(), [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'catch'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'finally'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;end-expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;trim_output(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(prefix === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'=' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// no need to force newline on 'function': (function&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// DONOTHING&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'new'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(is_special_word(last_text))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// no newline between 'return nnn'&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| token_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var'&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;':'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// no need to force newline on 'var': for (var x = 0...)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'if' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// no newline for } else if {&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text, line_starters) &amp;amp;&amp;amp; last_text != &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(is_array(flags.mode) &amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;',' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline(); &lt;/font&gt;&lt;font color="#008000"&gt;// }, in lists get a newline treatment&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(prefix === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;last_word = token_text;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'if'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// OBJECT mode is weird and doesn't get reset too well.&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; in_array(flags.previous_mode, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// just got an '=' in a var-line, different formatting/line-breaking, etc will now be done&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space_after = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line &amp;amp;&amp;amp; token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;',' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (is_expression(flags.mode)))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// do not break on comma, for(var a = 1, b = 2)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line_tainted)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// } else if (token_text === ':') {&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// hmm, when does this happen? tests don't catch this&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// flags.var_line = false;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_special_word(last_text))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// &amp;quot;return&amp;quot; had a special handling in TK_WORD. Now we need to return the favor&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;':' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; flags.in_case)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_indent_case) flags.case_body = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token(); &lt;/font&gt;&lt;font color="#008000"&gt;// colon really asks for separate treatment&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.in_case = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'::'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// no spaces around exotic namespacing syntax operator&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line_tainted)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; flags.mode !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;(EXPRESSION)&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// EXPR or DO_BLOCK&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// } else if (in_array(token_text, ['--', '++', '!']) || (in_array(token_text, ['-', '+']) &amp;amp;&amp;amp; (in_array(last_type, ['TK_START_BLOCK', 'TK_START_EXPR', 'TK_EQUALS']) || in_array(last_text, line_starters) || in_array(last_text, ['==', '!=', '+=', '-=', '*=', '/=', '+', '-'])))) {&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'++'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;]) || (in_array(token_text, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'-'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'+'&lt;/font&gt;&lt;font color="#000000"&gt;]) &amp;amp;&amp;amp; (in_array(last_type, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;]) || in_array(last_text, line_starters))))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// unary operators (and binary +/- pretending to be unary) special cases&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_after = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; is_expression(flags.mode))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// for (;; ++i)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//        ^^^&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; in_array(last_text, line_starters))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// { foo; --i }&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// foo(); --bar;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'.'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// decimal digits or object.property&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;':'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.ternary_depth == 0)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.ternary_depth -= 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'?'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.ternary_depth += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(space_before)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(space_after)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// flags.eat_next_space = true;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_BLOCK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lines = token_text.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(/\x0a|\x0d\x0a/);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(all_lines_start_with(lines.&lt;/font&gt;&lt;font color="#000080"&gt;slice&lt;/font&gt;&lt;font color="#000000"&gt;(1), &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// javadoc: reformat and reindent&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(lines[0]);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 1; i &amp;lt; lines.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(lines[i]));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// simple block comment: leave intact&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(lines.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// multiline comment block starts with a new line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// single-line /* comment */ stays where it is&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; lines.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(lines[i]);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(look_up(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_INLINE_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_expression(flags.mode))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;force_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(look_up(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) force_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_UNKNOWN'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_special_word(last_text))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;last_last_text = last_text;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;last_type = token_type;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;last_text = token_text;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sweet_code = preindent_string + output.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/[\n ]+&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;sweet_code;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Add support for CommonJS. Just put this file somewhere on your require.paths&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// and you will be able to `var js_beautify = require(&amp;quot;beautify&amp;quot;).js_beautify`.&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// comments by Microshaoft begin ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;if (typeof exports !== &amp;quot;undefined&amp;quot;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;exports.js_beautify = js_beautify;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// comments by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;Style HTML&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;---------------&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Written by Nochum Sossonko, (nsossonko@hotmail.com)&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Based on code initially developed by: Einar Lielmanis, &amp;lt;elfz@laacz.lv&amp;gt;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;http://jsbeautifier.org/&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;You are free to use this in any way you want, in case you find this useful or working for you.&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Usage:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;style_html(html_source);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;style_html(html_source, options);&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;The options are:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_size (default 4)          ?? indentation size,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_char (default space)      ?? character to indent with,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;max_char (default 70)            -  maximum amount of characters per line,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;brace_style (default &amp;quot;collapse&amp;quot;) - &amp;quot;collapse&amp;quot; | &amp;quot;expand&amp;quot; | &amp;quot;end-expand&amp;quot;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;put braces on the same line as control statements (default), or put braces on own line (Allman / ANSI style), or just put end braces on own line.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;unformatted (default ['a'])      - list of tags, that shouldn't be reformatted&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_scripts (default normal)  - &amp;quot;keep&amp;quot;|&amp;quot;separate&amp;quot;|&amp;quot;normal&amp;quot;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;e.g.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;style_html(html_source, {&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_size': 2,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_char': ' ',&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'max_char': 78,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'brace_style': 'expand',&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'unformatted': ['a', 'sub', 'sup', 'b', 'i', 'u']&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;});&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;style_html(html_source, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//Wrapper function to invoke all the necessary constructors and deal with the output.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;multi_parser, indent_size, indent_character, max_char, brace_style;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;|| {};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;indent_size = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size || 4;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;indent_character = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char || &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;brace_style = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style || &lt;/font&gt;&lt;font color="#ff00ff"&gt;'collapse'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;max_char = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_char == 0 ? &lt;/font&gt;&lt;font color="#008080"&gt;Infinity &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_char || 70;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unformatted = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.unformatted || [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'a'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;Parser()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos = 0; &lt;/font&gt;&lt;font color="#008000"&gt;//Parser position&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.token = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//reflects the current Parser mode: TAG/CONTENT&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags &lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//An object to hold tags, their position, and their parent-tags, initiated with default values&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;parent&lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent1'&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parentcount: 1,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parent1: &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.token_text = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_text = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.token_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils =&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//Uilities made available to the various functions&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;whitespace: &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n\r\t &amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;single_token: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'br,input,link,meta,!doctype,basefont,base,area,hr,wbr,param,img,isindex,?xml,embed'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//all the single tags for HTML&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;extra_liners: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'head,body,/html'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//for tags that need a line of whitespace before them&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;in_array: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(what, arr)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; arr.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(what === arr[i])&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_content = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to capture regular content between tags&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= [];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//if a space is needed&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos) !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;) : [&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(input_char, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count--;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//don't want to insert unnecessary space&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(space)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.max_char)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//insert a line when the max_char is reached&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; i++)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(input_char); &lt;/font&gt;&lt;font color="#008000"&gt;//letter at-a-time (or string) inserted to an array&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;) : &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_contents_to = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;name&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//get the full content of a script or style to pass to js_beautify&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos == &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reg_match = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#ff0000"&gt;RegExp&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\&amp;lt;\/' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#008080"&gt;name &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\s*\&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'igm'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;reg_match.&lt;/font&gt;&lt;font color="#008080"&gt;lastIndex &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reg_array = reg_match.&lt;/font&gt;&lt;font color="#000080"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;end_script = reg_array ? reg_array.&lt;/font&gt;&lt;font color="#008080"&gt;index &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//absolute end of script&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;lt; end_script)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//get everything in between the script tags&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos, end_script);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos = end_script;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(tag)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to record a tag and its parent in this.tags Object&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;])&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//check for the existence of this tag type&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]] = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; &lt;/font&gt;&lt;font color="#008000"&gt;//and record the present indent level&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise initialize this tag type&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] = 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]] = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; &lt;/font&gt;&lt;font color="#008000"&gt;//and record the present indent level&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;] = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//set the parent (i.e. in the case of a div this.tags.div1parent)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent &lt;/font&gt;&lt;font color="#000000"&gt;= tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//and make this the current parent (i.e. in the case of a div 'div1')&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.retrieve_tag = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(tag)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to retrieve the opening tag to the corresponding closer&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;])&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if the openener is not in the Object we ignore it&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;temp_parent = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//check to see if it's a closable tag.&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(temp_parent)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//till we reach '' (the initial value);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] === temp_parent)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if this is it use it&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;temp_parent = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[temp_parent + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise keep on climbing up the DOM Tree&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(temp_parent)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if we caught something&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]]; &lt;/font&gt;&lt;font color="#008000"&gt;//set the indent_level accordingly&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[temp_parent + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//and set the current parent&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;delete this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//delete the closed tags parent reference...&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;delete this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]]; &lt;/font&gt;&lt;font color="#008000"&gt;//...and the tag itself&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] == 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;delete this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]--;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_tag = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to get a full tag and parse its type&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= [];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;) : [&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(input_char, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//don't want to insert unnecessary space&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count--;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;[1] || &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;[1] !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if we're in a comment strings don't get treated specially&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;input_char += &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(input_char);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//no space before =&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'=' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; input_char !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; space)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//no space after = or before &amp;gt;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.max_char)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(input_char); &lt;/font&gt;&lt;font color="#008000"&gt;//inserts character at-a-time (or string)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(input_char !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_complete = &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_index;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if there's whitespace, thats where the tag name ends&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;tag_index = tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise go with the tag ending&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;tag_index = tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_check = tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(1, tag_index).&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 2) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(tag_check, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.single_token))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if this tag name is a single tag type (either in the list or has a closing /)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'script'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//for later script handling&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag(tag_check);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'style'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//for future style handling (for now it justs uses get_content)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag(tag_check);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(tag_check, unformatted))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// do not reformat the &amp;quot;unformatted&amp;quot; tags&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;/' &lt;/font&gt;&lt;font color="#000000"&gt;+ tag_check + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete); &lt;/font&gt;&lt;font color="#008000"&gt;//...delegate to get_unformatted function&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(0) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//peek for &amp;lt;!-- comment&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[if'&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//peek for &amp;lt;!--[if conditional comment&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'!IE'&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//this type needs a closing --&amp;gt; so...&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete); &lt;/font&gt;&lt;font color="#008000"&gt;//...delegate to get_unformatted&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'START'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[endif'&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//peek for &amp;lt;!--[endif end conditional comment&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'END'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.unindent();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[cdata['&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if it's a &amp;lt;[cdata[ comment...&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;']]&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete); &lt;/font&gt;&lt;font color="#008000"&gt;//...delegate to get_unformatted function&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//&amp;lt;![CDATA[ comments are treated like single tags&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(0) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//this tag is a double tag so check for tag-ending&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.retrieve_tag(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(1)); &lt;/font&gt;&lt;font color="#008000"&gt;//remove it and all ancestors&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'END'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise it's a start-tag&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag(tag_check); &lt;/font&gt;&lt;font color="#008000"&gt;//push it on the tag stack&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'START'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(tag_check, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.extra_liners))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//check if this double needs an extra line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.output);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;); &lt;/font&gt;&lt;font color="#008000"&gt;//returns fully formatted tag&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(delimiter, orig_tag)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to return unformatted content in its entirety&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(orig_tag &amp;amp;&amp;amp; orig_tag.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(delimiter) != -1)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos++&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(input_char, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!space)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count--;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;|| input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;+= &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;/*  Don't change tab indention for unformatted blocks.  If using code for html editing, this will greatly affect &amp;lt;pre&amp;gt; tags if they are specified in the 'unformatted array'&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;for (var i=0; i&amp;lt;this.indent_level; i++) {&lt;/font&gt;&lt;br/&gt;              &lt;font color="#008000"&gt;content += this.indent_string;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;space = false; //...and make sure other indentation is erased&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;+= input_char;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(delimiter) == -1);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_token = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//initial handler for token-retrieval&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_SCRIPT' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//check if we need to format javascript&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(7)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_contents_to(&lt;/font&gt;&lt;font color="#008080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;token !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[token, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#008080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.current_mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_content();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;token !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[token, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.current_mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TAG'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_tag();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;token !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_name_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[token, tag_name_type];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_full_indent = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(level)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;level = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level + level || 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(level &amp;lt; 1) &lt;/font&gt;&lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff0000"&gt;Array&lt;/font&gt;&lt;font color="#000000"&gt;(level + 1).&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.printer = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(js_source, indent_character, indent_size, max_char, brace_style)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//handles input/output and some other printing functions&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input &lt;/font&gt;&lt;font color="#000000"&gt;= js_source || &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//gets the input for the Parser&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.output = [];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_character = indent_character;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size = indent_size;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style = brace_style;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level = 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.max_char = max_char;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0; &lt;/font&gt;&lt;font color="#008000"&gt;//count to see if max_char was exceeded&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string += &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_character;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(ignore, arr)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!arr || !arr.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!ignore)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//we might want the extra line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(arr[arr.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1], &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;arr.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;arr.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;arr.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_token = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level++;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.unindent = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level &amp;gt; 0)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level--;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return this&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;/*_____________________--------------------_____________________*/&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;multi_parser = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;Parser(); &lt;/font&gt;&lt;font color="#008000"&gt;//wrapping functions Parser&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;multi_parser.printer(html_source, indent_character, indent_size, max_char, brace_style); &lt;/font&gt;&lt;font color="#008000"&gt;//initialize starting values&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = multi_parser.get_token();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.token_text = t[0];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.token_type = t[1];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;switch &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_START'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.indent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_END'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//Print new line only if the tag has no content and has child&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.last_token === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_CONTENT' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; multi_parser.last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_name = multi_parser.token_text.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/\w+/)[0];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_extracted_from_last_output = multi_parser.output[multi_parser.output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1].&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/&amp;lt;\s*(\w+)/);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_extracted_from_last_output === &lt;/font&gt;&lt;font color="#0000ff"&gt;null &lt;/font&gt;&lt;font color="#000000"&gt;|| tag_extracted_from_last_output[1] !== tag_name) multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TAG'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;multi_parser.output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;text &lt;/font&gt;&lt;font color="#000000"&gt;= multi_parser.token_text;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;_beautifier = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;js_beautify == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; js_beautify;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;_beautifier = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;css_beautify == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; css_beautify;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_scripts == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;keep&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;script_indent_level = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_scripts == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;separate&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;script_indent_level = -multi_parser.indent_level;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;script_indent_level = 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentation = multi_parser.get_full_indent(script_indent_level);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(_beautifier)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// call the Beautifier if avaliable&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;text &lt;/font&gt;&lt;font color="#000000"&gt;= _beautifier(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*/, indentation), &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// simply indent the string otherwise&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;white = &lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*/)[0];&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;_level = white.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/[^\n\r]*&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/)[0].&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.indent_string).&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reindent = multi_parser.get_full_indent(script_indent_level - _level);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;text &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*/, indentation).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\r\n|\r|\n/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ reindent).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\s*&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;multi_parser.print_token(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TAG'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.last_token = multi_parser.token_type;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.last_text = multi_parser.token_text;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;multi_parser.output.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;CSS Beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;---------------&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;Written by Harutyun Amirjanyan, (amirjanyan@gmail.com)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;Based on code initially developed by: Einar Lielmanis, &amp;lt;elfz@laacz.lv&amp;gt;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;http://jsbeautifier.org/&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;You are free to use this in any way you want, in case you find this useful or working for you.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;Usage:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;css_beautify(source_text);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;css_beautify(source_text, options);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;The options are:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;indent_size (default 4)          ?? indentation size,&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;indent_char (default space)      ?? character to indent with,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;e.g&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;css_beautify(css_source_text, {&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_size': 1,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_char': '\t'&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;});&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// http://www.w3.org/TR/CSS21/syndata.html#tokenization&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// http://www.w3.org/TR/css3-syntax/&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;css_beautify(source_text, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;|| {};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentSize = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size || 4;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentCharacter = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char || &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// compatibility&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;indentSize == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;string&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;) indentSize = &lt;/font&gt;&lt;font color="#000080"&gt;parseInt&lt;/font&gt;&lt;font color="#000000"&gt;(indentSize);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// tokenizer&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;whiteRe = /^\s+&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;wordRe = /[\w&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;\-_]/;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;pos = -1,&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;= source_text.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(++pos)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;peek()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;source_text.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos + 1)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;eatString(comma)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\\&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== comma)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;source_text.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;start&lt;/font&gt;&lt;font color="#000000"&gt;, pos + 1);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;eatWhitespace()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(peek()))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;pos != &lt;/font&gt;&lt;font color="#008080"&gt;start&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;skipWhitespace()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;font color="#000000"&gt;{} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;()))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;pos != &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;+ 1;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;eatComment()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;*&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; peek() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;/&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;source_text.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;start&lt;/font&gt;&lt;font color="#000000"&gt;, pos + 1);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;lookBack(str, &lt;/font&gt;&lt;font color="#008080"&gt;index&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;slice&lt;/font&gt;&lt;font color="#000000"&gt;(-str.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;+ (&lt;/font&gt;&lt;font color="#008080"&gt;index &lt;/font&gt;&lt;font color="#000000"&gt;|| 0), &lt;/font&gt;&lt;font color="#008080"&gt;index&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;() == str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// printer&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentString = source_text.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^[\r\n]*[\t ]*/)[0];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;singleIndent = &lt;/font&gt;&lt;font color="#ff0000"&gt;Array&lt;/font&gt;&lt;font color="#000000"&gt;(indentSize + 1).&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(indentCharacter);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentLevel = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;indent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentLevel++;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentString += singleIndent;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;outdent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentLevel--;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentString = indentString.&lt;/font&gt;&lt;font color="#000080"&gt;slice&lt;/font&gt;&lt;font color="#000000"&gt;(0, -indentSize);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//print = {}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000080"&gt;print &lt;/font&gt;&lt;font color="#000000"&gt;= {}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;] = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;] = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(keepWhitespace)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!keepWhitespace) &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1]))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(indentString) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indentString);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; !whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1])) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;output = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(indentString) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indentString);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;/*_____________________--------------------_____________________*/&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;isAfterSpace = skipWhitespace();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;) &lt;/font&gt;&lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;](&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;outdent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;](&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(eatString(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;, indentString);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; peek() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// comment&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(eatComment(), &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, indentString);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'('&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// may be a url&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eatWhitespace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(lookBack(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;url&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, -1) &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#ff00ff"&gt;')' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\''&lt;/font&gt;&lt;font color="#000000"&gt;) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(eatString(&lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else &lt;/font&gt;&lt;font color="#000000"&gt;pos--;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eatWhitespace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// no whitespace before or after&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eatWhitespace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isAfterSpace) &lt;/font&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sweetCode = output.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/[\n ]+&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;sweetCode;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//if (typeof exports !== &amp;quot;undefined&amp;quot;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//    exports.css_beautify = css_beautify;&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;unpacker_filter(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;trailing_comments = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*\/\*/.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'*/'&lt;/font&gt;&lt;font color="#000000"&gt;) + 2);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(comment.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s+/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;trailing_comments += comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*\/\//.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*\/\/.*/)[0];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(comment.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s+/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;trailing_comments += comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(found);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(P_A_C_K_E_R.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// P.A.C.K.E.R unpacking may fail, even though it is detected&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unpacked = P_A_C_K_E_R.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(unpacked != &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(unpacked);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(Urlencoded.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(Urlencoded.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(JavascriptObfuscator.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(JavascriptObfuscator.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(MyObfuscate.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;trailing_comments + &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;looks_like_html(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// &amp;lt;foo&amp;gt; - looks like html&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// &amp;lt;!--\nalert('foo!');\n--&amp;gt; - doesn't look like html&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;trimmed = &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^[ \t\n\r]+/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment_mark = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;!-' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;'-'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(trimmed &amp;amp;&amp;amp; (trimmed.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(0, 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; trimmed.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(0, 4) !== comment_mark));&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;beautify(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    if (the.beautify_in_progress) return;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    store_settings_to_cookie();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    the.beautify_in_progress = true;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    var opts = {&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                indent_size: indent_size,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                indent_char: indent_char,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                preserve_newlines:preserve_newlines,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                brace_style: brace_style,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                keep_array_indentation:keep_array_indentation,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                space_after_anon_function:true,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                space_before_conditional: space_before_conditional,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                indent_scripts:indent_scripts};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(looks_like_html(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;style_html(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;js_beautify(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    the.beautify_in_progress = false;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Unpacker for Dean Edward's p.a.c.k.e.r, a part of javascript beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Coincidentally, it can defeat a couple of other eval-based compressors.&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (P_A_C_K_E_R.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = P_A_C_K_E_R.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// &lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;P_A_C_K_E_R =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;P_A_C_K_E_R._starts_with(str.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/ +/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;), &lt;/font&gt;&lt;font color="#ff00ff"&gt;'eval(function('&lt;/font&gt;&lt;font color="#000000"&gt;) || P_A_C_K_E_R._starts_with(str.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/ +/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;), &lt;/font&gt;&lt;font color="#ff00ff"&gt;'eval((function('&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(P_A_C_K_E_R.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000080"&gt;eval&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'unpacked_source = ' &lt;/font&gt;&lt;font color="#000000"&gt;+ str.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(4) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; unpacked_source)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;str = unpacked_source;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;catch &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;error&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// well, it failed. we'll just return the original, instead of crashing on user.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_starts_with: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str, what)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) === what;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(P_A_C_K_E_R.detect, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;P_A_C_K_E_R.detect&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'eval(function(p,a,c,k,e,r'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'eval ( function(p, a, c, k, e, r'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(P_A_C_K_E_R.unpack, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'P_A_C_K_E_R.unpack'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;eval(function(p,a,c,k,e,r){e=String;if(!''.replace(/^/,String)){while(c--)r[c]=k[c]||c;k=[function(e){return r[e]}];e=function(){return'\\\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c]);return p}('0 2=1',3,3,'var||a'.split('|'),0,{}))&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a=1'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;starts_with_a = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(what)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;P_A_C_K_E_R._starts_with(what, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'a'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(starts_with_a, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;P_A_C_K_E_R._starts_with(?, a)&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'abc'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'bcd'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'a'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// trivial bookmarklet/escaped script detector for the javascript beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (Urlencoded.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = Urlencoded.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// &lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;Urlencoded =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// the fact that script doesn't contain any space, but has %20 instead&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// should be sufficient check for now.&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;) == -1)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'%20'&lt;/font&gt;&lt;font color="#000000"&gt;) != -1) &lt;/font&gt;&lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/[^%]+/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; 3) &lt;/font&gt;&lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(Urlencoded.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000080"&gt;unescape&lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\+/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'%20'&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(Urlencoded.detect, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Urlencoded.detect&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a+=+b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a=b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20%21%22'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(Urlencoded.unpack, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'Urlencoded.unpack'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcd'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcd'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a=b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a=b'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a+=+b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// simple unpacker/deobfuscator for scripts messed up with javascriptobfuscator.com&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (JavascriptObfuscator.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = JavascriptObfuscator.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// &lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;JavascriptObfuscator =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;/^var _0x[a-f0-9]+ ?\= ?\[/.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(str);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(JavascriptObfuscator.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;matches = /&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;(_0x[a-f\d]+) ?\= ?\[(.*?)\];/.&lt;/font&gt;&lt;font color="#000080"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;(str);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(matches)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;var_name = matches[1];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;strings = JavascriptObfuscator._smart_split(matches[2]);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;str = str.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(matches[0].&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;k &lt;/font&gt;&lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;strings)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;str = str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#ff0000"&gt;RegExp&lt;/font&gt;&lt;font color="#000000"&gt;(var_name + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\[' &lt;/font&gt;&lt;font color="#000000"&gt;+ k + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'g'&lt;/font&gt;&lt;font color="#000000"&gt;), JavascriptObfuscator._fix_quotes(JavascriptObfuscator._unescape(strings[k])));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_fix_quotes: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;matches = /^&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;(.*)&amp;quot;&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/.&lt;/font&gt;&lt;font color="#000080"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;(str);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(matches)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;str = matches[1];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;str = &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/g, &amp;quot;\\'&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;) + &amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_smart_split: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;strings = [];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;pos = 0;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(pos &amp;lt; str.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos) == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// new word&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;word = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(pos &amp;lt; str.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos) == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos) == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;word += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;word += str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;strings.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;+ word + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;pos += 1;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;strings;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_unescape: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// inefficient if used repeatedly or on small strings, but wonderful on single large chunk of text&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 32; i &amp;lt; 128; i++)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;str = str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#ff0000"&gt;RegExp&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\\\x' &lt;/font&gt;&lt;font color="#000000"&gt;+ i.&lt;/font&gt;&lt;font color="#000080"&gt;toString&lt;/font&gt;&lt;font color="#000000"&gt;(16), &lt;/font&gt;&lt;font color="#ff00ff"&gt;'ig'&lt;/font&gt;&lt;font color="#000000"&gt;), &lt;/font&gt;&lt;font color="#ff0000"&gt;String&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;fromCharCode&lt;/font&gt;&lt;font color="#000000"&gt;(i));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(JavascriptObfuscator._smart_split, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;JavascriptObfuscator._smart_split&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, []);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;, &amp;quot;b&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;b&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;aaa&amp;quot;,&amp;quot;bbbb&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;aaa&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;bbbb&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;, &amp;quot;b\\\&amp;quot;&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;b\\\&amp;quot;&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(JavascriptObfuscator._unescape, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'JavascriptObfuscator._unescape'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x40'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'@'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x10'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x10'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x1'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x1'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\\x61\\x62\\x22\\x63\\x64&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'ab&amp;quot;cd'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(JavascriptObfuscator.detect, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'JavascriptObfuscator.detect'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcd'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0xaaaa'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0xaaaa = [&amp;quot;a&amp;quot;, &amp;quot;b&amp;quot;]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0xaaaa=[&amp;quot;a&amp;quot;, &amp;quot;b&amp;quot;]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0x1234=[&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// simple unpacker/deobfuscator for scripts messed up with myobfuscate.com&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// You really don't want to obfuscate your scripts there: they're tracking&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// your unpackings, your script gets turned into something like this,&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// as of 2011-04-25:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;var _escape = 'your_script_escaped';&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;var _111 = document.createElement('script');&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;_111.src = 'http://api.www.myobfuscate.com/?getsrc=ok' +&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;'&amp;amp;ref=' + encodeURIComponent(document.referrer) +&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;'&amp;amp;url=' + encodeURIComponent(document.URL);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;var 000 = document.getElementsByTagName('head')[0];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;000.appendChild(_111);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;document.write(unescape(_escape));&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (MyObfuscate.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = MyObfuscate.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;MyObfuscate =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;/^var _?[0O1lI]{3}\=(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'|\[).*\)\)\);/.test(str);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;modified_source = str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;';eval('&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;';unpacked_source = ('&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;eval&lt;/font&gt;&lt;font color="#000000"&gt;(modified_source);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(unpacked_source)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.starts_with(unpacked_source, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _escape'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// fetch the urlencoded stuff from the script,&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;matches = /&lt;/font&gt;&lt;font color="#ff00ff"&gt;'([^'&lt;/font&gt;&lt;font color="#000000"&gt;]*)&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/.exec(unpacked_source);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unescaped = &lt;/font&gt;&lt;font color="#000080"&gt;unescape&lt;/font&gt;&lt;font color="#000000"&gt;(matches[1]);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.starts_with(unescaped, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;script&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;unescaped = unescaped.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(8, unescaped.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 8);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.ends_with(unescaped, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;/script&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;unescaped = unescaped.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, unescaped.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 9);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;unpacked_source = unescaped;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source ? &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;// Unpacker warning: be careful when using myobfuscate.com for your projects:\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;// scripts obfuscated by the free online version call back home.\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n//\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ unpacked_source : str;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;starts_with: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str, what)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) === what;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;ends_with: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str, what)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;, what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) === what;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// simple testing interface&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis, einar@jsbeautifier.org&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// var t = new SanityTest(function (x) { return x; }, 'my function');&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// t.expect('input', 'output');&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// t.expect('a', 'a');&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// output_somewhere(t.results()); // good for &amp;lt;pre&amp;gt;, html safe-ish&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// alert(t.results_raw());        // html unescaped&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest(func, test_name)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;test_func = func ||&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;test_name = test_name || &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;n_failed = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;n_succeeded = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;failures = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.test_function = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(func, &lt;/font&gt;&lt;font color="#008080"&gt;name&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;test_func = func;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;test_name = &lt;/font&gt;&lt;font color="#008080"&gt;name &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.expect = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(parameters, expected_value)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// multi-parameter calls not supported (I don't need them now).&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;result = test_func(parameters);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// proper array checking is a pain. i'll maybe do it later, compare strings representations instead&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((result === expected_value) || (expected_value &lt;/font&gt;&lt;font color="#0000ff"&gt;instanceof &lt;/font&gt;&lt;font color="#ff0000"&gt;Array &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; result.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;', '&lt;/font&gt;&lt;font color="#000000"&gt;) == expected_value.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;', '&lt;/font&gt;&lt;font color="#000000"&gt;)))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;n_succeeded += 1;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;n_failed += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;failures.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;([test_name, parameters, expected_value, result]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.results_raw = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;results = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(n_failed === 0)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(n_succeeded === 0)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'No tests run.'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'All ' &lt;/font&gt;&lt;font color="#000000"&gt;+ n_succeeded + &lt;/font&gt;&lt;font color="#ff00ff"&gt;' tests passed.'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; failures.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;f = failures[i];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(f[0])&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;f[0] = f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'---- ' &lt;/font&gt;&lt;font color="#000000"&gt;+ f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'input -------\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(f[1]) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'---- ' &lt;/font&gt;&lt;font color="#000000"&gt;+ f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'expected ----\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(f[2]) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'---- ' &lt;/font&gt;&lt;font color="#000000"&gt;+ f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'output ------\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(f[3]) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;results += n_failed + &lt;/font&gt;&lt;font color="#ff00ff"&gt;' tests failed.\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;results;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.results = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return this&lt;/font&gt;&lt;font color="#000000"&gt;.lazy_escape(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.results_raw());&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(something, quote_strings)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;something;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;switch &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(quote_strings)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ something.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\\'&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;something;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'number'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'' &lt;/font&gt;&lt;font color="#000000"&gt;+ something;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'boolean'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;something ? &lt;/font&gt;&lt;font color="#ff00ff"&gt;'true' &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'false'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'object'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(something &lt;/font&gt;&lt;font color="#0000ff"&gt;instanceof &lt;/font&gt;&lt;font color="#ff0000"&gt;Array&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;x &lt;/font&gt;&lt;font color="#000000"&gt;= [];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;expected_index = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// for (k in something)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;k &lt;/font&gt;&lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;something)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(k == expected_index)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(something[k], &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;expected_index += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ k + &lt;/font&gt;&lt;font color="#ff00ff"&gt;': ' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(something[k], &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;', '&lt;/font&gt;&lt;font color="#000000"&gt;) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'object: ' &lt;/font&gt;&lt;font color="#000000"&gt;+ something;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;default&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;': ' &lt;/font&gt;&lt;font color="#000000"&gt;+ something;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.lazy_escape = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/&amp;lt;/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;amp;lt;'&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\&amp;gt;/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\n/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;br /&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;log &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// comments by Microshaoft begin ======================================================&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//        if (window.console) {&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//            if (console.firebug) {&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//                console.log.apply(console, Array.prototype.slice.call(arguments));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//            } else {&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//                console.log.call(console, Array.prototype.slice.call(arguments));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//            }&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//        }&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// comments by Microshaoft end ======================================================&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft begin ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;/*&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; * Beautifyed by using \&amp;quot;Microshaoft,beautify.exe\&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; * \&amp;quot;Microshaoft.beautify.exe\&amp;quot; is invented for EditPlus user tool by using Microsoft JScript.NET&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; * Thanks for \&amp;quot;http://jsbeautifier.org/\&amp;quot; supply \&amp;quot;https://github.com/einars/js-beautify\&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; */&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opts =&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent_size: 1,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent_char: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\t'&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;preserve_newlines: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;brace_style: &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;keep_array_indentation: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_after_anon_function: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_before_conditional: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent_scripts: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;s = beautify(s, opts);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;(s);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2485342.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485342.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485221.html</id><title type="text">jsbeautifier + CScript/WScript/JavaScript 编程实现 JavaScript、HTML、CSS 代码格式化 js 脚本命令行工具 并集成到 EditPlus</title><summary type="text">/* * Source Code File Name: * Microshaoft.beautify.CScript.js * Microshaoft invent for EditPlus user tool by using WScript"); * Thanks for "http://jsbeautifier.org/" supply \"https://github.com/einars/js-beautify\""); * JavaScript Source References: * https://github.com</summary><published>2012-05-05T13:46:00Z</published><updated>2012-05-05T13:46:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485221.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485221.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* Source Code File Name:&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;*            Microshaoft.beautify.CScript.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* Microshaoft invent for EditPlus user tool by using WScript&amp;quot;);&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* Thanks for &amp;quot;http://jsbeautifier.org/&amp;quot; supply \&amp;quot;https://github.com/einars/js-beautify\&amp;quot;&amp;quot;);&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* JavaScript Source References:&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/beautify-css.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/beautify-html.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/beautify.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/javascriptobfuscator_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/myobfuscate_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/p_a_c_k_e_r_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/unpackers/urlencode_unpacker.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* https://github.com/einars/js-beautify/blob/master/tests/sanitytest.js&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;* http://jsbeautifier.org/ HTML source&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft begin ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//程序开始&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;args  = &lt;/font&gt;&lt;font color="#800080"&gt;WScript&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Arguments&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;s = args(0);&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;fso = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#ff0000"&gt;ActiveXObject&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Scripting.FileSystemObject&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Open the file for input.&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;f = fso.&lt;/font&gt;&lt;font color="#000080"&gt;OpenTextFile&lt;/font&gt;&lt;font color="#000000"&gt;(s, 1);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;s = &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Read from the file and display the results.&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(!f.&lt;/font&gt;&lt;font color="#008080"&gt;AtEndOfStream&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;s += f.&lt;/font&gt;&lt;font color="#000080"&gt;ReadAll&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;f.&lt;/font&gt;&lt;font color="#000080"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//var s = &amp;quot;adsaasd&amp;quot;;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*jslint onevar: false, plusplus: false */&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;JS Beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;---------------&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Written by Einar Lielmanis, &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;http://jsbeautifier.org/&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Originally converted to javascript by Vital, &amp;lt;vital76@gmail.com&amp;gt;&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;&amp;quot;End braces on own line&amp;quot; added by Chris J. Shull, &amp;lt;chrisjshull@gmail.com&amp;gt;&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;You are free to use this in any way you want, in case you find this useful or working for you.&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Usage:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;js_beautify(js_source_text);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;js_beautify(js_source_text, options);&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;The options are:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_size (default 4)          ?? indentation size,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_char (default space)      ?? character to indent with,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;preserve_newlines (default true) ?? whether existing line breaks should be preserved,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;preserve_max_newlines (default unlimited) - maximum number of line breaks to be preserved in one chunk,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;jslint_happy (default false) ?? if true, then jslint-stricter mode is enforced.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;jslint_happy   !jslint_happy&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;---------------------------------&lt;/font&gt;&lt;br/&gt;             &lt;font color="#008000"&gt;function ()      function()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;brace_style (default &amp;quot;collapse&amp;quot;) - &amp;quot;collapse&amp;quot; | &amp;quot;expand&amp;quot; | &amp;quot;end-expand&amp;quot; | &amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;put braces on the same line as control statements (default), or put braces on own line (Allman / ANSI style), or just put end braces on own line.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;expand-strict: put brace on own line even in such cases:&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;var a =&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;a: 5,&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;b: 6&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;This mode may break your scripts - e.g &amp;quot;return { a: 1 }&amp;quot; will be broken into two lines, so beware.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;space_before_conditional: should the space before conditional statement be added, &amp;quot;if(true)&amp;quot; vs &amp;quot;if (true)&amp;quot;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;e.g&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;js_beautify(js_source_text, {&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_size': 1,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_char': '\t'&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;});&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;js_beautify(js_source_text, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft begin ===========================================================::&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//: String&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//return &amp;quot;&amp;quot;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;, output, token_text, last_type, last_text, last_last_text, last_word, flags, flag_store, indent_string;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;whitespace, wordchar, punct, parser_pos, line_starters, digits;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;prefix, token_type, do_block_just_closed;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;wanted_newline, just_added_newline, n_newlines;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;preindent_string = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// Some interpreters have unexpected results with foo = baz || bar;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;: {};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_brace_style;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// compatibility&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_after_anon_function !== &lt;/font&gt;&lt;font color="#008080"&gt;undefined &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy === &lt;/font&gt;&lt;font color="#008080"&gt;undefined&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_after_anon_function;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.braces_on_own_line !== &lt;/font&gt;&lt;font color="#008080"&gt;undefined&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//graceful handling of deprecated option&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_brace_style = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.braces_on_own_line ? &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;collapse&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;opt_brace_style = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style ? &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style : (opt_brace_style ? opt_brace_style : &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;collapse&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_indent_size = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size ? &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size : 4;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_indent_char = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char ? &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char : &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_preserve_newlines = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.preserve_newlines === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;true &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.preserve_newlines;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_max_preserve_newlines = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_preserve_newlines === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_preserve_newlines;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_jslint_happy = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.jslint_happy;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.keep_array_indentation === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.keep_array_indentation;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_space_before_conditional = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_before_conditional === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;true &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.space_before_conditional;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opt_indent_case = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_case === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_case;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// cache the source's length.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_length = js_source_text.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;trim_output(eat_newlines)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;eat_newlines = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;eat_newlines === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;false &lt;/font&gt;&lt;font color="#000000"&gt;: eat_newlines;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;' ' &lt;/font&gt;&lt;font color="#000000"&gt;|| output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === indent_string || output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === preindent_string || (eat_newlines &amp;amp;&amp;amp; (output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;|| output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r'&lt;/font&gt;&lt;font color="#000000"&gt;))))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(s)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;s.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s\s*|\s\s*&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;force_newline()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;old_keep_array_indentation = opt_keep_array_indentation;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;print_newline()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_keep_array_indentation = old_keep_array_indentation;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;print_newline(ignore_repeated)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.eat_next_space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_keep_array_indentation &amp;amp;&amp;amp; is_array(flags.mode))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;ignore_repeated = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;ignore_repeated === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined' &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#0000ff"&gt;true &lt;/font&gt;&lt;font color="#000000"&gt;: ignore_repeated;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;trim_output();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!output.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// no newline on start of file&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| !ignore_repeated)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(preindent_string)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(preindent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; flags.indentation_level; i += 1)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line &amp;amp;&amp;amp; flags.var_line_reindented)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string); &lt;/font&gt;&lt;font color="#008000"&gt;// skip space-stuffing, if indenting with a tab&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.case_body)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;print_single_space()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// no you will not print just a space after a comment&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.eat_next_space)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.eat_next_space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;last_output = &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;last_output = output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_output !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;' ' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_output !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_output !== indent_string)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// prevent occassional duplicate space&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;print_token()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.eat_next_space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(token_text);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;indent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags.indentation_level += 1;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;remove_indent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] === indent_string)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;set_mode(mode)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flag_store.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(flags);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;flags =&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;previous_mode: flags ? flags.mode : &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;mode: mode,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;var_line: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;var_line_tainted: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;var_line_reindented: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;in_html_comment: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;if_line: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;in_case: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;case_body: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eat_next_space: &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;indentation_baseline: -1,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;indentation_level: (flags ? flags.indentation_level + (flags.case_body ? 1 : 0) + ((flags.var_line &amp;amp;&amp;amp; flags.var_line_reindented) ? 1 : 0) : 0),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ternary_depth: 0&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;is_array(mode)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]' &lt;/font&gt;&lt;font color="#000000"&gt;|| mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;is_expression(mode)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;in_array(mode, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;restore_mode()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;do_block_just_closed = flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'DO_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flag_store.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; 0)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;mode = flags.mode;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags = flag_store.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.previous_mode = mode;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;all_lines_start_with(lines, c)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; lines.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(lines[i])[0] != c)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;is_special_word(word)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;in_array(word, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'case'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'return'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'do'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'if'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'throw'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;in_array(what, arr)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; arr.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i += 1)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(arr[i] === what)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;look_up(exclude)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;local_pos = parser_pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(local_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, whitespace) &amp;amp;&amp;amp; c != exclude)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;local_pos++;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(local_pos &amp;gt;= input_length) &lt;/font&gt;&lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(local_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;c;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;get_next_token()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;n_newlines = 0;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;wanted_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;keep_whitespace = opt_keep_array_indentation &amp;amp;&amp;amp; is_array(flags.mode);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(keep_whitespace)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// slight mess to allow nice preservation of array indentation and reindent that correctly&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// first time when we get to the arrays:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// var a = [&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// ....'something'&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// we make note of whitespace_count = 4 into flags.indentation_baseline&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// so we know that 4 whitespaces in original source match indent_level of reindented source&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// and afterwards, when we get to&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//    'something,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// .......'something else'&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// we know that this should be indented to indent_level + (7 - indentation_baseline) spaces&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;whitespace_count = 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, whitespace))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;trim_output();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;whitespace_count = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\t'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;whitespace_count += 4;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// nothing&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;whitespace_count += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.indentation_baseline === -1)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.indentation_baseline = whitespace_count;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(just_added_newline)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; flags.indentation_level + 1; i += 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indent_string);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.indentation_baseline !== -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; whitespace_count - flags.indentation_baseline; i++)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, whitespace))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;n_newlines += ((opt_max_preserve_newlines) ? (n_newlines &amp;lt;= opt_max_preserve_newlines) ? 1 : 0 : 1);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_preserve_newlines)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(n_newlines &amp;gt; 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; n_newlines; i += 1)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline(i === 0);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;just_added_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;wanted_newline = n_newlines &amp;gt; 0;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, wordchar))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), wordchar))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;c += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos === input_length)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// small and surprisingly unugly hack for 1E-10 representation&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos !== input_length &amp;amp;&amp;amp; c.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^[0-9]+[Ee]&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/) &amp;amp;&amp;amp; (&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'-' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'+'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sign = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = get_next_token(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c += sign + t[0];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'in'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// hack for 'in' operator&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline &amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; !flags.if_line &amp;amp;&amp;amp; (opt_preserve_newlines || last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(' &lt;/font&gt;&lt;font color="#000000"&gt;|| c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;')' &lt;/font&gt;&lt;font color="#000000"&gt;|| c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// peek for comment /* ... */&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;inline_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(!(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;comment += c;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\x0d' &lt;/font&gt;&lt;font color="#000000"&gt;|| c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\x0a'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;inline_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(inline_comment &amp;amp;&amp;amp; n_newlines == 0)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/*' &lt;/font&gt;&lt;font color="#000000"&gt;+ comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*/'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_INLINE_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/*' &lt;/font&gt;&lt;font color="#000000"&gt;+ comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*/'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_BLOCK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// peek for comment // ...&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;comment = c;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;comment += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[comment, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008000"&gt;// string&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008000"&gt;// string&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; ((last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; is_special_word(last_text)) || (last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;')' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; in_array(flags.previous_mode, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;])) || (last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;))))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// regexp&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sep = c;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;resulting_string = c;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(sep === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// handle regexp separately...&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;in_char_class = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(esc || in_char_class || &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== sep)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;resulting_string += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!esc)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;in_char_class = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;in_char_class = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// incomplete string/rexp when end-of-file reached.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// bail out with what had been received so far.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[resulting_string, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// and handle string also separately&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(esc || &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) !== sep)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;resulting_string += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!esc)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;esc = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// incomplete string/rexp when end-of-file reached.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// bail out with what had been received so far.&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[resulting_string, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;resulting_string += sep;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(sep === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// regexps may have modifiers /regexp/MOD , so fetch those, too&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; in_array(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), wordchar))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;resulting_string += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[resulting_string, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;=== 0 &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// shebang&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;resulting_string = c;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; c != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;resulting_string += c;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(resulting_string) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;get_next_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// Spidermonkey-specific sharp variables for circular references&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// https://developer.mozilla.org/En/Sharp_variables_in_JavaScript&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// http://mxr.mozilla.org/mozilla-central/source/js/src/jsscan.cpp around line 1935&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sharp = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; in_array(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), digits))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;sharp += c;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; c !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; c !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'#'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;sharp += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos + 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;sharp += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{}'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[sharp, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos - 1, parser_pos + 3) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;!--'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parser_pos += 3;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;!--'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;[parser_pos] != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; parser_pos &amp;lt; input_length)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;[parser_pos];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos++;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.in_html_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'-' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; flags.in_html_comment &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos - 1, parser_pos + 2) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.in_html_comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parser_pos += 2;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(c, punct))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;lt; input_length &amp;amp;&amp;amp; in_array(c + &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos), punct))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;c += &lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;parser_pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(parser_pos &amp;gt;= input_length)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(c === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[c, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_UNKNOWN'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//----------------------------------&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;indent_string = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(opt_indent_size &amp;gt; 0)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indent_string += opt_indent_char;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;opt_indent_size -= 1;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(js_source_text &amp;amp;&amp;amp; (js_source_text[0] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;' ' &lt;/font&gt;&lt;font color="#000000"&gt;|| js_source_text[0] === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\t'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;preindent_string += js_source_text[0];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;js_source_text = js_source_text.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(1);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;input &lt;/font&gt;&lt;font color="#000000"&gt;= js_source_text;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_word = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// last 'TK_WORD' passed&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// last token type&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_text = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// last token text&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;last_last_text = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// pre-last token text&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;output = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;do_block_just_closed = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;whitespace = &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n\r\t &amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;wordchar = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_$'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;digits = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'0123456789'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;punct = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'+ - * / % &amp;amp; ++ -- = += -= *= /= %= == === != !== &amp;gt; &amp;lt; &amp;gt;= &amp;lt;= &amp;gt;&amp;gt; &amp;lt;&amp;lt; &amp;gt;&amp;gt;&amp;gt; &amp;gt;&amp;gt;&amp;gt;= &amp;gt;&amp;gt;= &amp;lt;&amp;lt;= &amp;amp;&amp;amp; &amp;amp;= | || ! !! , : ? ^ ^= |= ::'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;punct += &lt;/font&gt;&lt;font color="#ff00ff"&gt;' &amp;lt;%= &amp;lt;% %&amp;gt; &amp;lt;?= &amp;lt;? ?&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;// try to be a good boy and try not to break the markup language identifiers&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;punct = punct.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// words which should always start on new line.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;line_starters = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'continue,try,throw,return,var,if,switch,case,default,for,while,break,function'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// states showing if we are currently in expression (i.e. &amp;quot;if&amp;quot; case) - 'EXPRESSION', or in usual block (like, procedure), 'BLOCK'.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// some formatting depends on that.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;flag_store = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;parser_pos = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = get_next_token(parser_pos);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;token_text = t[0];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;token_type = t[1];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;switch &lt;/font&gt;&lt;font color="#000000"&gt;(token_type)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// this is array index specifier, break immediately&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// a[x], fn()[x]&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(last_text, line_starters))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]' &lt;/font&gt;&lt;font color="#000000"&gt;|| flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// ], [ goes to new line&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'['&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'for'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(last_word, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'if'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'while'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'.'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// do nothing on (( and )( and ][ and ]( and .(&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'typeof'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// function() vs function ()&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_jslint_happy)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(last_text, line_starters) || last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'catch'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_space_before_conditional)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// trim_output();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// print_newline(true);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;remove_indent();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[INDENTED-EXPRESSION]'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'do'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'DO_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;set_mode(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;empty_braces = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;empty_braces = (look_up() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!empty_braces)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'=' &lt;/font&gt;&lt;font color="#000000"&gt;|| (is_special_word(last_text) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!empty_braces) indent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// if TK_OPERATOR or TK_START_EXPR&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_array(flags.previous_mode) &amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// }, { in array context&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline(); &lt;/font&gt;&lt;font color="#008000"&gt;// [a, b, c, {&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;restore_mode();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// nothing&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(just_added_newline)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;remove_indent();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// {}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;trim_output();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_array(flags.mode) &amp;amp;&amp;amp; opt_keep_array_indentation)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// we REALLY need a newline here, but newliner would skip that&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;opt_keep_array_indentation = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// no, it's not you. even I have problems understanding how this works&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// and what does what.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(do_block_just_closed)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// do {} ## while ()&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;do_block_just_closed = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((just_added_newline || last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_BLOCK_COMMENT' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_type != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// make sure there is a nice clean space of at least one blank line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// before a new function definition&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;n_newlines = just_added_newline ? n_newlines : 0;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_preserve_newlines)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;n_newlines = 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; 2 - n_newlines; i++)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'case' &lt;/font&gt;&lt;font color="#000000"&gt;|| token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'default'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;':' &lt;/font&gt;&lt;font color="#000000"&gt;|| flags.case_body)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// switch cases following one another&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;remove_indent();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// case statement starts in the same line where switch&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_indent_case) flags.indentation_level--;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!opt_indent_case) flags.indentation_level++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.in_case = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.case_body = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NONE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!in_array(token_text.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;(), [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'catch'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'finally'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;end-expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'DO_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; is_expression(flags.mode))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// eat newlines between ...else *** some_op...&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// won't preserve extra newlines in this place (if any), but don't care that much&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;trim_output(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text, line_starters) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'get' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'set'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;prefix = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.if_line &amp;amp;&amp;amp; last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;(), [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'catch'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'finally'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;end-expand&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| opt_brace_style == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;trim_output(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(prefix === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'NEWLINE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'=' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// no need to force newline on 'function': (function&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// DONOTHING&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'new'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(is_special_word(last_text))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// no newline between 'return nnn'&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((last_type !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;|| token_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var'&lt;/font&gt;&lt;font color="#000000"&gt;) &amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;':'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// no need to force newline on 'var': for (var x = 0...)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'if' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_word === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008000"&gt;// no newline for } else if {&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text, line_starters) &amp;amp;&amp;amp; last_text != &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(is_array(flags.mode) &amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;',' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline(); &lt;/font&gt;&lt;font color="#008000"&gt;// }, in lists get a newline treatment&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(prefix === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SPACE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;last_word = token_text;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'if'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'else'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.if_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.var_line = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// OBJECT mode is weird and doesn't get reset too well.&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_EXPR' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; in_array(flags.previous_mode, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'(COND-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'(FOR-EXPRESSION)'&lt;/font&gt;&lt;font color="#000000"&gt;]))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STRING' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SEMICOLON'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// just got an '=' in a var-line, different formatting/line-breaking, etc will now be done&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space_after = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line &amp;amp;&amp;amp; token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;',' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (is_expression(flags.mode)))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// do not break on comma, for(var a = 1, b = 2)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line_tainted)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_reindented = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// } else if (token_text === ':') {&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// hmm, when does this happen? tests don't catch this&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// flags.var_line = false;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_special_word(last_text))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// &amp;quot;return&amp;quot; had a special handling in TK_WORD. Now we need to return the favor&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;':' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; flags.in_case)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(opt_indent_case) flags.case_body = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token(); &lt;/font&gt;&lt;font color="#008000"&gt;// colon really asks for separate treatment&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.in_case = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'::'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// no spaces around exotic namespacing syntax operator&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.var_line_tainted)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flags.var_line_tainted = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; flags.mode !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;(EXPRESSION)&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;// EXPR or DO_BLOCK&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// } else if (in_array(token_text, ['--', '++', '!']) || (in_array(token_text, ['-', '+']) &amp;amp;&amp;amp; (in_array(last_type, ['TK_START_BLOCK', 'TK_START_EXPR', 'TK_EQUALS']) || in_array(last_text, line_starters) || in_array(last_text, ['==', '!=', '+=', '-=', '*=', '/=', '+', '-'])))) {&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(in_array(token_text, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'++'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;]) || (in_array(token_text, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'-'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'+'&lt;/font&gt;&lt;font color="#000000"&gt;]) &amp;amp;&amp;amp; (in_array(last_type, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_START_EXPR'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EQUALS'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_OPERATOR'&lt;/font&gt;&lt;font color="#000000"&gt;]) || in_array(last_text, line_starters))))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// unary operators (and binary +/- pretending to be unary) special cases&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_after = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; is_expression(flags.mode))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// for (;; ++i)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//        ^^^&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_WORD' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; in_array(last_text, line_starters))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'BLOCK' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; (last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{' &lt;/font&gt;&lt;font color="#000000"&gt;|| last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// { foo; --i }&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// foo(); --bar;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'.'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// decimal digits or object.property&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;':'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flags.ternary_depth == 0)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'OBJECT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space_before = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;flags.ternary_depth -= 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'?'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;flags.ternary_depth += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(space_before)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(space_after)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(token_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// flags.eat_next_space = true;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_BLOCK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lines = token_text.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(/\x0a|\x0d\x0a/);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(all_lines_start_with(lines.&lt;/font&gt;&lt;font color="#000080"&gt;slice&lt;/font&gt;&lt;font color="#000000"&gt;(1), &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// javadoc: reformat and reindent&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(lines[0]);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 1; i &amp;lt; lines.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;trim&lt;/font&gt;&lt;font color="#000000"&gt;(lines[i]));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// simple block comment: leave intact&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(lines.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// multiline comment block starts with a new line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// single-line /* comment */ stays where it is&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(last_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_END_BLOCK'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(i = 0; i &amp;lt; lines.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(lines[i]);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(look_up(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_INLINE_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_expression(flags.mode))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;force_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_COMMENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(wanted_newline)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(look_up(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;) force_newline();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_UNKNOWN'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(is_special_word(last_text))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;print_single_space();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;print_token();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;last_last_text = last_text;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;last_type = token_type;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;last_text = token_text;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sweet_code = preindent_string + output.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/[\n ]+&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;sweet_code;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Add support for CommonJS. Just put this file somewhere on your require.paths&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// and you will be able to `var js_beautify = require(&amp;quot;beautify&amp;quot;).js_beautify`.&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// comments by Microshaoft begin ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;if (typeof exports !== &amp;quot;undefined&amp;quot;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;exports.js_beautify = js_beautify;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// comments by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;Style HTML&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;---------------&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Written by Nochum Sossonko, (nsossonko@hotmail.com)&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Based on code initially developed by: Einar Lielmanis, &amp;lt;elfz@laacz.lv&amp;gt;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;http://jsbeautifier.org/&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;You are free to use this in any way you want, in case you find this useful or working for you.&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;Usage:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;style_html(html_source);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;style_html(html_source, options);&lt;/font&gt;&lt;br/&gt;  &lt;font color="#008000"&gt;The options are:&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_size (default 4)          ?? indentation size,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_char (default space)      ?? character to indent with,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;max_char (default 70)            -  maximum amount of characters per line,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;brace_style (default &amp;quot;collapse&amp;quot;) - &amp;quot;collapse&amp;quot; | &amp;quot;expand&amp;quot; | &amp;quot;end-expand&amp;quot;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;put braces on the same line as control statements (default), or put braces on own line (Allman / ANSI style), or just put end braces on own line.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;unformatted (default ['a'])      - list of tags, that shouldn't be reformatted&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;indent_scripts (default normal)  - &amp;quot;keep&amp;quot;|&amp;quot;separate&amp;quot;|&amp;quot;normal&amp;quot;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;e.g.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;style_html(html_source, {&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_size': 2,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_char': ' ',&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'max_char': 78,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'brace_style': 'expand',&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'unformatted': ['a', 'sub', 'sup', 'b', 'i', 'u']&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;});&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;style_html(html_source, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//Wrapper function to invoke all the necessary constructors and deal with the output.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;multi_parser, indent_size, indent_character, max_char, brace_style;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;|| {};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;indent_size = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size || 4;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;indent_character = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char || &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;brace_style = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style || &lt;/font&gt;&lt;font color="#ff00ff"&gt;'collapse'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;max_char = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_char == 0 ? &lt;/font&gt;&lt;font color="#008080"&gt;Infinity &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.max_char || 70;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unformatted = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.unformatted || [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'a'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;Parser()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos = 0; &lt;/font&gt;&lt;font color="#008000"&gt;//Parser position&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.token = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//reflects the current Parser mode: TAG/CONTENT&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags &lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//An object to hold tags, their position, and their parent-tags, initiated with default values&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;parent&lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent1'&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parentcount: 1,&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;parent1: &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.token_text = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_text = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.token_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils =&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//Uilities made available to the various functions&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;whitespace: &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n\r\t &amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;single_token: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'br,input,link,meta,!doctype,basefont,base,area,hr,wbr,param,img,isindex,?xml,embed'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//all the single tags for HTML&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;extra_liners: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'head,body,/html'&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;),&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//for tags that need a line of whitespace before them&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;in_array: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(what, arr)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; arr.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(what === arr[i])&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;return true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_content = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to capture regular content between tags&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= [];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//if a space is needed&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos) !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;) : [&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(input_char, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count--;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//don't want to insert unnecessary space&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(space)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.max_char)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//insert a line when the max_char is reached&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; i++)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(input_char); &lt;/font&gt;&lt;font color="#008000"&gt;//letter at-a-time (or string) inserted to an array&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;) : &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_contents_to = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;name&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//get the full content of a script or style to pass to js_beautify&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos == &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reg_match = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#ff0000"&gt;RegExp&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\&amp;lt;\/' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#008080"&gt;name &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\s*\&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'igm'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;reg_match.&lt;/font&gt;&lt;font color="#008080"&gt;lastIndex &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reg_array = reg_match.&lt;/font&gt;&lt;font color="#000080"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;end_script = reg_array ? reg_array.&lt;/font&gt;&lt;font color="#008080"&gt;index &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//absolute end of script&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;lt; end_script)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//get everything in between the script tags&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos, end_script);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos = end_script;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(tag)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to record a tag and its parent in this.tags Object&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;])&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//check for the existence of this tag type&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]] = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; &lt;/font&gt;&lt;font color="#008000"&gt;//and record the present indent level&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise initialize this tag type&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] = 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]] = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; &lt;/font&gt;&lt;font color="#008000"&gt;//and record the present indent level&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;] = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//set the parent (i.e. in the case of a div this.tags.div1parent)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent &lt;/font&gt;&lt;font color="#000000"&gt;= tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//and make this the current parent (i.e. in the case of a div 'div1')&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.retrieve_tag = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(tag)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to retrieve the opening tag to the corresponding closer&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;])&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if the openener is not in the Object we ignore it&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;temp_parent = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//check to see if it's a closable tag.&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(temp_parent)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//till we reach '' (the initial value);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] === temp_parent)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if this is it use it&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;temp_parent = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[temp_parent + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise keep on climbing up the DOM Tree&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(temp_parent)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if we caught something&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]]; &lt;/font&gt;&lt;font color="#008000"&gt;//set the indent_level accordingly&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;parent &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[temp_parent + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//and set the current parent&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;delete this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'parent'&lt;/font&gt;&lt;font color="#000000"&gt;]; &lt;/font&gt;&lt;font color="#008000"&gt;//delete the closed tags parent reference...&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;delete this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]]; &lt;/font&gt;&lt;font color="#008000"&gt;//...and the tag itself&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;] == 1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;delete this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;tags&lt;/font&gt;&lt;font color="#000000"&gt;[tag + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'count'&lt;/font&gt;&lt;font color="#000000"&gt;]--;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_tag = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to get a full tag and parse its type&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= [];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;? &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;) : [&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(input_char, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//don't want to insert unnecessary space&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count--;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;|| input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;[1] || &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;[1] !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if we're in a comment strings don't get treated specially&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;input_char += &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(input_char);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//no space before =&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1] !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'=' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; input_char !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; space)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//no space after = or before &amp;gt;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.max_char)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(input_char); &lt;/font&gt;&lt;font color="#008000"&gt;//inserts character at-a-time (or string)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(input_char !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_complete = &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_index;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if there's whitespace, thats where the tag name ends&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;tag_index = tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise go with the tag ending&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;tag_index = tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_check = tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(1, tag_index).&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 2) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(tag_check, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.single_token))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if this tag name is a single tag type (either in the list or has a closing /)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'script'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//for later script handling&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag(tag_check);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'style'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//for future style handling (for now it justs uses get_content)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag(tag_check);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(tag_check, unformatted))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// do not reformat the &amp;quot;unformatted&amp;quot; tags&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;/' &lt;/font&gt;&lt;font color="#000000"&gt;+ tag_check + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete); &lt;/font&gt;&lt;font color="#008000"&gt;//...delegate to get_unformatted function&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(0) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'!'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//peek for &amp;lt;!-- comment&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[if'&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//peek for &amp;lt;!--[if conditional comment&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_complete.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'!IE'&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//this type needs a closing --&amp;gt; so...&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete); &lt;/font&gt;&lt;font color="#008000"&gt;//...delegate to get_unformatted&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'START'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[endif'&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//peek for &amp;lt;!--[endif end conditional comment&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'END'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.unindent();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'[cdata['&lt;/font&gt;&lt;font color="#000000"&gt;) != -1)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//if it's a &amp;lt;[cdata[ comment...&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;']]&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete); &lt;/font&gt;&lt;font color="#008000"&gt;//...delegate to get_unformatted function&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//&amp;lt;![CDATA[ comments are treated like single tags&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'--&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;, tag_complete);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(comment);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(0) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//this tag is a double tag so check for tag-ending&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.retrieve_tag(tag_check.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(1)); &lt;/font&gt;&lt;font color="#008000"&gt;//remove it and all ancestors&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'END'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//otherwise it's a start-tag&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.record_tag(tag_check); &lt;/font&gt;&lt;font color="#008000"&gt;//push it on the tag stack&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'START'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(tag_check, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.extra_liners))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//check if this double needs an extra line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.output);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;); &lt;/font&gt;&lt;font color="#008000"&gt;//returns fully formatted tag&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_unformatted = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(delimiter, orig_tag)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//function to return unformatted content in its entirety&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(orig_tag &amp;amp;&amp;amp; orig_tag.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(delimiter) != -1)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos &amp;gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;input_char = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.pos++&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(input_char, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!space)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count--;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;|| input_char === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\r'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;+= &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;/*  Don't change tab indention for unformatted blocks.  If using code for html editing, this will greatly affect &amp;lt;pre&amp;gt; tags if they are specified in the 'unformatted array'&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;for (var i=0; i&amp;lt;this.indent_level; i++) {&lt;/font&gt;&lt;br/&gt;              &lt;font color="#008000"&gt;content += this.indent_string;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;space = false; //...and make sure other indentation is erased&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008080"&gt;content &lt;/font&gt;&lt;font color="#000000"&gt;+= input_char;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(delimiter) == -1);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;content&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_token = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//initial handler for token-retrieval&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_SCRIPT' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//check if we need to format javascript&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.last_token.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(7)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_contents_to(&lt;/font&gt;&lt;font color="#008080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;token !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[token, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#008080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.current_mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_content();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;token !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[token, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.current_mode === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TAG'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;token = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_tag();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;token !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;token;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_name_type = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.tag_type;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;[token, tag_name_type];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.get_full_indent = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(level)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;level = &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level + level || 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(level &amp;lt; 1) &lt;/font&gt;&lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff0000"&gt;Array&lt;/font&gt;&lt;font color="#000000"&gt;(level + 1).&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.printer = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(js_source, indent_character, indent_size, max_char, brace_style)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//handles input/output and some other printing functions&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;input &lt;/font&gt;&lt;font color="#000000"&gt;= js_source || &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//gets the input for the Parser&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.output = [];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_character = indent_character;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size = indent_size;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.brace_style = brace_style;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level = 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.max_char = max_char;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0; &lt;/font&gt;&lt;font color="#008000"&gt;//count to see if max_char was exceeded&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string += &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_character;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_newline = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(ignore, arr)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.line_char_count = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!arr || !arr.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!ignore)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;//we might want the extra line&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.in_array(arr[arr.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1], &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.Utils.whitespace))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;arr.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;arr.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;arr.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_string);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.print_token = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level++;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.unindent = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level &amp;gt; 0)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.indent_level--;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return this&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;/*_____________________--------------------_____________________*/&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;multi_parser = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;Parser(); &lt;/font&gt;&lt;font color="#008000"&gt;//wrapping functions Parser&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;multi_parser.printer(html_source, indent_character, indent_size, max_char, brace_style); &lt;/font&gt;&lt;font color="#008000"&gt;//initialize starting values&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = multi_parser.get_token();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.token_text = t[0];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.token_type = t[1];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_EOF'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;switch &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_START'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.indent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_END'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//Print new line only if the tag has no content and has child&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.last_token === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_CONTENT' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; multi_parser.last_text === &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_name = multi_parser.token_text.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/\w+/)[0];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;tag_extracted_from_last_output = multi_parser.output[multi_parser.output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1].&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/&amp;lt;\s*(\w+)/);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(tag_extracted_from_last_output === &lt;/font&gt;&lt;font color="#0000ff"&gt;null &lt;/font&gt;&lt;font color="#000000"&gt;|| tag_extracted_from_last_output[1] !== tag_name) multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_TAG_SINGLE'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_CONTENT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;multi_parser.print_token(multi_parser.token_text);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TAG'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_text !== &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;multi_parser.output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;text &lt;/font&gt;&lt;font color="#000000"&gt;= multi_parser.token_text;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_SCRIPT'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;_beautifier = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;js_beautify == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; js_beautify;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.token_type == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TK_STYLE'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;_beautifier = &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;css_beautify == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'function' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; css_beautify;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_scripts == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;keep&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;script_indent_level = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_scripts == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;separate&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;script_indent_level = -multi_parser.indent_level;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;script_indent_level = 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentation = multi_parser.get_full_indent(script_indent_level);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(_beautifier)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// call the Beautifier if avaliable&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;text &lt;/font&gt;&lt;font color="#000000"&gt;= _beautifier(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*/, indentation), &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// simply indent the string otherwise&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;white = &lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*/)[0];&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;_level = white.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/[^\n\r]*&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/)[0].&lt;/font&gt;&lt;font color="#000080"&gt;split&lt;/font&gt;&lt;font color="#000000"&gt;(multi_parser.indent_string).&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reindent = multi_parser.get_full_indent(script_indent_level - _level);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008080"&gt;text &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*/, indentation).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\r\n|\r|\n/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ reindent).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\s*&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;multi_parser.print_token(&lt;/font&gt;&lt;font color="#008080"&gt;text&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;multi_parser.print_newline(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;, multi_parser.output);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;multi_parser.current_mode = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'TAG'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.last_token = multi_parser.token_type;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;multi_parser.last_text = multi_parser.token_text;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;multi_parser.output.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt; &lt;font color="#008000"&gt;CSS Beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;---------------&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;Written by Harutyun Amirjanyan, (amirjanyan@gmail.com)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;Based on code initially developed by: Einar Lielmanis, &amp;lt;elfz@laacz.lv&amp;gt;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;http://jsbeautifier.org/&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;You are free to use this in any way you want, in case you find this useful or working for you.&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;Usage:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;css_beautify(source_text);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;css_beautify(source_text, options);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;The options are:&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;indent_size (default 4)          ?? indentation size,&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;indent_char (default space)      ?? character to indent with,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;e.g&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;css_beautify(css_source_text, {&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_size': 1,&lt;/font&gt;&lt;br/&gt;      &lt;font color="#008000"&gt;'indent_char': '\t'&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;});&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// http://www.w3.org/TR/CSS21/syndata.html#tokenization&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// http://www.w3.org/TR/css3-syntax/&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;css_beautify(source_text, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;options &lt;/font&gt;&lt;font color="#000000"&gt;|| {};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentSize = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_size || 4;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentCharacter = &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;.indent_char || &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// compatibility&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;indentSize == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;string&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;) indentSize = &lt;/font&gt;&lt;font color="#000080"&gt;parseInt&lt;/font&gt;&lt;font color="#000000"&gt;(indentSize);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// tokenizer&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;whiteRe = /^\s+&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;wordRe = /[\w&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;\-_]/;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;pos = -1,&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;= source_text.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(++pos)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;peek()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;source_text.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos + 1)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;eatString(comma)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\\&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== comma)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;source_text.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;start&lt;/font&gt;&lt;font color="#000000"&gt;, pos + 1);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;eatWhitespace()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(peek()))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;pos != &lt;/font&gt;&lt;font color="#008080"&gt;start&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;skipWhitespace()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;font color="#000000"&gt;{} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;()))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;pos != &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;+ 1;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;eatComment()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;start &lt;/font&gt;&lt;font color="#000000"&gt;= pos;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;*&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; peek() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;/&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;source_text.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;start&lt;/font&gt;&lt;font color="#000000"&gt;, pos + 1);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;lookBack(str, &lt;/font&gt;&lt;font color="#008080"&gt;index&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;slice&lt;/font&gt;&lt;font color="#000000"&gt;(-str.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;+ (&lt;/font&gt;&lt;font color="#008080"&gt;index &lt;/font&gt;&lt;font color="#000000"&gt;|| 0), &lt;/font&gt;&lt;font color="#008080"&gt;index&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;() == str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// printer&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentString = source_text.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^[\r\n]*[\t ]*/)[0];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;singleIndent = &lt;/font&gt;&lt;font color="#ff0000"&gt;Array&lt;/font&gt;&lt;font color="#000000"&gt;(indentSize + 1).&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(indentCharacter);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;indentLevel = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;indent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentLevel++;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentString += singleIndent;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;outdent()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentLevel--;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;indentString = indentString.&lt;/font&gt;&lt;font color="#000080"&gt;slice&lt;/font&gt;&lt;font color="#000000"&gt;(0, -indentSize);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//print = {}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print &lt;/font&gt;&lt;font color="#000000"&gt;= {}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;] = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;] = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(keepWhitespace)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!keepWhitespace) &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1]))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;pop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(indentString) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indentString);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; !whiteRe.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(output[output.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 1])) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;output = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(indentString) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(indentString);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;/*_____________________--------------------_____________________*/&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;isAfterSpace = skipWhitespace();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;) &lt;/font&gt;&lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'{'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;indent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;](&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'}'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;outdent();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;](&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\''&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(eatString(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;, indentString);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'/' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; peek() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'*'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// comment&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.newLine();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(eatComment(), &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, indentString);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'('&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// may be a url&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eatWhitespace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(lookBack(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;url&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, -1) &amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#800080"&gt;next&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#ff00ff"&gt;')' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\''&lt;/font&gt;&lt;font color="#000000"&gt;) output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(eatString(&lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else &lt;/font&gt;&lt;font color="#000000"&gt;pos--;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;')'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;','&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eatWhitespace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[' &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#008080"&gt;ch &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#ff00ff"&gt;'='&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{ &lt;/font&gt;&lt;font color="#008000"&gt;// no whitespace before or after&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;eatWhitespace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isAfterSpace) &lt;/font&gt;&lt;font color="#000080"&gt;print&lt;/font&gt;&lt;font color="#000000"&gt;.singleSpace();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;output.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;ch&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sweetCode = output.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/[\n ]+&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;sweetCode;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//if (typeof exports !== &amp;quot;undefined&amp;quot;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//    exports.css_beautify = css_beautify;&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;unpacker_filter(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;trailing_comments = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;do&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*\/\*/.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;indexOf&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'*/'&lt;/font&gt;&lt;font color="#000000"&gt;) + 2);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(comment.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s+/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;trailing_comments += comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*\/\//.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;found = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;comment = &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;match&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s*\/\/.*/)[0];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(comment.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/^\s+/, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;trailing_comments += comment + &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;} &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(found);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(P_A_C_K_E_R.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// P.A.C.K.E.R unpacking may fail, even though it is detected&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unpacked = P_A_C_K_E_R.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(unpacked != &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(unpacked);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(Urlencoded.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(Urlencoded.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(JavascriptObfuscator.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(JavascriptObfuscator.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.detect(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(MyObfuscate.unpack(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;trailing_comments + &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;looks_like_html(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// &amp;lt;foo&amp;gt; - looks like html&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;// &amp;lt;!--\nalert('foo!');\n--&amp;gt; - doesn't look like html&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;trimmed = &lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//.replace(/^[ \t\n\r]+/, '');&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;comment_mark = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;!-' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;'-'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(trimmed &amp;amp;&amp;amp; (trimmed.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(0, 1) === &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; trimmed.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(0, 4) !== comment_mark));&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;beautify(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    if (the.beautify_in_progress) return;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    store_settings_to_cookie();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    the.beautify_in_progress = true;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    var opts = {&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                indent_size: indent_size,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                indent_char: indent_char,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                preserve_newlines:preserve_newlines,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                brace_style: brace_style,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                keep_array_indentation:keep_array_indentation,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                space_after_anon_function:true,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                space_before_conditional: space_before_conditional,&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//                indent_scripts:indent_scripts};&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(looks_like_html(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;style_html(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008080"&gt;source &lt;/font&gt;&lt;font color="#000000"&gt;= unpacker_filter(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;js_beautify(&lt;/font&gt;&lt;font color="#008080"&gt;source&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008080"&gt;options&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    the.beautify_in_progress = false;&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Unpacker for Dean Edward's p.a.c.k.e.r, a part of javascript beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// Coincidentally, it can defeat a couple of other eval-based compressors.&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (P_A_C_K_E_R.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = P_A_C_K_E_R.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// &lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;P_A_C_K_E_R =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;font color="#008000"&gt;//    P_A_C_K_E_R._starts_with(str.toLowerCase().replace(/ +/g, ''), 'eval(function(') || P_A_C_K_E_R._starts_with(str.toLowerCase().replace(/ +/g, ''), 'eval((function(');&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(P_A_C_K_E_R.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000080"&gt;eval&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'unpacked_source = ' &lt;/font&gt;&lt;font color="#000000"&gt;+ str.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(4) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;';'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string' &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; unpacked_source)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;str = unpacked_source;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;catch &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;error&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// well, it failed. we'll just return the original, instead of crashing on user.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_starts_with: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str, what)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) === what;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(P_A_C_K_E_R.detect, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;P_A_C_K_E_R.detect&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'eval(function(p,a,c,k,e,r'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'eval ( function(p, a, c, k, e, r'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(P_A_C_K_E_R.unpack, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'P_A_C_K_E_R.unpack'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;eval(function(p,a,c,k,e,r){e=String;if(!''.replace(/^/,String)){while(c--)r[c]=k[c]||c;k=[function(e){return r[e]}];e=function(){return'\\\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c]);return p}('0 2=1',3,3,'var||a'.split('|'),0,{}))&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a=1'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;starts_with_a = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(what)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;P_A_C_K_E_R._starts_with(what, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'a'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(starts_with_a, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;P_A_C_K_E_R._starts_with(?, a)&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'abc'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'bcd'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'a'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// trivial bookmarklet/escaped script detector for the javascript beautifier&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (Urlencoded.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = Urlencoded.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// &lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;Urlencoded =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// the fact that script doesn't contain any space, but has %20 instead&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// should be sufficient check for now.&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//        if (str.indexOf(' ') == -1)&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//        {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//            if (str.indexOf('%20') != -1) return true;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//            if (str.replace(/[^%]+/g, '').length &amp;gt; 3) return true;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//        }&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(Urlencoded.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000080"&gt;unescape&lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\+/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'%20'&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(Urlencoded.detect, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Urlencoded.detect&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a+=+b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a=b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20%21%22'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(Urlencoded.unpack, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'Urlencoded.unpack'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcd'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcd'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a=b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a=b'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var%20a+=+b'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var a = b'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// simple unpacker/deobfuscator for scripts messed up with javascriptobfuscator.com&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (JavascriptObfuscator.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = JavascriptObfuscator.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// &lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;JavascriptObfuscator =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;/^var _0x[a-f0-9]+ ?\= ?\[/.&lt;/font&gt;&lt;font color="#000080"&gt;test&lt;/font&gt;&lt;font color="#000000"&gt;(str);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(JavascriptObfuscator.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;matches = /&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;(_0x[a-f\d]+) ?\= ?\[(.*?)\];/.&lt;/font&gt;&lt;font color="#000080"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;(str);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(matches)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;var_name = matches[1];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;strings = JavascriptObfuscator._smart_split(matches[2]);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;str = str.&lt;/font&gt;&lt;font color="#000080"&gt;substring&lt;/font&gt;&lt;font color="#000000"&gt;(matches[0].&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;k &lt;/font&gt;&lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;strings)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;str = str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#ff0000"&gt;RegExp&lt;/font&gt;&lt;font color="#000000"&gt;(var_name + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\[' &lt;/font&gt;&lt;font color="#000000"&gt;+ k + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'g'&lt;/font&gt;&lt;font color="#000000"&gt;), JavascriptObfuscator._fix_quotes(JavascriptObfuscator._unescape(strings[k])));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_fix_quotes: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;matches = /^&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;(.*)&amp;quot;&lt;/font&gt;&lt;font color="#800080"&gt;$&lt;/font&gt;&lt;font color="#000000"&gt;/.&lt;/font&gt;&lt;font color="#000080"&gt;exec&lt;/font&gt;&lt;font color="#000000"&gt;(str);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(matches)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;str = matches[1];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;str = &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/g, &amp;quot;\\'&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;) + &amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_smart_split: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;strings = [];&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;pos = 0;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(pos &amp;lt; str.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos) == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// new word&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;word = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;pos += 1;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(pos &amp;lt; str.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos) == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos) == &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;word += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;word += str.&lt;/font&gt;&lt;font color="#000080"&gt;charAt&lt;/font&gt;&lt;font color="#000000"&gt;(pos);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;pos++;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;strings.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;' &lt;/font&gt;&lt;font color="#000000"&gt;+ word + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;pos += 1;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;strings;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;_unescape: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// inefficient if used repeatedly or on small strings, but wonderful on single large chunk of text&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 32; i &amp;lt; 128; i++)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;str = str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#ff0000"&gt;RegExp&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\\\x' &lt;/font&gt;&lt;font color="#000000"&gt;+ i.&lt;/font&gt;&lt;font color="#000080"&gt;toString&lt;/font&gt;&lt;font color="#000000"&gt;(16), &lt;/font&gt;&lt;font color="#ff00ff"&gt;'ig'&lt;/font&gt;&lt;font color="#000000"&gt;), &lt;/font&gt;&lt;font color="#ff0000"&gt;String&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;fromCharCode&lt;/font&gt;&lt;font color="#000000"&gt;(i));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(JavascriptObfuscator._smart_split, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;JavascriptObfuscator._smart_split&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, []);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;, &amp;quot;b&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;b&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;aaa&amp;quot;,&amp;quot;bbbb&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;aaa&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;bbbb&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;, &amp;quot;b\\\&amp;quot;&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, [&lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;a&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;quot;b\\\&amp;quot;&amp;quot;'&lt;/font&gt;&lt;font color="#000000"&gt;]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(JavascriptObfuscator._unescape, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'JavascriptObfuscator._unescape'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x40'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'@'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x10'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x10'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x1'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\\x1'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\\x61\\x62\\x22\\x63\\x64&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'ab&amp;quot;cd'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.test_function(JavascriptObfuscator.detect, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'JavascriptObfuscator.detect'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'abcd'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0xaaaa'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0xaaaa = [&amp;quot;a&amp;quot;, &amp;quot;b&amp;quot;]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0xaaaa=[&amp;quot;a&amp;quot;, &amp;quot;b&amp;quot;]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;t.expect(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _0x1234=[&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;]'&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// simple unpacker/deobfuscator for scripts messed up with myobfuscate.com&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// You really don't want to obfuscate your scripts there: they're tracking&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// your unpackings, your script gets turned into something like this,&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// as of 2011-04-25:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;/*&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;var _escape = 'your_script_escaped';&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;var _111 = document.createElement('script');&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;_111.src = 'http://api.www.myobfuscate.com/?getsrc=ok' +&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;'&amp;amp;ref=' + encodeURIComponent(document.referrer) +&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;'&amp;amp;url=' + encodeURIComponent(document.URL);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;var 000 = document.getElementsByTagName('head')[0];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;000.appendChild(_111);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;document.write(unescape(_escape));&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;*/&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis &amp;lt;einar@jsbeautifier.org&amp;gt;&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// if (MyObfuscate.detect(some_string)) {&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//     var unpacked = MyObfuscate.unpack(some_string);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// }&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;MyObfuscate =&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;detect: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;/^var _?[0O1lI]{3}\=(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'|\[).*\)\)\);/.test(str);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;unpack: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.detect(str))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;modified_source = str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;';eval('&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;';unpacked_source = ('&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000080"&gt;eval&lt;/font&gt;&lt;font color="#000000"&gt;(modified_source);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(unpacked_source)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.starts_with(unpacked_source, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'var _escape'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;// fetch the urlencoded stuff from the script,&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;matches = /&lt;/font&gt;&lt;font color="#ff00ff"&gt;'([^'&lt;/font&gt;&lt;font color="#000000"&gt;]*)&lt;/font&gt;&lt;font color="#ff00ff"&gt;'/.exec(unpacked_source);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;unescaped = &lt;/font&gt;&lt;font color="#000080"&gt;unescape&lt;/font&gt;&lt;font color="#000000"&gt;(matches[1]);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.starts_with(unescaped, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;script&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;unescaped = unescaped.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(8, unescaped.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 8);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(MyObfuscate.ends_with(unescaped, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;/script&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;unescaped = unescaped.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, unescaped.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- 9);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;unpacked_source = unescaped;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;unpacked_source ? &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;// Unpacker warning: be careful when using myobfuscate.com for your projects:\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;// scripts obfuscated by the free online version call back home.\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\n//\n&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ unpacked_source : str;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;starts_with: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str, what)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(0, what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) === what;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;ends_with: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str, what)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;substr&lt;/font&gt;&lt;font color="#000000"&gt;(str.&lt;/font&gt;&lt;font color="#008080"&gt;length &lt;/font&gt;&lt;font color="#000000"&gt;- what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;, what.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;) === what;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;},&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;run_tests: &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(sanity_test)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;t = sanity_test || &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;t;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// simple testing interface&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// written by Einar Lielmanis, einar@jsbeautifier.org&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// usage:&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// var t = new SanityTest(function (x) { return x; }, 'my function');&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// t.expect('input', 'output');&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// t.expect('a', 'a');&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// output_somewhere(t.results()); // good for &amp;lt;pre&amp;gt;, html safe-ish&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// alert(t.results_raw());        // html unescaped&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;SanityTest(func, test_name)&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;test_func = func ||&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;test_name = test_name || &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;n_failed = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;n_succeeded = 0;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;failures = [];&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.test_function = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(func, &lt;/font&gt;&lt;font color="#008080"&gt;name&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;test_func = func;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;test_name = &lt;/font&gt;&lt;font color="#008080"&gt;name &lt;/font&gt;&lt;font color="#000000"&gt;|| &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.expect = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(parameters, expected_value)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// multi-parameter calls not supported (I don't need them now).&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;result = test_func(parameters);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// proper array checking is a pain. i'll maybe do it later, compare strings representations instead&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;((result === expected_value) || (expected_value &lt;/font&gt;&lt;font color="#0000ff"&gt;instanceof &lt;/font&gt;&lt;font color="#ff0000"&gt;Array &lt;/font&gt;&lt;font color="#000000"&gt;&amp;amp;&amp;amp; result.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;', '&lt;/font&gt;&lt;font color="#000000"&gt;) == expected_value.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;', '&lt;/font&gt;&lt;font color="#000000"&gt;)))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;n_succeeded += 1;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;n_failed += 1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;failures.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;([test_name, parameters, expected_value, result]);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.results_raw = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;results = &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(n_failed === 0)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(n_succeeded === 0)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'No tests run.'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results = &lt;/font&gt;&lt;font color="#ff00ff"&gt;'All ' &lt;/font&gt;&lt;font color="#000000"&gt;+ n_succeeded + &lt;/font&gt;&lt;font color="#ff00ff"&gt;' tests passed.'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = 0; i &amp;lt; failures.&lt;/font&gt;&lt;font color="#008080"&gt;length&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;f = failures[i];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(f[0])&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;f[0] = f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;' '&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'---- ' &lt;/font&gt;&lt;font color="#000000"&gt;+ f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'input -------\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(f[1]) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'---- ' &lt;/font&gt;&lt;font color="#000000"&gt;+ f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'expected ----\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(f[2]) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;results += &lt;/font&gt;&lt;font color="#ff00ff"&gt;'---- ' &lt;/font&gt;&lt;font color="#000000"&gt;+ f[0] + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'output ------\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(f[3]) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;results += n_failed + &lt;/font&gt;&lt;font color="#ff00ff"&gt;' tests failed.\n'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;results;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.results = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return this&lt;/font&gt;&lt;font color="#000000"&gt;.lazy_escape(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.results_raw());&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(something, quote_strings)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof &lt;/font&gt;&lt;font color="#000000"&gt;something;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;switch &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;toLowerCase&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'string'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(quote_strings)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot; &lt;/font&gt;&lt;font color="#000000"&gt;+ something.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\\'&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;'&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;something;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'number'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'' &lt;/font&gt;&lt;font color="#000000"&gt;+ something;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'boolean'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;something ? &lt;/font&gt;&lt;font color="#ff00ff"&gt;'true' &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'false'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'undefined'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;case &lt;/font&gt;&lt;font color="#ff00ff"&gt;'object'&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(something &lt;/font&gt;&lt;font color="#0000ff"&gt;instanceof &lt;/font&gt;&lt;font color="#ff0000"&gt;Array&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#008080"&gt;x &lt;/font&gt;&lt;font color="#000000"&gt;= [];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;expected_index = 0;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;// modified by Microshaoft&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(k &lt;/font&gt;&lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;something)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//for (var k in something)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(k == expected_index)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(something[k], &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;expected_index += 1;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;push&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;'\n' &lt;/font&gt;&lt;font color="#000000"&gt;+ k + &lt;/font&gt;&lt;font color="#ff00ff"&gt;': ' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.prettyprint(something[k], &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'[' &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#008080"&gt;x&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;join&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;', '&lt;/font&gt;&lt;font color="#000000"&gt;) + &lt;/font&gt;&lt;font color="#ff00ff"&gt;']'&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#ff00ff"&gt;'object: ' &lt;/font&gt;&lt;font color="#000000"&gt;+ something;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;default&lt;/font&gt;&lt;font color="#000000"&gt;:&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#008080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#ff00ff"&gt;': ' &lt;/font&gt;&lt;font color="#000000"&gt;+ something;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.lazy_escape = &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;(str)&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;str.&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/&amp;lt;/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;amp;lt;'&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\&amp;gt;/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#000080"&gt;replace&lt;/font&gt;&lt;font color="#000000"&gt;(/\n/g, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'&amp;lt;br /&amp;gt;'&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#000080"&gt;log &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;function &lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// comments by Microshaoft begin ======================================================&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//        if (window.console) {&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//            if (console.firebug) {&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//                console.log.apply(console, Array.prototype.slice.call(arguments));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//            } else {&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//                console.log.call(console, Array.prototype.slice.call(arguments));&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//            }&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//        }&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;// comments by Microshaoft end ======================================================&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft begin ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;font color="#800080"&gt;WScript&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Echo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;/*&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#800080"&gt;WScript&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Echo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; * Beautifyed by using \&amp;quot;Microshaoft.beautify.CScript.js\&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#800080"&gt;WScript&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Echo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; * \&amp;quot;Microshaoft.beautify.exe\&amp;quot; is invented for EditPlus user tool by using WScript&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#800080"&gt;WScript&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Echo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; * Thanks for \&amp;quot;http://jsbeautifier.org/\&amp;quot; supply \&amp;quot;https://github.com/einars/js-beautify\&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#800080"&gt;WScript&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Echo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot; */&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;opts =&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent_size: 1,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent_char: &lt;/font&gt;&lt;font color="#ff00ff"&gt;'\t'&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;preserve_newlines: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;brace_style: &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;expand-strict&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;keep_array_indentation: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_after_anon_function: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;space_before_conditional: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;indent_scripts: &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;s = beautify(s, opts);&lt;/font&gt;&lt;br/&gt;&lt;font color="#800080"&gt;WScript&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Echo&lt;/font&gt;&lt;font color="#000000"&gt;(s);&lt;/font&gt;&lt;br/&gt;&lt;font color="#008000"&gt;// add by Microshaoft end ===========================================================&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2485221.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2485221.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2484412.html</id><title type="text">ReaderWriterLockSlimHelper</title><summary type="text">namespace Microshaoft.Web.ShareCache{ using System; using System.Linq; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using Microsoft.Utilitys; public static class DataManager { //[STAThread] static void Main(string[] arg...</summary><published>2012-05-04T17:39:00Z</published><updated>2012-05-04T17:39:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2484412.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2484412.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft.&lt;/font&gt;&lt;font color="#008080"&gt;Web&lt;/font&gt;&lt;font color="#000000"&gt;.ShareCache&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Tasks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;Microsoft&lt;/font&gt;&lt;font color="#000000"&gt;.Utilitys;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;DataManager&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//[STAThread]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Main&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;[] args)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// TODO: 在此处添加代码以启动应用程序&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800080"&gt;ThreadStart&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;() =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Parallel&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;For&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;1000 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;10 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;10&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ParallelOptions&lt;/font&gt;&lt;font color="#000000"&gt;() { &lt;/font&gt;&lt;font color="#008000"&gt;MaxDegreeOfParallelism &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;1000 &lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, (x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;ShareData.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;(xx) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(xx.&lt;/font&gt;&lt;font color="#008000"&gt;Item2&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#008000"&gt;Start&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;((r = &lt;/font&gt;&lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;()) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;q&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(r == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;w&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;[] a = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;[]&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;aspx cs AAA&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;aspx cs BBB&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;aspx cs CCC&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;list = a.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;DataManager.ShareData = list;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//ReaderWriterLockSlimHelper.TryEnterWriterLockSlimWrite&amp;lt;List&amp;lt;Tuple&amp;lt;string, DateTime, bool&amp;gt;&amp;gt;&amp;gt;(ref DataManager.ShareData, list, 2);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;ShareData.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(x.&lt;/font&gt;&lt;font color="#008000"&gt;Item2&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;ShareData.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(x.&lt;/font&gt;&lt;font color="#008000"&gt;Item2&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(DataManager.&lt;/font&gt;&lt;font color="#800080"&gt;F2&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Environment&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Version&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;());&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static &lt;/font&gt;&lt;font color="#000000"&gt;DataManager()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;[] a = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;[]&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;A&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;B&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;C&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ShareData = a.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt; _shareData;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt; ShareData&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;ReaderWriterLockSlimHelper.TryEnterWriterLockSlimWrite&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_shareData, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_shareData;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public volatile static int &lt;/font&gt;&lt;font color="#800080"&gt;F1 &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;99&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;F2 &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;100&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#008080"&gt;Microsoft&lt;/font&gt;&lt;font color="#000000"&gt;.Utilitys&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;ReaderWriterLockSlimHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static bool &lt;/font&gt;&lt;font color="#000000"&gt;TryEnterWriterLockSlimWrite&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                 &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                     &lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;target&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;newTarget&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;enterTimeOutSeconds&lt;/font&gt;&lt;br/&gt;                                                 &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#0000ff"&gt;where &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#0000ff"&gt;class&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;rwls = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ReaderWriterLockSlim&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;timeOut = &lt;/font&gt;&lt;font color="#800000"&gt;Timeout&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Infinite&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(enterTimeOutSeconds &amp;gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;timeOut = enterTimeOutSeconds * &lt;/font&gt;&lt;font color="#800080"&gt;1000&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;r = (rwls.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryEnterWriteLock&lt;/font&gt;&lt;font color="#000000"&gt;(timeOut));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(r)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;target, newTarget);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;finally&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(r)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;rwls.&lt;/font&gt;&lt;font color="#ff0000"&gt;ExitWriteLock&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;r;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static bool &lt;/font&gt;&lt;font color="#000000"&gt;TryEnterWriterLockSlim&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;enterTimeOutSeconds&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(action != &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;rwls = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ReaderWriterLockSlim&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;timeOut = &lt;/font&gt;&lt;font color="#800000"&gt;Timeout&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Infinite&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(enterTimeOutSeconds &amp;gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;timeOut = enterTimeOutSeconds * &lt;/font&gt;&lt;font color="#800080"&gt;1000&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;r = (rwls.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryEnterWriteLock&lt;/font&gt;&lt;font color="#000000"&gt;(timeOut));&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(r)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;finally&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(r)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;rwls.&lt;/font&gt;&lt;font color="#ff0000"&gt;ExitWriteLock&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;r;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2484412.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/05/05/2484412.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/05/04/2483582.html</id><title type="text">PerformanceCountersHelper</title><summary type="text">namespace ConsoleApplication{ using System; using System.Linq; using System.Collections.Generic; using System.Reflection; using Microshaoft; /// &lt;summary&gt; /// Class1 的摘要说明。 /// &lt;/summary&gt; public class PerformanceCountersCategoryCreater { /// &lt;summary&gt; /// ...</summary><published>2012-05-04T15:34:00Z</published><updated>2012-05-04T15:34:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/04/2483582.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/05/04/2483582.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#800080"&gt;ConsoleApplication&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;/// &amp;lt;summary&amp;gt;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;/// Class1 的摘要说明。&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;/// &amp;lt;/summary&amp;gt;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;PerformanceCountersCategoryCreater&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;/// &amp;lt;summary&amp;gt;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;/// 应用程序的主入口点。&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;/// &amp;lt;/summary&amp;gt;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//[STAThread]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Main&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;[] args)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;assemblyPath = args[&lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName = args[&lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;category = args[&lt;/font&gt;&lt;font color="#800080"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;Assembly&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;LoadFile&lt;/font&gt;&lt;font color="#000000"&gt;(assemblyPath);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;typesList = assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Where&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(x.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToLower&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;IndexOf&lt;/font&gt;&lt;font color="#000000"&gt;(typeName.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToLower&lt;/font&gt;&lt;font color="#000000"&gt;()) &amp;gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;typesList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;PerformanceCountersHelper.CreatePerformanceCountersCategory&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;category&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;, x&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Hello World&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Environment&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Version&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;());&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//interface IPerformanceCountersManager&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    public string PerformanceCountersInstanceName { set; get; }&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//    public string PerformanceCountersCategoryName { set; get; }&lt;/font&gt;&lt;br/&gt;    &lt;font color="#008000"&gt;//}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;PerformanceCountersHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#000000"&gt;CreatePerformanceCountersCategory&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;performanceCountersCategoryName&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//var type = typeof(T);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertiesList = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperties&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;propertiesList = propertiesList.&lt;/font&gt;&lt;font color="#008000"&gt;Where&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(pi.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Exists&lt;/font&gt;&lt;font color="#000000"&gt;(performanceCountersCategoryName))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;propertiesList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CounterExists&lt;/font&gt;&lt;font color="#000000"&gt;(pi.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;, performanceCountersCategoryName))&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#008000"&gt;//if (PerformanceCounterCategory.InstanceExists(performanceCountersInstanceName, category))&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#008000"&gt;//{&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#008000"&gt;//    //var pc = new PerformanceCounter(category, pi.Name, instanceName, false);&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#008000"&gt;//    //pc.InstanceName = instanceName;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#008000"&gt;//    //pc.RemoveInstance();&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#008000"&gt;//}&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Delete&lt;/font&gt;&lt;font color="#000000"&gt;(performanceCountersCategoryName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;ccdc = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;CounterCreationDataCollection&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;propertiesList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyName = pi.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;ccd = PerformanceCounterHelper.GetCounterCreationData&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;propertyName&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;PerformanceCounterType&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;NumberOfItems64&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;ccdc.&lt;/font&gt;&lt;font color="#800000"&gt;Add&lt;/font&gt;&lt;font color="#000000"&gt;(ccd);&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Create&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;performanceCountersCategoryName,&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{0} Category Help.&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, performanceCountersCategoryName),&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#800080"&gt;PerformanceCounterCategoryType&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;MultiInstance&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;ccdc&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#000000"&gt;AttachPerformanceCountersToProperties&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;performanceCounterInstanceName&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;category&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#0000ff"&gt;default&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertiesList = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperties&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;propertiesList = propertiesList.&lt;/font&gt;&lt;font color="#008000"&gt;Where&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(pi.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;propertiesList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyName = pi.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;pc = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#008000"&gt;CategoryName &lt;/font&gt;&lt;font color="#000000"&gt;= category&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;CounterName &lt;/font&gt;&lt;font color="#000000"&gt;= propertyName&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;InstanceLifetime &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;PerformanceCounterInstanceLifetime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Process&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;InstanceName &lt;/font&gt;&lt;font color="#000000"&gt;= performanceCounterInstanceName&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;ReadOnly &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;RawValue &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(pi.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetGetMethod&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;IsStatic&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter = DynamicPropertyAccessor.CreateSetStaticPropertyValueAction&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;setter(pc);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(target != &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter = DynamicPropertyAccessor.CreateSetPropertyValueAction&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;setter(target, pc);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;PerformanceCounterHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;CounterCreationData &lt;/font&gt;&lt;font color="#000000"&gt;GetCounterCreationData(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;counterName, &lt;/font&gt;&lt;font color="#800080"&gt;PerformanceCounterType &lt;/font&gt;&lt;font color="#000000"&gt;performanceCounterType)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return new &lt;/font&gt;&lt;font color="#800000"&gt;CounterCreationData&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;CounterName &lt;/font&gt;&lt;font color="#000000"&gt;= counterName&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;CounterHelp &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{0} Help&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, counterName)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;CounterType &lt;/font&gt;&lt;font color="#000000"&gt;= performanceCounterType&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Expressions&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;DynamicPropertyAccessor&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static &lt;/font&gt;&lt;font color="#800000"&gt;Assembly &lt;/font&gt;&lt;font color="#000000"&gt;GetAssemblyByTypeName(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(castPropertyValue, target);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt;&amp;gt;(getPropertyValue, target);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, property);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt;&amp;gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, property);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(castPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(call, target, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt;&amp;gt;(call, target, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(call, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//var castPropertyValue = Expression.Convert(propertyValue, property.PropertyType);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, getSetMethod, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt;&amp;gt;(call, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2483582.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/05/04/2483582.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/04/29/2475897.html</id><title type="text">Async Concurrent Queue 2012-04-29 add stop Threads</title><summary type="text">namespace Test{ using System; using System.Threading; using System.Threading.Tasks; using Microshaoft; class Program { static void Main() { var q = new ConcurrentAsyncQueue&lt;int&gt;(); q.AttachPerformanceCounters("new"); Random random = ne...</summary><published>2012-04-28T22:48:00Z</published><updated>2012-04-28T22:48:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/29/2475897.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/29/2475897.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#008000"&gt;Test&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Tasks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;class &lt;/font&gt;&lt;font color="#000000"&gt;Program&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Main&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;q = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;ConcurrentAsyncQueue&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;q.AttachPerformanceCounters(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;new&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Random &lt;/font&gt;&lt;font color="#000000"&gt;random = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Random&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;q.OnDequeue += &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;ConcurrentAsyncQueue&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;.QueueEventHandler&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;sleep = random.&lt;/font&gt;&lt;font color="#008000"&gt;Next&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;4&lt;/font&gt;&lt;font color="#000000"&gt;) * &lt;/font&gt;&lt;font color="#800080"&gt;500&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Sleep&lt;/font&gt;&lt;font color="#000000"&gt;(sleep);&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#008000"&gt;//Console.WriteLine(x);&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;q.&lt;/font&gt;&lt;font color="#ff0000"&gt;OnException &lt;/font&gt;&lt;font color="#000000"&gt;+= &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;ConcurrentAsyncQueue&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;.ExceptionEventHandler&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(x.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;());&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;begin ...&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//q.StartAdd(10);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;((r = &lt;/font&gt;&lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;()) != &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;q&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryParse&lt;/font&gt;&lt;font color="#000000"&gt;(r, &lt;/font&gt;&lt;font color="#0000ff"&gt;out &lt;/font&gt;&lt;font color="#000000"&gt;i))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Parallel Enqueue {0} begin ...&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, i);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800080"&gt;ParameterizedThreadStart&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#800000"&gt;Parallel&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;For&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;, i&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;, (xx) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;q.&lt;/font&gt;&lt;font color="#ff0000"&gt;Enqueue&lt;/font&gt;&lt;font color="#000000"&gt;(xx);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Parallel Enqueue {0} end ...&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, i);&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#008000"&gt;Start&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(r.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToLower&lt;/font&gt;&lt;font color="#000000"&gt;() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;stop&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;q.StartStop(&lt;/font&gt;&lt;font color="#800080"&gt;10&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(r.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToLower&lt;/font&gt;&lt;font color="#000000"&gt;() == &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;add&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;q.StartAdd(&lt;/font&gt;&lt;font color="#800080"&gt;20&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//else if (r.ToLower() == &amp;quot;count&amp;quot;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//    q.EnablePerformanceCountersCount = true;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//else if (r.ToLower() == &amp;quot;uncount&amp;quot;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//    q.EnablePerformanceCountersCount = false;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;please input Number!&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Concurrent&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Tasks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;ConcurrentAsyncQueue&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public delegate void &lt;/font&gt;&lt;font color="#000000"&gt;QueueEventHandler(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;element);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public event &lt;/font&gt;&lt;font color="#000000"&gt;QueueEventHandler OnDequeue;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public delegate void &lt;/font&gt;&lt;font color="#000000"&gt;QueueLogEventHandler(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;logMessage);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#000000"&gt;QueueLogEventHandler&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;OnQueueLog&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, OnDequeueThreadStart&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, OnDequeueThreadEnd;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public delegate void &lt;/font&gt;&lt;font color="#000000"&gt;ExceptionEventHandler(&lt;/font&gt;&lt;font color="#800000"&gt;Exception &lt;/font&gt;&lt;font color="#000000"&gt;exception);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public event &lt;/font&gt;&lt;font color="#000000"&gt;ExceptionEventHandler &lt;/font&gt;&lt;font color="#ff0000"&gt;OnException&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentQueue&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; _queue = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentQueue&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentQueue&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; _callbackProcessBreaksActions;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private long &lt;/font&gt;&lt;font color="#000000"&gt;_concurrentDequeueThreadsCount = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; &lt;/font&gt;&lt;font color="#008000"&gt;//Microshaoft 用于控制并发线程数&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentQueue&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;ThreadProcessor&amp;gt; _dequeueThreadsProcessorsPool;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private int &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueIdleSleepSeconds = &lt;/font&gt;&lt;font color="#800080"&gt;10&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#000000"&gt;DequeueIdleSleepSeconds&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;_dequeueIdleSleepSeconds = &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueIdleSleepSeconds;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;_enqueuePerformanceCounter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;EnqueuePerformanceCounter&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_enqueuePerformanceCounter, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_enqueuePerformanceCounter;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;_dequeuePerformanceCounter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;DequeuePerformanceCounter&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_dequeuePerformanceCounter, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_dequeuePerformanceCounter;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueProcessedPerformanceCounter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;DequeueProcessedPerformanceCounter&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueProcessedPerformanceCounter, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueProcessedPerformanceCounter;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;_queueLengthPerformanceCounter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;QueueLengthPerformanceCounter&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_queueLengthPerformanceCounter, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_queueLengthPerformanceCounter;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadStartPerformanceCounter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;DequeueThreadStartPerformanceCounter&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadStartPerformanceCounter, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadStartPerformanceCounter;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadEndPerformanceCounter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;DequeueThreadEndPerformanceCounter&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadEndPerformanceCounter, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadEndPerformanceCounter;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadsCountPerformanceCounter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter &lt;/font&gt;&lt;font color="#000000"&gt;DequeueThreadsCountPerformanceCounter&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadsCountPerformanceCounter, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_dequeueThreadsCountPerformanceCounter;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private bool &lt;/font&gt;&lt;font color="#000000"&gt;_isAttachedPerformanceCounters = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private class &lt;/font&gt;&lt;font color="#000000"&gt;ThreadProcessor&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public bool &lt;/font&gt;&lt;font color="#008000"&gt;Break&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;EventWaitHandle &lt;/font&gt;&lt;font color="#ff0000"&gt;Wait&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#000000"&gt;ConcurrentAsyncQueue&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public void &lt;/font&gt;&lt;font color="#000000"&gt;StopOne()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;Break &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#000000"&gt;ThreadProcessor&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;ConcurrentAsyncQueue&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; queue&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;EventWaitHandle &lt;/font&gt;&lt;font color="#000000"&gt;wait&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#ff0000"&gt;Wait &lt;/font&gt;&lt;font color="#000000"&gt;= wait;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;Sender &lt;/font&gt;&lt;font color="#000000"&gt;= queue;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public void &lt;/font&gt;&lt;font color="#000000"&gt;ThreadProcess()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._concurrentDequeueThreadsCount);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._isAttachedPerformanceCounters)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueThreadStartPerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueThreadsCountPerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;long &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.OnDequeueThreadStart != &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Read&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._concurrentDequeueThreadsCount);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.OnDequeueThreadStart&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#ff00ff"&gt;&amp;quot;{0} Threads Count {1},Queue Count {2},Current Thread: {3} at {4}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Threads ++ !&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, r&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._queue.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentThread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;yyyy-MM-dd HH:mm:ss.fffff&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#ff0000"&gt;#region &lt;/font&gt;&lt;font color="#0000ff"&gt;while true&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Break&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._queue.&lt;/font&gt;&lt;font color="#008000"&gt;IsEmpty&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#ff0000"&gt;#region &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;queue.&lt;/font&gt;&lt;font color="#008000"&gt;IsEmpty&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Break&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;element;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._queue.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryDequeue&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;out &lt;/font&gt;&lt;font color="#000000"&gt;element))&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._isAttachedPerformanceCounters)&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeuePerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.QueueLengthPerformanceCounter.&lt;/font&gt;&lt;font color="#ff0000"&gt;Decrement&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.OnDequeue != &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.OnDequeue(element);&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._isAttachedPerformanceCounters)&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueProcessedPerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#ff0000"&gt;#endregion &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;queue.&lt;/font&gt;&lt;font color="#008000"&gt;IsEmpty&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#ff0000"&gt;#region &lt;/font&gt;&lt;font color="#000000"&gt;wait&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._dequeueThreadsProcessorsPool.&lt;/font&gt;&lt;font color="#ff0000"&gt;Enqueue&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Break&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#ff0000"&gt;Wait&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WaitOne&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueIdleSleepSeconds * &lt;/font&gt;&lt;font color="#800080"&gt;1000&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#ff0000"&gt;#endregion &lt;/font&gt;&lt;font color="#000000"&gt;wait&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#ff0000"&gt;#endregion &lt;/font&gt;&lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#800080"&gt;1 &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;catch &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Exception &lt;/font&gt;&lt;font color="#000000"&gt;e)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;OnException &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;OnException&lt;/font&gt;&lt;font color="#000000"&gt;(e);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;finally&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Decrement&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._concurrentDequeueThreadsCount);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(r &amp;lt; &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._concurrentDequeueThreadsCount, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._isAttachedPerformanceCounters)&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueThreadsCountPerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;RawValue &lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt; &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueThreadsCountPerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;RawValue &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._concurrentDequeueThreadsCount;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.OnDequeueThreadEnd != &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.OnDequeueThreadEnd&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#ff00ff"&gt;&amp;quot;{0} Threads Count {1},Queue Count {2},Current Thread: {3} at {4}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Threads--&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, r&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._queue.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentThread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;yyyy-MM-dd HH:mm:ss.fffff&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;._isAttachedPerformanceCounters)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueThreadEndPerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.DequeueThreadsCountPerformanceCounter.&lt;/font&gt;&lt;font color="#ff0000"&gt;Decrement&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(!&lt;/font&gt;&lt;font color="#008000"&gt;Break&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#008000"&gt;Sender&lt;/font&gt;&lt;font color="#000000"&gt;.StartAdd(&lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;Break &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public void &lt;/font&gt;&lt;font color="#000000"&gt;AttachPerformanceCounters(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;instanceNamePrefix)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;category = &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Microshaoft AsyncConurrentQueue Counters&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;process = &lt;/font&gt;&lt;font color="#800000"&gt;Process&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetCurrentProcess&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;processName = process.&lt;/font&gt;&lt;font color="#008000"&gt;ProcessName&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;instanceName = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#ff00ff"&gt;&amp;quot;{0}-{1}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, instanceNamePrefix&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, processName&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//, processID&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;//, processStartTime.ToString(&amp;quot;yyyy-MM-dd HH:mm:ss.fff&amp;quot;)&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;PerformanceCountersHelper.AttachPerformanceCountersToProperties&amp;lt;ConcurrentAsyncQueue&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(instanceName, category, &lt;/font&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;_isAttachedPerformanceCounters = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_queue.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public long &lt;/font&gt;&lt;font color="#000000"&gt;ConcurrentThreadsCount&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_concurrentDequeueThreadsCount;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private void &lt;/font&gt;&lt;font color="#ff0000"&gt;Stop&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;count)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt; count; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(_callbackProcessBreaksActions.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryDequeue&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;out &lt;/font&gt;&lt;font color="#000000"&gt;action))&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public void &lt;/font&gt;&lt;font color="#000000"&gt;StartStop(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;count)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800080"&gt;ThreadStart&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;() =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#ff0000"&gt;Stop&lt;/font&gt;&lt;font color="#000000"&gt;(count);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#008000"&gt;Start&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public void &lt;/font&gt;&lt;font color="#000000"&gt;StartAdd(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;count)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800080"&gt;ThreadStart&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;() =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#800000"&gt;Add&lt;/font&gt;&lt;font color="#000000"&gt;(count);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#008000"&gt;Start&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private void &lt;/font&gt;&lt;font color="#800000"&gt;Add&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;count)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt; count; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_concurrentDequeueThreadsCount);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(_dequeueThreadsProcessorsPool == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;_dequeueThreadsProcessorsPool = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentQueue&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;ThreadProcessor&amp;gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;processor = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;ThreadProcessor&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;AutoResetEvent&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;thread = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800080"&gt;ThreadStart&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;processor.ThreadProcess&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(_callbackProcessBreaksActions == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;_callbackProcessBreaksActions = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentQueue&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;callbackProcessBreakAction = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;processor.StopOne&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;_callbackProcessBreaksActions.&lt;/font&gt;&lt;font color="#ff0000"&gt;Enqueue&lt;/font&gt;&lt;font color="#000000"&gt;(callbackProcessBreakAction);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;_dequeueThreadsProcessorsPool.&lt;/font&gt;&lt;font color="#ff0000"&gt;Enqueue&lt;/font&gt;&lt;font color="#000000"&gt;(processor);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;thread.&lt;/font&gt;&lt;font color="#008000"&gt;Start&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public void &lt;/font&gt;&lt;font color="#ff0000"&gt;Enqueue&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;element)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;_queue.&lt;/font&gt;&lt;font color="#ff0000"&gt;Enqueue&lt;/font&gt;&lt;font color="#000000"&gt;(element);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(_isAttachedPerformanceCounters)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;EnqueuePerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;QueueLengthPerformanceCounter.&lt;/font&gt;&lt;font color="#008000"&gt;Increment&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;_dequeueThreadsProcessorsPool != &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;amp;&amp;amp; !_dequeueThreadsProcessorsPool.&lt;/font&gt;&lt;font color="#008000"&gt;IsEmpty&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;ThreadProcessor processor;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(_dequeueThreadsProcessorsPool.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryDequeue&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;out &lt;/font&gt;&lt;font color="#000000"&gt;processor))&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;processor.&lt;/font&gt;&lt;font color="#ff0000"&gt;Wait&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Set&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;catch &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Exception &lt;/font&gt;&lt;font color="#000000"&gt;e)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff0000"&gt;OnException &lt;/font&gt;&lt;font color="#000000"&gt;!= &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#ff0000"&gt;OnException&lt;/font&gt;&lt;font color="#000000"&gt;(e);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;PerformanceCountersHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#000000"&gt;AttachPerformanceCountersToProperties&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;performanceCounterInstanceName&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;category&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#0000ff"&gt;default&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertiesList = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperties&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;propertiesList = propertiesList.&lt;/font&gt;&lt;font color="#008000"&gt;Where&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(pi.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Exists&lt;/font&gt;&lt;font color="#000000"&gt;(category))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;propertiesList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CounterExists&lt;/font&gt;&lt;font color="#000000"&gt;(pi.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;, category))&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;InstanceExists&lt;/font&gt;&lt;font color="#000000"&gt;(performanceCounterInstanceName, category))&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#008000"&gt;//var pc = new PerformanceCounter(category, pi.Name, instanceName, false);&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#008000"&gt;//pc.InstanceName = instanceName;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#008000"&gt;//pc.RemoveInstance();&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Delete&lt;/font&gt;&lt;font color="#000000"&gt;(category);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;ccdc = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;CounterCreationDataCollection&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;propertiesList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyName = pi.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;ccd = PerformanceCounterHelper.GetCounterCreationData&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;propertyName&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;PerformanceCounterType&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;NumberOfItems64&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;ccdc.&lt;/font&gt;&lt;font color="#800000"&gt;Add&lt;/font&gt;&lt;font color="#000000"&gt;(ccd);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;PerformanceCounterCategory&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Create&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;category,&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{0} Category Help.&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, category),&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#800080"&gt;PerformanceCounterCategoryType&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;MultiInstance&lt;/font&gt;&lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;ccdc&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;propertiesList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(pi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyName = pi.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;pc = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#008000"&gt;CategoryName &lt;/font&gt;&lt;font color="#000000"&gt;= category&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;CounterName &lt;/font&gt;&lt;font color="#000000"&gt;= propertyName&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;InstanceLifetime &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;PerformanceCounterInstanceLifetime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Process&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;InstanceName &lt;/font&gt;&lt;font color="#000000"&gt;= performanceCounterInstanceName&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;ReadOnly &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;RawValue &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(pi.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetGetMethod&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;IsStatic&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter = DynamicPropertyAccessor.CreateSetStaticPropertyValueAction&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;setter(pc);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(target != &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter = DynamicPropertyAccessor.CreateSetPropertyValueAction&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;PerformanceCounter&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;setter(target, pc);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;PerformanceCounterHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;CounterCreationData &lt;/font&gt;&lt;font color="#000000"&gt;GetCounterCreationData(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;counterName, &lt;/font&gt;&lt;font color="#800080"&gt;PerformanceCounterType &lt;/font&gt;&lt;font color="#000000"&gt;performanceCounterType)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return new &lt;/font&gt;&lt;font color="#800000"&gt;CounterCreationData&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;CounterName &lt;/font&gt;&lt;font color="#000000"&gt;= counterName&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;CounterHelp &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Format&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{0} Help&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, counterName)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;CounterType &lt;/font&gt;&lt;font color="#000000"&gt;= performanceCounterType&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Expressions&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;DynamicPropertyAccessor&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(castPropertyValue, target);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt;&amp;gt;(getPropertyValue, target);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, property);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt;&amp;gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, property);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(castPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(call, target, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt;&amp;gt;(call, target, propertyValue).&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(call, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//var castPropertyValue = Expression.Convert(propertyValue, property.PropertyType);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, getSetMethod, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt;&amp;gt;(call, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2475897.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/04/29/2475897.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/04/20/2459867.html</id><title type="text">DynamicPropertyAccessor Expression lambda</title><summary type="text">namespace ConsoleApplication{ using System; using System.Diagnostics; using System.Reflection; using System.Threading; using System.Linq; using Microshaoft; using Test.Share; public class Class1 { //[STAThread] static void Main(string[] args) { ...</summary><published>2012-04-20T13:25:00Z</published><updated>2012-04-20T13:25:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/20/2459867.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/20/2459867.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#800080"&gt;ConsoleApplication&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008000"&gt;Test&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Share&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;Class1&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//[STAThread]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Main&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;[] args)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;c = &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Test.Share.ComplexType&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== c);&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;ComplexType&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;F2 &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;01234&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;o = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ComplexType&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;o.&lt;/font&gt;&lt;font color="#800080"&gt;F1 &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;56789&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;typeName = o.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;FullName&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getter1 = DynamicPropertyAccessor.CreateGetStaticPropertyValueFunc(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F2&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;v1 = getter1();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v1);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getter2 = DynamicPropertyAccessor.CreateGetStaticPropertyValueFunc&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F2&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;v2 = getter2();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v2);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getter3 = DynamicPropertyAccessor.CreateGetPropertyValueFunc(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;v3 = getter3(o);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v3);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getter4 = DynamicPropertyAccessor.CreateGetPropertyValueFunc&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;v4 = getter4(o);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v4);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter1 = DynamicPropertyAccessor.CreateSetStaticPropertyValueAction(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F2&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;setter1(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;ABCD&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v1 = getter1();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v1);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v2 = getter2();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v2);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter2 = DynamicPropertyAccessor.CreateSetStaticPropertyValueAction&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F2&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;setter2(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;EFFGH&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v1 = getter1();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v1);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v2 = getter2();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v2);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter3 = DynamicPropertyAccessor.CreateSetPropertyValueAction(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;setter3(o, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;IJKL&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v3 = getter3(o);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v3);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v4 = getter4(o);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v4);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;setter4 = DynamicPropertyAccessor.CreateSetPropertyValueAction&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(typeName, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;F1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;setter4(o, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;MNOP&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v3 = getter3(o);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v3);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;v4 = getter4(o);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(v4);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//=======================================================================================&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#008000"&gt;Test&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Share&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#800000"&gt;ComplexType&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public string &lt;/font&gt;&lt;font color="#800080"&gt;F1&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;_f2;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#800080"&gt;F2&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;_f2;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Interlocked&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Exchange&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;_f2, &lt;/font&gt;&lt;font color="#0000ff"&gt;value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Expressions&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;DynamicPropertyAccessor&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static &lt;/font&gt;&lt;font color="#800000"&gt;Assembly &lt;/font&gt;&lt;font color="#000000"&gt;GetAssemblyByTypeName(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;AppDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentDomain&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetAssemblies&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;(a) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;a.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetTypes&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Any&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;(t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(t.&lt;/font&gt;&lt;font color="#008000"&gt;FullName &lt;/font&gt;&lt;font color="#000000"&gt;== typeName);&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetPropertyValueFunc(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(castPropertyValue, target);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateGetPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt;&amp;gt;(getPropertyValue, target);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateGetStaticPropertyValueFunc&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, property);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt;&amp;gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, property);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(getPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(castPropertyValue, &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateGetStaticPropertyValueFunc(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(call, target, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetPropertyValueAction(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;target = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castTarget = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(target, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(castTarget, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt;&amp;gt;(call, target, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, TProperty&amp;gt; CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;font color="#000000"&gt;(propertyValue, property.&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, getSetMethod, castPropertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;(call, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetStaticPropertyValueAction(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;property = &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetProperty&lt;/font&gt;&lt;font color="#000000"&gt;(propertyName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;propertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(TProperty));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//var castPropertyValue = Expression.Convert(propertyValue, property.PropertyType);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(getSetMethod == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;getSetMethod = property.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetSetMethod&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;call = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Call&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;, getSetMethod, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt;&amp;gt;(call, propertyValue);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;Action&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;TProperty&amp;gt; CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;typeName, &lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;propertyName, &lt;/font&gt;&lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;isTypeFromAssembly = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(isTypeFromAssembly)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;assembly = GetAssemblyByTypeName(typeName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= assembly.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;(typeName);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;CreateSetStaticPropertyValueAction&amp;lt;TProperty&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, propertyName);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2459867.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/04/20/2459867.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/04/17/2452991.html</id><title type="text">ObjectsTypesBytesHelper</title><summary type="text">namespace Microshaoft{ using System; using System.Linq; using System.Reflection; using System.Collections.Generic; using System.Collections.Concurrent; using System.Linq.Expressions; public static class ObjectsTypesBytesHelper { public static byte[] ObjectToBytes&lt;T&gt; ...</summary><published>2012-04-16T17:37:00Z</published><updated>2012-04-16T17:37:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/17/2452991.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/17/2452991.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Concurrent&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Expressions&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;ObjectsTypesBytesHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static byte&lt;/font&gt;&lt;font color="#000000"&gt;[] ObjectToBytes&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                 &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                    &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[]                                &lt;/font&gt;&lt;font color="#008000"&gt;// return&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;&amp;gt; processObjectMemberBytesBlockFunc&lt;/font&gt;&lt;br/&gt;                                 &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;&amp;gt; entry = ObjectsTypesCache.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetOrAdd&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;p = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;gt; buffersList = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;entry.&lt;/font&gt;&lt;font color="#008000"&gt;Item3&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = processObjectMemberBytesBlockFunc&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;i&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;, p                    &lt;/font&gt;&lt;font color="#008000"&gt;//累计长度&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#008000"&gt;Item3&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#008000"&gt;Item4&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#008000"&gt;Item5&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#008000"&gt;Item6&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;p += buffer.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;buffersList.&lt;/font&gt;&lt;font color="#800000"&gt;Add&lt;/font&gt;&lt;font color="#000000"&gt;(buffer);&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ClassOrStructBytesLengthAttribute attribute = entry.&lt;/font&gt;&lt;font color="#008000"&gt;Item2&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;offset = attribute.BytesLength;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buff = &lt;/font&gt;&lt;font color="#0000ff"&gt;new byte&lt;/font&gt;&lt;font color="#000000"&gt;[offset];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buf = &lt;/font&gt;&lt;font color="#800000"&gt;BitConverter&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetBytes&lt;/font&gt;&lt;font color="#000000"&gt;(p);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;count = (buf.&lt;/font&gt;&lt;font color="#008000"&gt;Length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt; buff.&lt;/font&gt;&lt;font color="#008000"&gt;Length &lt;/font&gt;&lt;font color="#000000"&gt;? buf.&lt;/font&gt;&lt;font color="#008000"&gt;Length &lt;/font&gt;&lt;font color="#000000"&gt;: buff.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Buffer&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;BlockCopy&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;buf&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, buff&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, count&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Array&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Reverse&lt;/font&gt;&lt;font color="#000000"&gt;(buff);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] bytes = &lt;/font&gt;&lt;font color="#0000ff"&gt;new byte&lt;/font&gt;&lt;font color="#000000"&gt;[p + offset];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;p = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Buffer&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;BlockCopy&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;buff&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, bytes&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, buff.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;p += buff.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;buffersList.&lt;/font&gt;&lt;font color="#800000"&gt;ForEach&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800000"&gt;Buffer&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;BlockCopy&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;x&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, bytes&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, p&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;p += x.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;bytes;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;ObjectsTypesCache&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentDictionary&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#800000"&gt;Type            &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#800000"&gt;Type                                    &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                    &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;&amp;gt; TypesMembersInfosAccessorsDictionaryCache&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;private set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static &lt;/font&gt;&lt;font color="#000000"&gt;ObjectsTypesCache()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;TypesMembersInfosAccessorsDictionaryCache = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentDictionary&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;&amp;gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;gt; &lt;/font&gt;&lt;font color="#ff0000"&gt;GetOrAdd&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;TypesMembersInfosAccessorsDictionaryCache.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetOrAdd&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#800080"&gt;type&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, (t) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;ClassOrStructBytesLengthAttribute typeAttribute =&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;(ClassOrStructBytesLengthAttribute[])&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;t.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetCustomAttributes&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(ClassOrStructBytesLengthAttribute)&lt;/font&gt;&lt;br/&gt;                                                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#008000"&gt;OrderBy&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;x.AttributeSequence;&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#800000"&gt;Type            &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#800000"&gt;Type                                        &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                        &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;&amp;gt; entry =&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#800080"&gt;type&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, typeAttribute&lt;/font&gt;&lt;br/&gt;                                                                                                &lt;font color="#000000"&gt;, GetTypeAllMembersInfosList(&lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;font color="#000000"&gt;, typeAttribute)&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;entry;&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800000"&gt;Type                                        &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                        &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;gt; GetTypeAllMembersInfosList(&lt;/font&gt;&lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#000000"&gt;t, ClassOrStructBytesLengthAttribute typeAttribute)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#800000"&gt;Type                                                &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                                &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;&amp;gt; list = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;t.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetMembers&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Where&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;(mi) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(mi.&lt;/font&gt;&lt;font color="#008000"&gt;MemberType &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#800080"&gt;MemberTypes&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Field &lt;/font&gt;&lt;font color="#000000"&gt;|| mi.&lt;/font&gt;&lt;font color="#008000"&gt;MemberType &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#800080"&gt;MemberTypes&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;attributes =&lt;/font&gt;&lt;br/&gt;                                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                            &lt;font color="#000000"&gt;(MemberSequenceBytesLengthAttribute[])mi.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetCustomAttributes&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(MemberSequenceBytesLengthAttribute)&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;br/&gt;                                                                                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                         &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#008000"&gt;OrderBy&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;(x) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                                                                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;x.AttributeSequence;&lt;/font&gt;&lt;br/&gt;                                                                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                                                                        &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(attributes.&lt;/font&gt;&lt;font color="#008000"&gt;Count &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;attribute = attributes.&lt;/font&gt;&lt;font color="#008000"&gt;First&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(list == &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;list = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#800000"&gt;Type                                    &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                    &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                            &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;&amp;gt;();&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(mi.&lt;/font&gt;&lt;font color="#008000"&gt;MemberType &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#800080"&gt;MemberTypes&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Field&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= ((&lt;/font&gt;&lt;font color="#800000"&gt;FieldInfo&lt;/font&gt;&lt;font color="#000000"&gt;)mi).&lt;/font&gt;&lt;font color="#008000"&gt;FieldType&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#0000ff"&gt;else if &lt;/font&gt;&lt;font color="#000000"&gt;(mi.&lt;/font&gt;&lt;font color="#008000"&gt;MemberType &lt;/font&gt;&lt;font color="#000000"&gt;== &lt;/font&gt;&lt;font color="#800080"&gt;MemberTypes&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#800080"&gt;type &lt;/font&gt;&lt;font color="#000000"&gt;= ((&lt;/font&gt;&lt;font color="#800000"&gt;PropertyInfo&lt;/font&gt;&lt;font color="#000000"&gt;)mi).&lt;/font&gt;&lt;font color="#008000"&gt;PropertyType&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                     &lt;font color="#800000"&gt;Type&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                                    &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                                                 &lt;font color="#000000"&gt;&amp;gt; entry = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Tuple&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#800000"&gt;Type                                    &lt;/font&gt;&lt;font color="#008000"&gt;//类的类型&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, ClassOrStructBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Type                                    &lt;/font&gt;&lt;font color="#008000"&gt;//Member Data Type&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, MemberSequenceBytesLengthAttribute&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;t&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, typeAttribute&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, mi&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;type&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, attribute&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;DynamicPropertyOrFieldAccessor(mi)&lt;/font&gt;&lt;br/&gt;                                                                                 &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;list.&lt;/font&gt;&lt;font color="#800000"&gt;Add&lt;/font&gt;&lt;font color="#000000"&gt;(entry);&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;r;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;result = list.&lt;/font&gt;&lt;font color="#008000"&gt;OrderBy&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(entry) =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;entry.&lt;/font&gt;&lt;font color="#008000"&gt;Item5&lt;/font&gt;&lt;font color="#000000"&gt;.AttributeSequence;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;ToList&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;result;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;DynamicPropertyOrFieldAccessor&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private &lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; m_getter;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//public DynamicPropertyAccessor(Type type, string propertyName)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//    : this(type.GetProperty(propertyName))&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#000000"&gt;DynamicPropertyOrFieldAccessor(&lt;/font&gt;&lt;font color="#800000"&gt;MemberInfo &lt;/font&gt;&lt;font color="#000000"&gt;memberInfo)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// target: (object)((({TargetType})instance).{Property})&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// preparing parameter, object type&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;ParameterExpression &lt;/font&gt;&lt;font color="#000000"&gt;instance = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Parameter&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;),&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#ff00ff"&gt;&amp;quot;instance&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// ({TargetType})instance&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Expression &lt;/font&gt;&lt;font color="#000000"&gt;instanceCast = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;instance&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;, memberInfo.&lt;/font&gt;&lt;font color="#008000"&gt;ReflectedType&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// (({TargetType})instance).{Property}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Expression &lt;/font&gt;&lt;font color="#000000"&gt;memberAccess = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;PropertyOrField&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;instanceCast&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;, memberInfo.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// (object)((({TargetType})instance).{Property})&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;UnaryExpression &lt;/font&gt;&lt;font color="#000000"&gt;castPropertyValue = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800000"&gt;Convert&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;memberAccess&lt;/font&gt;&lt;br/&gt;                                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// Lambda expression&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt; lambda = &lt;/font&gt;&lt;font color="#800000"&gt;Expression&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Lambda&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;Func&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                                                        &lt;font color="#000000"&gt;castPropertyValue, instance&lt;/font&gt;&lt;br/&gt;                                                                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;font color="#000000"&gt;.m_getter = lambda.&lt;/font&gt;&lt;font color="#ff0000"&gt;Compile&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public object &lt;/font&gt;&lt;font color="#ff0000"&gt;GetValue&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;object &lt;/font&gt;&lt;font color="#000000"&gt;o)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return this&lt;/font&gt;&lt;font color="#000000"&gt;.m_getter(o);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Reflection&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Concurrent&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;AttributeUsage&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;AttributeTargets&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Struct &lt;/font&gt;&lt;font color="#000000"&gt;| &lt;/font&gt;&lt;font color="#800080"&gt;AttributeTargets&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Class&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;AllowMultiple &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;ClassOrStructBytesLengthAttribute : &lt;/font&gt;&lt;font color="#800000"&gt;Attribute&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#000000"&gt;BytesLength&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#000000"&gt;AttributeSequence&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;AttributeUsage&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;AttributeTargets&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Property &lt;/font&gt;&lt;font color="#000000"&gt;| &lt;/font&gt;&lt;font color="#800080"&gt;AttributeTargets&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Field&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;AllowMultiple &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;MemberSequenceBytesLengthAttribute : &lt;/font&gt;&lt;font color="#800000"&gt;Attribute&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#000000"&gt;MemberSequence&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#000000"&gt;AttributeSequence&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#000000"&gt;BytesLength&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2452991.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/04/17/2452991.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/04/08/2437485.html</id><title type="text">MapReduce PLinq 简单示例</title><summary type="text">namespace Microshaoft{ using System; using System.Linq; using System.Threading.Tasks; using System.Collections.Generic; using System.Collections.Concurrent; class Program { static void Main(string[] args) { var list = new List&lt;Employee&gt;() ...</summary><published>2012-04-08T04:05:00Z</published><updated>2012-04-08T04:05:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/08/2437485.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/08/2437485.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Linq&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Tasks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Concurrent&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;class &lt;/font&gt;&lt;font color="#000000"&gt;Program&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Main&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;[] args)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;list = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;Employee&amp;gt;()&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;Employee()&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#008000"&gt;ID &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Bill Gates&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Department &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Microsoft&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;Employee()&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#008000"&gt;ID &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;2&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Steve Jobs&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Department &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Apple&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;Employee()&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#008000"&gt;ID &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;3&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Larry Page&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Department &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Google&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;Employee()&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#008000"&gt;ID &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;4&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Sergey Brin&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;Department &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Google&amp;quot;&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//按Department分组映射&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;mapper = list.&lt;/font&gt;&lt;font color="#ff0000"&gt;AsParallel&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ToLookup&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;x =&amp;gt; x.&lt;/font&gt;&lt;font color="#800080"&gt;Department&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, x =&amp;gt; x&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#008000"&gt;// x =&amp;gt; 0&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;).&lt;/font&gt;&lt;font color="#ff0000"&gt;AsParallel&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;ConcurrentDictionary&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; result = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ConcurrentDictionary&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;mapper.&lt;/font&gt;&lt;font color="#ff0000"&gt;ForAll&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//mapper.ToList().ForEach&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;x =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(x.&lt;/font&gt;&lt;font color="#800000"&gt;Key&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#008000"&gt;//to do 分布式远程调用计算&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(result.&lt;/font&gt;&lt;font color="#ff0000"&gt;TryAdd&lt;/font&gt;&lt;font color="#000000"&gt;(x.&lt;/font&gt;&lt;font color="#800000"&gt;Key&lt;/font&gt;&lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;font color="#000000"&gt;())) &lt;/font&gt;&lt;font color="#008000"&gt;//保存分布式结果到ConcurrentDictionary&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;x.&lt;/font&gt;&lt;font color="#ff0000"&gt;AsParallel&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ForAll&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#008000"&gt;//x.ToList().ForEach&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;xx =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                                &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{0},{1}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#800000"&gt;Key&lt;/font&gt;&lt;font color="#000000"&gt;, xx.&lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//返回所有分布式结果&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;result.&lt;/font&gt;&lt;font color="#ff0000"&gt;AsParallel&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#ff0000"&gt;ForAll&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;kvp =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;{0},{1}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, kvp.&lt;/font&gt;&lt;font color="#800000"&gt;Key&lt;/font&gt;&lt;font color="#000000"&gt;, kvp.&lt;/font&gt;&lt;font color="#008000"&gt;Value&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//化简统计&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;reducer =&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;from&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000080"&gt;IGrouping&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;, Employee&amp;gt; groupingMapper&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;mapper.&lt;/font&gt;&lt;font color="#ff0000"&gt;AsParallel&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#0000ff"&gt;select&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800080"&gt;Department &lt;/font&gt;&lt;font color="#000000"&gt;= groupingMapper.&lt;/font&gt;&lt;font color="#800000"&gt;Key&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#008000"&gt;Count &lt;/font&gt;&lt;font color="#000000"&gt;= groupingMapper.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;};&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;reducer.&lt;/font&gt;&lt;font color="#ff0000"&gt;ForAll&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;x =&amp;gt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;当前 Department = {0} 的人数有: {1} 人&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#800080"&gt;Department&lt;/font&gt;&lt;font color="#000000"&gt;, x.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;var &lt;/font&gt;&lt;font color="#000000"&gt;sum = reducer.&lt;/font&gt;&lt;font color="#ff0000"&gt;Sum&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;x =&amp;gt; x.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;总人数有: {0} 人&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, sum);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;Employee&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public int &lt;/font&gt;&lt;font color="#008000"&gt;ID&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public string &lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public string &lt;/font&gt;&lt;font color="#800080"&gt;Department&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public string &lt;/font&gt;&lt;font color="#008000"&gt;Gender&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;Birthday&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;get&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;set&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2437485.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/04/08/2437485.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/Microshaoft/archive/2012/04/06/2435489.html</id><title type="text">DataContractSerializer vs XmlSerializer vs DataContractJsonSerializer vs SoapFormatter vs BinaryFormatter 性能测试对比</title><summary type="text">namespace Test{ using System; using System.IO; using System.Text; using System.Xml; using System.Xml.Serialization; using System.Runtime.Serialization; using System.Runtime.Serialization.Json; using System.Runtime.Serialization.Formatters.Soap; using Test.Share; using M...</summary><published>2012-04-06T15:24:00Z</published><updated>2012-04-06T15:24:00Z</updated><author><name>Microshaoft</name><uri>http://www.cnblogs.com/Microshaoft/</uri></author><link rel="alternate" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/06/2435489.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/Microshaoft/archive/2012/04/06/2435489.html"/><content type="html">&lt;!-- 代码引用灰表格 --&gt;&lt;table border="1" cellspacing="0" cellpadding="0"  bgcolor="#eeece1"&gt;&lt;tr&gt;&lt;td&gt;&lt;!-- begin code --&gt;&lt;br/&gt;&lt;font face="Fixedsys"&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#008000"&gt;Test&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;IO&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Text&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Json&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Formatters&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Soap&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008000"&gt;Test&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Share&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;Class1&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static &lt;/font&gt;&lt;font color="#000000"&gt;WebDirectory _wd = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Main&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;[] args)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebDirectory x = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;WebDirectory();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;x.&lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Microshaoft&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#000000"&gt;now = &lt;/font&gt;&lt;font color="#800000"&gt;DateTime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Now&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebFile y1 = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;WebFile();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y1.&lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Microshaoft简体繁體中文&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y1.&lt;/font&gt;&lt;font color="#008000"&gt;IsReadOnly &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y1.&lt;/font&gt;&lt;font color="#800000"&gt;Url &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;http://www.microshaoft.com&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y1.&lt;/font&gt;&lt;font color="#008000"&gt;CreateTime &lt;/font&gt;&lt;font color="#000000"&gt;= now;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y1.&lt;/font&gt;&lt;font color="#008000"&gt;LastWriteTime &lt;/font&gt;&lt;font color="#000000"&gt;= now;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebDirectory x1 = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;WebDirectory();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;x1.&lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Sub1&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//y1.Directory = x; //循环引用&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebFile y2 = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;WebFile();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y2.&lt;/font&gt;&lt;font color="#008000"&gt;Name &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Microshaoft中文&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y2.&lt;/font&gt;&lt;font color="#008000"&gt;Flag &lt;/font&gt;&lt;font color="#000000"&gt;= FlagEnum.Value2;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y2.&lt;/font&gt;&lt;font color="#008000"&gt;CreateTime &lt;/font&gt;&lt;font color="#000000"&gt;= now;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;y2.&lt;/font&gt;&lt;font color="#008000"&gt;LastWriteTime &lt;/font&gt;&lt;font color="#000000"&gt;= now;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebFile[] a = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#000000"&gt;WebFile[&lt;/font&gt;&lt;font color="#800080"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;a[&lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;] = y1;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;a[&lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;] = y2;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;x.WebFiles = a;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;_wd = x;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;iteration = &lt;/font&gt;&lt;font color="#800080"&gt;10000&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Type &lt;/font&gt;&lt;font color="#000000"&gt;t = _wd.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetType&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;length = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DataContractSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer2 = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DataContractSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(t);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;CodeTimer.ParallelTime&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#ff00ff"&gt;&amp;quot;TestDataContractSerializer&amp;quot;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;length = TestDataContractSerializer(serializer2);&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Length: {0}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer1 = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(t);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;CodeTimer.ParallelTime&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#ff00ff"&gt;&amp;quot;TestXmlSerializer&amp;quot;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;length = TestXmlSerializer(serializer1);&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Length: {0}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DataContractJsonSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer3 = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DataContractJsonSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(t);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;CodeTimer.ParallelTime&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#ff00ff"&gt;&amp;quot;TestDataContractJsonSerializer&amp;quot;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;length = TestDataContractJsonSerializer(serializer3);&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Length: {0}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;CodeTimer.ParallelTime&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#ff00ff"&gt;&amp;quot;TestSoapFormatter&amp;quot;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;length = TestSoapFormatter();&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Length: {0}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;CodeTimer.ParallelTime&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#ff00ff"&gt;&amp;quot;TestBinaryFormatter&amp;quot;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;length = TestBinaryFormatter();&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Length: {0}&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Hello World&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Environment&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Version&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;());&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static int &lt;/font&gt;&lt;font color="#000000"&gt;TestXmlSerializer(&lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;xml = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;xml = SerializerHelper.XmlSerializerObjectToXml&amp;lt;WebDirectory&amp;gt;(_wd, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//Console.WriteLine(xml.Length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebDirectory wd = SerializerHelper.XmlSerializerXmlToObject&amp;lt;WebDirectory&amp;gt;(xml, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;xml.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static int &lt;/font&gt;&lt;font color="#000000"&gt;TestDataContractSerializer(&lt;/font&gt;&lt;font color="#800000"&gt;DataContractSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;xml = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;xml = SerializerHelper.DataContractSerializerObjectToXml&amp;lt;WebDirectory&amp;gt;(_wd, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//Console.WriteLine(xml.Length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebDirectory wd = SerializerHelper.DataContractSerializerXmlToObject&amp;lt;WebDirectory&amp;gt;(xml, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;xml.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static int &lt;/font&gt;&lt;font color="#000000"&gt;TestDataContractJsonSerializer(&lt;/font&gt;&lt;font color="#800000"&gt;DataContractJsonSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;json = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;json = SerializerHelper.DataContractSerializerObjectToJson&amp;lt;WebDirectory&amp;gt;(_wd, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//Console.WriteLine(xml.Length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebDirectory wd = SerializerHelper.DataContractSerializerJsonToObject&amp;lt;WebDirectory&amp;gt;(json, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;json.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static int &lt;/font&gt;&lt;font color="#000000"&gt;TestSoapFormatter()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;soap = &lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Empty&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;soap = SerializerHelper.FormatterObjectToSoap&amp;lt;WebDirectory&amp;gt;(_wd);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//Console.WriteLine(xml.Length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebDirectory wd = SerializerHelper.FormatterSoapToObject&amp;lt;WebDirectory&amp;gt;(soap);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;soap.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static int &lt;/font&gt;&lt;font color="#000000"&gt;TestBinaryFormatter()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//xml = SerializerHelper.XmlSerializerObjectToXml&amp;lt;WebDirectory&amp;gt;(_wd, Encoding.UTF8);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//WebDirectory wd = SerializerHelper.XmlSerializerXmlToObject&amp;lt;WebDirectory&amp;gt;(xml);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;buffer = SerializerHelper.FormatterObjectToBinary&amp;lt;WebDirectory&amp;gt;(_wd);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//Console.WriteLine(xml.Length);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;WebDirectory wd = SerializerHelper.FormatterBinaryToObject&amp;lt;WebDirectory&amp;gt;(buffer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;buffer.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Diagnostics&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Threading&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Tasks&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;InteropServices&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;CodeTimer&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#ff0000"&gt;Initialize&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Process&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetCurrentProcess&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;PriorityClass &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;ProcessPriorityClass&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;High&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Thread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;CurrentThread&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Priority &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;ThreadPriority&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Highest&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;Time&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;, () =&amp;gt; { });&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#000000"&gt;ParallelTime(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;name, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;iteration, &lt;/font&gt;&lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;InternalIterationProcess&lt;/font&gt;&lt;br/&gt;                     &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;name&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#800000"&gt;Parallel&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;For&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#800080"&gt;0&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;ParallelOptions&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#008000"&gt;MaxDegreeOfParallelism &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#008000"&gt;//, TaskScheduler = null&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;, i =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                                        &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;                                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static void &lt;/font&gt;&lt;font color="#000000"&gt;InternalIterationProcess(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;name, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;iteration, &lt;/font&gt;&lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;IsNullOrEmpty&lt;/font&gt;&lt;font color="#000000"&gt;(name))&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 1.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;ConsoleColor &lt;/font&gt;&lt;font color="#000000"&gt;currentForeColor = &lt;/font&gt;&lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ForegroundColor&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ForegroundColor &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;ConsoleColor&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Yellow&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;(name);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 2.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;Collect&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800080"&gt;GCCollectionMode&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Forced&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;[] gcCounts = &lt;/font&gt;&lt;font color="#0000ff"&gt;new int&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration &lt;/font&gt;&lt;font color="#000000"&gt;+ &lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt;= &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;gcCounts[i] = &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CollectionCount&lt;/font&gt;&lt;font color="#000000"&gt;(i);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 3.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Stopwatch &lt;/font&gt;&lt;font color="#000000"&gt;watch = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Stopwatch&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;watch.&lt;/font&gt;&lt;font color="#008000"&gt;Start&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;ulong &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount = GetCycleCount();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;ulong &lt;/font&gt;&lt;font color="#000000"&gt;cpuCycles = GetCycleCount() - cycleCount;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;watch.&lt;/font&gt;&lt;font color="#ff0000"&gt;Stop&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 4.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;ForegroundColor &lt;/font&gt;&lt;font color="#000000"&gt;= currentForeColor;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#ff00ff"&gt;&amp;quot;{0}Time Elapsed:{0}{1}ms&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\t&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, watch.&lt;/font&gt;&lt;font color="#008000"&gt;ElapsedMilliseconds&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;N0&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#ff00ff"&gt;&amp;quot;{0}CPU Cycles:{0}{1}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\t&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, cpuCycles.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToString&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;N0&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;// 5.&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt;= &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;MaxGeneration&lt;/font&gt;&lt;font color="#000000"&gt;; i++)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;count = &lt;/font&gt;&lt;font color="#800000"&gt;GC&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;CollectionCount&lt;/font&gt;&lt;font color="#000000"&gt;(i) - gcCounts[i];&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#ff00ff"&gt;&amp;quot;{0}Gen {1}: {0}{0}{2}&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;\t&amp;quot;&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, i&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;, count&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Console&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteLine&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static void &lt;/font&gt;&lt;font color="#008000"&gt;Time&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;name, &lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;iteration, &lt;/font&gt;&lt;font color="#800080"&gt;Action &lt;/font&gt;&lt;font color="#000000"&gt;action)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;InternalIterationProcess&lt;/font&gt;&lt;br/&gt;                                &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;name&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, iteration&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;, () =&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt; iteration; i++)&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;action();&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;private static ulong &lt;/font&gt;&lt;font color="#000000"&gt;GetCycleCount()&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;ulong &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;QueryThreadCycleTime(GetCurrentThread(), &lt;/font&gt;&lt;font color="#0000ff"&gt;ref &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;cycleCount;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DllImport&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;kernel32.dll&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;font color="#000000"&gt;: &lt;/font&gt;&lt;font color="#800000"&gt;MarshalAs&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;UnmanagedType&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Bool&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static extern bool &lt;/font&gt;&lt;font color="#000000"&gt;QueryThreadCycleTime(&lt;/font&gt;&lt;font color="#800000"&gt;IntPtr &lt;/font&gt;&lt;font color="#000000"&gt;threadHandle, &lt;/font&gt;&lt;font color="#0000ff"&gt;ref ulong &lt;/font&gt;&lt;font color="#000000"&gt;cycleTime);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DllImport&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;kernel32.dll&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;static extern &lt;/font&gt;&lt;font color="#800000"&gt;IntPtr &lt;/font&gt;&lt;font color="#000000"&gt;GetCurrentThread();&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#008000"&gt;Test&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#800080"&gt;Share&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlRoot&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;WebDirectory&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;Serializable&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataContract&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;WebDirectory&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlAttribute&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Name&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public string &lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlArrayItem&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;WebFile&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(WebFile))]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlArray&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;WebFiles&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#000000"&gt;WebFile[] WebFiles;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataContract&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public enum &lt;/font&gt;&lt;font color="#000000"&gt;FlagEnum : &lt;/font&gt;&lt;font color="#0000ff"&gt;uint&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;EnumMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;Value1&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;,&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;EnumMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;Value2&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;Serializable&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataContract&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public class &lt;/font&gt;&lt;font color="#000000"&gt;WebFile&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlAttribute&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Name&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public string &lt;/font&gt;&lt;font color="#008000"&gt;Name&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlAttribute&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;CreateTime&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#008000"&gt;CreateTime&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlAttribute&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;LastWriteTime&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlIgnore&lt;/font&gt;&lt;font color="#000000"&gt;()]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#800000"&gt;DateTime &lt;/font&gt;&lt;font color="#008000"&gt;LastWriteTime&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlAttribute&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Length&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public long &lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#008000"&gt;//[XmlAttribute(&amp;quot;Url&amp;quot;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlElement&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Url&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public string &lt;/font&gt;&lt;font color="#800000"&gt;Url&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlAttribute&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;IsReadOnly&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public bool &lt;/font&gt;&lt;font color="#008000"&gt;IsReadOnly&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlAttribute&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Flag&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#000000"&gt;FlagEnum &lt;/font&gt;&lt;font color="#008000"&gt;Flag&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;XmlElement&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Directory&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800000"&gt;DataMember&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public &lt;/font&gt;&lt;font color="#000000"&gt;WebDirectory &lt;/font&gt;&lt;font color="#800000"&gt;Directory&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;IO&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Text&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Json&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Formatters&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Binary&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Runtime&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Serialization&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Formatters&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Soap&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;SerializerHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;XmlSerializerXmlToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object &lt;/font&gt;&lt;font color="#000000"&gt;= XmlSerializerXmlToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;XmlSerializerXmlToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;StringReader &lt;/font&gt;&lt;font color="#000000"&gt;stringReader = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;StringReader&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;XmlReader &lt;/font&gt;&lt;font color="#000000"&gt;xmlReader = &lt;/font&gt;&lt;font color="#800000"&gt;XmlReader&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;Create&lt;/font&gt;&lt;font color="#000000"&gt;(stringReader);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;) serializer.&lt;/font&gt;&lt;font color="#ff0000"&gt;Deserialize&lt;/font&gt;&lt;font color="#000000"&gt;(xmlReader);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;XmlSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;XmlTextWriter &lt;/font&gt;&lt;font color="#000000"&gt;writer&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;serializer.&lt;/font&gt;&lt;font color="#ff0000"&gt;Serialize&lt;/font&gt;&lt;font color="#000000"&gt;(writer, &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = writer.&lt;/font&gt;&lt;font color="#008000"&gt;BaseStream &lt;/font&gt;&lt;font color="#0000ff"&gt;as &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] bytes = stream.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToArray&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;e = EncodingHelper.IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;bytes&lt;/font&gt;&lt;br/&gt;                                                &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetEncoding&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;gb2312&amp;quot;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;///                                                , new Encoding[]&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;///                                                        {&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;///                                                            Encoding.UTF8&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;///                                                            , Encoding.Unicode&lt;/font&gt;&lt;br/&gt;                &lt;font color="#008000"&gt;///                                                        }&lt;/font&gt;&lt;br/&gt;                                            &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = e.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetPreamble&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;offset = buffer.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;buffer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new byte&lt;/font&gt;&lt;font color="#000000"&gt;[bytes.&lt;/font&gt;&lt;font color="#008000"&gt;Length &lt;/font&gt;&lt;font color="#000000"&gt;- offset];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Buffer&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;BlockCopy&lt;/font&gt;&lt;font color="#000000"&gt;(bytes, offset, buffer, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;, buffer.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;s = e.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetString&lt;/font&gt;&lt;font color="#000000"&gt;(buffer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;s;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;XmlSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;e = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;XmlTextWriter &lt;/font&gt;&lt;font color="#000000"&gt;writer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;XmlTextWriter&lt;/font&gt;&lt;font color="#000000"&gt;(stream, e);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;s = XmlSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, writer&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, serializer&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;writer.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;writer = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;s;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;XmlSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;e, &lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;XmlTextWriter &lt;/font&gt;&lt;font color="#000000"&gt;writer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;XmlTextWriter&lt;/font&gt;&lt;font color="#000000"&gt;(stream, e);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;s = XmlSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, writer&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, serializer&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;writer.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;writer = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;s;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;XmlSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;e)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;XmlSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;XmlSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;XmlTextWriter &lt;/font&gt;&lt;font color="#000000"&gt;writer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;XmlTextWriter&lt;/font&gt;&lt;font color="#000000"&gt;(stream, e);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;s = XmlSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, writer&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, serializer&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;writer.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;writer = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;s;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DataContractSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;serializer.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteObject&lt;/font&gt;&lt;font color="#000000"&gt;(ms, &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = StreamDataHelper.ReadDataToBytes(ms);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;xml = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetString&lt;/font&gt;&lt;font color="#000000"&gt;(buffer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Dispose&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;xml;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DataContractSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DataContractSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;xml = DataContractSerializerObjectToXml&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;xml;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerXmlToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DataContractSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetBytes&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;(buffer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//ms.Position = 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object &lt;/font&gt;&lt;font color="#000000"&gt;= (&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;)serializer.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadObject&lt;/font&gt;&lt;font color="#000000"&gt;(ms);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Dispose&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerXmlToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DataContractSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DataContractSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetBytes&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#008080"&gt;Xml&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;(buffer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#008000"&gt;//ms.Position = 0;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object &lt;/font&gt;&lt;font color="#000000"&gt;= (&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;) serializer.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadObject&lt;/font&gt;&lt;font color="#000000"&gt;(ms);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Dispose&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;FormatterObjectToSoap&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                             &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                 &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;br/&gt;                             &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;SoapFormatter &lt;/font&gt;&lt;font color="#000000"&gt;formatter = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;SoapFormatter&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;formatter.&lt;/font&gt;&lt;font color="#ff0000"&gt;Serialize&lt;/font&gt;&lt;font color="#000000"&gt;(stream, &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;soap = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetString&lt;/font&gt;&lt;font color="#000000"&gt;(stream.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetBuffer&lt;/font&gt;&lt;font color="#000000"&gt;());&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;soap;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;FormatterSoapToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;soap&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;SoapFormatter &lt;/font&gt;&lt;font color="#000000"&gt;formater = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;SoapFormatter&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] data = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetBytes&lt;/font&gt;&lt;font color="#000000"&gt;(soap);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;stream.&lt;/font&gt;&lt;font color="#008000"&gt;Write&lt;/font&gt;&lt;font color="#000000"&gt;(data, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;, data.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;stream.&lt;/font&gt;&lt;font color="#008000"&gt;Position &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object &lt;/font&gt;&lt;font color="#000000"&gt;= (&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;) formater.&lt;/font&gt;&lt;font color="#ff0000"&gt;Deserialize&lt;/font&gt;&lt;font color="#000000"&gt;(stream);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static byte&lt;/font&gt;&lt;font color="#000000"&gt;[] FormatterObjectToBinary&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;BinaryFormatter &lt;/font&gt;&lt;font color="#000000"&gt;formater = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;BinaryFormatter&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;formater.&lt;/font&gt;&lt;font color="#ff0000"&gt;Serialize&lt;/font&gt;&lt;font color="#000000"&gt;(stream, &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = stream.&lt;/font&gt;&lt;font color="#ff0000"&gt;ToArray&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;buffer;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;FormatterBinaryToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] data&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;stream = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;())&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;BinaryFormatter &lt;/font&gt;&lt;font color="#000000"&gt;formater = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;BinaryFormatter&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;stream.&lt;/font&gt;&lt;font color="#008000"&gt;Write&lt;/font&gt;&lt;font color="#000000"&gt;(data, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;, data.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;stream.&lt;/font&gt;&lt;font color="#008000"&gt;Position &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object &lt;/font&gt;&lt;font color="#000000"&gt;= (&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;)formater.&lt;/font&gt;&lt;font color="#ff0000"&gt;Deserialize&lt;/font&gt;&lt;font color="#000000"&gt;(stream);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerObjectToJson&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DataContractJsonSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DataContractJsonSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;json = DataContractSerializerObjectToJson&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;json;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static string &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerObjectToJson&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;DataContractJsonSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;serializer.&lt;/font&gt;&lt;font color="#ff0000"&gt;WriteObject&lt;/font&gt;&lt;font color="#000000"&gt;(ms, &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;json = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetString&lt;/font&gt;&lt;font color="#000000"&gt;(ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetBuffer&lt;/font&gt;&lt;font color="#000000"&gt;());&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Dispose&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;json;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerJsonToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;json)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;DataContractJsonSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;DataContractJsonSerializer&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object &lt;/font&gt;&lt;font color="#000000"&gt;= DataContractSerializerJsonToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(json, serializer);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#000000"&gt;DataContractSerializerJsonToObject&amp;lt;&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;string &lt;/font&gt;&lt;font color="#000000"&gt;json, &lt;/font&gt;&lt;font color="#800000"&gt;DataContractJsonSerializer &lt;/font&gt;&lt;font color="#000000"&gt;serializer)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008000"&gt;UTF8&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetBytes&lt;/font&gt;&lt;font color="#000000"&gt;(json));&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800080"&gt;T &lt;/font&gt;&lt;font color="#800000"&gt;Object &lt;/font&gt;&lt;font color="#000000"&gt;= (&lt;/font&gt;&lt;font color="#800080"&gt;T&lt;/font&gt;&lt;font color="#000000"&gt;) serializer.&lt;/font&gt;&lt;font color="#ff0000"&gt;ReadObject&lt;/font&gt;&lt;font color="#000000"&gt;(ms);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Dispose&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#800000"&gt;Object&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;      &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;IO&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Text&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Collections&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;Generic&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;EncodingHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Stream &lt;/font&gt;&lt;font color="#000000"&gt;stream&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;defaultEncoding&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;[] identifyEncodings&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] data = StreamDataHelper.ReadDataToBytes(stream);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;data&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, defaultEncoding&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, identifyEncodings&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#800000"&gt;Stream &lt;/font&gt;&lt;font color="#000000"&gt;stream&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;defaultEncoding&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] data = StreamDataHelper.ReadDataToBytes(stream);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;data&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, defaultEncoding&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] data&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;defaultEncoding&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;EncodingInfo&lt;/font&gt;&lt;font color="#000000"&gt;[] encodingInfos = &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetEncodings&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; list = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;List&lt;/font&gt;&lt;font color="#000000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;foreach &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;EncodingInfo &lt;/font&gt;&lt;font color="#000000"&gt;info &lt;/font&gt;&lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;encodingInfos)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;e = info.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetEncoding&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(e.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetPreamble&lt;/font&gt;&lt;font color="#000000"&gt;().&lt;/font&gt;&lt;font color="#008000"&gt;Length &lt;/font&gt;&lt;font color="#000000"&gt;&amp;gt; &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;list.&lt;/font&gt;&lt;font color="#800000"&gt;Add&lt;/font&gt;&lt;font color="#000000"&gt;(e);&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#008000"&gt;//System.Console.WriteLine(e.EncodingName);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;[] encodings = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;[list.&lt;/font&gt;&lt;font color="#008000"&gt;Count&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;list.&lt;/font&gt;&lt;font color="#ff0000"&gt;CopyTo&lt;/font&gt;&lt;font color="#000000"&gt;(encodings);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;data&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, defaultEncoding&lt;/font&gt;&lt;br/&gt;                            &lt;font color="#000000"&gt;, encodings&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;IdentifyEncoding&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;(&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] data&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;defaultEncoding&lt;/font&gt;&lt;br/&gt;                                        &lt;font color="#000000"&gt;, &lt;/font&gt;&lt;font color="#800000"&gt;Encoding&lt;/font&gt;&lt;font color="#000000"&gt;[] identifyEncodings&lt;/font&gt;&lt;br/&gt;                                    &lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;encoding = defaultEncoding;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;foreach &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#800000"&gt;Encoding &lt;/font&gt;&lt;font color="#000000"&gt;e &lt;/font&gt;&lt;font color="#0000ff"&gt;in &lt;/font&gt;&lt;font color="#000000"&gt;identifyEncodings)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = e.&lt;/font&gt;&lt;font color="#ff0000"&gt;GetPreamble&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;l = buffer.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(l == &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;bool &lt;/font&gt;&lt;font color="#000000"&gt;flag = &lt;/font&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;for &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;i = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;; i &amp;lt; l; i++)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(buffer[i] != data[i])&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#000000"&gt;flag = &lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                        &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(flag)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;continue&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;encoding = e;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;encoding;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#0000ff"&gt;namespace &lt;/font&gt;&lt;font color="#000000"&gt;Microshaoft&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;using &lt;/font&gt;&lt;font color="#008080"&gt;System&lt;/font&gt;&lt;font color="#000000"&gt;.&lt;/font&gt;&lt;font color="#008080"&gt;IO&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;    &lt;font color="#0000ff"&gt;public static class &lt;/font&gt;&lt;font color="#000000"&gt;StreamDataHelper&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;        &lt;font color="#0000ff"&gt;public static byte&lt;/font&gt;&lt;font color="#000000"&gt;[] ReadDataToBytes(&lt;/font&gt;&lt;font color="#800000"&gt;Stream &lt;/font&gt;&lt;font color="#000000"&gt;stream)&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] buffer = &lt;/font&gt;&lt;font color="#0000ff"&gt;new byte&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#800080"&gt;64 &lt;/font&gt;&lt;font color="#000000"&gt;* &lt;/font&gt;&lt;font color="#800080"&gt;1024&lt;/font&gt;&lt;font color="#000000"&gt;];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#800000"&gt;MemoryStream &lt;/font&gt;&lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;new &lt;/font&gt;&lt;font color="#800000"&gt;MemoryStream&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;r = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;int &lt;/font&gt;&lt;font color="#000000"&gt;l = &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;long &lt;/font&gt;&lt;font color="#000000"&gt;position = -&lt;/font&gt;&lt;font color="#800080"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(stream.&lt;/font&gt;&lt;font color="#008000"&gt;CanSeek&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;position = stream.&lt;/font&gt;&lt;font color="#008000"&gt;Position&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;stream.&lt;/font&gt;&lt;font color="#008000"&gt;Position &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;while &lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;r = stream.&lt;/font&gt;&lt;font color="#008000"&gt;Read&lt;/font&gt;&lt;font color="#000000"&gt;(buffer, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;, buffer.&lt;/font&gt;&lt;font color="#008000"&gt;Length&lt;/font&gt;&lt;font color="#000000"&gt;);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(r &amp;gt; &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;l += r;&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#008000"&gt;Write&lt;/font&gt;&lt;font color="#000000"&gt;(buffer, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;, r);&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;                &lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                    &lt;font color="#0000ff"&gt;break&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;byte&lt;/font&gt;&lt;font color="#000000"&gt;[] bytes = &lt;/font&gt;&lt;font color="#0000ff"&gt;new byte&lt;/font&gt;&lt;font color="#000000"&gt;[l];&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#008000"&gt;Position &lt;/font&gt;&lt;font color="#000000"&gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#008000"&gt;Read&lt;/font&gt;&lt;font color="#000000"&gt;(bytes, &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;, (&lt;/font&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;font color="#000000"&gt;)l);&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Close&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms.&lt;/font&gt;&lt;font color="#ff0000"&gt;Dispose&lt;/font&gt;&lt;font color="#000000"&gt;();&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;ms = &lt;/font&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;if &lt;/font&gt;&lt;font color="#000000"&gt;(position &amp;gt;= &lt;/font&gt;&lt;font color="#800080"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br/&gt;                &lt;font color="#000000"&gt;stream.&lt;/font&gt;&lt;font color="#008000"&gt;Position &lt;/font&gt;&lt;font color="#000000"&gt;= position;&lt;/font&gt;&lt;br/&gt;            &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;            &lt;font color="#0000ff"&gt;return &lt;/font&gt;&lt;font color="#000000"&gt;bytes;&lt;/font&gt;&lt;br/&gt;        &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;    &lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br/&gt;&lt;/font&gt;&lt;br/&gt;&lt;!-- end code --&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/Microshaoft/aggbug/2435489.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/Microshaoft/archive/2012/04/06/2435489.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
