<?xml version="1.0" encoding="UTF-8"?>
<Worksheet><Version major="6" minor="1"/><View-Properties><Zoom percentage="100"/></View-Properties><Styles><Layout alignment="left" bullet="none" name="Warning"/><Layout alignment="left" bullet="none" linespacing="0.0" name="Heading 4" spaceabove="0.0" spacebelow="0.0"/><Layout alignment="left" bullet="none" linespacing="0.0" name="Heading 3" spaceabove="0.0" spacebelow="0.0"/><Layout alignment="left" bullet="none" linespacing="0.0" name="Heading 2" spaceabove="8.0" spacebelow="2.0"/><Layout alignment="left" bullet="none" linespacing="0.0" name="Heading 1" spaceabove="8.0" spacebelow="4.0"/><Layout alignment="left" bullet="none" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" name="Normal" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Layout alignment="centred" bullet="none" name="Maple Plot"/><Layout alignment="centred" bullet="none" linespacing="0.5" name="Maple Output"/><Layout alignment="left" bullet="dot" linespacing="0.0" name="Bullet Item" spaceabove="3.0" spacebelow="3.0"/><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" name="Maple Input" opaque="false" size="12"/><Font background="[0,0,0]" family="Serif" foreground="[0,128,128]" hyperlink="true" name="Hyperlink" opaque="false" size="12" underline="true"/><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="Text" opaque="false" size="12" underline="false"/><Font background="[0,0,0]" family="Monospaced" foreground="[0,0,255]" name="Warning" opaque="false" readonly="true" size="12"/><Font background="[0,0,0]" bold="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="Bullet Item" opaque="false" size="12" underline="false"/><Font background="[0,0,0]" family="Monospaced" foreground="[0,0,255]" name="Line Printed Output" opaque="false" readonly="true" size="12"/><Font background="[0,0,0]" family="Serif" italic="true" name="Heading 4" opaque="false" size="12"/><Font background="[0,0,0]" bold="true" family="Serif" italic="true" name="Heading 3" opaque="false" size="14"/><Font background="[0,0,0]" executable="false" family="Times New Roman" foreground="[0,0,0]" name="2D Math" opaque="false" size="12"/><Font background="[0,0,0]" bold="true" family="Serif" name="Heading 2" opaque="false" size="16"/><Font background="[0,0,0]" bold="true" family="Serif" name="Heading 1" opaque="false" size="18"/><Font background="[0,0,0]" family="Serif" foreground="[147,0,15]" hyperlink="true" name="Dictionary Hyperlink" opaque="false" size="12" underline="true"/><Font background="[0,0,0]" family="Times New Roman" foreground="[0,0,255]" name="2D Output" opaque="false" readonly="true" size="12"/><Font background="[0,0,0]" bold="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="Normal" opaque="false" size="12" underline="false"/><Font background="[0,0,0]" family="Times New Roman" foreground="[0,0,255]" name="2D Math_1" opaque="false" readonly="true" size="14"/><StrokePreset color="[255,255,0]" name="Highlighter 5" width="48"/><StrokePreset color="[0,255,255]" name="Highlighter 4" width="32"/><StrokePreset color="[51,255,0]" name="Highlighter 3" width="24"/><StrokePreset color="[255,204,0]" name="Highlighter 2" width="14"/><StrokePreset color="[255,153,255]" name="Highlighter 1" width="8"/><StrokePreset color="[255,0,0]" name="Pencil 5" width="5"/><StrokePreset color="[0,0,255]" name="Pencil 4" width="3"/><StrokePreset color="[0,0,0]" name="Pencil 3" width="3"/><StrokePreset color="[0,0,255]" name="Pencil 2" width="1"/><StrokePreset color="[0,0,0]" name="Pencil 1" width="1"/></Styles><Group><Input><Text-field alignment="centred" firstindent="0.0" layout="Heading 1" leftmargin="0.0" linebreak="space" rightmargin="0.0" style="Heading 1"/><Text-field alignment="centred" firstindent="0.0" layout="Heading 1" leftmargin="0.0" linebreak="space" rightmargin="0.0" style="Heading 1"><Font size="36">ITC Research Computing Support Colloquia Fall, 2004</Font><Font executable="false" foreground="[0,0,0]" italic="false" size="24" underline="false">

Mathematics on the Desktop</Font>

Presented by Kathy Gerber
of the 
ITC Research Computing Support Group
(Kathy Gerber, Ed Hall, Katherine Holcomb, Tim F. Jost Tolson)

E-Mail:  Res-Consult@Virginia.EDU
http://www.itc.virginia.edu/researchers
Telephone: 243-8800 

The Maple worksheet from this talk, as well as notes from previous talks will be available on
ITCWeb at <Hyperlink bold="true" linktarget="http://www.itc.virginia.edu/research/talks/" style="Hyperlink">http://www.itc.virginia.edu/research/talks/</Hyperlink> </Text-field><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/><Text-field alignment="centred" layout="Normal" style="Text"/></Input></Group><Section><Title><Text-field layout="Heading 1" style="Heading 1">Functions of a Mathematical Desktop</Text-field></Title><Section><Title><Text-field layout="Heading 2" style="Heading 2">Teaching Support</Text-field></Title><Text-field layout="Normal" style="Text"/><Section><Title><Text-field layout="Heading 3" style="Heading 3"><Font size="16">The comprehensive desktop environment viewed as a teachining tool</Font></Text-field></Title><Text-field layout="Normal" style="Text"/><Text-field layout="Normal" style="Text"><Font bold="true" size="16">Strengths:</Font><Font size="16">
    -  Interactive, easy to use, with extensive built in and on-line help</Font></Text-field><Text-field layout="Normal" style="Text"><Font size="16">    -  Nice interface with output in standard mathematical notation</Font></Text-field><Text-field layout="Normal" style="Text"><Font size="16">    -  Within a single document the user can</Font></Text-field><Text-field layout="Normal" style="Text"><Font size="16">	-- perform computations
	-- manipulate mathematical expressions
	-- describe the problem-solving process</Font></Text-field><Text-field layout="Normal" style="Text"><Font size="16">    -  Easy to program
    -  Integration of algebraic, numerical and graphical facilities
    -  Extensive library of functions including packages in areas such as
       precalculus, calculus, linear algebra, polynomials, etc.<Font bold="true">

Weakness:</Font>
    -  For large numerical calculations, environments such as Maple, Mathematica are not as fast as Matlab, R or compiled languages.</Font></Text-field><Text-field layout="Normal" style="Text"><Font size="16">       But they are better as a tool for teaching and developing numerical algorithms.</Font></Text-field><Text-field layout="Normal" style="Text"/><Section><Title><Text-field layout="Heading 4" style="Heading 4"><Font bold="true" size="16">Numerical Calculations</Font></Text-field></Title><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font size="16">nextprime(1007898743453453465767945830458254303);
</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiMiRl5XRGUvJGUlendsTVhgTXUpKnkrIg==</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font size="16">evalf(Pi,100);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiMkIl9xb3E2VWAjWy5HJykqKjNpRzFrInlJI2ZXXCg0I2U1diQqUnByPiUpR116S1FWRVlRS3oqZWBFZlRKISMqKg==</Equation></Text-field></Output></Group></Section><Text-field layout="Normal" style="Text"/><Text-field layout="Normal" style="Text"><Font size="16">    -  Not truly comprehensive.  

   </Font></Text-field><Text-field layout="Normal" style="Text"/></Section><Text-field layout="Normal" style="Text"/><Section><Title><Text-field layout="Heading 3" style="Heading 3"><Font size="16">Maple Help</Font></Text-field></Title><Text-field layout="Normal" style="Text"/><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="Help:examples, BasicHowTo" size="16" style="Hyperlink">Basic HowTo</Hyperlink><Font size="16"> </Font></Text-field><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="Help:introduction" size="16" style="Hyperlink">Help Introduction</Hyperlink><Font size="16"> </Font></Text-field><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="Help:examples,index" size="16" style="Hyperlink">Examples</Hyperlink><Font size="16"> </Font></Text-field><Text-field layout="Normal" style="Text"/></Section><Text-field layout="Normal" style="Text"/><Section><Title><Text-field layout="Heading 3" style="Heading 3"><Font size="16">Math Dictionary</Font></Text-field></Title><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="Dictionary:Definition" size="16" style="Dictionary Hyperlink">Dictionary</Hyperlink><Font size="16"> </Font></Text-field></Section><Text-field layout="Normal" style="Text"/></Section><Section><Title><Text-field layout="Heading 2" style="Heading 2">Publishing Documents</Text-field></Title><Section><Title><Text-field layout="Heading 3" style="Heading 3">Word Processing and Typesetting - Using Export</Text-field></Title><Text-field layout="Normal" style="Normal"><Font size="14"> </Font></Text-field><Text-field layout="Bullet Item" style="Bullet Item"><Font size="14" underline="true">HTML:</Font><Font size="14">  Use Export from the File Menu.  When Sections are expanded, one page with internal links is created.  When Sections are collapsed, a separate html page is created for each Section and linked back to the main page.
</Font></Text-field><Text-field layout="Bullet Item" style="Bullet Item"><Font size="14" underline="true">RTF: </Font><Font size="14">   can be converted to Word.
</Font></Text-field><Text-field layout="Bullet Item" style="Bullet Item"><Font size="14" underline="true">LATEX:</Font><Font size="14">  When creating dvi files in the Windows environment from exported *.tex documents, the *.sty files from the ..\Maple 8\etc directory (in Windows) or the ../maple8/etc directory (in unix) must be available either by modifying the PATH, or copying them into the appropriate directory.  In Windows, MikTeX's latex and dvips commands are useful.  If desired, the resulting ps file can be converted to pdf with Adobe Distiller.

RedHat users may need to install the rpm for dvips.  Use a current version of dvips.  For RedHat 8.0 this is <Font italic="true">tetex-dvips-1.0.7-57.1.i386.rpm</Font>.   A vulnerability in earlier version may allow local or remote attackers who have print access to carefully craft a print job that would allow them to execute arbitrary code as the user 'lp'.
</Font></Text-field><Section><Title><Text-field layout="Heading 3" style="Heading 3"> Latex command</Text-field></Title><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal"><Font size="14">Latex snippets are easily generated with the latex command in Maple.</Font></Text-field><Text-field layout="Normal" style="Normal"/><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="14" underline="false">Int(1/(x^2+1), x) = int(1/(x^2+1), x);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation style="2D Math_1">NiMvLUkkSW50RzYkSSpwcm90ZWN0ZWRHRidJKF9zeXNsaWJHNiI2JCokLCYqJEkieEdGKSIiIyIiIkYwRjAhIiJGLi1JJ2FyY3RhbkdGJjYjRi4=</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="14" underline="false">latex(Int(1/(x^2+1), x) = int(1/(x^2+1), x));</Font></Text-field></Input><Output><Text-field layout="Normal" style="Line Printed Output">\int \! \left( {x}^{2}+1 \right) ^{-1}{dx}=\arctan \left( x \right) </Text-field></Output></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group></Section><Text-field layout="Normal" style="Normal"/><Text-field layout="Bullet Item" style="Bullet Item"><Font size="14" underline="true">MAPLE TEXT:</Font><Font size="14">   can be opened by Maple
</Font></Text-field><Text-field layout="Bullet Item" style="Bullet Item"><Font size="14" underline="true">PLAIN TEXT: </Font><Font size="14">  can also be opened by Maple showing execution statements only

