Click here to Skip to main content
15,885,309 members
Articles / Desktop Programming / Windows Forms

Visualizing Complex Functions

Rate me:
Please Sign up or sign in to vote.
4.95/5 (77 votes)
23 May 2010Ms-PL14 min read 109.3K   4.1K   127  
A program to produce beautiful and informative images of complex functions.
<?xml version="1.0" encoding="utf-8"?>
<root>
  <!-- 
    Microsoft ResX Schema 
    
    Version 2.0
    
    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.
    
    Example:
    
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
                
    There are any number of "resheader" rows that contain simple 
    name/value pairs.
    
    Each data row contains a name, and value. The row also contains a 
    type or mimetype. Type corresponds to a .NET class that support 
    text/value conversion through the TypeConverter architecture. 
    Classes that don't support this are serialized and stored with the 
    mimetype set.
    
    The mimetype is used for serialized objects, and tells the 
    ResXResourceReader how to depersist the object. This is currently not 
    extensible. For a given mimetype the value must be set accordingly:
    
    Note - application/x-microsoft.net.object.binary.base64 is the format 
    that the ResXResourceWriter will generate, however the reader can 
    read any of the formats listed below.
    
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.

    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array 
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <metadata name="functionList.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="$this.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAABAAQAICAAAAEAIACoEAAARgAAACAgAAABAAgAqAgAAO4QAAAQEAAAAQAgAGgEAACWGQAAEBAAAAEA
        CABoBQAA/h0AACgAAAAgAAAAQAAAAAEAIAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAADpQQn/7j8N//M9
        E//2Oxr/+Toi//o5K//8OjT//T5C//1IVP/+Umb//lt3//5jh//+a5X//nGh//50rP/+d7b//ne+//51
        xv/+cc3//mvU//5k2v/+XOH//lPp//1J8P/9P/j/9zX8/+wr+//hIvn/1hr2/8kT8/+9De7/sQnp/+5M
        Df/zSxP/9kob//lKJP/7Sy7//E05//1PRf/+U1L//l5l//5qeP/+dov//oGb//6Kqf/+kbb//pa///6W
        xv/+ls3//pbU//6R2f/+it7//oLj//536f/+a/D//l/2//1S/v/0Rv3/6Tr8/94v+//TJfn/xxv2/7sT
        8/+vDe7/81oT//ZaG//5WiX/+1ww//1fPf/+Ykv//mhZ//5uaf/+eHr//oiQ//6Wo//+fZb//maM//5V
        jP/+S5H//Uab//1GqP/9S7b//lTH//5k1v/+e+X//pbx//6J9v/+efz/+Wr+//Ba/v/mTP7/2z79/9Ax
        +//EJfn/uBv2/6wT8//2aBr/+Wkk//trMP/9bj7//nNO//55Xv/+gnD//oyD//6Xlf/+cnf//lFi//w7
        W//6K1z/+CJk//Ycb//1GX7/9RmP//Ybof/4IbX/+irI//w52v/+T+v//m/4//2W/v/2hP7/7XH+/+Nf
        /v/YT/7/zT/9/8Ex+/+0Jfn/qRr2//h2Iv/7eC7//Xs9//6ATv/+h2D//pF0//6cif/+koX//mBX//w3
        OP/4IjH/8xU0/+4NPf/oCEn/5AZY/+EFaf/hBXv/4waQ/+gIpf/tDLz/8xTS//gh6P/8Nfr/9VT+//GB
        /v/siv7/4nX+/9Zh/v/LT/7/vj79/7Ev+/+lIvn/+oQq//yIOf/+jUv//pNe//6ddP/+qIz//pR5//1k
        SP/6PCj/8xwV/+oKEf/fBBz/0wEp/8cAN/++AET/uQBT/7kAZP++AHj/xgCP/9IBqf/eA8X/6gng/+0U
        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
        Gv8Amyb/AKk6/wCvTf8Ar1//AKlt/wCcdP8Apov/ALys/wHQ0P8F0uL/D9Hv/yPP+P9Ez/3/edf+/4nW
        /v9wyf7/Wbr+/0Wr/f80nfz/g/oq/4f8OP+M/Ur/kv5d/5v+cv+n/or/l/59/2b9S/8++iv/HfQW/wvs
        E/8E4B3/AtUq/wDKOP8AwUb/ALxV/wC8Zv8AwXr/AMmR/wHUqv8E4Mb/Cuvh/xXu9P8p5/r/SeL9/3nj
        /v+M4v7/dNb+/17J/v9LvP7/Oa78/yuh+v91+CH/d/st/3r9PP9//k3/hv5e/4/+cv+a/of/lv6J/2P+
        Wv86/Dv/JPkz/xb0Nv8O7z//CelL/wflWv8F42r/BeN8/wblkf8J6ab/Du+9/xb00/8j+ej/OPz6/1j2
        /v+G8v7/iez+/3Ti/v9g1v7/Tsv+/z2+/f8usfv/IqX5/2f2Gf9o+SP/avsv/239Pf9y/k3/eP5d/4D+
        b/+K/oH/lf6T/3b+fP9V/mb/Pvxe/y77X/8k+Wb/Hvdx/xv2gP8b9pD/Hfei/yP4tv8t+8n/Pfzb/1P+
        6/90/vj/lf3+/4L2/v9w7f7/XuP+/07Y/v8+zf3/MMH7/yS1+f8aqfb/WfIS/1n2Gv9Z+ST/W/sv/139
        PP9h/Ur/Zv5Y/23+Z/92/nj/hv6O/5P+of+C/pr/av6Q/1r+j/9P/pT/Sv2d/0r9qv9P/rj/Wf7I/2n+
        1/+A/ub/lP7w/4f+9f93/vv/aPn+/1nw/v9L5v7/Pdv9/zDQ+/8lxPn/G7j2/xOs8/9M7g3/SvIT/0n2
        Gv9J+SP/Svst/0v8OP9O/UT/Uf5Q/13+ZP9p/nf/dP6J/3/+mv+H/qj/j/60/5P+vv+W/sb/lv7N/5T+
        0/+P/tj/iP7d/4D+4v91/uj/af7v/17+9v9R/f7/RfT9/znp/P8u3vv/JNP5/xvH9v8Tu/P/Da/u/0Do
        CP8+7g3/PPIS/zr2Gf85+CH/OPoq/zj8M/89/UH/R/1T/1H+Zf9a/nb/Yv6G/2n+lP9v/qD/cv6r/3X+
        tf91/r3/c/7F/2/+zP9p/tP/Yv7a/1r+4f9R/uj/R/3w/z79+P809/z/Kuz6/yLh+P8a1vb/E8rz/w29
        7v8Jsen/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAoAAAAIAAAAEAAAAABAAgAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAsAoH/7Mz
        AP+tADP/zQgL/+kUEP/SMwP/8TkS/80BL//tETD/+Tct/7JUAP+zdQD/00oD//BNEv/RaAL/7GYP//pQ
        L//6cSz/uABN/7MAcP/aBE3/6QtT//s0UP/cBG//7BJ1//otaf/9T0///W1Q//1Wav/+cnX/CLIJ/zKy
        AP8ArDP/UrIA/3SzAP8MzQL/Ls8C/xLpFf895wr/N/IU/wHOMP8P6zL/Ovgn/yb5Nf87/Dn/SdQD/2fR
        Av9G7Az/SvQX/1n0F/9q7hH/Rfko/1X5Jf9I/Dv/XPw2/3D6LP8AtVH/ALBu/wPSS/8M60//J/lG/z79
        Qf8C0XL/D+tz/y76Zv9P/UX/R/1U/1P+Uv9t/U7/QP1g/1f+Zv9V/XT/bf5o/2r+eP93/nr/r5MA/5Cv
        AP+xsQD/0pUC/+yJD//LrQH/660O//uQMv/7sDb/ls4B/6zLAf+N5wv/re0P/4/7Mv+o+zL/0dMF/+vS
        D//R6w//7u4Y//rNLf/M+i7/8vM7//2OTv/9s1X//Y1u//6uc/+O/VL/tP1S/43+cf+t/nP//clV/8j9
        Vf/09FP//tJv/9L+cP/3+HT/CAi1/ysArP8ALaz/VgCx/3IAsv8AVLD/AGyz/woK3P8rAtL/Ay3S/woK
        4f8tEu7/Ei7v/0sC0P9wAcz/TQ3r/2YM6v9JK/n/by/6/wJM0P8Bccz/DFHq/yxL+f8NaOr/L3H6/01K
        /f95T/3/U2v9/3l5/v+pAI3/iwCy/6wArv/TA47/7hKQ//o1gf/LAab/7BCu//krsP/9S5L//nCQ//1H
        rv/+drH/lQLR/64D1f+LEO3/sxHw/5o5/P+uLPj/0wLM/+sNzP/7MtD/0BLv/+0T6//RLPr/7i73/5RS
        /f+yTf3/inD+/6xu/v/9T9D//nDS/9BM/f/1T/b/z3D+//Vw9/8Aq47/AIyz/wCwrf8D05P/FfCN/zv7
        if8C1Kv/D+yw/zT6r/9T/Zb/Y/6G/3X+iv9r/pP/ef6X/0/9sv9v/qH/c/6s/3f+tv8Cls//A7DW/xCM
        7f85m/z/Dq/u/w237P8Wq/T/GLr1/yyt+f9Rkf3/b4v+/1Ow/f9zsP7/A9TM/w7q0P8y+tD/Cdfm/xDR
        7/8XyfT/Gtb2/y/Q+P8T7+r/Jfno/yfn+f866vz/Ovn6/1X90f90/sj/aP7X/3T+2/9Oz/3/bdP9/1f+
        6f9L5f3/XuT+/0f49v9Z+Pz/c/X3//6Mjf/+sIb//om0/4z+jP+w/oX/iP6o/4v+tf/+z4f/zv6H//b2
        iv+Pj/7/rof+/4eu/v/+idP/zYj+//aH9/+J/sT/iv7X/4bN/v+F/un/ief+/4X4/P8AAAD/AAAA/w0G
        DQYGCQkWGhwclpaWmJjqq6urq6qtra2lpaWiopycDQ0NEBAaGhodHZbo6urq9fX19fX3q6+vra2lpKSk
        nJwPDRAQERsbG5bo6JaWlZWVl5eqq6/396+vra2spKScnA8RERsbG2Po6B0cHBkZGBiQk5Shoa2v9/ev
        r6yknp6cERERYWNj6OgbCQgICBQVFxiPk6CgpaWtr/avrqyknp5SUmFjY+ljGxAEBAQHFBISExOPkqCg
        o6Wsr/eurqennVJhYmTpYxsNBgMDAAACAhITExOMjp+foqSsrvaup6eeU2Ji6elhEQ0FAwAAAAcVGBeQ
        kpKOjZqanKKn9vapp51iZGTpYlINDAEAAwMECBUYkJOgoJ+OjY2bm56n9qmppmJs72xSTw4MAQEGBAgW
        GZWUl6Gjo5qZc3OZm52p86mmaWzvYlJPDgoKDA0NGh2WmPWrr6WknJt9cn1/nabzqaZsbGxpUU8LCg4P
        DxtjHRwZlK2vr6yem31ycn5/gfOoqGzxbF5RTgsLT09hZGEJCBSPn6Osrqebf3Byd36BqPOobvFpXltO
        C05RU2JsEQwAAhOOnJ2pqYF+fHB3fn6J8qhu8WtbWk5LUVtebGlPCgUIk5lzfqaogXp3b295gIjyqG7x
        a11dTU1aXWBuYFtLUWGkfG93gKiIenZvb3Z6iPKLbvFrXVxNTVxcYG5gV0xURNaGb3iFzIh7dm92eXuI
        8otu8WtdXFVMVVxfbmpWIiQpt8J0hsvMh4R4b3F5e4ryi27xal9XVCJUV1lmaDcmHiA5ssPKzsyHhHhx
        eHuEivTMbm1uX1dUIiJWVlhoZyopOrTQ2eDhysSEgnGChIfM8sxt8PBqV1QuIS0yN0RnSkW5uNzn5+DJ
        xIN0dIKGis70zGpt8GZYVi4hIS0vMDVGvcHd3+Lb1tTEdXWDhsXL9M7LZm3sbVkyLiEhHyQlKTxAtb7R
        0dfSw7F1wobEys70zstmZm3wZVgxLyQeHiMlKTs/tLfQz8+ysbHCyMrN+s7OxVllaOzsZTcvJCMeHh4o
        Oj4+s7O2sLHDw8nK4Pr6zs3LWGVmaOzsRDMnJSMjICAgODg5sLCyz9LV1tbh+uHOyspYWGVlZ+xnRDUl
        JSUoKDo4OTmzttDX19nj/Pzh4M3Kyjc3N0RnZ+zrRCwrKTs7Oz8/tLe30Njl5v384eDgzcrKMjc3RERE
        Suvru0ZFQEA/tLW3uNHR5uf95+fn4NbWysgxMTQ2N0RESErr6728ubm5vr7c3vv7++fn5uPW1tbJxi8w
        MTMzNUFDRkm96+3u7vj4+fn53+fn5ubl29bW1MnGLyYnJyoqLCxCRke6vL/AwcHd3d7e4uLl29vZ2dXU
        x8cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAADuRg3/9kMb//tD
        Lf/9RkL//llm//5tif/+faX//oa7//6Gyv/+ftb//m7i//5Z8P/6Q/3/5S37/84b9/+2Du//9mEb//tj
        MP/+a03//nht//6Pkv/+ZHv//T1z//sthf/7LaL//DzG//5i5v/+kPv/827+/99O/v/JMfv/sRv3//t+
        LP/+h0z//pd0//6Rff/7OC7/7w4i/94EOf/RAVb/0QF6/90Dp//vDtn/8i37/+p5/v/cdv7/w07+/6kt
        +//9nEL//qps//6qfv/5WCL/3yEE/68AAf+zACH/yABO/8kAef+0AJH/rQCq/8ED3f/CIPj/0Hn+/8Fu
        /v+jQ/3//rlY//7Kjv/7jS//31YE/5kmAP/ZFwL/8hIq//kkcP/5JKv/8hLY/8cD2v91AJz/jAPd/5wt
        +//EkP7/nln+//7SbP/+ymf/8JQP/7BbAP/ZWgL/+Voj//5wbP/+b5v//m7Q//xv/v/EJfn/ggPa/1MA
        rf9pDu//mWL+/5pu/v/+5nz//dRA/9+oBP+xewD/8ZwR//6zav/3Vh7/xgAj/8QAnf+/G/b/uW/+/2gS
        8v83ALT/OgPd/2Y8/P+Wfv7//veE//vsMP/TwgH/xrIA//ncIv/+5nb/yY0A/+9NDv+4EPD/OgDE/4hu
        /v9AJPn/FQDJ/xIB0f88Lfv/job+//b+hP/s+zD/wdQB/7DGAP/a+CL/5f54/4vKAP9E7Qz/Dr3v/wA/
        xv9vi/7/JEL5/wAWyP8BFNH/LT37/4aO/v/l/nv/1P1B/6jgBP96sAD/mvEQ/7D+aP9W+CH/AMom/wDJ
        n/8ew/f/bLn+/xJp8v8AN7P/BDve/z1n/f99lv7/0f5r/8r+af+U8A//W7IA/1jXAv9X+CH/a/5o/3j+
        ov92/tP/av3+/yPE+f8Cg9n/AFWv/w5q7/9km/7/bZr+/7j+V//J/o3/jfsx/1XgBP8lmgD/FdcC/xDx
        Kf8i+G//Ivmp/xHx1v8Cxtn/AHOZ/wSO3/8unvv/j8T+/1me/v+b/UH/qf5r/6z+gf9Z+SP/IeAE/wCy
        Av8AsCH/AMZN/wDGd/8AsY7/ALCt/wTD3/8ixPn/fdL+/23B/v9Co/3/ffss/4b+S/+W/nP/lP6B/zn7
        Mf8P8CT/BOA6/wHUWP8B03z/BN+p/w/w2v8v8/v/fuv+/3Tc/v9Nw/7/Lar7/2D2Gv9i+y//av5L/3f+
        a/+N/pD/af5//0H9df8w+4f/MPuk/0D9x/9n/uf/jv77/2zz/v9M3/7/MMn7/xux9v9F7g3/QvYa/0L7
        LP9E/UH/V/5l/2v+h/97/qT/hP65/4T+yf98/tX/bP7i/1j+7/9C+v3/LOX7/xvP9v8Nt+7/AAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgA
        AAAQAAAAIAAAAAEACAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAC4Awb/sy4A/7kAI//WGQX/3CMH/8wH
        LP/cBjr/7RIm/+8WLf/6PjX/uWAA/9xWB//VWwX/7kYO//ZEHP/2YRv/+0Mu/+RbIf/3XCf/8mAt//t/
        Lf/7ZDH/xQJO/88DV//FAnj/zgN6//coc//9R0T//WxN//5ZZ//7RHf//mll//55bv/9ZXz/A7kG/y20
        AP8AuCP/YLkA/3+4AP8Y1AX/I94H/wjOLv8H3Tv/FO4o/xTuLf9Z1AT/Vt4H/0buDv9D9hv/YfYb/1Ti
        IP9C+i3/WvYl/133Kf9A+jj/fvot/2HzMP9j+zD/AsNN/wTRWP8Cw3b/BNF7/yb2cf9G/UP/av1M/1j+
        Zv9H/Hr/Z/1k/3j+bP9o/n7/uIAA/82SBf/ulRP/75wV/8OvAv/dpwf/+pA1/4/OBv+uwwL/p90H/7/R
        BP+V7hT/me4U/5D6N//RwAT/99sm/9n2Jv/67Db/6/o3//2ITf/9nUL//rlZ//6Jc//+mHX//a5g//6r
        bf/+pHP/hv1M/5z9Qv+s/V//uf5Y/4r+df+W/nP/qv5s/6T+df/81Uf/1PxH/979Xv/94F7//cln//7S
        bf/J/mj/0f5s//7me//m/nv//vd///b+f/85Abn/ADq5/1kAt/8AWrj/FgLF/xQDzv8CF8X/AxXP/z8E
        y/88Btv/Bj3c/2sS7P9qFvD/RCj3/0Ez+f8FRMz/KEX3/zRD+f8Wa+//Emzt/2tD+/96XP3/RGz7/1x8
        /f+5AZX/hwCz/7UAsv/5NIj/yQSh/9sGpv/3KKv/+TOk//1cjf/+bor//nyl/4EF1/+MBtv/vwbb/6IW
        1v+2Du7/sRz2/54z+f+qLvv/vyrx/8MF1//sEtj/8BbW/88c9v/CJfb/xCn3/8ky+//lLvv/8TP5/55a
        /v+jRP3/mmT9/5tv/v+Vff7/smL+/7t//v/7Q8f//VzK//591v/ETv7/4E7+//lE/P/+WvD/wm/+/85x
        /v/cdv7//WTn//5v4v/3Yvn/82/+/+hx/v/+f/r/ALiU/wCHs/8AtrL/N/qK/wXLof8H3aj/Jveq/zb6
        pv9e/Y//bP6I/3v+pP9//rf/BYHW/weO3P8UptP/Drfu/xyx9v8uqvv/NKD6/1me/v9lm/3/bpv+/3yV
        /v9Do/3/YbP+/3+8/v8FwtX/B8Hc/xXv1f8T7tn/G8/2/yfE9/8tw/L/Mcn7/y3m+/818vn/R/zI/179
        yv9//sf/e/7V/03E/f9uwv7/c8/+/3Xc/v9N4P3/Qvn8/1n+8P9n/ef/bf7i/3Pp/v9g9/j/bfP+//6A
        g//+gLf/gP6E//7DgP/D/oD/h4D+/4CI/v/+gMf/gP76/wAAAP8AAAD/DQ4QGx2Wl/b8s7y3tqiknA8V
        HCD1IR6QlLG7wL61p50UWV1cCQcGFxmSoqm/urSfWl9gEgQAAhYYjY+apbm4q1v4TAsBAwgak6Ohjpme
        sKpubUgKDBIflbK9pph3gKytcWlLRkleEwWRoK+BdX6JrnNXVEpVbEcRm32Kgnl6g/p0WFBOVmtNMs+E
        jIV7fIb7cmpPJlJjOCnF4dmHdn+L13BvUSUtNEPJ5vPgzXiI1dZk+VMuIycsPsfd28LO09rUYmdoNSgi
        JDo8wcPc4Ovq2DdhZmU2Kyo7Pcbe5PLs6dIxOUBE90VCxMjl8P307eLRLzAzP0HKy8zn6PHv7uPf0AAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAA=
</value>
  </data>
</root>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Microsoft Public License (Ms-PL)


Written By
United States United States
I am a .NET developer who works daily on enterprise-scale applications using C#, SQL, XML, ASP.NET, and myriad other technologies. My academic background is in physics and economics.

I am the original architect of Sandcastle managed reference documentation engine and of the Meta.Numerics library for scientific computation.

Comments and Discussions