</Font></Text-field></Section><Text-field layout="Normal" style="Text"/><Text-field layout="Normal" style="Text"/></Section><Section><Title><Text-field layout="Heading 2" style="Heading 2">Proof and Verfication</Text-field></Title><Text-field layout="Normal" style="Text"><Font size="16">"Many proofs in Discrete Math are really algorithms in disguise." - Doron Zeilberger</Font></Text-field><Text-field layout="Normal" style="Text"/><Text-field layout="Normal" style="Text"><Font bold="true" italic="true" size="16">An Example</Font></Text-field><Text-field layout="Normal" style="Text"><Font size="16">Rene - A Maple Package for Stating and Proving Theorems in Geometry</Font></Text-field><Text-field layout="Normal" style="Text"/><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="http://www.math.rutgers.edu/~zeilberg/tokhniot/RENE" size="16" style="Hyperlink">http://www.math.rutgers.edu/~zeilberg/tokhniot/RENE</Hyperlink><Font size="16"> </Font></Text-field><Text-field layout="Normal" style="Text"/></Section><Text-field layout="Normal" style="Text"/><Section><Title><Text-field layout="Heading 2" style="Heading 2">Interfacing with Other Programs</Text-field></Title><Section><Title><Text-field layout="Heading 3" style="Heading 3">Code Generation</Text-field></Title><Text-field layout="Normal" style="Text"/><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="Help:CodeGeneration" style="Hyperlink">Code Generation</Hyperlink> </Text-field></Section><Text-field layout="Normal" style="Text"/><Section><Title><Text-field layout="Heading 3" style="Heading 3">External Calling</Text-field></Title><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="Help:external_calling" style="Hyperlink">External Calling</Hyperlink> </Text-field></Section><Text-field layout="Normal" style="Text"/><Section><Title><Text-field layout="Heading 3" style="Heading 3">Random Objects</Text-field></Title><Text-field layout="Normal" style="Text"><Hyperlink bold="false" executable="false" italic="false" linktarget="Help:RandomTools" style="Hyperlink">Random Tools</Hyperlink> </Text-field><Text-field layout="Normal" style="Text"/></Section></Section><Section><Title><Text-field layout="Heading 2" style="Heading 2">Examples</Text-field></Title><Section><Title><Text-field layout="Heading 2" style="Heading 2"><Font italic="true">The CurveFitting Package</Font></Text-field></Title><Group><Input><Text-field layout="Normal" style="Normal">The <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting" style="Hyperlink">CurveFitting</Hyperlink> contains functions to fit various types of curves to given data points.  </Text-field></Input></Group><Section><Title><Text-field layout="Heading 3" style="Heading 3">Introduction to the CurveFitting Package</Text-field></Title><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">restart;</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The following command allows you to use the short form of the function names in the <Font bold="true">CurveFitting</Font> package.  Note that the <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[PolynomialInterpolation]" style="Hyperlink">PolynomialInterpolation</Hyperlink>, <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[RationalInterpolation]" style="Hyperlink">RationalInterpolation</Hyperlink>, <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[Spline]" style="Hyperlink">Spline</Hyperlink>, and <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[ThieleInterpolation]" style="Hyperlink">ThieleInterpolation</Hyperlink> functions replace the obsolete functions <Font bold="true">interp</Font>, <Font bold="true">ratinterp</Font>, <Font bold="true">spline,</Font> and <Font bold="true">thiele</Font>, respectively.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">with(CurveFitting);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM3KkkoQlNwbGluZUc2IkktQlNwbGluZUN1cnZlR0YlSSxJbnRlcmFjdGl2ZUdGJUktTGVhc3RTcXVhcmVzR0YlSThQb2x5bm9taWFsSW50ZXJwb2xhdGlvbkdGJUk2UmF0aW9uYWxJbnRlcnBvbGF0aW9uR0YlSSdTcGxpbmVHRiVJNFRoaWVsZUludGVycG9sYXRpb25HRiU=</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">A feature of the <Font bold="true">CurveFitting</Font> package is that the routines allow you to specify the data points in two ways.  The points can be provided as two lists, the first containing the independent values and the second containing the dependent values.  The following command computes a polynomial that interpolates the points {(0,1), (1,3), (2,-1), (3,2)}.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">PolynomialInterpolation([0,1,2,3], [1,3,-1,2], v);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiMsKiokSSJ2RzYiIiIkIyIjOCIiJyokRiUiIiMjISM+RixGJSMiI0dGJyIiIkYx</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The points can also be provided as a list of lists.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">PolynomialInterpolation([[0,1],[1,3],[2,-1],[3,2]], v);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiMsKiokSSJ2RzYiIiIkIyIjOCIiJyokRiUiIiMjISM+RixGJSMiI0dGJyIiIkYx</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The ability to specify the data as a list of lists facilitates plotting the original data with the result.  Example plots are provided in the next section.  The following command allows you to use the short form of the function names in the <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:plots" style="Hyperlink">plots</Hyperlink> package.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">with(plots):</Font></Text-field></Input><Output><Text-field layout="Warning" style="Warning">Warning, the name changecoords has been redefined</Text-field></Output></Group></Section><Section><Title><Text-field layout="Heading 3" style="Heading 3">Fitting a Curve Through a Set of Points</Text-field></Title><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">Below, we define a list of 8 points, then plot these points by using the <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:plots[pointplot]" style="Hyperlink">plots[pointplot]</Hyperlink> function.  (Note that the short form of the function name is used below.)</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">points1 := [[0,1],[1,2.5],[3,2.3],[4.2,5],[5,3.5],[5.8,4.2],[7,7],[8,10]]:
pntplot1 := pointplot(points1,symbol=BOX):</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The next command uses the <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[PolynomialInterpolation]" style="Hyperlink">PolynomialInterpolation</Hyperlink> function to compute the unique polynomial that interpolates the data points.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">polycurve := PolynomialInterpolation(points1, v):</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:plot" style="Hyperlink">plot</Hyperlink> command shown below generates a plot of the result. The <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:plots[display]" style="Hyperlink">plots[display]</Hyperlink> function displays both this plot and the previously computed plot of the data points.  It can be seen that the degree 7 polynomial passes through each of the 8 data points.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">polyplot := plot(polycurve,v=0..8):
display([pntplot1,polyplot]);</Font></Text-field></Input><Output><Text-field layout="Maple Plot"><Plot height="400" plot-scale="1.0" plot-xtrans="0.0" plot-ytrans="0.0" type="two-dimensional" width="400">LSUlUExPVEc2Ji0lJ1BPSU5UU0c2LDckJCIiIUYqJCIiIkYqNyRGKyQiI0QhIiI3JCQiIiRGKiQiI0JGMDckJCIjVUYwJCIiJkYqNyRGOSQiI05GMDckJCIjZUYwRjc3JCQiIihGKkZCNyQkIiIpRiokIiM1RiotSSdTWU1CT0xHNiRJKnByb3RlY3RlZEdGTEkoX3N5c2xpYkc2IjYjSSRCT1hHRkstRko2JEZQRkgtJSdDVVJWRVNHNiQ3XHFGKDckJCIzZW1tbTthcnpAISM+JCIzLWYoKSlmb1lwKj4hIzw3JCQiMzlMTExMM1ZmVkZaJCIzOVkjXHVVXkEiSEZnbjckJCIzcyoqKioqKlxpOVJsRlokIjMpMyJbcXMyWlxQRmduNyQkIjNIbW1tbTsnKT0oKUZaJCIzUzVAeiU0aT9eJUZnbjckJCIzJSoqKioqKipcI0h5SSIhIz0kIjMqPUoiKUg2MG4jZUZnbjckJCIzRUxMTExCeFY8RmpvJCIzY09QZ2tUIz4pb0ZnbjckJCIzLSsrK0RlUi1ERmpvJCIzKXpiM3BKVTU8KUZnbjckJCIzeW1tbTskPjVFJEZqbyQiMzE3Vy9kRjhsKSlGZ243JCQiM1ErK0QiPTJWWiRGam8kIjMjcF4jSE9vJ3knKilGZ243JCQiM1VMTCRlLyZmKG8kRmpvJCIzYTZJTTskb1QuKkZnbjckJCIzWW1tVDVIKTMhUkZqbyQiM3VqQWh5KzptISpGZ243JCQiMzErKyt2Mjw5VEZqbyQiM2t3LykpXHAmZTEqRmduNyQkIjNtTExlUidldUslRmpvJCIzXE9xZm1xRU4hKkZnbjckJCIzcW1tOy9sdVNYRmpvJCIzd2hbKkhBJEh3KilGZ243JCQiM3UqKipcKG9WLmFaRmpvJCIzITMoPjUuVXkhKikpRmduNyQkIjNNTExMTEFLblxGam8kIjNrSyhRbjRFMHkpRmduNyQkIjNFTExMTCpHaCNlRmpvJCIzJG9pUkooPkU/IilGZ243JCQiMz1MTExMYyRcbydGam8kIjNpPSVSYGg2Jik9KEZnbjckJCIzNCsrK3YwbVJ2RmpvJCIzN3ROJ2YoKkclemdGZ243JCQiMyllbW1tXiZRJVIpRmpvJCIzeU8wbVl3VGpbRmduNyQkIjN3KSoqKioqXFwjbz0qRmpvJCIzeXRKXk4wNCZwJEZnbjckJCIzd0tMTCRRayN6KipGam8kIjNvOCVRKikqSDZJREZnbjckJCIzWW1tbV4qeSp6NUZnbiQiMytxPCwhXGNRTyJGZ243JCQiMykpKioqKipcWUo/OyJGZ24kIjM3LiopUkhpcSZvI0ZqbzckJCIzV21tbSJIISpvQyJGZ24kITN4cyhwPCo9RVR3RmpvNyQkIjM/TExMPSJcPEwiRmduJCEzTWt4QzVQbnY7RmduNyQkIjNdbW1tLGVMOzlGZ24kITNVTmQmWyN6QF1DRmduNyQkIjMiKSoqKioqXFtBNF0iRmduJCEzQ0k2NjInPkYzJEZnbjckJCIzR0xMJGVHSXplIkZnbiQhM3VvLihRUiVSImUkRmduNyQkIjN3bW1tJzNRXG4iRmduJCEzOFpdMDxCW0VSRmduNyQkIjNVTEwkZU1jS3IiRmduJCEzODhiTV0qMzIuJUZnbjckJCIzMSsrKzBZZF48RmduJCEzJSlbPm4vKXprNSVGZ243JCQiM1FMTGVNUHRxPEZnbiQhM1BgKTNXUykqUTglRmduNyQkIjNxbW07a0cqKSp5IkZnbiQhMz9xMGcvL1lhVEZnbjckJCIzLisrdiQqPjA0PUZnbiQhMylcW0YkR1NFb1RGZ243JCQiM09MTExCNkBHPUZnbiQhM3NOPCY+J0hUdlRGZ243JCQiM3ltbVRsKHooXD1GZ24kITNTJXAvQz9NYzwlRmduNyQkIjMpKioqKipcMiVbOCg9RmduJCEzb20qPXlfQXg7JUZnbjckJCIzO0xMZVxxIkgqPUZnbiQhM3c/Smx6IVs9OiVGZ243JCQiM2dtbW0icCZbOT5GZ24kITNWRWkhMyN6PUdURmduNyQkIjNBTEwkZShIaWQ+RmduJCEzdWk/aV0wRGVTRmduNyQkIjMmKSoqKioqKmYtdys/RmduJCEzMyczemIleldmUkZnbjckJCIzISoqKioqKip6ISpRKDMjRmduJCEzJVxpRyh5IlsvbyRGZ243JCQiMyUqKioqKioqKip5LHVARmduJCEzcjJaJyozZl4wTEZnbjckJCIzKSoqKioqKipSUCk0TSNGZ24kITMhcCR6bSpbZGtPI0ZnbjckJCIzSUxMTD1aZyNcI0ZnbiQhM2c6Um42WXlUOEZnbjckJCIzY21tbUVuKkduI0ZnbiQhMzQqXCtCQEE7OCNGWjckJCIzVG1tbTF4aURHRmduJCIzeDZlcnRiSCs2RmduNyQkIjMhKSoqKioqXDkhSC5JRmduJCIzJEhqRFdOTDhLI0ZnbjckJCIzSW1tbTE6YmdKRmduJCIzJylceSIpPl8mekUkRmduNyQkIjM8KysrWEA0TExGZ24kIjNVXm1lRkE4OVRGZ243JCQiMzErKytOO1IoXCRGZ24kIjNDKj06OmYqcDFaRmduNyQkIjNTTEwkZUYxSmUkRmduJCIzWjtFKCopUkMqSFxGZ243JCQiM3dtbW07NCMpb09GZ24kIjMrJGY/THUjeSU0JkZnbjckJCIzI3BtbVRyTHZ1JEZnbiQiMz05KSllMHRIJz4mRmduNyQkIjNqbW1tNmxDRVFGZ24kIjNnJWVbLUp5QUQmRmduNyQkIjMlKioqKipcKCopWzYiUkZnbiQiM3U2aVBwJioqW0UmRmduNyQkIjNFTExMJEdeZypSRmduJCIzcT0ubzhtP0tfRmduNyQkIjMnSExMMytUVTMlRmduJCIza1VIPU0oKm9iXkZnbjckJCIzb0tMTD0yVnNURmduJCIzQDlpclU8MVVdRmduNyQkIjNmKioqKipcYHBmSyVGZ24kIjMhZkcicHRFTHdaRmduNyQkIjMhSExMTG0meiJcJUZnbiQiMyQ+LChSRmc7SldGZ243JCQiM3MqKioqKip6LTZqWUZnbiQiM19ZS2VXMCJIMSVGZ243JCQiMzwqKioqKio0IzMyJFtGZ24kIjNYYSo0RT4xOHUkRmduNyQkIjNPKioqKipcI3knRypcRmduJCIzSGpeV2t5J3pdJEZnbjckJCIzSyoqKipcRkoqRzMmRmduJCIzOnMoKUdqYWlCTUZnbjckJCIzRyoqKioqKkglPUg8JkZnbiQiM0VJXzVXYSlwUCRGZ243JCQiM3FLTExvLCJRRCZGZ24kIjNFbWdmVnN1cExGZ243JCQiMzVtbW0xPnFNYEZnbiQiMyM0KVFLYSEpeidSJEZnbjckJCIzYEtMTC42MkBhRmduJCIzUzMyInpMLFVZJEZnbjckJCIzJSkqKioqKioqSFN1XSZGZ24kIjNvTCVlLkIiNHJORmduNyQkIjMnSExMJGVwJ1JtJkZnbiQiM01sJyopZnFKLidRRmduNyQkIjMnKSoqKioqKlI+NE5lRmduJCIzL1o9MjdGISkpSCVGZ243JCQiMyNlbW07QDJoKmZGZ24kIjMlb0UhKSpcTipmeiVGZ243JCQiM10qKioqKlxjOVc7J0ZnbiQiM11pREdnMD1lYEZnbjckJCIzTG1tbW1kJypHakZnbiQiM2syKSlvNW41KSplRmduNyQkIjNqKioqKipcaU43XSdGZ24kIjMjUlVCU0hOV1InRmduNyQkIjNhTExMdD46bm1GZ24kIjMhM213UGxRU3YnRmduNyQkIjNLTExMKW8pKT52J0ZnbiQiM3koNDR2NCUzISlvRmduNyQkIjM1TExMLmEjbyRvRmduJCIzY0ZAL1xnJUcncEZnbjckJCIzRSsrXUYnZjQjcEZnbiQiM3QuIVxXKSkqXCxxRmduNyQkIjNhbW1tXlE0MHFGZ24kIjMjXCFcSCVIQigpKnBGZ243JCQiMztMTCRlWS9DMyhGZ24kIjM3IkhpJ1xHb2pwRmduNyQkIjN5KioqKioqel1yZnJGZ24kIjNtTjU5ZGglUiFwRmduNyQkIjNnbW1tYyVHcEwoRmduJCIzSmh6dEM3MUhuRmduNyQkIjMjKSoqKioqXEx6aFQoRmduJCIzNylIcmw4cixuJ0ZnbjckJCIzL0xMTDgtViZcKEZnbiQiMy9MZFF0QDhhbUZnbjckJCIzMCsrRCc+endgKEZnbiQiM2U0Z2VITXZzbUZnbjckJCIzO21tO3oiRyp6dkZnbiQiM2c2WiFvPzdtcidGZ243JCQiMz1MTDNpcjxBd0ZnbiQiMzlyMyJla0M3eidGZ243JCQiMz0rKytYaFVrd0ZnbiQiM1AhKnAvdSFRRSFwRmduNyQkIjM9KysrIVssYHUoRmduJCIzNE4pMydbYjRWc0ZnbjckJCIzPSsrKzpvPEV5RmduJCIzWyJbTyFbISlmJnooRmduNyQkIjM0KytdMiUpMzh6RmduJCIzTyFSJGZfeiNlcClGZ243JEZFJCIyJyopR2xPVioqKioqKiEjOy0lJkNPTE9SRzYmJSRSR0JHJEZIRjAkRipGMEZjXG0tJStBWEVTTEFCRUxTRzYkUSJ2Rk5RIUZOLSUlVklFV0c2JDtGY1xtJCIjISlGMDskITEpeV9rKW85ZlchIzokIjInNFtTbzdORzVGYl1t</Plot></Text-field></Output></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">If <Font italic="true">n</Font> data points are supplied, then the interpolating polynomial has degree less than or equal to <Font italic="true">n</Font>-1.  One well-known problem with fitting an interpolating polynomial through a large set of data points is the undesirable oscillations produced by a high-degree polynomial.  In the plot above, the function value for <Font italic="true">v</Font>=2 is far from the value for <Font italic="true">v</Font>=1 or <Font italic="true">v</Font>=3.</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">A smoother curve can be obtained by using the <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[Spline]" style="Hyperlink">Spline</Hyperlink> function.  This function returns a piecewise polynomial of default degree 3 that passes through the 8 data points.   The second derivative is set to zero at the endpoints, and this results in a "natural" spline.  The degree of the spline can be controlled by the <Font bold="true">degree</Font> option, described on the <Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[Spline]" style="Hyperlink">Spline</Hyperlink> help page.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">splcurve := Spline(points1, v);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSlzcGxjdXJ2ZUc2Ii1JKlBJRUNFV0lTRUdGJTYpNyQsKCQiIiIiIiFGLEkidkdGJSQiMyUpKioqKipmPWEvLyMhIzwqJEYuIiIkJCEzTSsrK2Q9YS9hISM9MkYuRiw3JCwqJCIrciQzNDMjISIqRixGLiQiMyEqKioqKipISDs0PiVGNiokLCZGLkYsISIiRiwiIiMkITNFZWh6Y0RPQDtGMSokRkBGMyQiM1ArKys4UDM0b0Y2MkYuRjM3JCwqJCErb2JpOFNGPEYsRi4kIjMqKioqKioqZiY9YS9ARjEqJCwmRi5GLCEiJEYsRkIkIjNhdiUpUXF3M2tDRjEqJEZQRjMkITMzKysrI3okUl8+RjEyRi4kIiNVRkE3JCwqJCIrWk06Wm5GPEYsRi4kITMnKSoqKioqKmYiKikpZlRGNiokLCZGLkYsJCEjVUZBRixGQiQhM21TXHUhKSpIWGMlRjEqJEZbb0YzJCIzNSsrK2R3JmZVJEYxMkYuIiImNyQsKiQiKzU0KnA/KkY8RixGLiQhMzUrKysjPSlSVDZGMSokLCZGLkYsISImRixGQiQiMyVvKT45KVJveGwkRjEqJEZccEYzJCEzKSoqKioqKnBMKWVAOUYxMkYuJCIjZUZBNyQsKiQhK11OPCRIKEY8RixGLiQiMzErKytaO2UiKT5GMSokLCZGLkYsJCEjZUZBRixGQiQiMz1IKnA8KVFjZkNGNiokRl1xRjMkIjMvKysrblokMyRSISM+MkYuIiIoNyQsKiQhK0dCPT43ISIpRixGLiQiMyEpKioqKioqUiEqb1RGRjEqJCwmRi5GLCEiKEYsRkIkIjMvY086KVJrWShRRjYqJEZgckYzJCEzMysrKyp6YTpIIkY2SSpvdGhlcndpc2VHRiU=</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The plot below shows that a smoother curve, without the unwanted oscillations, is produced.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">splplot := plot(splcurve,v=0..8):
display([pntplot1,splplot]);</Font></Text-field></Input><Output><Text-field layout="Maple Plot"><Plot height="400" plot-scale="1.0" plot-xtrans="0.0" plot-ytrans="0.0" type="two-dimensional" width="400">LSUlUExPVEc2Ji0lJ1BPSU5UU0c2LDckJCIiIUYqJCIiIkYqNyRGKyQiI0QhIiI3JCQiIiRGKiQiI0JGMDckJCIjVUYwJCIiJkYqNyRGOSQiI05GMDckJCIjZUYwRjc3JCQiIihGKkZCNyQkIiIpRiokIiM1RiotSSdTWU1CT0xHNiRJKnByb3RlY3RlZEdGTEkoX3N5c2xpYkc2IjYjSSRCT1hHRkstRko2JEZQRkgtJSdDVVJWRVNHNiQ3Y29GKDckJCIzRUxMTExCeFY8ISM9JCIzRWUyOHNJJUhOIiEjPDckJCIzeW1tbTskPjVFJEZaJCIzKXl3XSM+UmxZO0ZnbjckJCIzTUxMTExBS25cRlokIjNnJyk0KydcPXQlPkZnbjckJCIzPUxMTExjJFxvJ0ZaJCIzaisvRUxlZC1BRmduNyQkIjMpZW1tbV4mUSVSKUZaJCIzUUA8Uk4lW0pSI0ZnbjckJCIzdykqKioqKlxcI289KkZaJCIzaUEycTApKltiQ0ZnbjckJCIzd0tMTCRRayN6KipGWiQiM2MtdlpAUzcqXCNGZ243JCQiM1ltbW1eKnkqejVGZ24kIjNPbUhvKWYmXEJERmduNyQkIjMpKSoqKioqXFlKPzsiRmduJCIzUkMmRyRcXUJHREZnbjckJCIzV21tbSJIISpvQyJGZ24kIjMieU8kPSMqbylbXiNGZ243JCQiMz9MTEw9Ilw8TCJGZ24kIjNPY1wtczZYJlsjRmduNyQkIjMiKSoqKioqXFtBNF0iRmduJCIzZ2hNLkotbylRI0ZnbjckJCIzd21tbSczUVxuIkZnbiQiM3V4KnpKcztPRCNGZ243JCQiM09MTExCNkBHPUZnbiQiM1FrT2IpenI8NyNGZ243JCQiMyYpKioqKioqZi13Kz9GZ24kIjNzUzRiJSpSL3k+RmduNyQkIjMlKioqKioqKioqeSx1QEZnbiQiMyFwQl9lTiQ0Zj1GZ243JCQiMykqKioqKioqUlApNE0jRmduJCIzR1YwO3B2TSl5IkZnbjckJCIzVW1tO0hVejtDRmduJCIzbygpPkNSImVjeCJGZ243JCQiM0lMTEw9WmcjXCNGZ24kIjNTYS15I1EpZng8RmduNyQkIjM7KytdQTJ2I2UjRmduJCIzYnQ1Z3QiNDkhPUZnbjckJCIzY21tbUVuKkduI0ZnbiQiMzktKnpjSDo5Jj1GZ243JCQiM3FtbW07QUVcRkZnbiQiMy0oZS0kelJcOz5GZ243JCQiM1RtbW0xeGlER0ZnbiQiMz4mXG4nKVJRVisjRmduNyQkIjMhKSoqKioqXDkhSC5JRmduJCIzWlkyQF8zJnBJI0ZnbjckJCIzSW1tbTE6YmdKRmduJCIzYVsqUTxrQkxwI0ZnbjckJCIzPCsrK1hANExMRmduJCIzPS9QTCh5VkE/JEZnbjckJCIzMSsrK047UihcJEZnbiQiM1xuckxmSzk7UEZnbjckJCIzd21tbTs0IylvT0ZnbiQiMz0mSDklKm8ob0RVRmduNyQkIjNqbW1tNmxDRVFGZ24kIjN1LSlHJ2VheT5ZRmduNyQkIjMlKioqKipcKCopWzYiUkZnbiQiM3VAKkgwc3FqeSVGZ243JCQiM0VMTEwkR15nKlJGZ24kIjMoeVZmLjRUOiJcRmduNyQkIjNjTEwzVWg5U1NGZ24kIjNTMkBSVVIkeSZcRmduNyQkIjMnSExMMytUVTMlRmduJCIzS1EicDxpPCsqXEZnbjckJCIzUUtMZWZlTEdURmduJCIzRGNNUSV5KDMyXUZnbjckJCIzb0tMTD0yVnNURmduJCIzISl5ejcnM1MhM11GZ243JCQiM2oqKioqXEFhIjNAJUZnbiQiMzlPcHM0OChcKlxGZ243JCQiM2VtbW1FLD9cVUZnbiQiMyllR1k0PCMqKW9cRmduNyQkIjNfTEwkMyRbZShHJUZnbiQiMzA7SCkqM0QmMyRcRmduNyQkIjNmKioqKipcYHBmSyVGZ24kIjNnJnBcTydbLCMpW0ZnbjckJCIzcG1tOypmIykpM1dGZ24kIjMzbEEkPSg9PFhaRmduNyQkIjMhSExMTG0meiJcJUZnbiQiMy1JJT4jKTMpM3ZYRmduNyQkIjNzKioqKioqei02allGZ24kIjNjLDxBSi9ub1RGZ243JCQiMzwqKioqKio0IzMyJFtGZ24kIjNRQ3VIeXdWInkkRmduNyQkIjNGKioqKlw8ISl5NlxGZ24kIjMoPSY+Y3pkekVPRmduNyQkIjNPKioqKipcI3knRypcRmduJCIzIz50TjlaRCQzTkZnbjckJCIzIiopKipcaVohKXkuJkZnbiQiMykpMyMqKlxtTT5ZJEZnbjckJCIzSyoqKipcRkoqRzMmRmduJCIzIj05PDp1NChITUZnbjckJCIzdyoqKlwoeWQhejcmRmduJCIzKHlCKXpdWCgzVCRGZ243JCQiM0cqKioqKipIJT1IPCZGZ24kIjNcTGtvJD1eWVMkRmduNyQkIjMqZm1tIipIa0xAJkZnbiQiM0JBajVZYjw0TUZnbjckJCIzcUtMTG8sIlFEJkZnbiQiM1clKnBKXitwQU1GZ243JCQiM1MqKioqXFBnRCVIJkZnbiQiM14xKipcXS5qV01GZ243JCQiMzVtbW0xPnFNYEZnbiQiM1E5bCRbNEtXWiRGZ243JCQiM2BLTEwuNjJAYUZnbiQiM2NnYSNIRCZ5aE5GZ243JCQiMyUpKioqKioqKkhTdV0mRmduJCIzJVw7UCkqMz1wbiRGZ243JCQiMydITEwkZXAnUm0mRmduJCIzNiQ0RT1ScCZRUkZnbjckJCIzJykqKioqKipSPjROZUZnbiQiMyFlOC9yN1UpcFVGZ243JCQiMyNlbW07QDJoKmZGZ24kIjNjI3AnKlEiek4pZiVGZ243JCQiM10qKioqKlxjOVc7J0ZnbiQiM1FNSSsnKj5vY1xGZ243JCQiM0xtbW1tZCcqR2pGZ24kIjMrKilcI3phRUdLJkZnbjckJCIzaioqKioqXGlON10nRmduJCIzeklfbTlXMENkRmduNyQkIjNhTExMdD46bm1GZ24kIjM/JioqPidlNyIqR2hGZ243JCQiMzVMTEwuYSNvJG9GZ24kIjNXQTkhKnk9eGlsRmduNyQkIjNhbW1tXlE0MHFGZ24kIjMyTUYkUnp2UiwoRmduNyQkIjN5KioqKioqel1yZnJGZ24kIjMraSRRKkhuQ1p1RmduNyQkIjNnbW1tYyVHcEwoRmduJCIzMWUjUUljKXppekZnbjckJCIzL0xMTDgtViZcKEZnbiQiM1orZXdSUXJQJSlGZ243JCQiMz0rKytYaFVrd0ZnbiQiMzlWO0d4eSJbJiopRmduNyQkIjM9KysrOm88RXlGZ24kIjNlKCpvNV0mZW5YKkZnbjckRkUkIjJhTzoqKioqKioqKioqKiEjOy0lJkNPTE9SRzYmJSRSR0JHJEZIRjAkRipGMEZlZGwtJStBWEVTTEFCRUxTRzYkUSJ2Rk5RIUZOLSUlVklFV0c2JDtGZWRsJCIjISlGMDskIjEtKysrKysrIylGX2RsJCIlPTUhIiM=</Plot></Text-field></Output></Group><Text-field layout="Normal" style="Normal"/></Section><Section><Title><Text-field layout="Heading 3" style="Heading 3">Computing a Least Squares Fit</Text-field></Title><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal"><Font size="16">The </Font><Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[LeastSquares]" size="16" style="Hyperlink">LeastSquares</Hyperlink><Font size="16"> function can be used to find a curve that best fits the data in a least-squares sense, that is, minimizes the sum of the squares of the differences between the estimated values and the actual data.  Unlike the curves described in the previous section, the least-squares curve may not necessarily pass through the given points.  The least-squares method is often used to fit models to experimental data.</Font></Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal"><Font size="16">The commands below show how the <Font bold="true">LeastSquares</Font> function is used to compute the best linear fit through the points defined at the beginning of the previous section.  In the resulting plot, it can be seen that the curve passes near but not necessarily through all the points.  </Font></Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">lscurve := LeastSquares(points1,v);
lsplot := plot(lscurve,v=0..8):
display([pntplot1,lsplot]);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SShsc2N1cnZlRzYiLCYkIitsYXglRyYhIzUiIiJJInZHRiUkIjMtdjRaISopKnAoPiohIz0=</Equation></Text-field></Output><Output><Text-field layout="Maple Plot"><Plot height="400" plot-scale="1.0" plot-xtrans="0.0" plot-ytrans="0.0" type="two-dimensional" width="400">LSUlUExPVEc2Ji0lJ1BPSU5UU0c2LDckJCIiIUYqJCIiIkYqNyRGKyQiI0QhIiI3JCQiIiRGKiQiI0JGMDckJCIjVUYwJCIiJkYqNyRGOSQiI05GMDckJCIjZUYwRjc3JCQiIihGKkZCNyQkIiIpRiokIiM1RiotSSdTWU1CT0xHNiRJKnByb3RlY3RlZEdGTEkoX3N5c2xpYkc2IjYjSSRCT1hHRkstRko2JEZQRkgtJSdDVVJWRVNHNiQ3UzckRikkIjMxKysrbGF4JUcmISM9NyQkIjNFTExMTEJ4VjxGWiQiM1NKMSRcI1xrKSlvRlo3JCQiM3ltbW07JD41RSRGWiQiMz10RzxtSjslRylGWjckJCIzTUxMTExBS25cRlokIjNDL2s5IlFwTiYpKkZaNyQkIjM9TExMTGMkXG8nRlokIjNDYl4jUid5TFY2ISM8NyQkIjMpZW1tbV4mUSVSKUZaJCIzVWhAKFIkemMrOEZpbzckJCIzd0tMTCRRayN6KipGWiQiMy1mY3ZOLk1ZOUZpbzckJCIzKSkqKioqKlxZSj87IkZpbyQiM2lLYUw5I3pzZiJGaW83JCQiMz9MTEw9Ilw8TCJGaW8kIjNlSkhbPS9RYDxGaW83JCQiMyIpKioqKipcW0E0XSJGaW8kIjNJIyoqKTMvNSkqMz5GaW83JCQiM3dtbW0nM1FcbiJGaW8kIjNVbXo3S2AucD9GaW83JCQiM09MTExCNkBHPUZpbyQiMy8jMyVRcjcsNUFGaW83JCQiMyYpKioqKioqZi13Kz9GaW8kIjNpbmcjKil5OyhvQkZpbzckJCIzJSoqKioqKioqKnksdUBGaW8kIjN4JD5ybCdSMkdERmlvNyQkIjMpKioqKioqKlJQKTRNI0ZpbyQiM19MIypSTlRrIm8jRmlvNyQkIjNJTExMPVpnI1wjRmlvJCIzTiQ+ISk0Yys2I0dGaW83JCQiM2NtbW1FbipHbiNGaW8kIjNdQS1eUngjcClIRmlvNyQkIjNUbW1tMXhpREdGaW8kIjM+dj5KNl5TRkpGaW83JCQiMyEpKioqKipcOSFILklGaW8kIjMlZSE+RiFwODNIJEZpbzckJCIzSW1tbTE6YmdKRmlvJCIzJnBlcDYoelhOTUZpbzckJCIzPCsrK1hANExMRmlvJCIzMTwnKj5zYzolZiRGaW83JCQiMzErKytOO1IoXCRGaW8kIjNNZ3RKN01GWFBGaW83JCQiM3dtbW07NCMpb09GaW8kIjNSaSNRMyMqW0ghUkZpbzckJCIzam1tbTZsQ0VRRmlvJCIzUVdyaWVVdVpTRmlvNyQkIjNFTExMJEdeZypSRmlvJCIzc1JKZyJmRFI/JUZpbzckJCIzb0tMTD0yVnNURmlvJCIzXUE3Zy1UOm1WRmlvNyQkIjNmKioqKipcYHBmSyVGaW8kIjMsRl1LKVx1dF0lRmlvNyQkIjMhSExMTG0meiJcJUZpbyQiM3kqKmVjJVInKilmWUZpbzckJCIzcyoqKioqKnotNmpZRmlvJCIzWTI1bVBrWTxbRmlvNyQkIjM8KioqKioqNCMzMiRbRmlvJCIzdUE5IVIpemhyXEZpbzckJCIzTyoqKioqXCN5J0cqXEZpbyQiMzRhUUBKdnc/XkZpbzckJCIzRyoqKioqKkglPUg8JkZpbyQiMy1HRT91RVAnRyZGaW83JCQiMzVtbW0xPnFNYEZpbyQiM1pIVndnaTxOYUZpbzckJCIzJSkqKioqKioqSFN1XSZGaW8kIjN1VSYzNCZlMCVmJkZpbzckJCIzJ0hMTCRlcCdSbSZGaW8kIjM4cyRIUFBDIVFkRmlvNyQkIjMnKSoqKioqKlI+NE5lRmlvJCIzLzJFQycqKj5hKmVGaW83JCQiMyNlbW07QDJoKmZGaW8kIjMiMygpKiozLDxOLydGaW83JCQiM10qKioqKlxjOVc7J0ZpbyQiMyl6Ij1WajVLKT4nRmlvNyQkIjNMbW1tbWQnKkdqRmlvJCIzJVtYJ1E/Lm5cakZpbzckJCIzaioqKioqXGlON10nRmlvJCIzS10pKTRtKj0iM2xGaW83JCQiM2FMTEx0PjpubUZpbyQiM01OIikpUiVRc2dtRmlvNyQkIjM1TExMLmEjbyRvRmlvJCIzJnoiMyVHUCV5O29GaW83JCQiM2FtbW1eUTQwcUZpbyQiMy9TOHNURWJycEZpbzckJCIzeSoqKioqKnpdcmZyRmlvJCIzJHokPkAyJ29QNihGaW83JCQiM2dtbW1jJUdwTChGaW8kIjNhUXdzX1R3d3NGaW83JCQiMy9MTEw4LVYmXChGaW8kIjMlUSkzczYkXERVKEZpbzckJCIzPSsrK1hoVWt3RmlvJCIzJ3kkKlF6cCcpemQoRmlvNyQkIjM9KysrOm88RXlGaW8kIjMxKj44KjQsd0V4RmlvNyRGRSQiM1kheXcpZXVqJyl5RmlvLSUmQ09MT1JHNiYlJFJHQkckRkhGMCRGKkYwRmldbC0lK0FYRVNMQUJFTFNHNiRRInZGTlEhRk4tJSVWSUVXRzYkO0ZpXWwkIiMhKUYwOyQiLFYoNFohUiQhIzYkIi4yXC9WKj01RmhebA==</Plot></Text-field></Output></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">I<Font size="16">n the previous example, the default curve used to fit the points is a linear polynomial <Font italic="true">av+b</Font> with parameters <Font italic="true">a</Font> and <Font italic="true">b</Font>.  The LeastSquares function allows you to provide a different type of curve and to specify the parameters to optimize.   In addition, weights associated with the data points can be defined.  See the </Font><Hyperlink bold="false" executable="false" family="Times New Roman" italic="false" linktarget="Help:CurveFitting[LeastSquares]" size="16" style="Hyperlink">LeastSquares</Hyperlink><Font size="16"> help page for more details about these options.</Font></Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal"><Font size="16">The <Font bold="true">LeastSquares</Font> function requires that the model curve be linear in the parameters.  In some cases, a nonlinear model can be transformed to allow a least-squares fit.  For example, if you wish to use the model </Font></Text-field><Text-field alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">w</Font><Font bold="false" italic="false" size="16" style="2D Math" underline="false">=</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">a</Font><Font bold="false" italic="false" size="16" style="2D Math" underline="false">*exp(</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">b</Font><Font bold="false" italic="false" size="16" style="2D Math" underline="false">*</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">v</Font><Font bold="false" italic="false" size="16" style="2D Math" underline="false">),</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false"> </Font></Text-field><Text-field layout="Normal" style="Normal"><Font size="16">you can take the logarithm of both sides of the equation and apply the transformation </Font></Text-field><Text-field alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">{</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">y</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">=log(</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">w</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">), </Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">c</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">=log(</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">a</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">)}</Font></Text-field><Text-field layout="Normal" style="Normal"><Font size="16"> to obtain the model</Font></Text-field><Text-field alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false"> </Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">y</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">=</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">c</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">+</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">b</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">*</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="true" size="16" underline="false">v</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="16" underline="false">, </Font></Text-field><Text-field layout="Normal" style="Normal"><Font size="16">which is linear in the parameters <Font italic="true">c</Font> and <Font italic="true">b</Font>.</Font></Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">newpoints1 := map(x-&gt;[x[1],evalf(log(x[2]))], points1);
newlscurve := LeastSquares(newpoints1,v);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SStuZXdwb2ludHMxRzYiNyo3JCIiISRGKEYoNyQiIiIkIis+dCFIOyohIzU3JCIiJCQiK0g3NEgkKUYuNyQkIiNVISIiJCIrN3pWNDshIio3JCIiJiQiK29Id183Rjk3JCQiI2VGNiQiK0RYM045Rjk3JCIiKCQiK1wsImYlPkY5NyQiIikkIiskNCZlLUJGOQ==</Equation></Text-field><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SStuZXdsc2N1cnZlRzYiLCYkIiskNG5RdSMhIzUiIiJJInZHRiUkIjNPaXUvYic+QlEjISM9</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">This result gives values for <Font italic="true">c</Font> and <Font italic="true">b</Font>.  The following commands show the resulting plot, after transforming back to the original model.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" underline="false">a := exp(coeff(newlscurve,v,0));
b := coeff(newlscurve,v,1);
newlsplot := plot(a*exp(b*v),v=0..8):
display([pntplot1,newlsplot]);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSJhRzYiJCIrMU5zOjghIio=</Equation></Text-field><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSJiRzYiJCIzT2l1L2InPkJRIyEjPQ==</Equation></Text-field></Output><Output><Text-field layout="Maple Plot"><Plot height="400" plot-scale="1.0" plot-xtrans="0.0" plot-ytrans="0.0" type="two-dimensional" width="400">LSUlUExPVEc2Ji0lJ1BPSU5UU0c2LDckJCIiIUYqJCIiIkYqNyRGKyQiI0QhIiI3JCQiIiRGKiQiI0JGMDckJCIjVUYwJCIiJkYqNyRGOSQiI05GMDckJCIjZUYwRjc3JCQiIihGKkZCNyQkIiIpRiokIiM1RiotSSdTWU1CT0xHNiRJKnByb3RlY3RlZEdGTEkoX3N5c2xpYkc2IjYjSSRCT1hHRkstRko2JEZQRkgtJSdDVVJWRVNHNiQ3UzckRikkIjM1KysrMU5zOjghIzw3JCQiM0VMTExMQnhWPCEjPSQiMy9tJio0InpLOlAiRlo3JCQiM3ltbW07JD41RSRGaG4kIjMlR11QMmk5P1UiRlo3JCQiM01MTExMQUtuXEZobiQiM3VTJm9aKCk0NVsiRlo3JCQiMz1MTExMYyRcbydGaG4kIjNDbEM+ViRvR2EiRlo3JCQiMyllbW1tXiZRJVIpRmhuJCIzVGxMT1N6KnBnIkZaNyQkIjN3S0xMJFFrI3oqKkZobiQiM11kOS54SiQpbztGWjckJCIzKSkqKioqKlxZSj87IkZaJCIzKHkhRz5UJW9gdCJGWjckJCIzP0xMTD0iXDxMIkZaJCIzcndAJDQjNChwIT1GWjckJCIzIikqKioqKlxbQTRdIkZaJCIzMTtWSjdRRyIpPUZaNyQkIjN3bW1tJzNRXG4iRlokIjNrdHZCR08iNCc+Rlo3JCQiM09MTExCNkBHPUZaJCIzZjxsJ0d6UVEuI0ZaNyQkIjMmKSoqKioqKmYtdys/RlokIjNpeSRIZ1AmPT5ARlo3JCQiMyUqKioqKioqKip5LHVARlokIjNQXXM0PWhbM0FGWjckJCIzKSoqKioqKipSUCk0TSNGWiQiM0kkZj1NcC0iKUgjRlo3JCQiM0lMTEw9WmcjXCNGWiQiM11PYT8oeUhFUSNGWjckJCIzY21tbUVuKkduI0ZaJCIzK0FdUFZrPihbI0ZaNyQkIjNUbW1tMXhpREdGWiQiM2FWdllLMU96REZaNyQkIjMhKSoqKioqXDkhSC5JRlokIjN1YXglKjRdKDNwI0ZaNyQkIjNJbW1tMTpiZ0pGWiQiMydRMmthMCtPeiNGWjckJCIzPCsrK1hANExMRlokIjMpcGBXTyRHIzMiSEZaNyQkIjMxKysrTjtSKFwkRlokIjNLSGxORWMsRklGWjckJCIzd21tbTs0IylvT0ZaJCIzWSpcTmYleT5gSkZaNyQkIjNqbW1tNmxDRVFGWiQiM2luUDAtLnF0S0ZaNyQkIjNFTExMJEdeZypSRlokIjN0USU9aTlZKTNNRlo3JCQiM29LTEw9MlZzVEZaJCIzSTJhKD46Tl5iJEZaNyQkIjNmKioqKipcYHBmSyVGWiQiMzMlNFghND5lKG8kRlo3JCQiMyFITExMbSZ6IlwlRlokIjNMTSdvKEdmPE9RRlo3JCQiM3MqKioqKip6LTZqWUZaJCIzW15lSUIiemYqUkZaNyQkIjM8KioqKioqNCMzMiRbRlokIjM/Nz0+IkhiKGVURlo3JCQiM08qKioqKlwjeSdHKlxGWiQiM1pgKzgkSGVESyVGWjckJCIzRyoqKioqKkglPUg8JkZaJCIzZylwbHdDLj9eJUZaNyQkIjM1bW1tMT5xTWBGWiQiM11Rc1goZSpIKm8lRlo3JCQiMyUpKioqKioqKkhTdV0mRlokIjMhPmdObE8pSCcpW0ZaNyQkIjMnSExMJGVwJ1JtJkZaJCIzdykqKW9vZ1k+MiZGWjckJCIzJykqKioqKipSPjROZUZaJCIzT29FXysmKilIRyZGWjckJCIzI2VtbTtAMmgqZkZaJCIzJ2U8anJedyYqWyZGWjckJCIzXSoqKioqXGM5VzsnRlokIjNdIykpUUQsZ1RyJkZaNyQkIjNMbW1tbWQnKkdqRlokIjMkemVyNVE2RSVmRlo3JCQiM2oqKioqKlxpTjddJ0ZaJCIzK0YpXF4qNGQiPidGWjckJCIzYUxMTHQ+Om5tRlokIjMsUCopKipwTz9Ua0ZaNyQkIjM1TExMLmEjbyRvRlokIjMpM15iXFcscHEnRlo3JCQiM2FtbW1eUTQwcUZaJCIzcUgnKioqKTNBNylwRlo3JCQiM3kqKioqKip6XXJmckZaJCIzX2pNIWVVdkpDKEZaNyQkIjNnbW1tYyVHcEwoRlokIjMneU8hZWZQXmJ2Rlo3JCQiMy9MTEw4LVYmXChGWiQiMys4b3VXaUVZeUZaNyQkIjM9KysrWGhVa3dGWiQiM0UnUlgiM1JnbyIpRlo3JCQiMz0rKys6bzxFeUZaJCIzb1kqbyNHeF4qWylGWjckRkUkIjNRN0BsYjZYWykpRlotJSZDT0xPUkc2JiUkUkdCRyRGSEYwJEYqRjBGaV1sLSUrQVhFU0xBQkVMU0c2JFEidkZOUSFGTi0lJVZJRVdHNiQ7RmldbCQiIyEpRjA7JCIxLSsrKysrKyMpISM7JCIlPTUhIiM=</Plot></Text-field></Output></Group></Section><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group></Section><Section><Title><Text-field layout="Heading 3" style="Heading 3"><Font italic="true" style="Heading 2">The Optimization Package</Font></Text-field></Title><Group><Input><Text-field alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/></Input></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The </Font><Font background="[0,0,0]" bold="true" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Optimization</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false"> package provides commands to find the minimum or maximum of various types of functions subject to various types of constraints.  This worksheet provides a few basic examples of each type of problem the package is capable of solving.  Further information can be found on the help pages for the package and each of the individual package members.<Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">
<Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">
In this worksheet, we will be minimizing a function (referred to as the objective function) subject to a number of constraints.  Certain maximize examples are included as well.  In any of the examples, the maximize option can be added to the command to find the maximum instead of the minimum.  <Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">
<Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">
Also note that in each case we are only finding a locally optimal value.  </Font></Font></Font></Font></Font></Text-field></Input></Group><Section><Title><Text-field firstindent="0.0" layout="Heading 3" leftmargin="0.0" linebreak="space" rightmargin="0.0" style="Heading 3"><Font executable="false" foreground="[0,0,0]" underline="false">Introduction to the Optimization Package</Font></Text-field></Title><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">restart;</Font></Text-field></Input></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The following command allows you to use the short form of the command names in the </Font><Font background="[0,0,0]" bold="true" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Optimization</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false"> package.  </Font></Text-field></Input></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">with(Optimization); with(plots):</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM3KkkqSW1wb3J0TVBTRzYiSSxJbnRlcmFjdGl2ZUdGJUkoTFBTb2x2ZUdGJUkoTFNTb2x2ZUdGJUkpTWF4aW1pemVHRiVJKU1pbmltaXplR0YlSSlOTFBTb2x2ZUdGJUkoUVBTb2x2ZUdGJQ==</Equation></Text-field><Text-field layout="Warning" style="Warning">Warning, the name changecoords has been redefined</Text-field></Output></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The commands in the </Font><Font background="[0,0,0]" bold="true" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Optimization</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false"> package allow you to specify the objective function and the constraints in several different ways.  This worksheet deals with the algebraic form of the objective function and constraints.  The other forms are </Font><Hyperlink bold="false" executable="false" italic="false" linktarget="Help:examples/OptimizationMatrixForm" style="Hyperlink">Matrix form</Hyperlink><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false"> and procedure form where Matrix form is covered in a separate example worksheet.</Font></Text-field></Input></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">In general, an optimization problem is of the form</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/></Input><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The </Font><Font background="[0,0,0]" bold="true" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Optimization</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false"> package handles several types of objective and constraint functions.  Each type of problem is a subtype of the next one.</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Objective Function/Constraint/Command</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Linear/Linear/LPSolve</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Quadratic/Linear/QPSolve</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Nonlinear(General)/Nonlinear(General)/NLPSolve</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">
There is also a minimize command that will attempt to automatically select the best algorithm for a given problem.<Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">
<Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">
In addition, there is a command, </Font></Font></Font><Font background="[0,0,0]" bold="true" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">LSSolve,</Font><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false"> which minimizes functions of the form</Font></Text-field><Text-field alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Equation input-equation="f(x)=1/2*Sum((r[i](x))^2,i=1..n)" style="2D Comment">NiMvLSUiZkc2IyUieEcqKCIiIkYpIiIjISIiLSUkU3VtRzYkKiQtJiUickc2IyUiaUdGJkYqL0Y0O0YpJSJuR0Yp</Equation></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/></Input></Group></Section><Section><Title><Text-field firstindent="0.0" layout="Heading 3" leftmargin="0.0" linebreak="space" rightmargin="0.0" style="Heading 3"><Font executable="false" foreground="[0,0,0]" underline="false">Linear Programming Example 1</Font></Text-field></Title><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">For a first example, we have a simplex two dimensional linear programming problem.</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/></Input><Input><Text-field alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">subject to</Font></Text-field></Input></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">obj := -2*x-y; </Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSRvYmpHNiIsJkkieEdGJSEiI0kieUdGJSEiIg==</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input">cnsts := [y&lt;=4*x+1/2,y&lt;=-5*x+2,x&gt;=0,y&gt;=0];</Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSZjbnN0c0c2IjcmMUkieUdGJSwmSSJ4R0YlIiIlIyIiIiIiI0YtMUYoLCZGKiEiJkYuRi0xIiIhRioxRjNGKA==</Equation></Text-field></Output></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The plot below shows the feasible region in yellow, the contours of the objective function, and the optimal solution as a green circle.</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">p1 := inequal(cnsts, x=-0.5..2, y=-0.5..2, optionsexcluded=(colour=white), optionsfeasible=(colour=yellow)):<Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">
p2 := contourplot(obj, x=-0.5..2, y=-0.5..2):<Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">
p3 := pointplot({[0.1666,1.166]}, symbolsize=13, colour=green):<Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">
display(p1, p2, p3);</Font></Font></Font></Font></Text-field></Input><Output><Text-field layout="Maple Plot"><Plot height="400" plot-scale="1.0" plot-xtrans="0.0" plot-ytrans="0.0" type="two-dimensional" width="400">LSUlUExPVEc2Ly0lKVBPTFlHT05TRzYoNyY3JCQhIiYhIiJGKjckRiokIiIjIiIhNyQkIjArKysrKyt2JCEjOkYuNyQkITArKysrKytdI0Y0JCEwKysrKysrKyZGNDcmNyQkRjBGMEYuNyRGLkYuNyRGLkYqNyQkIjArKysrKysrJkY0Rjg3JkYpRi1GOzckRjxGODcmRik3JEY4Rjw3JEYuRjxGPi0lJkNPTE9SRzYmJSRSR0JHJCIjNUYsRktGSy0lJlNUWUxFRzYjJSxQQVRDSE5PR1JJREctRiY2JTcnRilGLUY9Rj5GKS1GSDYmRkpGS0ZLJEYwRixGTS0lJ0NVUlZFU0c2KDckRjFGNTckRj9GOzckRjtGQzckRkZGRS0lKkxJTkVTVFlMRUc2IyIiIkZNLUZYNjQ3JDckJCEzQSsrKysrKytTISM9JCIzRCsrK1NMTEw4RmJvNyQkITMoKSoqKioqKkhMTExWRmJvJCIzIykqKioqKioqKioqKioqKj5GYm83JDckRmZvJCIzYSoqKioqKioqKioqKioqPkZibzckJCEzaysrK2dtbW1ZRmJvJCIzJyoqKioqKipmbW1tRUZibzckNyQkITNLKysrSUxMTFtGYm8kIjMpKSoqKioqKioqKioqKioqSEZib0ZecDckRmRwNyQkITMrKysrKysrK11GYm8kIjMiKSoqKioqKlJMTExMRmJvNyQ3JCQhM1UrKysrKysrSUZibyQhM2kiKioqKioqZm1tbSchIz43JCQhMzUrKytJTExMTEZibyQhM08iKkdjaHZidkYhI003JEZmcTckJCEzdSoqKioqKmZtbW1PRmJvJCIzaSIqKioqKipmbW1tJ0ZlcTckNyQkITMpKioqKioqKkhMTExRRmJvJCIydyoqKioqKioqKioqKioqKkZib0ZdcjckRmNyRl9vNyQ3JCQhM1ErKysrKysrP0ZibyQhMycpKSoqKioqZm1tbUVGYm83JCQhM3cqKioqKipITExMQkZibyQhMzUrKysrKysrP0ZibzckRl9zNyRGXXMkITNrLCsrU0xMTDhGYm83JDckJCEzbCoqKioqKkhMTExHRmJvJCEzSysrKysrKys1RmJvRmVzNyRGaXM3JEZhcSQhM0MhKioqKioqZm1tbSdGZXE3JDckRlx0JCEzXyoqKioqKmZtbW1ZRmJvNyQkITMpKioqKioqKkhMTEw4RmJvRmBvNyRGZnQ3JCQhMzMqKioqKipmbW1tO0ZibyQhM1ssKytTTExMTEZibzckNyQkITMoKSoqKioqKkhMTEw9RmJvRmFxRmp0NyQ3JCQhM2cqKioqKipITExMPUZib0ZhcTckRmJzRl1zNyQ3JCQhMyY0KysrSUxMTClGZXFGW3FGY3QtRkg2JkZKRkskIjFzTyw5Iik0WCgpISM7RlYtRlg2RDckNyRGYG8kIjNNKysrcW1tbScqRmJvNyQkITNdKioqKipcbW1tOyVGYm8kIjIpKSoqKioqKioqKioqKioqKiEjPDckRmd2NyQkITN3KSoqKioqSExMTFZGYm8kIjMmKSoqKioqSExMTC4iRlx3NyQ3JCQhM1EqKioqKlxtbW1tJUZibyQiMycpKioqKioqKioqKioqKjQiRlx3Rl53NyQ3JCQhMyMpKSoqKipcbW1tbSVGYm9GZ3c3JEZbcSQiMzUrKytubW1tNkZcdzckNyRGYXEkIjMhMysrK25tbW0oRmJvNyQkITNzKioqKipcbW1tOyRGYm8kIjNLKioqKioqKioqKioqKip6RmJvNyRGZHg3JCQhMykqKSoqKioqSExMTExGYm8kIjMoeSoqKioqSExMTCQpRmJvNyQ3JCQhM2cqKioqKlxtbW1tJEZibyQiMzcqKioqKioqKioqKioqKiopRmJvRmp4NyQ3JCQhMzEqKioqKlxtbW1tJEZib0ZjeTckRmBvJCIzQyoqKioqKnBtbW0nKkZibzckNyRGW3MkIjM3KysrcW1tbWNGYm83JCQhMyUqKioqKipcbW1tOyNGYm8kIjMpMysrKysrKysnRmJvNyQ3JEZheiQiM3cqKioqKioqKioqKioqKmZGYm83JCQhM0AqKioqKipITExMQkZibyQiM0spKioqKipITExMakZibzckNyQkITMjKSoqKioqXG1tbW0jRmJvJCIzYSoqKioqKioqKioqKioqcEZib0ZpejckRl9bbDckRmFxJCIzbyoqKioqKnBtbW13RmJvNyQ3JEZcdCQiM2UrKytxbW1tT0ZibzckJCEzOysrK2xtbW02RmJvJCIzQSsrKysrKytTRmJvNyRGXFxsNyRGZ3QkIjMoKSoqKioqKkhMTExWRmJvNyQ3JCQhMy8rKytsbW1tO0ZibyQiMysrKysrKysrXUZib0ZiXGw3JEZmXGw3JCQhM20rKysrKysrP0Zib0ZeejckNyRGaXEkIjNZKysrcW1tbTtGYm83JCQhMysrKytdbW1tO0ZlcUZobzckRmNdbDckJCEzPygqKioqKipITExMJEZlcSQiM0AqKioqKipITExMQkZibzckNyQkITNLLCsrXW1tbW1GZXFGZ3BGZ11sNyQ3JEZeXmwkIjNVKysrKysrK0lGYm9GaVtsNyQ3JEZmckZoXWw3JCQiMyM0KysrTkxMTClGZXFGaXE3JEZmXmw3JCQiM28tKysrbm1tbUZlcSQiMyc0KioqKioqSExMTCRGZXE3JDckJCIzJioqKioqKipcTExMTEZlcUZmckZqXmw3JDckJCIzaysrK11MTExMRmVxRmZyRmBdbDckNyRGaG9GYHM3JCQiMywrKytOTExMPUZib0ZbczckNyQkIjNIKysrTkxMTD1GYm9GXV1sNyRGYV1sJCEzLSwrK3FtbW07RmJvNyQ3JCQiMzcrKytOTExMOEZib0ZcdEZgYGw3JDckJCIzUysrK05MTEw4RmJvJCEzWSsrKysrKys1RmJvNyRGZnIkITNeJyoqKioqKkhMTEwkRmVxNyQ3JEZncEZmbzckJCIzMSsrK05MTExHRmJvRmBvNyRGYmFsNyQkIjNDKysrcW1tbUVGYm8kITM5LCsrcW1tbU9GYm83JDckJCIzPCsrK05MTExCRmJvRmFxRmZhbDckNyQkIjNYKysrTkxMTEJGYm9GYXE3JCQiMzUrKysrKysrP0Zib0ZgczckNyQkIjMmKioqKioqXExMTEwkRmJvRltxRmFhbC1GSDYmRkpGSyQiMVd0LUdpPiFcKEZgdkZWLUZYNjw3JDckRmBvJCIzWysrKysrKys9Rlx3NyQkITMpRysrKysrK10lRmJvJCIzYysrKysrKys+Rlx3NyRGZGNsNyRGW3EkIjNXKysrKysrKz9GXHc3JDckRmFxJCIzSSsrKysrKys7Rlx3NyQkITMpPisrKysrK10kRmJvJCIzUSsrKysrKys8Rlx3NyRGYWRsRmFjbDckNyRGW3MkIjM3KysrKysrKzlGXHc3JCQhMzUsKysrKysrREZibyQiM0ErKysrKysrOkZcdzckRltlbEZeZGw3JDckRlx0JCIzJSoqKioqKioqKioqKioqPiJGXHc3JCQhM0ErKysrKysrOkZibyQiMy8rKysrKysrOEZcdzckRmVlbEZoZGw3JDckRmlxRmp2NyQkITN1JSoqKioqKioqKioqKipcRmVxJCIzMysrKysrKys2Rlx3NyQ3JCQhM1UmKioqKioqKioqKioqKlxGZXFGZ3dGYmVsNyQ3JEZmckZneDckJCIzMS4rKysrKytdRmVxRmN5NyRGaGZsRlxmbDckNyRGaG9GZ3o3JCRGX2VsRmJvRmJbbDckRl5nbEZnZmw3JDckRmdwRl9cbDckJCIzKysrKysrKytERmJvRmlcbDckRmNnbEZdZ2w3JDckRl9cbEZobzckJCIzdyoqKioqKioqKioqKipcJEZib0ZncDckRmlnbEZiZ2w3JDckRmlcbEZpcTckJCIzYSoqKioqKioqKioqKipcJUZib0ZmcjckRl9obEZoZ2w3JDckRmd6RltzNyQkIjNVKysrKysrK2JGYm9GXHQ3JEZlaGxGXmhsNyQ3JEZiW2xGYG83JCQiM0ErKysrKysrbEZib0ZhcTckRltpbEZkaGw3JDckJCIzKysrKysrKyt2RmJvRltxRmpobC1GSDYmRkpGSyQiMTs1L1VWSE5pRmB2RlYtRlg2VTckNyRGaXEkIjMpKioqKioqUkxMTCQ9Rlx3NyQkITNHTCsrK0xMTExGZXEkIjN5KysrKysrKz5GXHc3JDckJCEzKVIuKytJTExMJEZlcUZnY2w3JCQhM2VUKysrbW1tbUZlcSQiMyc0KytnbW1tJz5GXHc3JDckJCEzZzwrKytMTEwkKUZlcUZbZGxGZmpsNyQ3JEZmciQiMy4rKytNTExMO0ZcdzckJCIzM3oqKioqKnBtbW0nRmVxJCIzZysrKysrKys8Rlx3NyQ3JCQiM3F4KioqKipwbW1tJ0ZlcUZkZGw3JCQiM21dKioqKipSTExMJEZlcSQiMyssKyttbW1tPEZcdzckNyQkIjMnPSgqKioqKnBtbW0iRmVxRmJjbEZcXG03JDckJCIzP3MqKioqKnBtbW0iRmVxJCIzcSsrKysrKys9Rlx3NyRGaXEkIjN3KioqKipSTExMJD1GXHc3JDckRmRibCQiMzIrKytNTExMOUZcdzckJCIzMyoqKioqKnBtbW07RmJvJCIzVysrKysrKys6Rlx3NyQ3JCQiMyEpKSoqKioqcG1tbTtGYm9GXmVsNyQkIjNbKCoqKioqUkxMTDhGYm8kIjNnKysrbW1tbTpGXHc3JDckJCIzQSkqKioqKnBtbW02RmJvJCIzXysrKysrKys7Rlx3RltebTckNyRGYl5tRl9kbEZgW203JDckRmdwJCIzNysrK01MTEw3Rlx3NyRGZ2FsJCIzRSsrKysrKys4Rlx3NyQ3JEZnYWxGaGVsNyQkIjNbKioqKioqUkxMTEJGYm8kIjM/KysrbW1tbThGXHc3JDckJCIzXyoqKioqKnBtbW1ARmJvRmlkbEZhX203JEZnX203JEZobyQiMyYpKioqKipSTExMViJGXHc3JDckRl9cbCQiMyUqKioqKipSTExMLiJGXHc3JEZqW2xGZ3c3JEZiYG03JCQiMyM0KysrTUxMTCRGYm8kIjMhKSoqKioqZm1tbTsiRlx3NyQ3JCQiM28rKytxbW1tSkZib0ZjZWxGZGBtNyQ3JCQiMzcrKytxbW1tSkZib0ZjZWxGaV5tNyQ3JEZpXGwkIjMjNCsrK01MTEwpRmJvNyQkIjNNKysrcW1tbVlGYm9GY3k3JEZlYW03JCQiM0UsKytTTExMVkZibyQiM0koKioqKipmbW1tJypGYm83JDckJCIzLSwrK3FtbW1URmJvRmp2RmlhbTckNyRGYGJtJCIyeSoqKioqKioqKioqKioqKkZcdzckJCIzbSoqKioqKioqKioqKioqUkZib0ZgYG03JDckRmd6JCIzTywrK1NMTExqRmJvNyRGXnpGYltsNyRGXWNtNyQkIjNmLCsrU0xMTGBGYm8kIjMnKSkqKioqKmZtbW13RmJvNyQ3JCQiMyEzKysrbm1tOyZGYm9GZ3hGX2NtNyRGZWNtNyRGaVxsJCIzIikqKioqKipSTExMJClGYm83JDckRmJbbEZqYW03JCQiMyEqKioqKioqcG1tbW1GYm9GaVxsNyRGXmRtNyRGW2NtJCIzSSoqKioqKmZtbW1jRmJvNyQ3JCQiM2UrKytxbW1taEZib0ZnekZiZG03JEZmZG03JEZneiQiM0QrKytTTExMakZibzckNyQkIjNVKysrKysrKyEpRmJvJCIzOSwrK1NMTExCRmJvNyRGZltsRmdwNyRGY2VtNyQkIjM5LCsrU0xMTHRGYm8kIjNrKSoqKioqZm1tbU9GYm83JDckJCIzTSsrK3FtbW1yRmJvRl9cbEZlZW03JEZbZm03JEZiW2wkIjNxKysrU0xMTFZGYm83JDckRmN5JCIzazQrKytNTExMRmVxNyQkIjNZKioqKioqcG1tbScpRmJvRmZyNyQ3JCQiM2UrKytxbW1tJylGYm9GZnI3JEZjYW0kIjNfKSoqKioqZm1tbTtGYm83JDckJCIzNysrK3FtbW0iKUZib0Zob0ZdZ203JEZhZ203JEZneEZhZW03JDckRmRibSQhM0MpKioqKipmbW1tO0ZibzckRmV2Rlx0NyQ3JEZqeUZcdDckJCIzcSsrK1NMTEwkKkZibyQhM19CKysrTUxMTEZlcTckNyQkIjMhKioqKioqKnBtbW0iKkZib0ZpcUZdaG03JEZjaG03JEZjeSQiM0w1KysrTUxMTEZlcTckNyRGZ3ckITNrKSoqKioqZm1tbU9GYm83JCQiMy0rKytubW1tNUZcd0ZhcTckRl5pbTckRmBgbSQhM0QtKytTTExMQkZibzckNyQkIjMoKioqKioqcG1tbSwiRlx3RltzRmJpbTckNyRGZ2ltRl1dbEZnZ203JDckRl54RltxNyQkIjMuKysrTUxMTDZGXHckITNFLCsrU0xMTFZGYm83JDckJCIzJSkqKioqKnBtbW02IkZcd0Zgb0Zdam03JEZjam1GW2ltLUZINiZGSkZLJCIwdyIqKlIiMyc+XUY0RlYtRlg2VTckNyRGZ2JtJCIzaSoqKioqcG1tbSc9Rlx3NyQkIjNeJyoqKipcTExMJFFGYm9GZ2NsNyQ3JEZiW25GYGpsNyQkIjMhRyoqKioqcG1tbU9GYm8kIjM1LCsrTExMTD5GXHc3JDckJCIzMicqKioqXExMTEwkRmJvRltkbEZmW243JDckRmlcbCQiMzUrKytubW1tO0ZcdzckJCIzXikqKioqXExMTCRbRmJvRmRkbDckRmNcbjckJCIzIWYqKioqKnBtbW1ZRmJvJCIzIzQrK0lMTEx0IkZcdzckNyQkIjNTJyoqKipcTExMTCVGYm9GYmNsRmdcbjckNyQkIjMmZSoqKipcTExMTCVGYm8kIjNFKysrKysrKz1GXHc3JEZfXGwkIjMlKSoqKioqcG1tbSc9Rlx3NyQ3JEZneiQiM3EqKioqKnBtbW1ZIkZcdzckJCIzSCkqKioqXExMTCRlRmJvRl5lbDckNyQkIjNTKioqKipcTExMJGVGYm9GXmVsNyQkIjNvJioqKioqcG1tbWNGYm8kIjN1KysrTExMTDpGXHc3JDckJCIzdCcqKioqXExMTEwmRmJvJCIzMysrKysrKys7Rlx3RmRebjckRmpebjckRmlcbCQiMykpKioqKipwbW1tbSJGXHc3JDckRmJbbCQiMykqKioqKipwbW1tRSJGXHc3JCQiMzIpKioqKlxMTEwkb0Zib0ZoZWw3JEZnX243JCQiM2UnKioqKipwbW1tbUZibyQiMzcrKytMTExMOEZcdzckNyQkIjN0KSoqKipcTExMTCdGYm9GaWRsRltgbjckRmFgbjckRmd6JCIzIyoqKioqKnBtbW1ZIkZcdzckNyRGZ3hGX2ltNyQkIjMmKikqKioqXExMTCR5RmJvRmd3NyRGamBuNyRGYngkIjNzKioqKipITExMOCJGXHc3JDckJCIzdCsrK05MTEx0RmJvRmNlbEZeYW43JEZiYW5GZF9uNyQ3JEZjeUZbZ203JCQiMyUpKioqKipcTExMJCkpRmJvRmN5NyRGaGFuNyRGW2dtJCIzYScqKioqKkhMTEwkKkZibzckNyQkIjNeKysrTkxMTCQpRmJvRmRibUZcYm43JDckJCIzUyoqKioqXExMTEwpRmJvRmRibTckRl9lbUZfaW03JDckRmRibSQiMy0sKytxbW1tbUZibzckJCIzaSoqKioqXExMTCQpKkZib0ZiW2w3JEZcY243JEZqeSQiMzUpKioqKipITExMdEZibzckNyQkIjNIKysrTkxMTCQqRmJvRl9lbUZgY243JDckJCIzPSoqKioqXExMTEwqRmJvRmd4RmdhbjckNyRGZ3ckIjNZLCsrcW1tbVlGYm83JCQiMyUqKioqKlxMTEwkMyJGXHdGaVxsNyRGX2RuNyRGX2ltJCIzYSkqKioqKkhMTExgRmJvNyQ3JCQiMyEqKioqKlxMTExMNUZcd0ZnekZjZG43JEZnZG5GaWJuNyQ3JEZjZWxGZ2FsNyQkIjMtKytdTExMJD0iRlx3RmdwNyRGXWVuNyRGXngkIjMoeSoqKioqSExMTExGYm83JDckJCIzKioqKioqXExMTEw2Rlx3Rl9cbEZhZW43JDckRmZlbkZnYm1GXGRuNyQ3JCQiMyMpKioqKioqKioqKioqKkgiRlx3JCIzT3AqKioqKnBtbW0nRmVxNyQkIjMhKioqKipcTExMJEciRlx3RmZyNyRGYGZuNyQkIjNfKioqKipwbW1tRSJGXHckIjNbLSsrSUxMTDhGYm83JDckJCIzJikqKioqXExMTEw3Rlx3RmRibEZkZm43JDckRltnbkZob0ZcZW43JDckJCIzISoqKioqKioqKioqKioqUiJGXHckITMvLisrSUxMTDhGYm83JCQiMykqKioqKlxMTEwkUSJGXHdGXHQ3JEZlZ243JCQiM2kqKioqKnBtbW1PIkZcdyQhM0l3KioqKipwbW1tJ0ZlcTckNyQkIjMlKioqKipcTExMTDhGXHdGaXFGaWduNyQ3JCQiM3MqKioqXExMTEw4Rlx3RmlxNyRGaGVsJCIzd3EqKioqKnBtbW0nRmVxNyQ3JEZeZWwkITNhLysrSUxMTExGYm83JCQiMzMrK11MTEwkWyJGXHckITMpKSoqKioqKioqKioqKioqSEZibzckNyRGXmluRmFxNyRGW15uJCEzWSgqKioqKnBtbW1FRmJvNyQ3JCQiMy4rK11MTExMOUZcd0Zbc0ZkaW43JDckJCIzIikqKioqXExMTEw5Rlx3RmJzNyRGaWRsRmNnbjckNyQkIjMlKioqKipcTExMJGUiRlx3RltxNyQkIjNNKioqKipwbW1tYyJGXHckITNlIyoqKioqcG1tbVlGYm83JDckJCIzISoqKioqXExMTEw6Rlx3RmBvRmRqbjckNyRGW1tvJCEzbSoqKioqKioqKioqKioqUkZibzckJCIzKysrKysrKys6Rlx3Rltpbi1GSDYmRkpGSyQiMiEzQSlmJmZxa1BGXHdGVi1GWDY8NyQ3JEZneEZnY2w3JCQiM3koKioqKioqKioqKioqXChGYm9GW2RsNyQ3JEZjeUZkZGw3JCQiM1cnKioqKioqKioqKioqXClGYm9GYmNsNyRGYVxvRltcbzckNyRGanZGXmVsNyQkIjNLKCoqKioqKioqKioqKlwqRmJvRl9kbDckRmdcb0ZgXG83JDckRmd3RmhlbDckJCIzLysrKysrK101Rlx3RmlkbDckRl1db0ZmXG83JDckRmNlbEZndzckJCIzOSsrKysrK102Rlx3RmNlbDckRmNdb0ZcXW83JDckRmhlbEZjeTckJCIzKysrKysrK103Rlx3Rmp2NyRGaV1vRmJdbzckNyRGaWRsRmJbbDckJCIzMysrKysrK104Rlx3Rmd4NyRGX15vRmhdbzckNyRGXmVsRmlcbDckJCIzJyoqKioqKioqKioqKipcOUZcd0ZnejckRmVeb0ZeXm83JDckRl9kbEZncDckJCIzLysrKysrK106Rlx3Rl9cbDckRltfb0ZkXm83JDckRmRkbEZmcjckJCIzIyoqKioqKioqKioqKipcO0Zcd0ZobzckRmFfb0ZqXm83JDckRmJjbEZcdDckJCIzKysrKysrK108Rlx3RmlxNyRGZ19vRmBfbzckNyRGZ2NsRmFxNyQkIjMzKysrKysrXT1GXHdGW3M3JEZdYG9GZl9vNyQ3JEZbZGxGW3E3JCQiMycqKioqKioqKioqKioqXD5GXHdGYG83JEZjYG9GXGBvLUZINiZGSkZLJCIwKWUqKnBTISk0REY0RlYtRlg2RDckNyRGY2VsJCIzdyoqKioqSExMTCQ+Rlx3NyQkIjNpKioqKlxtbW1tNkZcd0YuNyQ3JEZoZWwkIjNmKioqKipITExMdCJGXHc3JCQiM1sqKioqXG1tbW03Rlx3RmRdbjckNyQkIjNxKioqKlxtbW1tN0Zcd0ZiY2w3JCQiMzoqKioqKkhMTExCIkZcdyQiM1EsKytubW1tPUZcdzckNyQkIjNXKioqKlxtbW07N0Zcd0ZgamxGX2JvNyQ3JEZmYm9GZ2NsRl5hbzckNyRGaWRsJCIzVCoqKioqSExMTGAiRlx3NyQkIjNjKioqKlxtbW1tOEZcd0ZdX243JDckJCIzISkqKioqXG1tbW04Rlx3Rl9kbDckJCIzQioqKioqSExMTEwiRlx3JCIzPywrK25tbW07Rlx3NyQ3JCQiM2AqKioqXG1tbTs4Rlx3RmZbbUZlY283JDckRlxkb0ZkZGw3JEZdX21GZmFvNyQ3JEZiW29GZmNvNyQkIjNtKioqKlxtbW1tOUZcd0ZhZ243JDckJCIzKSkqKioqXG1tbW05Rlx3RmlkbDckJCIzSyoqKioqSExMTFYiRlx3JCIzLywrK25tbW05Rlx3NyQ3JCQiM2gqKioqXG1tbTs5Rlx3Rl5lbEZqZG83JEZgZW83JCQiM00rKysrKysrOUZcd0ZcY283JDckRmRebSQiMzEqKioqKkhMTEw4IkZcdzckJCIzdSoqKipcbW1tbTpGXHdGY2VsNyQ3JCQiMykqKioqKlxtbW1tOkZcd0ZjZWw3JEZcY28kIjMnMysrcW1tbUUiRlx3NyQ3JCQiMyQqKioqKlxtbW07OkZcd0ZoZWxGYmZvNyQ3JCQiM3IqKioqXG1tbTs6Rlx3RmhlbDckRl5lbEZmY283JDckRmRkbCQiM3gpKSoqKipITExMJCpGYm83JCQiMyUpKioqKlxtbW1tO0Zcd0ZkYm03JDckJCIzMSsrXW1tbW07Rlx3RmRibTckJCIzXSoqKioqSExMTGoiRlx3JCIzbysrK25tbW01Rlx3NyQ3JCQiMy0rK11tbW07O0Zcd0Znd0ZpZ283JDckJCIzISkqKioqXG1tbTs7Rlx3Rmd3RmhlbzckNyRGaVxtJCIzKnApKioqKkhMTEx0RmJvNyQkIjNbKioqKlxtbW1tPEZcd0ZneDckNyQkIjNxKioqKlxtbW1tPEZcd0ZfZW03JCQiMzoqKioqKkhMTEx0IkZcdyQiM282KytxbW1tJylGYm83JDckJCIzNSsrXW1tbTs8Rlx3RmN5RmFpbzckNyQkIjMpKSoqKipcbW1tOzxGXHdGY3k3JEZmW20kIjMpKSopKioqKkhMTEwkKkZibzckNyQkIjNNKysrKysrKz5GXHckIjNXKCkqKioqSExMTGBGYm83JCQiM2MqKioqXG1tbW09Rlx3Rmd6NyQ3JCQiMyEpKioqKlxtbW1tPUZcd0ZnejckJCIzQioqKioqSExMTCQ9Rlx3JCIzNzcrK3FtbW1tRmJvNyQ3JCQiMz4rK11tbW07PUZcd0ZiW2xGXltwNyQ3JCQiMygqKioqKlxtbW07PUZcd0ZiW2xGZ2hvNyQ3JEZbZGwkIjMpeSkqKioqSExMTExGYm83JCQiM20qKioqXG1tbW0+Rlx3RmdibTckNyRGYFxwRl9cbDckJCIzSyoqKioqSExMTCQ+Rlx3JCIzYzcrK3FtbW1ZRmJvNyQ3JCQiMzErK11tbW07PkZcd0ZpXGxGZFxwNyRGalxwRmJqby1GSDYmRkpGSyQiMCV6KlwuLVxEIkY0RlYtRlg2NDckNyRGZF5tJCIzcSoqKioqcG1tbSc+Rlx3NyRGYmpuRltkbDckNyRGZlttJCIzXyoqKioqcG1tbXciRlx3NyQkIjMtKytdTExMJG8iRlx3RmJjbDckNyQkIjNDKytdTExMJG8iRlx3RmlcbTckJCIzbSoqKioqcG1tbW0iRlx3JCIzWCwrK0xMTEw9Rlx3NyQ3JCQiM3cqKioqXExMTEw7Rlx3RmdjbEZkXnA3JDckJCIzYSoqKipcTExMTDtGXHdGY2pvRmVdcDckNyRGYmNsJCIzYyoqKioqcG1tbWMiRlx3NyQkIjM3KytdTExMJHkiRlx3Rl9kbDckNyQkIjNNKytdTExMJHkiRlx3RmRebTckRltecCQiM0csKytMTExMO0ZcdzckNyQkIjMmKSoqKipcTExMTDxGXHdGZGRsRlxgcDckNyQkIjNqKioqKlxMTExMPEZcdyQiMzsrKysrKysrPEZcdzckRmRkbEZbXnA3JDckRmBqbCQiM1EqKioqKnBtbW1PIkZcdzckJCIzPysrXUxMTCQpPUZcd0ZpZGw3JDckJCIzVSsrXUxMTCQpPUZcd0ZpZGw3JEZnXW4kIjM1LCsrTExMTDlGXHc3JDckJCIzJSoqKioqXExMTEw9Rlx3Rl5lbEZlYXA3JDckJCIzcyoqKipcTExMTD1GXHdGYltvNyRGZF1uRmVqbjckNyRGW2RsJCIzVyoqKioqcG1tbTsiRlx3NyQkIjMzKytdTExMJCk+Rlx3RmNlbDckRmVicDckRmZdcCQiMyM0KytJTExMQiJGXHc3JDckJCIzRCsrXUxMTEw+Rlx3RmhlbEZpYnA3JDckRl5jcEZdX203JEZgamwkIjM7KioqKipwbW1tTyJGXHctRkg2JkZKRktGVkZWLSUnUE9JTlRTRzYnNyQkIiVtOyEiJSQiJW02ISIkLUknQ09MT1VSRzYkSSpwcm90ZWN0ZWRHRmRkcEkoX3N5c2xpYkc2IjYmRkpGPCQiKisrKysiISIpRjwtSSdTWU1CT0xHRmNkcDYkSShERUZBVUxUR0ZjZHAiIzgtRkg2JkZKRlZGS0ZWLUZcZXA2JCUoRElBTU9OREdGX2VwLSUrQVhFU0xBQkVMU0c2JFEieEZmZHBRInlGZmRw</Plot></Text-field></Output></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The  command returns the optimal function values, as well as the point at which the optimal value occurs.</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">LPSolve(obj, cnsts);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM3JCQhLysrKysrKzohIzg3JC9JInlHNiIkIjN1bW1tbW1tbTYhIzwvSSJ4R0YqJCIzZW1tbW1tbW07ISM9</Equation></Text-field></Output></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">Alternatively, we could use the first two constraints and the nonnegative option.</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">LPSolve(obj, cnsts[1..2], assume=nonnegative);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM3JCQhLysrKysrKzohIzg3JC9JInlHNiIkIjN1bW1tbW1tbTYhIzwvSSJ4R0YqJCIzZW1tbW1tbW07ISM9</Equation></Text-field></Output></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The first element of the solution is the minimum value that the objective function obtains, while satisfying the constraints.  The second element indicates a point where the minimum is reached.  This point is not necessarily unique.</Font></Text-field></Input></Group></Section><Section><Title><Text-field firstindent="0.0" layout="Heading 3" leftmargin="0.0" linebreak="space" rightmargin="0.0" style="Heading 3"><Font executable="false" foreground="[0,0,0]" underline="false">Linear Programming example 2</Font></Text-field></Title><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">We can also include equality constraint as the next example shows.  This example also demonstrates the maximize option.</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">obj := 2*x+y+z; </Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSRvYmpHNiIsKEkieEdGJSIiI0kieUdGJSIiIkkiekdGJUYq</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input">cnsts := [y&lt;=4*x+1/2,y&lt;=-5*x+2,z=-2/3*x-2/3*y+20/3];</Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSZjbnN0c0c2IjclMUkieUdGJSwmSSJ4R0YlIiIlIyIiIiIiI0YtMUYoLCZGKiEiJkYuRi0vSSJ6R0YlLChGKiMhIiMiIiRGKEY1IyIjP0Y3Ri0=</Equation></Text-field></Output></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">LPSolve(obj, cnsts, assume=nonnegative, maximize);</Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM3JCQiL3l4eHh4eHMhIzg3JS9JInpHNiIkIjMrMnl4eHh4eGQhIzwvSSJ5R0YqJCIzX21tbW1tbW02Ri0vSSJ4R0YqJCIzZW1tbW1tbW07ISM9</Equation></Text-field></Output></Group><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/></Section><Section><Title><Text-field firstindent="0.0" layout="Heading 3" leftmargin="0.0" linebreak="space" rightmargin="0.0" style="Heading 3"><Font executable="false" foreground="[0,0,0]" underline="false">Quadratic Programming Example</Font></Text-field></Title><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">For a first example of a quadratic program, we will use:</Font></Text-field></Input></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">obj := 4*x^2-y+x+5; </Font></Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSRvYmpHNiIsKiokSSJ4R0YlIiIjIiIlSSJ5R0YlISIiRigiIiIiIiZGLQ==</Equation></Text-field></Output></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input">cnsts := [x+y-7*x&gt;=-11, 11/2*x+y&lt;=0,x&gt;=-4];</Text-field></Input><Output><Text-field layout="Maple Output" style="2D Output"><Equation>NiM+SSZjbnN0c0c2IjclMSEjNiwmSSJ4R0YlISInSSJ5R0YlIiIiMSwmRiojIiM2IiIjRixGLSIiITEhIiVGKg==</Equation></Text-field></Output></Group><Group><Input><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" size="12" underline="false">The plot below shows the feasible region in yellow and the contours of the objective function.  The green circle indicates the optimal point.</Font></Text-field><Text-field alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" prompt="&gt; " rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">p1 := contourplot(obj, x=-4..4, y=-10..10, contours=30):<Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">
p2 := inequal(cnsts, x=-4..4, y=-10..10, optionsexcluded=(colour=white), optionsfeasible=(colour=yellow)):<Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">
p3 := pointplot({[-0.8125,4.486]}, symbolsize=13, colour=green):<Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" italic="false" size="12" underline="false">
display(p1,p2,p3);</Font></Font></Font></Font><Font background="[0,0,0]" family="Times New Roman">
</Font></Text-field></Input><Output><Text-field layout="Maple Plot"><Plot height="400" plot-scale="1.0" plot-xtrans="0.0" plot-ytrans="0.0" type="two-dimensional" width="400">LSUlUExPVEc2RS0lJ0NVUlZFU0c2KzckNyQkIjM4cjQ2JW9bLyJSISM8JCEjNSIiITckJCIzZ1VNLDI1KnAiUkYsJCEzczNPYDx2WiN6KkYsNyQ3JCQiM0ZkJHBdT3BjJFJGLCQhM0cqKioqKioqKioqKioqPipGLEYwNyRGNjckJCIzWCk+XiVbInAuJVJGLCQhMzUpKno3ckcjNDAqRiw3JDckJCIzKUh1RmcvISozJ1JGLCQhM2MpKioqKioqKioqKioqUilGLEY8NyRGQjckJCIzS2EqKSkpKkdaUCdSRiwkITNYKFFBWkFvJDQkKUYsNyQ3JCQiM29HaClwczVoKVJGLCQhM3UpKioqKioqKioqKioqZihGLEZINyRGTjckJCIzczRuS0phNygpUkYsJCEzI294OyR5TiJ5YyhGLDckNyQkIjNtKSoqKioqKioqKioqKipSRiwkITMlKVsrK2dBVmZyRixGVC0lJkNPTE9SRzYmJSRSR0JHJCIjNSEiIiQiMT1NXUdYRidvKiEjOyRGL0Zfby1GJjYzNyQ3JCQiM0VVPkFvdCozI1FGLEYtNyQkIjNAJilvLTk/KVIkUUYsJCEzbzpzMU5dJlxlKkYsNyQ3JCQiMyd6SyE9XCE9aCVRRixGOUZqbzckRmBwNyQkIjM9U1lZYixPZFFGLCQhM0YuO20pUStNJSkpRiw3JDckJCIzNTkoUSx0UTgoUUYsRkVGZHA3JEZqcDckJCIzLSdSLXBIUTIpUUYsJCEzaiMqZkRVZCU9NSlGLDckNyQkIjMhKSo0KDQ2JWZsKlFGLCQhMyd5KioqKioqKioqKioqZihGLEZecTckNyQkIjNDK3I0NiVmbCpRRixGZ3E3JCQiM0tfLE1RazYvUkYsJCEzKUdRXWU0IkhndEYsNyQ3JCQiMyVmW2I/NCF5QFJGLCQhMyMqKSoqKioqKioqKioqKnonRixGXXI3JEZjcjckJCIzczJ6eHpYXEZSRiwkITNOclpXXGt0PW1GLDckNyQkIjM/clEsdDIrWlJGLCQhM0EpKioqKioqKioqKioqKmZGLEZpcjckNyRGYHMkITM3KioqKioqKioqKioqKipmRiw3JCQiM2VqY0BARigzJlJGLCQhM3FnIlJJIT09eGVGLDckNyQkIjNNZEEoUlhAQShSRiwkITNHKioqKioqKioqKioqKj4mRixGaHM3JEZedDckJCIzKSo9TWxpM0R1UkYsJCEzMl1OamNyaU5eRiw3JDckJCIzL1YxJFw4VXUqUkYsJCEzWSoqKioqKioqKioqKipSJUYsRmR0NyRGanQ3JCQiMyNbPCI0LyFIdypSRiwkITNLU3pBNUQyJVIlRiw3JDckRmVuJCEzaVUrKz9YJyk9VkYsRmB1LUZqbjYmRlxvRl1vJCIxayhwSVBMTEwqRmJvRmNvLUYmNjo3JDckJCEzMVZZJmUwWUMpUkYsRi03JCQhIiVGLyQhMyk+KioqKip6bkh5JSpGLDckNyQkIjNdN0hMX2dNSlBGLEYtNyQkIjMlcEtTNS10NHYkRiwkITM1PjNnX0RWeCQqRiw3JDckJCIzaylIIkhMbmNjUEYsRjlGXHc3JEZidzckJCIzeSMzeUM7XlZ4JEYsJCEzWDNfPjF6KGVqKUYsNyQ3JCQiM3klb1xVVCh5InkkRixGRUZmdzckRlx4NyQkIjNpUWUiUklIeHokRiwkITMheWYqeWZLSyUqeUYsNyQ3JCQiM1xxITNfNDNxIVFGLEZncUZgeDckRmZ4NyQkIjNbJWZgYFcyNiNRRiwkITM9KClSUTgnb0Y6KEYsNyQ3JCQiMz1jazt3KEdBJFFGLEZmckZqeDckRmB5NyQkIjNXXDh6J2UmW1dRRiwkITNgdyR5cCdSQDZrRiw3JDckJCIzKT0lWzdkJVx1JlFGLEZmc0ZkeTckRmp5NyQkIjNHMCJII0dQJ3knUUYsJCEzKWV3czBLZidwY0YsNyQ3JCQiMy1HSzNRLG4jKVFGLEZhdEZeejckNyQkIjNlRkszUSxuIylRRixGYXQ3JCQiMzlob21wPUMiKlFGLCQhM0Ricjt1WTVHXEYsNyQ3JCQiMzw5Oy8+Myp5IVJGLEZddUZbW2w3JEZhW2w3JCQiMypwaC82LD9ZIlJGLCQhM2dXOndGK2InPSVGLDckNyQkIjNKKysrKzo2TFJGLCQhM2sqKioqKioqKioqKioqZiRGLEZlW2w3JDckJCIzKCkqKioqKioqXDZKJFJGLEZeXGw3JCQiMyVHUFVEOikqeiRSRiwkITMnWyRmTiJRJipcVyRGLDckNyQkIjNlJlFlND1LJGVSRiwkITMjKSoqKioqKioqKioqKip6I0YsRmRcbDckRmpcbDckJCIzQ0csKVJIdzgnUkYsJCEzQUMuJlx0U01xI0YsNyQ3JCQiM0dybiI+J0diJClSRiwkITNjKioqKioqKioqKioqKio+RixGYF1sNyQ3JEZnXWwkITN5KioqKioqKioqKioqKio+Riw3JCQiMzUlKXlUTld2JSlSRiwkITM5OFphKTMnKT0nPkYsNyQ3JEZlbiQhMz1NKysheSdIeTlGLEZfXmwtRmpuNiZGXG9GXW8kIjEjPXQ6IXpnPiEqRmJvRmNvLUYmNkw3JDckJCEzTUFRNzElb28pUUYsRi03JCQhM2RDcS93IW9lIVJGLCQhM2pSQykpNClIYFYqRiw3JDckJCEzJjNmRmxJJ3k4UkYsRjlGYl9sNyRGaF9sNyQkITMxTWBNSSNlXyRSRiwkITMnUW1PVFVhPWMpRiw3JDckJCEzT2Y4JHA/LzIlUkYsRkVGXGBsNyRGYmBsNyQkITNXV09rJVFbWSdSRiwkITM/KCkzUlEheiQpbyhGLDckNyQkITMpeTdOdDVBdydSRixGUUZmYGw3JEZcYWw3JCQhMyNbJj4lKlEmUVMqUkYsJCEzTDdea19PIVwib0YsNyQ3JCQhM1MnKilReCtTWCpSRixGZnJGYGFsNyRGZmFsNyRGZHYkITNaLysrSSFIeGonRiw3JDckJCIzLSopKSkpKVExV1FPRixGLTckJCIzT0NZJz5MQTxrJEYsJCEzRms6IipIZUkvKipGLDckNyQkIjNhWSZRNlt2ZW0kRixGOUZhYmw3JEZnYmw3JCQiMyEzJilRJjQzKnBtJEYsJCEzZUdyJVEteHU7KkYsNyQ3JCQiMyMpKSoqKioqKioqKioqek9GLCQhMylILysrLkgiKXkpRixGW2NsNyQ3JEZiY2wkITN3VysrSSFIIil5KUYsNyQkIjNvKUgqPnBATSJwJEYsJCEzIXlDKSpIVWIkRyUpRiw3JDckJCIzVShSWCEpNE9BcCRGLEZFRmpjbDckRmBkbDckJCIzYmFxajUuczlQRiwkITMvUUVmdzIhb28oRiw3JDckJCIzZCR5LiF6blg8UEYsRlFGZGRsNyQ3JCQiMzgkeS4hem5YPFBGLEZncTckJCIzUzVbMl8lKTRRUEYsJCEzX0VxPUloQ1hwRiw3JDckJCIzR3BAJypmdW5VUEYsRmZyRmFlbDckNyQkIjMkKW9AJypmdW5VUEYsJCEzLykqKioqKioqKioqKip6J0YsNyQkIjNPbEReJGZ3OXckRiwkITMpZVQieSRbInAuaUYsNyQ3JCQiMylcYj80OSkqeXckRixGZnNGYGZsNyRGZmZsNyQkIjNBQC4mXHRhW3kkRiwkITNDMGVQUG84aWFGLDckNyQkIjNtUyp5PSMpPUp6JEYsRmF0RmpmbDckRmBnbDckJCIzMXghKVF3R0IzUUYsJCEzZyU+cTQ+I2U/WkYsNyQ3JCQiM1BFdCRHXVIkPVFGLEZddUZkZ2w3JEZqZ2w3JCQiM1lLZSN5LDY7JFFGLCQhMydSZWtYYUYhelJGLDckNyQkIjNeN2R6JD1nTiVRRixGXlxsRl5obDckNyQkIjMyN2R6JD1nTiVRRixGXlxsNyQkIjN3KWVqI2YiKilcJlFGLCQhM211KmUiKSpHWlBLRiw3JDckJCIzbSk0YVonM3lvUUYsRl1dbEZbaWw3JEZhaWw3JCQiM3NWOHErdE95UUYsJCEzY2pMdl4jPWZcI0YsNyQ3JCQiM00lWzdkYSxTKlFGLEZpXWxGZWlsNyRGW2psNyQkIjMtKyJSQFdYPCFSRiwkITNzX3hNME9PYTxGLDckNyQkIjMxcTNuRUFBPlJGLCQhM3MqKioqKioqKioqKioqPiJGLEZfamw3JEZlamw3JCQiM1Vib2QkZUJeI1JGLCQhMyY9OVUqZSozRywiRiw3JDckJCIzP2MjSHchSFdXUkYsJCEzVygqKioqKioqKioqKioqUiEjPUZbW203JDckRmJbbSQhMylvKioqKioqKioqKioqKlJGZlttNyQkIjNHNlksRDxdW1JGLCQhM3QzYE9ESmE3RkZmW203JDckJCIzIT5rKGUpZWoncFJGLCQiMysuKysrKysrU0ZmW21GW1xtNyQ3JEZiXG0kIjNjLisrKysrK1NGZlttNyQkIjM5bkJYbSl6PShSRiwkIjNkInohcFFMKy5aRmZbbTckNyQkIjMvR2dhcFUpWypSRiwkIjNRKysrKysrKzdGLEZqXG03JEZgXW03JCQiMylINyEqeStlXypSRiwkIjMyIXB1LSlcJj1AIkYsNyQ3JCQiMzcqKioqKioqKioqKioqKlJGLCQiMyFIJioqKipwNEZpOEYsRmZdbS1Gam42JkZcb0ZdbyQiMUUmUmh1bW1tKUZib0Zjby1GJjZYNyQ3JCQhM2V2JUhudiFIInokRixGLTckJCEzUHMtJDM8NzohUUYsJCEzeT1WI0hkPmlwKkYsNyQ3JCQhMz9WSzhkJzMjPVFGLEY5RltfbTckNyQkITNrVks4ZCczIz1RRixGOTckJCEzKD1lR15LLTQkUUYsJCEzLlYmeXI9V0YjKSlGLDckNyQkITM7N3FgZGw3WFFGLEZFRmhfbTckRl5gbTckJCEzQyMqb1V6Q0hnUUYsJCEzL3BGViwpbyNcekYsNyQ3JCQhMzcieVN6WFc/KFFGLEZRRmJgbTckNyQkITNtIXlTelhXPyhRRixGZ3E3JCQhM2ktX3NMRW8qKVFGLCQhM0ckKnBvOk16dnFGLDckNyQkITNpXFhNZUInKikqUUYsRmZyRl9hbTckNyQkITM9XFhNZUInKikqUUYsRmZyNyQkITM2N04tKXlzIT5SRiwkITNSPTclKkghPUI/J0YsNyQ3JCQhM3E8JFsoZS0pZSNSRixGZnNGXGJtNyRGYmJtNyQkITNbQT1LVUhZW1JGLCQhM15WYT5XRSUpR2BGLDckNyQkITNBJzNfImYiKXpfUkYsRmF0RmZibTckNyQkITNtJzNfImYiKXpfUkYsRmF0NyQkITNVSyxpJzRgeShSRiwkITNrbydcJWVzT2JXRiw3JDckJCEzc2FlYmZncnpSRixGXXVGY2NtNyRGaWNtNyRGZHYkITMtMysrIUhocnokRiw3JDckJCIzJkckNDN6dS1UTkYsRi03JCQiM0UqSHBUSSw/YiRGLCQhMz9dS1VnSyshbypGLDckNyQkIjMlKiplSThLaSVvTkYsRjlGZGRtNyRGamRtNyQkIjNHRE51Inlwc2QkRiwkITNgOSllVlh1SiUqKUYsNyQ3JCQiM1laLWVqciplZiRGLEZFRl5lbTckNyQkIjMtWi1lanIqZWYkRixGRTckJCIzSF54SmYjUURnJEYsJCEzJil5VkhbY00xIylGLDckNyQkIjM2LypIZStLTGkkRixGUUZbZm03JEZhZm03JCQiM0l4PipvdDF5aSRGLCQhMyVlJSpIQSVvXnB1Riw3JDckJCIzP2gmeiFbb3ddT0YsRmZyRmVmbTckRltnbTckJCIzdy5pWTlfMmBPRiwkITMvNmI7TyEpb0tuRiw3JDckJCIzRz0jSC5wLCN5T0YsRmZzRl9nbTckRmVnbTckJCIzS0gvLyNwViR5T0YsJCEzQ3c1NUkjZmUqZkYsNyQ3JEZiY2wkITNrUCsrIUhodiVmRixGaWdtNyQ3JCQiM0UqKioqKioqKioqKip6T0YsRmBobTckJCIzIlF3aj51WD1xJEYsJCEzSzYlNFxOOVlEJkYsNyQ3JCQiMyE9IioqKWZdbk5xJEYsRmF0RmZobTckRlxpbTckJCIzbT46UyQpUUFEUEYsJCEzYyxRXTMoZkleJUYsNyQ3JCQiM10oSFtwPSl5R1BGLEZddUZgaW03JEZmaW03JCQiMzN2I1JbLS0nW1BGLCQhMy8hPik0aV1dclBGLDckNyQkIjM/JG8xeicpM1N2JEYsRl5cbEZqaW03JEZgam03JCQiMyM0LnhpOyEpPngkRiwkITNHIWUjcDovJipISUYsNyQ3JCQiM01wXScpWyZII3pQRixGXV1sRmRqbTckRmpqbTckJCIzdyd5OXhJZWB6JEYsJCEza3BwR3BkUilHI0YsNyQ3JCQiM1xiTSMpSC1YL1FGLEZpXWxGXltuNyQ3JEZlW25GXV5sNyQkIjM9VUQ6XGt0PVFGLCQhM2NlOClHN1RvYSJGLDckNyQkIjM+VD15NTRuSFFGLEZoamxGaVtuNyRGX1xuNyQkIjMuKUghZiFmOUAlUUYsJCEzOXp1dmtaJ0cwKUZmW203JDckJCIzKW9BUzxmIipbJlFGLEZpW21GY1xuNyRGaVxuNyQkIjMpUTBHP3QjXGxRRiwkITNBMFAsMkk9dGohIz43JDckJCIzLTgnKXBzQTYhKVFGLEZoXG1GXV1uNyRGZF1uNyQkIjNzNGVZdDMoKSkpUUYsJCIzS0laTmoiRyN5bkZmW203JDckJCIzPCoqcGxgSEwwUkYsRmNdbUZoXW43JEZeXm43JCQiM2VsTiFcLFxBIlJGLCQiMyslM1RGWXgkPjlGLDckNyQkIjMoW1E6WWpgMCRSRiwkIjNXKysrKysrKz9GLEZiXm43JEZoXm43JCQiM1ZAOE1jcmlOUkYsJCIzNSZwWSI0QCQ0OyNGLDckNyQkIjM3cVBkOlZ4YlJGLCQiM3ErKysrKysrR0YsRl5fbjckNyQkIjNlcVBkOlZ4YlJGLEZnX243JCQiM1N3IXp4SDAhZlJGLCQiM3QwQmJiblstSEYsNyQ3JCQiM3NjQGAnKlwqNClSRiwkIjNfKysrKysrK09GLEZdYG43JEZjYG43JCQiM0NLb0BSTVEjKVJGLCQiM1s6eiY+U1RTayRGLDckNyRGXV5tJCIzWWMqKioqNChRRz8lRixGaWBuLUZqbjYmRlxvRl1vJCIxV0hrdTclSE4pRmJvRmNvLUYmNmJvNyQ3JCQhMyN6N050NThkcCRGLEYtNyQkITNzPk5obGk6KHAkRiwkITNfLGknZkw0ciYqKkYsNyQ3JCQhMypmKilReCtKRXMkRixGOUZcYm43JEZiYm43JCQhM0FIPSIqPmthRVBGLCQhM3VEL0FdUmokMypGLDckNyQkITNda0U5MypbJlxQRixGRUZmYm43JEZcY243JCQhMy9TLEB1bCRmdiRGLCQhMykqXFlaayZlLEApRiw3JDckJCEzWUxrYTNvWXdQRixGZ3FGYGNuNyRGZmNuNyQkITNhXCUzJkduSyZ5JEYsJCEzQHUpRyh5Sm9PdEYsNyQ3JCQhMyk+P10qM1pRLlFGLEZmckZqY243JEZgZG43JCQhMyIqZm4hRylvcjlRRiwkITNBK0opSHoyS1knRiw3JDckJCEzXHFSTjRFSUlRRixGZnNGZGRuNyRGamRuNyQkITNTcF01UHE1V1FGLCQhM0FFdEIyQ3QqZSZGLDckNyQkITNjUXh2NDBBZFFGLEZhdEZeZW43JEZkZW43JCQhM3l6TFMiPihcdFFGLCQhM1ldOlxAcUQ7WkYsNyQ3JCQhMzEyOjs1JVFUKVFGLEZddUZoZW43JEZeZm43JCQhMzshcCxkTSgpRyFSRiwkITM4dmR1Tjt5VVFGLDckNyQkITMud19jNWowNlJGLEZeXGxGYmZuNyQ3JCQhM2V2X2M1ajA2UkYsJCEzPyoqKioqKioqKioqKipmJEYsNyQkITNsKioqKioqKlx4QSRSRiwkITNFKysrXWlJcEhGLDckNyQkITNhVyFwNEB1eiRSRixGXV1sRmFnbjckRmdnbjckJCEzLTUkKUhhd21oUkYsJCEzI1xBYVUnMyRlNCNGLDckNyQkITNpN0dQNkAqWydSRixGXV5sRltobjckRmFobjckJCEzJyo+bWYzeTAiKlJGLCQhM0ddJTMmeWFOQTdGLDckNyQkITM3ImV3PCw1PSpSRixGaGpsRmVobjckRltpbjckRmR2JCEzKykqKSoqKipcTmZjKkZmW203JDckJCIzQndIRj5WaFZNRixGLTckJCIzR3RSUHctR2lNRiwkITM5T1wkNHArZFgqRiw3JDckJCIzS0xFX2giXDVaJEYsRjlGZmluNyRGXGpuNyQkIjNJKj5bUnZbdlskRiwkITNaKzAoWyk9KCk9KClGLDckNyQkIjNTIUhzUCslWylcJEYsRkVGYGpuNyRGZmpuNyQkIjNKRENfSnMiR14kRiwkITN5a2chKXlJLyMpekYsNyQ3JCQiM11aPi1ZKT1mXyRGLEZRRmpqbjckRmBbbzckJCIzS15tNDRkM1FORiwkITMpM2pURkY5X0MoRiw3JDckJCIzZS87RilvYExiJEYsRmZyRmRbbzckRmpbbzckJCIzeXgzbic9YUxjJEYsJCEzKHA+eG1ZJlEzbEYsNyQ3JCQiM21oN19JJil5IWUkRiwkISInRi9GXlxvNyRGZFxvNyQkIjNDL15Da0VpKWUkRiwkITM9aUZoZ21icmRGLDckNyQkIjN3PTR4c0xBM09GLEZhdEZqXG83JEZgXW83JCQiM0NJJD49OSIqUWgkRiwkITNSRiRbWCZ5c01dRiw3JDckJCIzSHcwLTojZWNqJEYsRl11RmRdbzckRmpdbzckJCIzRWNOUj4nZiJST0YsJCEzWyQqUVtbISoqeUglRiw3JDckJCIzW0stRmRJNGpPRixGX2duRl5ebzckNyQkIjMjSEJxczAkNGpPRixGXlxsNyQkIjNFI3lucDRHV20kRiwkITNDZSU+Q0NxNWMkRiw3JDckRmJjbCQhMz5EKytdTipwNSRGLEZbX283JEZhX283JCQiMzN0L0h0NigqKW8kRiwkITNZJj1FSyR6VUFHRiw3JDckJCIzLVNnKEhCeScqbyRGLEZdXWxGZV9vNyRGW2BvNyQkIjMkKkcjR1pKXEJyJEYsJCEzI1tkP29HdDMzI0YsNyQ3JCQiMzxFVyRSIiopKltyJEYsRl1ebEZfYG83JEZlYG83JCQiM3olKWY7Y3VzTlBGLCQhM3RqXFRTJz0kUjhGLDckNyQkIjNWNkcqW2Y+LHUkRixGaGpsRmlgbzckRl9hbzckJCIzP1NQZyhmMCJmUEYsJCEzJTRgJDRTKlJ3KGZGZlttNyQ3JCQiM2UoPl5lRlNgdyRGLEZpW21GY2FvNyRGaWFvNyQkIjNnJlxUIVJQWyN5JEYsJCIzenlEJ1JfMXpWIkZmW203JDckJCIzcyRlNG8mNGMheiRGLEZoXG1GXWJvNyRGY2JvNyQkIjMqPUR6Lyk9J2UhUUYsJCIzJz1vPSEpKUhYYCkpRmZbbTckNyQkIjNVcHp3UDt5OlFGLEZjXW1GZ2JvNyRGXWNvNyQkIjNJMnEiPi1TI0hRRiwkIjMwenU/WCoqKm9pIkYsNyQ3JCQiMzZianM9QitUUUYsRltfbkZhY283JEZnY283JCQiMzlqWk5qIj1FJlFGLCQiMyEqKjM4O2ZhJW9CRiw3JDckJCIzIzN1JW8qKkhBbVFGLEZnX25GW2RvNyRGYWRvNyQkIjNjPUR6L2oqZihRRiwkIjNiKyg9IVEjNCs2JEYsNyQ3JCQiM1NGSmshb1Y5KlFGLEZmYG5GZWRvNyRGW2VvNyQkIjNTdS1CWVdQKipRRiwkIjNJNVZVJSlRY15RRiw3JDckJCIzNTg6Z2hWbTtSRiwkIjNNKysrKysrK1dGLEZfZW83JEZlZW83JCQiM0RJIW93ZV9GI1JGLCQiM3NBKkgzYD1KZiVGLDckNyQkIjNDKiopZkQvJik9JVJGLCQiMzsrKysrKysrX0YsRltmbzckRmFmbzckJCIzNSd5MCJIMjhZUkYsJCIzWktiQnhKbk1gRiw3JDckJCIzXSVHPU5zMHInUkYsJCIiJ0YvRmdmbzckRl1nbzckJCIzX1ROYXEpMyZwUkYsJCIzN1Y2a0J5QXdnRiw3JDckJCIza3FtWi9rSyMqUkYsJCIzIykqKioqKioqKioqKioqeidGLEZjZ283JEZpZ283JCQiMyNwSCIpPiwoKUcqUkYsJCIzdmBuL3FDeTxvRiw3JDckRmVuJCIzb2kqKioqXGtTVnFGLEZfaG8tRmpuNiZGXG9GXW8kIjBINCM+LCsrISkhIzpGY28tRiY2YHA3JDckJCEzOysrKysrKyFvJEYsJCEzKDMqKioqKjRlVUV3Riw3JCQhM0MnM18iZiIqKTNvJEYsRlE3JEZlaW83JCQhM0socCJIQjMoNG8kRiwkITMjcHZxPCVIZChmKEYsNyQ3JCQhM3hhZWJmcSF5cSRGLEZmckZpaW83JEZfam83JCQhM0YyK2Z4NE81UEYsJCEzOyIpXC1jdjRDbkYsNyQ3JCQhM0dCJ2YqZlxzTVBGLEZmc0Zjam83JDckRmpqb0ZiczckJCEzQDwkKSk9OF4oUlBGLCQhM0cxI3otPEExJmVGLDckNyQkITNPIlJqLidHa2hQRixGYXRGXltwNyRGZFtwNyQkITNxRW09J0dUInBQRiwkITNTSk1gJXlZcihcRiw3JDckJCEzJylmcndnMmMpeSRGLEZddUZoW3A3JEZeXHA3JCQhM19QXFtTOWApeiRGLCQhM2pid3kpUnJPNSVGLDckNyQkITMjKUc0PGgneWEiUUYsRl5cbEZiXHA3JEZoXHA3JCQhM1haS3klZkB6I1FGLCQhM3YhKT0vOGc+SUtGLDckNyQkITMqb3B1OmMnUlVRRixGXV1sRlxdcDckRmJdcDckJCEzI3liIjNcPEpkUUYsJCEzKWU1J0hGMXNjQkYsNyQ3JCQhM1NsJXk+WTkkcFFGLEZpXWxGZl1wNyQ3JCQhMyVlWXk+WTkkcFFGLEZdXmw3JCQhM0tuKXpMIT5xJylRRiwkITMrSi5iVF9DJFsiRiw3JDckJCEzIVJCI1FpQkInKlFGLEZoamxGY15wNyRGaV5wNyQkITNweCJ5dzAjNDtSRiwkITMvZ2IvZSYpcCg0J0ZmW203JDckJCEzVi1neWktOkJSRixGaVttRl1fcDckRmNfcDckJCEzMylbdz5AI1tYUkYsJCIzJzQ/NyUqSGJxaiNGZlttNyQ3JCQhM1FyKCo9aiJvKyZSRixGaFxtRmdfcDckRl1gcDckJCEzLSl6dWlPc1soUkYsJCIzKVwqcG86ND1QNkYsNyQ3JCQhM1lSTmZqZylwKFJGLCQiMzsrKysrKysrN0YsRmFgcDckRmdgcDckRmR2JCIzYS4rKyE+dVIpPUYsNyQ3JCQhMzkiPWpcczJFZiRGLEYtNyQkITNvMWhmMCMqPTtPRiwkITM/TCg0ZylwX2YkKkYsNyQ3JCQhMyFRbGtmIUcxQU9GLEY5RmRhcDckRmphcDckJCEzISk9MCNmU0knW09GLCQhM1ctKCk+JilSVXklKUYsNyQ3JCQhMyFwN21wKXleXk9GLEZFRl5icDckRmRicEZgaW83JDckJCIzano9dl1KKFtNJEYsRi03JCQiM2tBdUMzRjxZTEYsJCEzeWYmPTF4SmEnKipGLDckNyQkIjMpKikqKioqKioqKioqKmZMRiwkITNNQisrNWVpKGYqRixGXGNwNyRGYmNwNyQkIjN1Wid5JlsjZkRQJEYsJCEzSj9tV0AiKVJKIypGLDckNyQkIjM5eFlyLGdqdExGLEY5RmhjcDckRl5kcDckJCIzP3VHOkV4I3lSJEYsJCEzUyc9I1E6JHBYXClGLDckNyQkIjNvTVYnUiUzMixNRixGRUZiZHA3JEZoZHA3JCQiM0ErcnMuaTRCTUYsJCEzaV54SjQwdWR4Riw3JDckJCIzdyIqUkAnbzAmR01GLEZRRlxlcDckNyQkIjNLIipSQCdvMCZHTUYsRlE3JCQiM0FFOEkib2skW01GLCQhM3E8TEQuPCI0LShGLDckNyQkIjMnKVtPWUcwJWZYJEYsRmZyRmllcDckRl9mcDckJCIzQ19iKCllSmp0TUYsJCEzI0gpKSk9KCpHMyVHJ0YsNyQ3JCQiMyVmSTgyUHZMWyRGLEZmc0ZjZnA3JDckRmpmcEZnXG83JCQiM3F5KFxraiwqKVwkRiwkITMrXFc3IjRhc2EmRiw3JDckJCIzLmpIJ0hANTNeJEYsRmF0Rl5ncDckRmRncDckJCIzci9TLTksPENORiwkITNAOSsxJkdELyJbRiw3JDckJCIzNz9FQGJdQ1FORiwkITNNKysrKysrK1dGLEZoZ3A3JDckRl9ocEZddTckJCIzO0ojKWYiZlElXE5GLCQhM0khZSYqKnlrZnRTRiw3JDckJCIzd3dBWSgqKXpjYyRGLEZeXGxGZWhwNyRGW2lwNyQkIjN1Y0M8cHFxdU5GLCQhMzFYNiRIbm5uTCRGLDckNyQkIjMlUSQ+clJaNiRmJEYsRl1dbEZfaXA3JEZlaXA3JCQiMz0kb1luYXYqKmYkRiwkITM7Nm4nbycpUSoqZiNGLDckNyQkIjMlNGZoPmVcMGkkRixGaV1sRmlpcDckNyRGYGpwRl1ebDckJCIzazQ0S0NTQ0RPRiwkITNPd0EhMzE1Sic9Riw3JDckJCIzZVo3QENXKXprJEYsJCEzXSoqKioqKioqKioqKio+IkYsRmRqcDckNyQkIjMtWzdAQ1cpemskRixGaGpsNyQkIjNtTl4qPV03MGwkRiwkITNPVHl0YTdHRTZGLDckNyQkIjM1MDRZbSM+YW4kRixGaVttRmNbcTckNyQkIjNhMDRZbSM+YW4kRixGaVttNyQkIjM1aSRwJXo0eXZPRiwkITNncVN0J1tDWCpRRmZbbTckNyRGYmNsJCEzJUhJKys1ZVVtI0ZmW21GYFxxNyRGZlxxNyQkIjM9UVwwWVpaKnAkRiwkIjNXO2xpWzg4OE5GZlttNyQ3JCQiMyVbYj80azQ1cSRGLEZoXG1GalxxNyRGYF1xNyQkIjMwJXAjXCgpRyZHcyRGLCQiMzdpI283eW5HNCJGLDckNyQkIjNhUyp5PUtJaXMkRiwkIjNnKysrKysrKzdGLEZkXXE3JDckJCIzKjQlKnk9S0lpcyRGLEZdXnE3JCQiMyEqXC8kKkc1QllQRiwkIjM/dFFuRkNVTT1GLDckNyQkIjNDRXQkRyteOXYkRixGW19uRmNecTckNyQkIjNxRXQkRyteOXYkRiwkIjMpMysrKysrKysjRiw3JCQiM0swI28uPDQncFBGLCQiMyVRW3pTMnhmZCNGLDckNyQkIjNRN2R6JG9ybXgkRixGZ19uRmJfcTckRmhfcTckJCIzO2hmIT1KKClIeiRGLCQiM1slNCZbPzxgPExGLDckNyQkIjNgKTRhWk8jKj0hUUYsRmZgbkZcYHE3JEZiYHE3JCQiM2Q7UENgYU87UUYsJCIzNzAyKm9PJzNmU0YsNyQ3JCQiM3okWzdkLzhyI1FGLEZoZW9GZmBxNyRGXGFxNyQkIjNUczlvJWZWKFJRRiwkIjN3OmpIODVrK1tGLDckNyQkIjMjKnAzbkVQTF9RRiwkIjMxLCsrKysrK19GLEZgYXE3JDckRmdhcUZkZm83JCQiM0VHIz5odEBKJ1FGLCQiM15EPnFmYz5VYkYsNyQ3JCQiM2liI0h3U2F2KFFGLEZgZ29GXWJxNyRGY2JxNyQkIjM3JSlwYngpKlwnKVFGLCQiMy9QdjUxLnYkRydGLDckNyQkIjN4VHdlKTN2RiFSRixGXGhvRmdicTckRl1jcTckJCIzKCpSWioqPSF5KTRSRiwkIjNvWkpeX1xJRHFGLDckNyQkIjMiei1ZJnBkKnojUkYsJCIzayoqKioqKioqKioqKipmKEYsRmFjcTckRmdjcTckJCIzI2VcSy87Y0skUkYsJCIzV2QoPSopZmZvdyhGLDckNyQkIjM9OFddXWtAYFJGLCQiM00rKysrKysrJSlGLEZdZHE3JEZjZHE3JCQiM01dLSg9SU1tJlJGLCQiMycqb1ZLWFVUMyYpRiw3JDckJCIzSyp6aTk4UCV5UkYsJCIzMSwrKysrKysjKkYsRmlkcTckRl9lcTckJCIzMzIhM0xXNyspUkYsJCIzUSIpKkg8KilvKlwjKkYsNyQ3JCQiM0EpKioqKioqKioqKioqKlJGLCQiM29pKioqKio9dVIpKSpGLEZlZXEtRmpuNiZGXG9GXW8kIjJzcTd4a3VpbyhGLEZjby1GJjZocDckNyRGYWlvJCEzVSUqKioqKnAhZWV5JUYsNyQkITMzOEdQNkopSHAkRixGXXU3JEZqZnE3JCQhM0kmPW9fYHZUcCRGLCQhM1lQJkg9O2hYTyVGLDckNyQkITNoImV3PCwsKj5QRixGXlxsRl5ncTckRmRncTckJCEzRCZcbSYqb2xOcyRGLCQhMzlpUDN3ZDMiXCRGLDckNyQkITM3XS49Nyo9b3UkRixGXV1sRmhncTckRl5ocTckJCEzdS9bJ1ElZSZIdiRGLCQhMyNvKXpMIVI1d2gjRiw3JDckJCEzaz1UZTdvdHRQRixGaV1sRmJocTckRmhocTckJCEzNzpKOykqZk0jeSRGLCQhM1w2QWYvXThXPEYsNyQ3JCQhM3InKXkpSHJhMSFRRixGaGpsRlxpcTckRmJpcTckJCEzMEQ5WV9odDZRRiwkITNCblZZKT0nZjEoKUZmW203JDckJCEzbmI7UjhFZEZRRixGaVttRmZpcTckRlxqcTckJCEzKGV0Zm5JRTYlUUYsJCIzLmMiUiQqKm93OkchIz83JDckJCEzPUNhejgwXGFRRixGaFxtRmBqcTckRmdqcTckJCEzT1ghZTVZOzAoUUYsJCIzWVQ2WEU6Ikh3KUZmW203JDckJCEzbyM+Kj45JTM5KVFGLEZjXW1GW1tyNyQ3JCQhM0MjPio+OSUzOSlRRixGamBwNyQkITN1YmpOOm0hKioqUUYsJCIzTyopM1JRbHdcPEYsNyQ3JCQhMz9oSGc5akszUkYsRltfbkZoW3I3JEZeXHI3JCQhM29sWWxwbkhIUkYsJCIzQ2ttOEM+Q0JFRiw3JDckJCEzRkhuKzpVQ05SRixGZ19uRmJccjckRmhccjckJCEzaXZIJlIjcG9lUkYsJCIzK1NDKSk0dHInXCRGLDckNyQkITNDKVw1YTZpQCdSRixGZmBuRlxdcjckNyQkITN5KFw1YTZpQCdSRixGZmBuNyQkITNhJkdeI3lxMikpUkYsJCIzKzkjR2NwIz5xVkYsNyQ3JCQhM0ltVSJlLCEzKilSRixGaGVvRmldcjckNyRGYF5yJCIzWSoqKioqKioqKioqKipSJUYsNyRGZHYkIjMqMysrKyQ+YUNaRiw3JDckJCEzS1ZMKFFHQCEpWyRGLEYtNyQkITMvL2N0QCoqKjRdJEYsJCEzcykpNG0mPit2aypGLDckNyQkITMnZiJbKFtPd3VeJEYsRjlGXV9yNyRGY19yNyQkITM6OysxQTZXTE5GLCQhMyV6JipcWz4oUm0oKUYsNyQ3JCQhM2kpR3dlV0pwYSRGLEZFRmdfcjckNyQkITMxKkd3ZVdKcGEkRixGRTckJCEzRUdXUUFCKWVjJEYsJCEzJSpHKlFTPiVIJil5Riw3JDckJCEzRWh4KG9fJ1F3TkYsRmdxRmRgcjckRmpgcjckJCEzT1MpM0ZfQiQpZiRGLCQhMz0pKnlBJD4iPi9xRiw3JDckJCEzT00jenlnVGVnJEYsRmZyRl5hcjckRmRhcjckJCEzXF9LLkJad0lPRiwkITM+cG9UIz4pM0JoRiw3JDckJCEzLDIyKSkpbydITk9GLEZmc0ZoYXI3JDckJCEzYzEyKSkpbydITk9GLEZiczckJCEzOWt3TkJmP2pPRiwkITNKUmVnIj4mKT5DJkYsNyQ3JCQhM2t6QCkpcDx2a09GLEZhdEZlYnI3JDckJCEzP3pAKSlwPHZrT0YsJCEzUSkqKioqKioqKioqKio+JkYsRmdmcTckNyQkIjMmUmlcKSopWzNRS0YsRi03JCQiM2F0TmMncGUmW0tGLCQhM1JPKjM5dSdSQCgqRiw3JDckJCIzYVsmPnkyZyJvS0YsRjlGaGNyNyQ3JCQiMykqWyY+eTJnIm9LRixGOTckJCIzIT1HKVwwLDB3S0YsJCEzPzBkdWpfNyEqKilGLDckNyQkIjMrdSUqeWxfQilIJEYsRkVGZWRyNyRGW2VyNyQkIjNnKilIVjk6YS5MRiwkITN5dkMzJ3lgKWUjKUYsNyQ3JCQiM2cpUmZQWDUkR0xGLCQhM2sqKioqKioqKioqKioqZihGLEZfZXI3JDckRmZlckZRNyQkIjMmeXBuTCNILkpMRiwkITNlVyM+JTNCZUZ2Riw3JDckJCIza0IkSDxrJlFlTEYsRmZyRlxmcjckRmJmcjckJCIzbTBDSUtWX2VMRiwkITMvO2d2STNKJ3onRiw3JDckRmNjcCQhM29HKytxIWVxdidGLEZmZnI3JDckJCIzYSkqKioqKioqKioqKmZMRixGXWdyNyQkIjM5Ri0zSkAiUlEkRiwkITNpcTBxRi55ZmdGLDckNyQkIjN3XGAhNEBpZlEkRixGZnNGY2dyNyQ3JEZqZ3JGZ1xvNyQkIjM7YFdsMzE9NE1GLCQhMyRlOE87X15ISyZGLDckNyQkIjMnbytiSjAoUjhNRixGYXRGXmhyNyRGZGhyNyQkIjNoeidHaTNcV1YkRiwkITMvLDxkOkY3J2UlRiw3JDckJCIzJVJtL2EqPSQzVyRGLEZddUZoaHI3JEZeaXI3JCQiMzMxSCFRYzwoZk1GLCQhM29tc100UkhcUUYsNyQ3JCQiM2c/VmxQbkVvTUYsRl5cbEZiaXI3JEZoaXI3JCQiMzNLclBUZylcWyRGLCQhM01LR1cuXlk3SkYsNyQ3JCQiMzd5UiEqejpxJlwkRixGXV1sRlxqcjckRmJqcjckJCIzNGU4Jio9WEQ1TkYsJCEzYShSeXRIT2NQI0YsNyQ3JCQiM0BOTzpBazhCTkYsRmldbEZmanI3JEZcW3M3JCQiMzYlZURsKkhfTk5GLCQhM3ZpUkoiXDIpUTtGLDckNyQkIjMnPUguV0VyMGIkRixGaGpsRmBbczckRmZbczckJCIzNzUpKjR1OXpnTkYsJCEzeSJHJlxfb3k+ISpGZlttNyQ3JCQiMyUqW0hsMWgreU5GLEZpW21GaltzNyRGYFxzNyQkIjM3T1NuXipmZ2UkRiwkITN1UDQmPXopXF47RmZbbTckNyQkIjMtMUUhKls0VzBPRixGaFxtRmRcczckRmpcczckJCIzLmojWyNIJUc4aCRGLCQiM2w0TXpvIyp5O2RGZlttNyQ3JCQiM2NqQToienZHaiRGLEZdXnFGXl1zNyRGZF1zNyQkIjMvKltBbyFwZk9PRiwkIjNhdlAlSHQyJjM4Riw3JDckJCIzaz8+U0wxSmdPRixGW19uRmhdczckRl5eczckJCIzMTpuUiVRbD1tJEYsJCIzTTUjMyFSbExYP0YsNyQ3JEZiY2wkIjMxbCoqKipIPjl1REYsRmJeczckRmheczckJCIzIXprIlF4LGcnbyRGLCQiM3l4ZWFjJipcJHkjRiw3JDckJCIzXSRvMXpPP3JvJEYsRmdfbkZcX3M3JEZiX3M3JCQiM3cuJT4pPSR5KjRQRiwkIjNUKVteSD9hXV8kRiw3JDckJCIzQHBdJylbNU03UEYsRmZgbkZmX3M3JEZcYHM3JCQiMzxmckRna05MUEYsJCIzMSo0ZCRcKTNtRSVGLDckNyQkIjNPYk0jKUg8Y1BQRixGaGVvRmBgczckRmZgczckJCIzLTpccCxZdGNQRiwkIjNwNEZ3JlxqIjNdRiw3JDckJCIzMVQ9eTVDeWlQRixGZGZvRmpgczckRmBhczckJCIzKTNuS0p1Nyx5JEYsJCIzVz4kb0A5PShcZEYsNyQ3JCQiM3dFLXUiNC4hKXkkRixGYGdvRmRhczckRmphczckJCIzR0UvZCUpM1wuUUYsJCIzKTQkUmQpeXM3XCdGLDckNyQkIjMhSGgpcHNQQThRRixGXGhvRl5iczckRmRiczckJCIzOCM9M2ctcG8jUUYsJCIzdFMmelxWRkdCKEYsNyQ3JCQiMy8qKnBsYFdXUVFGLEZqY3FGaGJzNyRGXmNzNyQkIjNhUGZXbnJDXVFGLCQiM1FeXlEiMyNRdXpGLDckNyQkIjNJJVE6WThsTydRRixGZmRxRmJjczckRmhjczckJCIzUSRwJCkpM2BpdFFGLCQiM3lqMnpGbiRmcilGLDckNyQkIjNXcVBkOmUpKSkpUUYsRmJlcUZcZHM3JEZiZHM3JCQiM29cOUtdTSsoKlFGLCQiMz93aj51OFxkJSpGLDckNyQkIjM5Y0BgJ1wxVCJSRiwkIjM9KysrKysrKzVGYm9GZmRzLUZqbjYmRlxvRl1vJCIxYSF6QVxMTEwoRmJvRmNvLUYmNl5xNyQ3JEZhaW8kITNlKCoqKioqPi5IWD5GLDckJCEzKWYxZEsxeF1xJEYsRmhqbDckRltmczckJCEzMSdIeG9DIVEyUEYsJCEzKipmbiFHUVw6OCJGLDckNyQkITNdTTNtalwqPnQkRixGaVttRl9mczckRmVmczckJCEzVzFjPCwveE9QRiwkITM9VSk0MSgqUjJlI0ZmW203JDckJCEzLS5ZMWtHIiplUEYsRmhcbUZpZnM3JEZfZ3M3JCQhM1E7UlpiMDttUEYsJCIzJSkzeiVvKVEsYWhGZlttNyQ3JCQhMzNyJG9Xd0lleSRGLEZjXW1GY2dzNyQ3JCQhM19yJG9Xd0lleSRGLEZjXW03JCQhM0lFQXg0MmImeiRGLCQiM0FtMFZ1bigpKVsiRiw3JDckJCEzL1NAKFttW0YiUUYsRltfbkZgaHM3JEZmaHM3JCQhM0NPMDJrMyVcI1FGLCQiMzNUajxnQE5pQkYsNyQ3JCQhM2IzZkZsbG1SUUYsRmdfbkZqaHM3JDckJCEzNTNmRmxsbVJRRixGZ19uNyQkITM9WSlvJD01TGFRRiwkIjMnbzZBZmFGZUIkRiw3JDckJCEzMXgnemNZJWVtUUYsRmZgbkZnaXM3JDckJCEzaXcnemNZJWVtUUYsRmZgbjckJCEzYWNybXM2cyQpUUYsJCIzdCIqeW1KSEk0VEYsNyQ3JCQhM2NYTTNtQl0kKlFGLEZoZW9GZGpzNyQ3JCQhMy1ZTTNtQl0kKlFGLEZoZW83JCQhMyRwWWxwSzZKIlJGLCQiM2ltT1Q8JHlGKVxGLDckNyQkITM0OXNbbS1VP1JGLEZkZm9GYVt0NyRGZ1t0NyQkITNVd1BFIlssRCVSRiwkIjNdVCVmSnFgaSZlRiw3JDckJCEzZyMpNCpvO1F0JVJGLEZgZ29GW1x0NyRGYVx0NyQkITMhbzNpYmoiKj0oUkYsJCIzUDtfISopM0goSG5GLDckNyQkITM3XlpIbmdEdVJGLEZcaG9GZVx0NyQ3JCQhM29dWkhuZ0R1UkYsJCIzIyopKioqKioqKioqKioqeidGLDckRmR2JCIzRygqKioqKnonNF5jKEYsNyQ3JCQhM1c7YFRVW1YkUSRGLEYtNyQkITNtJ2VwdWo1ZVEkRiwkITMkZi5FalN0YSQqKkYsNyQ3JCQhM2EqeTtNIyoqKUdUJEYsRjlGW150NyRGYV50NyQkITNMKSpSelA9RD1NRiwkITNRLl1eMC9QYSEqRiw3JDckJCEzPmkjPVcrWEJXJEYsRkVGZV50NyRGW190NyQkITNXNSU9IlFJcF1NRiwkITNRdVJxL3VFdCIpRiw3JDckJCEzR04oPmEzKz1aJEYsRlFGX190NyQ3JCQhMyVbdD5hMys9WiRGLEZncTckJCEzY0FHV1FVOCRbJEYsJCEzaVZIKlFTa0BIKEYsNyQ3JCQhMyR6P0BrO2I3XSRGLEZmckZcYHQ3JEZiYHQ3JCQhM0FNc3dRYWQ6TkYsJCEzdjg+My45MTZrRiw3JDckJCEzZSFvQXVDNTJgJEYsRmZzRmZgdDckNyRGXWF0RmJzNyQkITN5WTs0Um0sW05GLCQhMyhRKTNGLSVlKkhiRiw3JDckJCEzQ2BUVUdgO2dORixGYXRGYWF0NyRGZ2F0NyQkITNXZWdUUnlYIWUkRiwkITMpUiYpZjlTYilbWUYsNyQ3JCQhM0tFY1U0L2kqZSRGLEZddUZbYnQ3JEZhYnQ3JCQhMzZxL3VSISoqR2gkRiwkITM1QylbMVNfeHckRiw3JDckJCEzKCopNEYvXHYhPk9GLEZeXGxGZWJ0NyRGW2N0NyQkITNtIylbMVMtTVhPRiwkITN5JHpQKSpSXG0pR0YsNyQ3JCQhM2lyJkc5ZEkmW09GLEZdXWxGX2N0NyQ3JEZmY3QkITNRKioqKioqKioqKioqKnojRiw3JCQhM3clSCpRUzl5eE9GLCQhMyFSd0UhKlJZYisjRiw3JDckJCEzRVcrVl9jKXpuJEYsRl1ebEZcZHQ3JEZiZHQ3JCQhM2crKysrKyshbyRGLEZpZXM3JDckJCIzYUc5ZEdtSEpKRixGLTckJCIzWSMzT1hvVzQ6JEYsJCEzQTMtTTY8T3glKkYsNyQ3JCQiM2VgOGE7PVBoSkYsRjlGXWV0NyQ3JCQiMzlgOGE7PVBoSkYsRjk3JCQiM0UhenFNNE8leUpGLCQhMy14cG5MLTRZKClGLDckNyQkIjNneTdeL3FXIj4kRixGRUZqZXQ3JDckJCIzO3k3Xi9xVyI+JEYsRkU3JCQiM14pXDBDXUZmPyRGLCQhMyRldThndj1bLClGLDckNyQkIjN2LTdbIz5BOkEkRixGaGVyRmdmdDckRl1ndDckJCIzSzEtTTYqPU1CJEYsJCEzSTwwTnlzYSRHKEYsNyQ3JCQiM3lGNlghUShmXktGLEZmckZhZ3Q3JEZnZ3Q3JCQiMzc5XEY/LiI0RSRGLCQhMzUnRyhvK2VGX2xGLDckNyQkIjNRXzVVb0RuIkckRixGZnNGW2h0NyQ3JCQiMyNHMEAlb0RuIkckRixGZnM3JCQiMyM+aTQjSDxTKUckRiwkITNkZFMtQlYrQGVGLDckNyQkIjNUeDRSY3h1NkxGLEZhdEZoaHQ3JEZeaXQ3JCQiM3RIVjlRSiplSiRGLCQhM1tEM09YR3QqMyZGLDckNyQkIjNWLTRPV0gjPU0kRixGXXVGYml0NyRGaGl0NyQkIjMpei56cWElUVZMRiwkITMxJ2YocG44WWVWRiw3JDckRmNjcCQhM2hIKys/Llw7UkYsRlxqdDckNyRGYWdyJCEzPEgrKz8uXDtSRiw3JCQiM3VDPHBObCoqcExGLCQhM2c4JEgjUjgqXGkkRiw3JDckJCIzU0hNXXhOJjNQJEYsRl5cbEZpanQ3JEZfW3U3JCQiM3ddZkU4XUUmUiRGLCQhMyEpeVs7TEQ7KSlHRiw3JDckJCIzI3AzYCg+JSlHKVIkRixGXV1sRmNbdTckRmlbdTckJCIzeHcsJTNcTDBVJEYsJCEzWVcvNUZQTF5ARiw3JDckJCIzZFZGK2lLc0RNRixGXV5sRl1cdTckRmNcdTckJCIzeS1XVG8+IWVXJEYsJCEzbjRnLkBcXTk5Riw3JDckJCIzbStDRC8iZUpYJEYsRmhqbEZnXHU3JEZdXXU3JCQiM0NIJykpZldxNVokRiwkITMlNHY6KFw2d3duRmZbbTckNyQkIjN3ZD9dWUhmIVskRixGaVttRmFddTckRmdddTckJCIzQ2JHY0IqUWpcJEYsJCIzSGBmRzQicF8iZkZiXW43JDckJCIzJVtyXigpeUYhM05GLEZoXG1GW151NyRGYV51NyQkIjNFIjNQNlMyO18kRiwkIjNdU0hkclwiKWZ6RmZbbTckNyQkIjNQczgrSkVZTk5GLEZdXnFGZV51NyQ3JCQiMyM+UCw1amlhYCRGLEZjXW03JCQiM3MyOHJ5ZShvYSRGLCQiM2lHPEEuLiJHYCJGLDckNyQkIjMtSDVEdHUqR2MkRixGW19uRmJfdTckRmhfdTckJCIzPU1iR2NWOXNORiwkIjMnUTsnRzQiUidwQUYsNyQ3JCQiM2smbytiSksuZiRGLCQiM0UrKysrKysrR0YsRlxgdTckNyQkIjM1J28rYkpLLmYkRixGZ19uNyQkIjN1ZihmUSRHVChmJEYsJCIzdyhmXWAielkxSUYsNyQ3JCQiM3VVLnZkcnc8T0YsRmZgbkZbYXU3JDckJCIzPlYudmRydzxPRixGZmBuNyQkIjM/JylSVjY4b0FPRiwkIjNjS11UQG5IVlBGLDckNyQkIjMlKSoqKioqKioqPj9YT0YsRmhlb0ZoYXU3JEZeYnU3JCQiMz83IzMhKnlcemskRiwkIjNPbiV6dV9ELFslRiw3JDckJCIzT2QnXEElb2pzT0YsRmRmb0ZiYnU3JEZoYnU3JCQiM21RQ2VtIz1LbiRGLCQiM1ArUmFMViZwQCZGLDckNyRGYmNsJCIzNmsqKioqeic0WlQmRixGXGN1NyQ3JEZkaG1GY2N1NyQkIjNNJylRJilcUDUocCRGLCQiMyk0R2xgaVNzJmZGLDckNyQkIjNRUmZgdjxYKXAkRixGYGdvRmdjdTckRl1kdTckJCIzdlQ7SCIqPVs/UEYsJCIzaSIqM3hyX3opcCdGLDckNyQkIjNhRFZcY0NuQlBGLEZcaG9GYWR1NyRGZ2R1NyQkIjNnKFJIRi5nUXUkRiwkIjNFLWw8PSpcLlcoRiw3JDckJCIzQzZGWFBKKilbUEYsRmpjcUZbZXU3JEZhZXU3JCQiM1lgcjt1IlFzdyRGLCQiM3k4QGVrWCE+PSlGLDckNyQkIjMlcDQ2JT1RNnVQRixGZmRxRmVldTckRltmdTckJCIzSTRcZzpqaCF6JEYsJCIzVkN4KTRAZk0jKilGLDckNyQkIjMzJFtwJCpcTSQqeiRGLEZiZXFGX2Z1NyQ3JCQiM2sjW3AkKlxNJCp6JEYsRmJlcTckJCIzOmxFL2RXKlIiUUYsJCIzMU5MUmRRLGwnKkYsNyQ3JCQiM01veUshPWJYI1FGLEZfZXNGXGd1LUZqbjYmRlxvRl1vJCIxc0N5PyEzJz5xRmJvRmNvLUYmNmdxNyQ3JCQhM3EqKioqKioqKioqKip6T0YsJCIzVWIrKytVeF8qKUZmW203JCQhM0lDUzI6SkQhcCRGLEZjXW03JEZhaHU3JCQhMzV1YWIvWz4icCRGLCQiMyNbbylRNnEpekEiRiw3JDckJCEzJEd6eGEscnJyJEYsRltfbkZlaHU3JEZbaXU3JCQhMy8leWApZVxlP1BGLCQiMzpnVzgoUmk5NSNGLDckNyQkITMhNGMiKWUiKikzV1BGLEZlYHVGX2l1NyQ3JEZmaXVGZ19uNyQkITMpUjRfSjZ2KlxQRiwkIjMvTi0pR3lQXChIRiw3JDckJCEzJylIYEc7bytyUEYsRmZgbkZqaXU3JEZganU3JCQhMyNSU111RWwkelBGLCQiMyEqNGdpb0pUW1FGLDckNyQkITNPKTQqbztaI3p6JEYsRmhlb0ZkanU3JDckJCEzI3o0Km87WiN6eiRGLEZoZW83JCQhM3Q5KFs8VWIoM1FGLCQiM24meXJWYikpPXMlRiw3JDckJCEzKW8nRzQ8RSVbI1FGLCQiM0cqKioqKioqKioqKioqPiZGLEZhW3Y3JDckRmhbdkZkZm83JCQhM0FDcS93YjlRUUYsJCIzbWZ2NlNSTyZmJkYsNyQ3JCQhM1NObVw8MHdeUUYsRmBnb0ZeXHY3JDckJCEzJVxqJ1w8MHdeUUYsRmBnbzckJCEzO01gTUlkYG5RRiwkIjNXTkwnZUtSKW9rRiw3JDckJCEzIVJTK3pUeSd5UUYsRlxob0ZbXXY3JEZhXXY3JCQhMzNXT2slKWUjcCpRRiwkIjM/NiI0O3I5Qk0oRiw3JDckJCEzVXNUST1qZjBSRixGamNxRmVddjckRltedjckJCEzWmE+JSpRZ0pFUkYsJCIzPiYpW04oNCF6OiMpRiw3JDckJCEzXFN6cT1VXktSRixGZmRxRl9edjckNyQkITMkNCV6cT1VXktSRixGZmRxNyQkITNTay1DJD4xZCZSRiwkIjN1aTE1JFtsIyozKkYsNyQ3JCQhM1c0PDY+QFZmUkYsRmJlcUZcX3Y3JDckRmNfdiQiMyNHKysrKysrPypGLDckJCEzTXUmUXZNJzQmKVJGLCQiM11RayUpbzN1aSoqRiw3JDckJCEzX3hhXj4rTicpUkYsRl9lc0ZpX3Y3JDckJCEzSysrKysrK2dMRiwkITNzJykqKioqekQjZnooRiw3JCQhM2MnKilIVms4c08kRixGUTckNyQkITMrKCopSFZrOHNPJEYsRlE3JCQhM1k+QmVhXCV6TyRGLCQhMyE0P1dOaFAsZShGLDckNyQkITNrcDhMRChvbVIkRiwkITMjKSoqKioqKioqKioqKip6J0YsRl9hdjckNyRGZmF2RmZyNyQkITNkSm4hXDonUStNRiwkITMtckp0N1kuKnAnRiw3JDckJCEzSVVHTDFRN0VNRixGYnNGXGJ2NyQ3JEZjYnZGZnM3JCQhM29WNkJidCNHViRGLCQhMzlUQCM+aEp6ImVGLDckNyQkITMnXEpNdCkpeWJYJEYsRmF0RmdidjckNyQkITNTOlZMKCkpeWJYJEYsRmF0NyQkITMhZWJiYmJvX1kkRiwkITNFNjY2NidHbyRcRiw3JDckJCEzMSl5TiRvUi4mWyRGLEZddUZkY3Y3JEZqY3Y3JCQhM1luKnpldjR4XCRGLCQhM1EiMysuaERkMCVGLDckNyQkITNxZ3NMXCEqWzlORixGXlxsRl5kdjckRmRkdjckJCEzZXpWP2M0OklORiwkITNdXiEqWzRFaXVKRiw3JDckJCEzTUwoUS44V1JhJEYsRl1dbEZoZHY3JEZeZXY3JCQhM0MiekdsOiNmaU5GLCQhM2lAIXknMyc+TkgjRiw3JDckJCEzKzEtTTYjKlJ0TkYsRmldbEZiZXY3JEZoZXY3JCQhM00uSyZvTkxdZiRGLCQhM3YiKnAneWc7Q1QiRiw3JDckJCEza3k7TSNIYUdnJEYsRmhqbEZcZnY3JDckJCEzNHo7TSNIYUdnJEYsRmhqbDckJCEzWjp3PGRYWkZPRiwkITNCOSdmMDJPSkomRmZbbTckNyQkITN1XkpNdCQ0QmokRixGaVttRmlmdjckNyQkITNIXkpNdCQ0QmokRiwkITNNJyoqKioqKioqKioqKipSRmZbbTckJCEzOUY/XWRkIipmT0YsJCIzYyVvXXYkUip5XCRGZlttNyQ3JCQhM1FDWU1hV3doT0YsRmhcbUZoZ3Y3JEZeaHZGXGh1NyQ3JCQhM2dvMCJwTi4vRiRGLEYtNyQkITNXdHkxJjNua0gkRiwkITNPPC5MKEdLKWUkKkYsNyQ3JCQhM0VAUTYjb0JISSRGLEY5RmZodjckRlxpdjckJCEzdihcITQhPW1FTCRGLCQhMylldnQoXFhMbyUpRiw3JDckJCEzLXRxSjJTV05MRixGRUZgaXY3JEZmaXZGY2B2NyQ3JCQiMyk9cnNqbmVHLSRGLEYtNyQkIjM4NyVSXk10Vy0kRiwkITNjTCZbR08kPWgqKkYsNyQ3JCQiMzoqKioqKioqKioqKipSSUYsJCEzJ1wsKytlQXplKkYsRl5qdjckNyRGZWp2JCEzdTsrKyFlQXplKkYsNyQkIjNPTEEmR25JTDAkRiwkITMkW2VJQG9FTEIqRiw3JDckJCIzVyg0UmNiJGVhSUYsRjlGXVt3NyRGY1t3NyQkIjNpVHB5IjNBMzMkRiwkITNqYHRZL18wLSYpRiw3JDckJCIzW0EhNE91ZVkzJEYsRkVGZ1t3NyRGXVx3NyQkIjNVXDtzIVw4JDNKRiwkITNBQ1Qhb3MkeXF4Riw3JDckJCIzXloqeTokUnQ5SkYsRlFGYVx3NyQ3JEZoXHdGZ3E3JCQiM0JkamwqKlshZTgkRiwkITMiUiozOVxBXlJxRiw3JDckJCIzbXIpWyY+IjRbOSRGLEZmckZcXXc3JDckJCIzYnMpWyY+IjRbOSRGLEZmcjckJCIzW2w1ZjNqSGpKRiwkITNnandacjJDM2pGLDckNyQkIjNvJ3o9dkklKVs8JEYsRmZzRmlddzckRl9edzckJCIzI0d4RHZyKHkhPiRGLCQhMz1NVyJRSHBwZCZGLDckNyQkIjNzQCgpWyZcZlw/JEYsRmF0RmNedzckRmledzckJCIzNCJbZ2s3eiM9S0YsJCEzKVE/XmgieXBYW0YsNyQ3JCQiM3dZJ2VNb01dQiRGLEZddUZdX3c3JEZjX3c3JCQiM1kpPSZSTjB4WEtGLCQhM2R0eltRalU5VEYsNyQ3JCQiM01yJkc5KCk0XkUkRixGXlxsRmdfdzckRl1gdzckJCIzcScqKUhWJT5FdEtGLCQhMzlXWiMzJ1s6JFEkRiw3JDckJCIzUSdcKVJmXT0mSCRGLEZdXWxGYWB3NyRGZ2B3NyQkIjMmXGdrS05gMkkkRiwkITMlUV5oSlEkKT1sI0YsNyQ3JCQiM18/JW90Q2dfSyRGLEZpXWxGW2F3NyQ3JCQiMyc0VW90Q2dfSyRGLEZdXmw3JCQiM0o3JCo+aVpDR0xGLCQhM3YkRylcMD5oPz5GLDckNyQkIjNhWCRRYFZOYE4kRixGaGpsRmhhdzckRl5idzckJCIzYz9TOHJodGJMRiwkITNBYF0keVVTJCo9IkYsNyQ3JEZjY3AkITNdQSsrIWVBZjIiRixGYmJ3NyQ3JCQiM1UqKioqKioqKioqKipmTEYsJCEzc0ErKyFlQWYyIkYsNyQkIjNxLkw+PSVcOFEkRiwkITNrOEUkW1hOUGAlRmZbbTckNyQkIjNlLFRwJ3l6SlEkRixGaVttRmFjdzckRmdjdzckJCIzO0l2dyYqeWgxTUYsJCIzPUw8ImVnX1gkR0ZmW203JDckJCIzQWVQJSpHWWg1TUYsRmhcbUZbZHc3JEZhZHc3JCQiMzxjPE10aik9ViRGLCQiM24yY2ttU0c/NUYsNyQ3JCQiM3Y6TT5yJVwhUU1GLEZjXW1GZWR3NyRGW2V3NyQkIjM9IylmIjQmWzpkTUYsJCIzWVUrcnNHNmQ8Riw3JDckJCIzU3NJVzhWW2xNRixGW19uRl9ldzckNyQkIjMlRzJWTUolW2xNRixGW19uNyQkIjM/My1cR0xVI1skRiwkIjNbeFd4eTslUlwjRiw3JDckJCIzW0hGcGIiPkhcJEYsRmdfbkZcZnc3JEZiZnc3JCQiMz9NVzExPXAyTkYsJCIzJD0iKlFbW3EyQiRGLDckNyQkIjNkJ1FVeipSTj9ORixGZmBuRmZmdzckRlxndzckJCIzQWcnUU9HZ0hgJEYsJCIzPVlMITRIKmZuUkYsNyQ3JCQiM21WPz5TKSl5Wk5GLEZoZW9GYGd3NyRGZmd3NyQkIjNBJylHQGgoRyNlTkYsJCIzYCF5bnA0R1dxJUYsNyQ3JCQiM3UrPFcjb0JfZCRGLEZkZm9Gamd3NyRGYGh3NyQkIjNDN3J5UXNcJGUkRiwkIjNWOUEuLnBEVGFGLDckNyQkIjMkeU4icEMmZUVnJEYsRmBnb0ZkaHc3JEZqaHc3JCQiM3BROE87ZHczT0YsJCIzNV1tNDRkM3loRiw3JDckJCIzI1wsVHBPJDRJT0YsRlxob0ZeaXc3JEZkaXc3JCQiM2ZsYiRSPk1TaiRGLCQiMy0lM2heXjlcInBGLDckNyQkIjMtczE+NCNHdmwkRixGamNxRmhpdzckRl5qdzckJCIzZyJ6NDpuLSRmT0YsJCIzIyk9YkFATHVed0YsNyQ3JEZiY2wkIjM3cyoqKio+dUZiIylGLEZianc3JEZoanc3JCQiM2cmZiE9Ij1IVW8kRiwkIjNnMyZbcS9GJSpRKUYsNyQ3JCQiM2luP18tRGMlbyRGLEZmZHFGXFt4NyRGYlt4NyQkIjMiPk49RUsyd3EkRiwkIjNEPlRYJHAiKTQ4KkYsNyQ3JCQiM3hgL1skPSR5NFBGLEZiZXFGZlt4NyRGXFx4NyQkIjMobzVjU1kmKTR0JEYsJCIzbUooZilSamBzKSpGLDckNyQkIjNaUilRVydRK05QRixGX2VzRmBceC1Gam42JkZcb0ZdbyQiMTspW2Anb21tbUZib0Zjby1GJjZlcTckNyRGZ2R0JCIzTC4rK2deJWV0JEYsNyQkITNzXVpIbnFNLVBGLEZoZW83JDckJCEzO15aSG5xTS1QRixGaGVvNyQkITNraD5gOyYqUi9QRiwkIjN1LypIOHopKjRZJUYsNyQ3JCQhM0I+JilwblxFSFBGLEZkZm9Gal14NyQ3JCQhM24+JilwblxFSFBGLEZkZm83JCQhMy5zLSQzbip5TFBGLCQiM2h6YzJ4VFpNYEYsNyQ3JCQhMz0pRy0ib0c9Y1BGLEZgZ29GZ154NyRGXV94NyQkITNfImVHXiMpekp3JEYsJCIzXGE5I0djXHo/J0YsNyQ3JCQhM0VjZ11vMjUkeSRGLCQiM3ErKysrKysrb0YsRmFfeDckNyRGaF94RlxobzckJCEzKT0qb1V6KnBEeiRGLCQiM0VJc2NbXFUiMyhGLDckNyQkITNtRCk0Km8nPSsiUUYsJCIzXysrKysrKyt3RixGXmB4NyQ3JCQhM0BEKTQqbyc9KyJRRixGamNxNyQkITNGLV9zTCwnPiNRRiwkIjNFL0lKTS4hXCZ6Riw3JDckJCEzRyRmOCRwbCRwJFFGLCQiM2MpKioqKioqKioqKioqUilGLEZdYXg3JDckRmRheEZmZHE3JCQhMz83Ti0pR104JlFGLCQiMyE9eWUrc3YkRykpRiw3JDckJCEzQ2l0cnBXJlEnUUYsRmJlcUZqYXg3JEZgYng3JCQhMzlBPUtVL3UhKVFGLCQiM2NkWCFlNV49cSpGLDckNyQkITNJSTY3cUJ4ISpRRixGX2VzRmRieDckNyRGZGB2JCEzI1EqKioqKlJbTmJcRiw3JCQhM3dcZkNGdlchUSRGLEZddTckNyQkITM/XWZDRnZXIVEkRixGXXU3JCQhMyNbWT4/Wj9EUSRGLCQhM21ROCYqPikpcFZWRiw3JDckJCEzJ0dVWiMzRSEqNE1GLEZeXGxGaGN4NyRGXmR4NyQkITNcd1FNczsnXFQkRiwkITN5My45PmVmaU1GLDckNyQkITNeJiopWyMqb2QkUk1GLEZdXWxGYmR4NyRGaGR4NyQkITMvKkdvRShHU1pNRiwkITNZeSNIJD1HXCJlI0YsNyQ3JCQhMztvLkRxRiIpb01GLEZpXWxGXGV4NyRGYmV4NyQkITNzK0YqSDJXKXpNRiwkITMhKVsjPXYiKSpRKzxGLDckNyQkITMhMyU9RF55RSlcJEYsRmhqbEZmZXg3JEZcZng3JCQhM0Y4ckp0X0c3TkYsJCEzLSg9c3E7b0c+KUZmW203JDckJCEzIVJKYEEkSHNGTkYsRmlbbUZgZng3JDckJCEzTjlMREtIc0ZORixGaVttNyQkITMkXF9UT1pFWmEkRiwkIjM3XjZRNSU9Oz0nRmJdbjckNyQkITM1J3lhSyx5cmIkRixGaFxtRl1neDckRmNneDckJCEzL1BmJ1JubnJkJEYsJCIzTj0lWyJcPT5IJSpGZlttNyQ3JCQhM2tmaUQlNExtZSRGLEZjXW1GZ2d4NyRGXWh4NyQkITNyWy5IdSkzJzRPRiwkIjMkPShlcyY9QVMjPUYsNyQ3JCQhM0lLeER2IikzO09GLEZbX25GYWh4NyQ3JCQhMyY9dGRfPCkzO09GLEZbX243JCQhM1FnWmh1KzBVT0YsJCIzOi1wYCc9RF5xI0YsNyQ3JCQhMyVcP2ZpRFZiayRGLEZnX25GXml4NyRGZGl4NyQkITMjSDxSXEYiXHVPRiwkIjNbS3pNKD1HaWUkRiw3JDckJCEzZXgxRVAkKSpcbiRGLEZmYG5GaGl4NyRGXmp4NyRGYWlvJCIzKkcrKys7WGV0JEYsNyQ3JCQhM0tOc2RCSiRcOiRGLEYtNyQkITNtJnpXIjNZJHo7JEYsJCEzZzQhUSd6TTshbypGLDckNyQkITMnelsheVtNWCg9JEYsRjlGaWp4NyRGX1t5NyQkITMmM1VuSnFMVD8kRiwkITM5WzkzVWRtKnkpRiw3JDckJCEzdVJQKVJ4dCo+S0YsRkVGY1t5NyRGaVt5NyQkITM7WCs+KXpLLkMkRiwkITNrJylbXy8hbyIqKnlGLDckNyQkITNdIipwPSo0JVxfS0YsRlFGXVx5NyQ3JCQhMyc+KnA9KjQlXF9LRixGaGVyNyQkITNZcEVAJCo9YHdLRiwkITM9RCRvcEVxJzNxRiw3JDckJCEzO1ctUkNXLCZHJEYsRmZyRmpceTckRmBdeTckJCEzQSVITiMpKTR0N0xGLCQhM2ZrPFRIRDw9aEYsNyQ3JCQhMyNmXCRmXFpgPExGLEZmc0ZkXXk3JEZqXXk3JCQhM189ekQkM0kqW0xGLCQhMzcuXyY9enV3QSZGLDckNyQkITM5W256dV0wXUxGLEZhdEZeXnk3JDckJCEzb1puenVdMF1MRixGYmNyRl5jeDckNyQkIjNkekFqPycpcC9IRixGLTckJCIzJD5hLlJtVnUiSEYsJCEzO2QpZShmIjRPcCpGLDckNyQkIjNxJmVbM1x3eiRIRixGOUZfX3k3JEZlX3k3JCQiM1tVITRTJW9lWkhGLCQhMzsyRS01cicqbyopRiw3JDckJCIzJT0qWzFoVkRySEYsRkVGaV95NyRGX2B5NyQkIjNPV1g2Qyt0eEhGLCQhM3FnakdnXUtXIylGLDckNyQkIjMmej4iR0pBYC9JRixGUUZjYHk3JEZpYHk3JCQiM01YK0EvSyh5KyRGLCQhM004LGI1SW8+dkYsNyQ3JCQiM18vdlwsLCJ5LiRGLEZmckZdYXk3JEZjYXk3JCQiM3hZYkslUTshUUlGLCQhMylvJ1EiMyc0LyZ6J0YsNyQ3JEZlanYkITMxQSsrU1tOWm5GLEZnYXk3JDckRmVqdiQhMydILSsrJVtOWm5GLDckJCIzUTtzIXBII29sSUYsJCEzKT4vb0F1MFUxJ0YsNyQ3JCQiM1lUbGhZZzRvSUYsRmZzRmRieTckRmpieTckJCIza0M+JWVxdEo0JEYsJCEzbzZbZ2tVJEhMJkYsNyQ3JCQiM2Vsa2VNNzwpNCRGLEZhdEZeY3k3JEZkY3k3JCQiM1dLbXg5Xm0/SkYsJCEzRSNlVHB5aTtnJUYsNyQ3JCQiM2ohUmNEVVkjR0pGLEZddUZoY3k3JEZeZHk3JCQiM0VTOHJCbDpbSkYsJCEzJz5OeSM0OFJxUUYsNyQ3JCQiM206al81O0tlSkYsRl5cbEZiZHk3JEZoZHk3JCQiMy9bZ2tLemt2SkYsJCEzYUFeaEopPiJSSkYsNyQ3JCQiM29TaVwpeidSKT0kRixGXV1sRlxleTckRmJleTckJCIzJ2V2IWVUJFJKPyRGLCQhM0IjKj0mUk5beVMjRiw3JDckJCIzR2xoWScpPlo9S0YsRmldbEZmZXk3JEZcZnk3JCQiM25qYV5dMmpJS0YsJCEzW2gnKUd3b2R3O0YsNyQ3JCQiMykpKjNPVzxaJltLRixGaGpsRmBmeTckRmZmeTckJCIzW3IsWGZAN2VLRiwkITMjR0phaSlSMGAlKkZmW203JDckJCIzIVwsMUNPQSd5S0YsRmlbbUZqZnk3JEZgZ3k3JCQiM3N6W1FvTmgmRyRGLCQhM2o4P2k0I1IuOSNGZlttNyQ3JCQiMyQqUmZQXXZwM0xGLEZoXG1GZGd5NyRGamd5NyQkIjNgKGU+dChcNThMRiwkIjM1Ikg1cWN2QjwmRmZbbTckNyQkIjNfa2VNUUZ4UUxGLEZjXW1GXmh5NyQ3JCQiMydcJ2VNUUZ4UUxGLEZjXW03JCQiM0wmSGFpUSdmU0xGLCQiMycpZVVPTSE0Jls3Riw3JDckRmFnciQiM19yKioqKmZea2s8RixGW2l5NyQ3JEZjY3AkIjN1cioqKipmXmtrPEYsNyQkIjNrYzE3QlFWbkxGLCQiMydlTik+VWFUIik+Riw3JDckJCIzQTteamA2Mm9MRixGW19uRmhpeTckRl5qeTckJCIzNSQpW3ArQnEjUiRGLCQiMzUiemkjW1VDPUZGLDckNyQkIjNJdFopZSpmXSZSJEYsRmdfbkZiank3JEZoank3JCQiMzY0InAjeTIoelQkRiwkIjMrRHNLYUkyYk1GLDckNyQkIjMlM1ZNIlEzJUhVJEYsRmZgbkZcW3o3JEZiW3o3JCQiMzdOTCVlRFJLVyRGLCQiM3lmO1JnPSE+PiVGLDckNyQkIjMjejMlUSFvdi5YJEYsRmhlb0ZmW3o3JEZcXHo3JCQiM2VodlRMeF1vTUYsJCIzcSQ0Y2ttSShHXEYsNyQ3JCQiMy1YUGpBMCJ5WiRGLEZkZm9GYFx6NyRGZlx6NyQkIjNlKHkiKjRAd1BcJEYsJCIzZ0YwX3MlZmJtJkYsNyQ3JCQiMzUtTSlbT1hfXSRGLEZgZ29Galx6NyQ3JCQiM20sTSlbT1hfXSRGLEZgZ283JCQiMzA5Z2Mpb1chPk5GLCQiM0hqXGV5IylRLWtGLDckNyQkIjM+Zkk4Mi1vS05GLEZqX3hGZ116NyQ3JCQiM3ZlSTgyLW9LTkYsRlxobzckJCIzMVMtOW1KSldORiwkIjM+KFJcWTM8I1JyRiw3JDckJCIzRztGUVxdNmdORiwkIjN1KSoqKioqKioqKioqKmYoRixGZF56NyQ3JEZbX3pGamNxNyQkIjMxbVdyVjtlcE5GLCQiMyk+JFFyISplL3d5Riw3JDckJCIzI0hQSzsqKVx2ZSRGLEZmYXhGYV96NyQ3JCQiM090QmoiKilcdmUkRixGZmRxNyQkIjNfI3ApR0AsJltmJEYsJCIzeW0jeW5wdUdoKUYsNyQ3JCQiMyxJPylRdCUpXGgkRixGYmVxRl5gejckRmRgejckJCIzYT1IJykpZj0saSRGLCQiM1ktRiVHXS4oXCQqRiw3JDckJCIzNShvSmhkPkNrJEYsRl9lc0ZoYHotRmpuNiZGXG9GXW8kIjFNQSZRUlRITidGYm9GY28tRiY2ZXE3JDckRmFpbyQiMyFIKysrIUhUd2xGLDckJCEzWzQ8Nj5KXyhvJEYsRmJddDckNyRGXGJ6RlxobzckJCEzb1IsQHVTQClvJEYsJCIzVltgXyY9TjAjb0YsNyQ3JCQhMyt5YV4+NVc5UEYsRmpjcUZgYno3JEZmYno3JCQhM2pcJTMmR1VnPFBGLCQiM0lCNkZyMCwlcChGLDckNyQkITNfWSM+Kj4qZTh1JEYsRmZkcUZqYno3JEZgY3o3JCQhMytnbiFHUSUqcHUkRiwkIjMzKipvLGRmW24mKUYsNyQ3JCQhMy86SUs/b0ZvUEYsRmJlcUZkY3o3JEZqY3o3JCQhMyUqcF01UFhRd1BGLCQiM2l3RXdVOCc0VypGLDckNyQkITNhJHlFMnMlPiZ6JEYsRl9lc0ZeZHo3JDckRmRgdiQhM0UlKioqKioqNCh5OUBGLDckJCEzS0kwO0hqQWtMRixGXV5sNyRGW2V6NyQkITMxKT5LIip5YVlPJEYsJCEzazAmcHItaiQpKT5GLDckNyQkITMnSCtpLFQibyRSJEYsRmhqbEZfZXo3JEZlZXo3JCQhMzs1bVgqKWY0KFIkRiwkITN3diVlai1nczUiRiw3JDckJCEzMndNOyJcT0pVJEYsRmRbbUZpZXo3JDckJCEzaXZNOyJcT0pVJEYsRmlbbTckJCEzJT0tInkqPVAmSE1GLCQhM0FgV1piLWRoQUZmW203JDckJCEzc1tcO3M6Zl9NRiwkIjM1LysrKysrK1NGZlttRmZmejckNyQkITNHW1w7czpmX01GLEZoXG03JCQhM1NNYTUhUnk+WSRGLCQiM29ZZWpfKGYlXGxGZlttNyQ3JCQhMyM9VW1KbFk/WyRGLEZdXnFGZWd6NyQ3JCQhM1FAaztgbS8jWyRGLEZjXW03JCQhMzFZKUgvZj5XXCRGLCQiMypcaHVnKCpbZ2AiRiw3JDckJCEzLSUqeTtNPF02TkYsRltfbkZiaHo3JEZoaHo3JCQhM3VkVXYhemdvXyRGLCQiMyhbayYpbyg+OjxDRiw3JDckJCEzNm4kcF4ibyY0YSRGLEZnX25GXGl6NyQ3JCQhM25tJHBeIm8mNGEkRixGZ19uNyQkITMlKXAneTUqPklmTkYsJCIza3ZtcHhcRClIJEYsNyQ3JCQhM3dSMzwnKj1UcU5GLEZmYG5GaWl6NyRGX2p6NyQkITMnPjMuOT5WPGYkRiwkIjNpL3hdeXpOelRGLDckNyQkITNTN0I8eHAnKSpmJEYsRmhlb0Zjano3JEZpano3JCQhMzIlXEY8UiU9Q09GLCQiM11NKD0kejRZZ11GLDckNyQkITNeJnl0ImU/S0hPRixGZGZvRl1bW2w3JEZjW1tsNyQkITN1MD4wI2ZEbWwkRiwkIjNSayhILClSY1RmRiw3JDckJCEzO2VfPFJyeGVPRixGYGdvRmdbW2w3JDckJCEzc2RfPFJyeGVPRixGYGdvRmhhejckNyQkITNbKysrKysrU0lGLCQhM2cnKSoqKioqNCh5JykqKkYsNyQkITNxYXJXOkspPjIkRixGOTckRmpcW2w3JCQhMydSTVdpQSxjMiRGLCQhM1FTIipRTXAqNDYqRiw3JDckJCEzWTEvbFNOXS9KRixGRUZeXVtsNyRGZF1bbDckJCEzRW9wRUAuIT02JEYsJCEzISp5RCRvPipcPyMpRiw3JDckJCEzQWVPJmUnUS1QSkYsRlFGaF1bbDckNyRGX15bbEZncTckJCEzLSRmKkc7JSoqejkkRiwkITNAPmdGZjkrSXRGLDckNyQkITMpMyJwMCI+VyZwSkYsRmZyRmNeW2w3JEZpXltsNyQkITNLPEFKNiYpPiU9JEYsJCEzdGQlPjxzLiZSa0YsNyQ3JCQhM2tpLEU7WDEtS0YsRmZzRl1fW2w3JDckRmRfW2xGYnM3JCQhM2lUW0wxd1I/S0YsJCEzRScqRzslKWYrXGJGLDckNyQkITMmW1RqOSVbZU1LRixGYXRGaF9bbDckRl5gW2w3JCQhM1FtdU4sbmZjS0YsJCEzeU1qZ1kjMyZlWUYsNyQ3JCQhM2ltbW1tXjVuS0YsRl11RmJgW2w3JEZoYFtsNyQkITNvITQhUSd6JnojSCRGLCQhMz91KFwhNDAsb1BGLDckNyQkITMjKT0qcD1cRCcqSCRGLEZeXGxGXGFbbDckRmJhW2w3JCQhM1Y6RlMiKlsqKkdMRiwkITM7OEtcckZeeEdGLDckNyQkITMuckoyPGU5S0xGLEZdXWxGZmFbbDckRlxiW2w3JEZkYHYkITMiUSoqKioqKjQoeTlARiw3JDckJCEzQWsoSE9dKyVSSUYsRi03JEZmXFtsJCEzUSkpKioqKio0KHknKSoqRiw3JDckJCIzRVo9KltjUWx5I0YsRi03JCQiM0dyd20jKVJUNUdGLCQhM3ohPXBtJlwuRSUqRiw3JDckJCIzUmAiM15WOyk+R0YsRjlGXmNbbDckRmRjW2w3JCQiM0ZzSnhpcmJTR0YsJCEzYktIJHAhSFIsKClGLDckNyQkIjNfZldLMFY0YEdGLEZFRmhjW2w3JDckJCIzMWZXSzBWNGBHRixGRTckJCIzOXUneUdNKzIoR0YsJCEzPyZvJz5kM3Z3ekYsNyQ3JCQiM2tsMmF2QFAnKUdGLEZncUZlZFtsNyQ3JEZcZVtsRlE3JCQiMzl2VClIX1YzIUhGLCQhMyV5Vmd1ISkzQEQoRiw3JDckJCIzd3JxdlgrbD5IRixGZnJGYGVbbDckRmZlW2w3JCQiMzh3JyozLm4pNCRIRiwkITNRIj5DeHZtdV8nRiw3JDckJCIzIXpQdGYieiNIJkhGLEZmc0ZqZVtsNyRGYGZbbDckJCIzN3hePiQpKUg2J0hGLCQhMy5Xeil6cUNHIWVGLDckNyQkIjMtJW8qPSd5MGkpSEYsRmF0RmRmW2w3JEZqZltsNyQkIjM1eTFJaklGIipIRiwkITNvJ3BeI2VFPXldRiw3JDckJCIzOiEqZlNjT1s+SUYsRl11Rl5nW2w3JEZkZ1tsNyQkIjNhemhTVmlUQElGLCQhMzVeYV4zMWFgVkYsNyQ3JEZlanYkITMkUS0rKzUoeTFSRixGaGdbbDckNyRGZWp2JCEzJUgtKys1KHkxUkYsNyQkIjM7IlxGP15VMDAkRiwkITNNSShvK0djamkkRiw3JDckJCIzKSpmU2lcTGBeSUYsRl5cbEZlaFtsNyQ3JCQiM1VnU2lcTGBeSUYsRl5cbDckJCIzUyo+aTQjUi55SUYsJCEzLStiUy1bMyYqR0YsNyQ3JCQiMysmKVJmUCYzOzMkRixGXV1sRmJpW2w3JEZoaVtsNyQkIjNBMnAqKUhgXzBKRiwkITNzcEF1Q0wiUTsjRiw3JDckJCIzZzRSY0RQbzZKRixGXV5sRlxqW2w3JDckRmNqW2xGaV1sNyQkIjMtOjskKVFuLExKRiwkITNVUiF6cSU9YUs5Riw3JDckJCIzak1RYDgqZTw5JEYsRmhqbEZnaltsNyRGXVtcbDckJCIzJUdLbXg5MzA7JEYsJCEzZSY0ZVRwLkYsKEZmW203JDckJCIzbWZQXSxUJD08JEYsRmlbbUZhW1xsNyRGZ1tcbDckJCIzM0o1cWMmKip6PSRGLCQiMzlzP3VDMzYrSUZiXW43JDckJCIzcCVvdCUqRzQ+PyRGLEZoXG1GW1xcbDckNyQkIjNEJW90JSpHND4/JEYsRmhcbTckJCIzKSlRZGpsNFw6S0YsJCIzTTNsNWZlczd3RmZbbTckNyQkIjNINE9XeFcpPkIkRixGY11tRmhcXGw3JDckJCIzJSkzT1d4Vyk+QiRGLEZjXW03JCQiMzlaL2R1QilIQyRGLCQiMyM0KVFkalNhI1wiRiw3JDckJCIzKVFgOGFtZj9FJEYsRltfbkZlXVxsNyRGW15cbDckJCIzMWFeXSR5dC9GJEYsJCIzQjZyQlRiIlFBI0YsNyQ3JCQiM1llTVFgWzgjSCRGLEZlYHVGX15cbDckNyQkIjMhKmVNUWBbOCNIJEYsRmdfbjckJCIzSWkpUkM+bHpIJEYsJCIzYVQuISo9cTNiSEYsNyQ3JCQiM1wkUWA4LzVBSyRGLEZmYG5GXF9cbDckNyQkIjMlUlFgOC81QUskRixGZmBuNyQkIjNicVhQLG1YRExGLCQiMyU9ZGpsXGVqbyRGLDckNyQkIjNfM0xLSF9HX0xGLEZoZW9GaV9cbDckRl9gXGw3JCQiM095IzQuLFtITiRGLCQiMzotb0F1Kkh3VCVGLDckNyRGY2NwJCIzVHEqKioqKipHQDBZRixGY2BcbDckNyRGY2NwJCIzX3AqKioqKipHQDBZRiw3JCQiMy9PQWkwbnl5TEYsJCIzKW9TV2ZCTEk6JkYsNyQ3JCQiMyUpKXlER08oUiFRJEYsRmRmb0ZgYVxsNyRGZmFcbDckJCIzXWlrPiQ9YlNTJEYsJCIzbVQpMz8vaSkqKWVGLDckNyQkIjMkZld2XT9LeVMkRixGYGdvRmphXGw3JEZgYlxsNyQkIjMxKW9xMm1CJEhNRiwkIjNad0syWzNwRW1GLDckNyQkIjMtLl5LWnFFTk1GLEZcaG9GZGJcbDckNyRGW2NcbEZqX3g3JCQiMydcIlxNUUBmYU1GLCQiM0U2eDhhJz5OTyhGLDckNyQkIjM3Z1pkKik9cWlNRixGamNxRl9jXGw3JEZlY1xsNyQkIjMpNDk+ZmhnKXpNRiwkIjM7WEA/ZyVbLjUpRiw3JDckJCIzdTtXIz10TyxcJEYsRmZkcUZpY1xsNyRGX2RcbDckJCIzKnBPJFwkNEheXSRGLCQiMzF6bEVtczxQKSlGLDckNyQkIjMlUTJ1U2Rydl4kRixGYmVxRmNkXGw3JEZpZFxsNyQkIjMrJGZuNWQoUklORiwkIjN1OTVMc2crdSYqRiw3JDckJCIzUEpQSztrK1hORixGX2VzRl1lXGwtRmpuNiZGXG9GXW8kIjEhZT0lUS0rK2dGYm9GY28tRiY2Z3E3JDckRl1odSQiM2MwKytTMSlwVCpGLDckJCEzKWVWSzgyPCcqcCRGLEZfZXM3JDckRmRgdiQiM00xLCsrayF5RChGZlttNyQkITMzJGV3P0BndVAkRixGY11tNyQ3JCQhM2EkZXc/QGd1UCRGLEZjXW03JCQhMylITXBsSUkjekxGLCQiM0dkTFVtZDJbN0YsNyQ3JCQhMz1jIXlJSDpwUyRGLEZbX25GXmdcbDckRmRnXGw3JCQhM2xhUCpvXXI7VCRGLCQiMzooUU1zd3kiSEBGLDckNyQkITNHSCZ6U1BxalYkRixGZ19uRmhnXGw3JDckJCEzJClHJnpTUHFqViRGLEZnX243JCQhMz9uIj1zcTdUVyRGLCQiM1o8YS9vPEc1SUYsNyQ3JCQhMyU+KyIzYmEjZVkkRixGZmBuRmVoXGw3JDckJCEzWyw1M2JhI2VZJEYsRmZgbjckJCEzKSl5RGEyUmJ3TUYsJCIzTVprJilvWlEiKlFGLDckNyQkITM5dUMzTzBHJlwkRixGaGVvRmJpXGw3JEZoaVxsNyQkITNWIipwJ3k1JioqM05GLCQiMzd5dW1weFtzWkYsNyQ3JCQhM0JaUjM8Y3RDTkYsRmRmb0ZcalxsNyQ3JCQhM3lZUjM8Y3RDTkYsRmpbdjckJCEzNC45PjNqVlRORiwkIjM3MiZ5L3ghZmBjRiw3JDckJCEzVz5hMylwIT5hTkYsRmBnb0ZpalxsNyRGX1tdbDckJCEzPzplXjN2KFFkJEYsJCIzKnBgKkdyUHBNbEYsNyQ3JCQhMzMjKm8zemRrJGUkRixGal94RmNbXWw3JDckJCEzXyMqbzN6ZGskZSRGLEZqX3g3JCQhM0tGLSUpMyg9amckRiwkIjMob2MrQHgnejp1Riw3JDckJCEzPGwkKTNnMzU4T0YsRmpjcUZgXF1sNyQ3JCQhM2lsJCkzZzM1OE9GLEZqY3E3JCQhMykqUVk7NCpmKFFPRiwkIjNrKGY2SHgqKm9IKUYsNyQ3JCQhMyN5JCkqM1RmYlVPRixGZmRxRl1dXWw3JEZjXV1sNyQkITMzXiEqWzQ2P3JPRiwkIjNTR0VzdEYreSIqRiw3JDckJCEzIzRKIjRBNSxzT0YsRmJlcUZnXV1sNyRGXV5dbDckRmFpb0ZeZlxsNyQ3JEZmXFtsJCEzOSMpKioqKmYkPmk5KEYsNyQkITM5eE5zZFIyYUlGLEZmcjckRmZeXWw3JCQhMykqUiIqUU1nbWJJRiwkITM1XHItOVwkM3cnRiw3JDckJCEzT0hvI0hHJWYnMyRGLEZmc0ZqXl1sNyRGYF9dbDckJCEzR2s8VEheJz00JEYsJCEzUSplcWs8UC4oZUYsNyQ3JCQhMzciM0kiM1k2PkpGLEZhdEZkX11sNyRGal9dbDckJCEzLipRTVdBayFHSkYsJCEzI3otOSpRJVIpelxGLDckNyQkITMhSExMTCRcal5KRixGXXVGXmBdbDckRmRgXWw3JCQhMylHLGQlPkxFa0pGLCQhM0tudU4sPE0qMyVGLDckNyQkITNrJWVPJmVfOiU9JEYsRl5cbEZoYF1sNyQ3JCQhMzUmZU8mZV86JT0kRixGXlxsNyQkITNrUCd6V1RpLz8kRiwkITMlZSE0IVEnUiUpKT4kRiw3JDckJCEzSlApUlBldm1AJEYsRl1dbEZlYV1sNyRGW2JdbDckJCEzUmlBXTQ6bU9LRiwkITNGWFZDRWlNM0JGLDckNyQkITMzKjNWKjNmPlxLRixGaV1sRl9iXWw3JEZlYl1sNyQkITNxJylbXy8xJ0dGJEYsJCEzQiV5KG8pW1t5VCJGLDckNyQkITMlM01ZVEI7PEckRixGaGpsRmliXWw3JEZfY11sNyQkITMrNnZhKnBmITRMRiwkITNdRUFKNnZddF9GZlttNyQ3JCQhMzAkZlwkZmxCOUxGLEZpW21GY2NdbDckNyRGamNdbEZmZ3Y3JCQhM0lOLGQlemVfTSRGLCQiMyFRUWBVJylwOWokRmZbbTckNyQkITNFWEdiJSlvdllMRixGaFxtRl5kXWw3JDckRmVkXWxGZFxtNyRGZGB2JCIzWTIsKytrIXlEKEZmW203JDckJCEzNDlBeT4iPTAiSEYsRi03JCQhMyhwXk4qPU4qWyRIRiwkITMlKjM3bS1pd2klKkYsNyQ3JCQhMyE9ZE4vdzpvJUhGLEY5RmBlXWw3JEZmZV1sNyQkITM/ckUyeF4kZShIRiwkITMrQSQ9dDA3L2MpRiw3JDckJCEzM0gqKTMsTTYkKUhGLEZFRmplXWw3JEZgZl1sNyQkITNVRCk0XyRveDtJRiwkITMnZlZ2PiJ6MGV3Riw3JDckJCEzTydHVTwvNiU+SUYsRlFGZGZdbDckRmpmXWxGY15dbDckNyQkIjNtIjMpPUZpQWlFRixGLTckJCIzIVsjKSp5WiRcI29FRiwkITMzalhacExpcSkqRiw3JDckJCIzJVtiWV08cSUqcCNGLCQhMzEsKysrKysrIypGLEZiZ11sNyQ3JEZpZ11sRjk3JCQiMzshUm8/WzU7cSNGLCQhMzV4NDwwaS1hIipGLDckNyQkIjN2KioqKioqKioqKioqPkZGLCQhM083KytnJD4hZigpRixGX2hdbDckNyQkIjNKKioqKioqKioqKioqPkZGLEZoaF1sNyQkIjMzLXRgIltGTnQjRiwkITNRYUslUXE9UVYpRiw3JDckJCIzSkVTZVxVJFx0I0YsRkVGXmldbDckRmRpXWw3JCQiMzEuR2toMW5qRkYsJCEzIikzcTVhbTw0eEYsNyQ3JCQiM1dLLiEpPkBAb0ZGLEZRRmhpXWw3JEZeal1sNyQkIjMvLyRbPCVRIlF6I0YsJCEzWWgyUC9ZYCUpcEYsNyQ3JCQiM2NRbSwhKioqWyxHRixGZnJGYmpdbDckRmhqXWw3JCQiM1swUSY9LWRSI0dGLCQhMys6WGphRCopZmlGLDckNyQkIjM4WEhCZ3l3TUdGLEZmc0ZcW15sNyQ3JCQiM3BXSEJneXdNR0YsRmZzNyQkIjMjcElmPj8rVCZHRiwkITNrbiMpKltdXV9gJkYsNyQ3JCQiMyMzRFwvdFghb0dGLEZhdEZpW15sNyRGX1xebDckJCIzIXohWzEjUVZVKUdGLCQhM0g/PztiJTMxIltGLDckNyQkIjMmcGJsMWdCOCFIRixGXXVGY1xebDckRmlcXmw3JCQiMyopMy48aWxROUhGLCQhMyNReERhU21mMyVGLDckNyQkIjNfaj0pM1osWSRIRixGXlxsRl1dXmw3JEZjXV5sNyQkIjNLNWVGVShIWCVIRiwkITNbRSYqb2JWS2hMRiw3JDckJCIza3AiKTRUJHp5J0hGLEZdXWxGZ11ebDckRl1eXmw3JCQiM0s2OFFBSG51SEYsJCEzZHpLJmZJI29PRUYsNyQ3JCQiM3h2V0o2czosSUYsRl1ebEZhXl5sNyRGZ15ebDckJCIzSTdvWy1oIlsrJEYsJCEzV0txQGMtLzc+Riw3JDckJCIzIT55STozTlcuJEYsRmhqbEZbX15sNyRGYV9ebDckJCIzSDhCZiNHZlwuJEYsJCEzMyZ5IVsxIylSKD0iRiw3JDckRmVqdiQhMyVwLCsrTz5pMSJGLEZlX15sNyRGW2BebDckJCIzPXVDM09UKkcxJEYsJCEzOXI9MS1NTnNYRmZbbTckNyQkIjNhLjpnU2UvbElGLEZpW21GX2BebDckRmVgXmw3JCQiMyk+PTxdYSZRITQkRiwkIjNnTC9kdThPU0ZGZlttNyQ3JCQiMzdHOWRHNTcmNCRGLEZoXG1GaWBebDckNyQkIjNjRzlkRzU3JjQkRixGaFxtNyQkIjNDISo9JlImcCh5NiRGLCQiM0x0LTc6d0kwNUYsNyQ3JCQiMztgOGE7aT5ESkYsRmNdbUZmYV5sNyQ3JCQiM2dgOGE7aT5ESkYsRmNdbTckJCIzZyhmJylHT29gOSRGLCQiM2suTnkjNHpsdCJGLDckNyQkIjM/eTdeLzlGYkpGLEZbX25GY2JebDckNyQkIjNreTdeLzlGYkpGLEZbX243JCQiM1MwOCM9eGZHPCRGLCQiMz1NbldxMCZ5WSNGLDckNyQkIjN3LTdbI2ZZYD0kRixGZ19uRmBjXmw3JEZmY15sNyQkIjNtOGd2IT1eLj8kRiwkIjMtayo0Ils/Nyo+JEYsNyQ3JCQiMyJ5N14veUBhQCRGLEZmYG5GamNebDckRmBkXmw3JCQiMyI+cyFwKmVVeUEkRiwkIjN5JT50ZF8kUklSRiw3JDckJCIzU181VW9wXFhLRixGaGVvRmRkXmw3JEZqZF5sNyQkIjNHSGFpKSpSTGJLRiwkIjNrQ2tWLl1taFlGLDckNyQkIjMpeSg0UmNAZHZLRixGZGZvRl5lXmw3JDckJCIzV3g0UmNAZHZLRixGZGZvNyQkIjNfUCxjMmEjR0ckRiwkIjMxYScqNCJbT0hSJkYsNyQ3JCQiM1ktNE9XdGswTEYsRmBnb0ZbZl5sNyRGYWZebDckJCIzTFhbXDtvSjVMRiwkIjNRJSlHd2V6P0NoRiw3JDckJCIzMEYzTEtEc05MRixGXGhvRmVmXmw3JEZbZ15sNyQkIjM4YCZIYUEzeUwkRiwkIjNvOWhVTyV6YSZvRiw3JDckRmNjcCQiMzN0KioqKlIxeVh1RixGX2debDckRmVnXmw3JCQiMykqKWVcMDZyW08kRiwkIjNXQ2dpQkEjeWUoRiw3JDckJCIzWy5vd0goKUdsTEYsRmpjcUZpZ15sNyRGX2hebDckJCIzVzpRNyllUixSJEYsJCIzQmYvcEg1bEMkKUYsNyQ3JCQiM2NnayxzTnMjUiRGLEZmZHFGY2hebDckRmloXmw3JCQiM1hUISlwbCEzYVQkRiwkIjMhXCpbdk4pejkxKkYsNyQ3JCQiMzY9aEU5JWUsVSRGLEZiZXFGXWlebDckRmNpXmw3JCQiMyF6RXNLYXcxVyRGLCQiM2VJJD49azMkKXoqRiw3JDckJCIzP3ZkXmNLZlpNRixGX2VzRmdpXmwtRmpuNiZGXG9GXW8kIjEpKj4jcHd1aW8mRmJvRmNvLUYmNmVxNyQ3JCQhM3crKysrKytnTEYsJCIzI3orKytSW2pjJEYsNyQkITMxdkhpOCFSN08kRixGZmBuNyRGXFtfbDckJCEzL2hsRkJZT2hMRiwkIjMhR1MiPmU6VC5PRiw3JDckJCEzcVpXaSU0JXAhUiRGLEZoZW9GYFtfbDckRmZbX2w3JCQhMzl0NGdCZSFRUiRGLCQiM29LQytmWF4lWyVGLDckNyQkITNPP2ZpdiJcLFUkRixGZGZvRmpbX2w3JEZgXF9sNyQkITNGJlFEUi1aaVUkRiwkIjNjaU0iKWZ2aGxgRiw3JDckJCEzKyRSRm1ELydcTUYsRmBnb0ZkXF9sNyRGalxfbDckJCEzUSh6XFVBKW9lTUYsJCIzVyNcQzFjP25DJ0YsNyQ3JCQhM21sKUd3TGYhek1GLEZiXXRGXl1fbDckRmRdX2w3JCQhMy80VWRDJUg2XCRGLCQiM0tBYlZoTiN5NyhGLDckNyQkITN2US5qPVdeM05GLEZqY3FGaF1fbDckRl5eX2w3JCQhMztAJykqW2lxTl8kRiwkIjM+X2xDaWwjKjMhKUYsNyQ3JCQhM1M2PWoqXHB6YCRGLEZmZHFGYl5fbDckNyQkITMmNCI