<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
</head>
<body class='hmmessage'>
<font style="" color="#ff0000">M</font>xml <font style="" color="#ff0000">E</font>ditor <font style="" color="#ff0000">T</font>rue <font style="" color="#ff0000">O</font>bject <font style="" color="#ff0000">O</font>rientation<br><br>:)<br><br><br><hr id="stopSpelling">From: Julian.Tenney@nottingham.ac.uk<br>To: xerte@lists.nottingham.ac.uk<br>Date: Mon, 11 Oct 2010 10:12:37 +0100<br>Subject: RE: [Xerte] Xerte 3.0 Beta<br><br>


<meta http-equiv="Content-Type" content="text/html; charset=unicode">
<meta name="Generator" content="Microsoft SafeHTML">



<style>
.ExternalClass .ecxshape
{;}
</style>

<style>
.ExternalClass p.ecxMsoNormal, .ExternalClass li.ecxMsoNormal, .ExternalClass div.ecxMsoNormal
{margin-bottom:.0001pt;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass a:link, .ExternalClass span.ecxMsoHyperlink
{color:blue;text-decoration:underline;}
.ExternalClass a:visited, .ExternalClass span.ecxMsoHyperlinkFollowed
{color:purple;text-decoration:underline;}
.ExternalClass p.ecxMsoListParagraph, .ExternalClass li.ecxMsoListParagraph, .ExternalClass div.ecxMsoListParagraph
{margin-right:0cm;margin-bottom:0cm;margin-left:36.0pt;margin-bottom:.0001pt;font-size:12.0pt;font-family:'Times New Roman','serif';}
.ExternalClass span.ecxEmailStyle17
{font-family:'Calibri','sans-serif';color:#1F497D;}
.ExternalClass .ecxMsoChpDefault
{;}
@page WordSection1
{size:612.0pt 792.0pt;}
.ExternalClass div.ecxWordSection1
{page:WordSection1;}
.ExternalClass ol
{margin-bottom:0cm;}
.ExternalClass ul
{margin-bottom:0cm;}

</style>





<div class="ecxWordSection1">

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">This is the change I alluded to. Changing the software to
compile swfs rather than interpret .xml at runtime to create the content means
changing the file format: there are a load of good reasons to do this, and some
recent changes to Air that made it possible:</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">&nbsp;</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">Air 2.0 allows communication to native processes. This means
Xerte can communicate directly with fcsh.exe in the FlexSDK to compile the
swfs, and also to the debugger. This wasn’t possible with Zinc or older
versions of Air.</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">The interpreted code was slow. Compiled swfs are much much much faster.</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">Interpreted code still didn’t allow true functions to be
created. You could use the function keyword to create pseudo functions, but
they weren’t of the type ‘function’ and couldn’t be
passed as properties to components; this was particularly troublesome for event
handlers;</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">It was very difficult / impossible to create new classes at
runtime. Any component property that needs a class (like an icon on a tab bar) needed
a fiddly workaround, nd iti didn’t work in all cases;</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">Style sheets needed compiling with the Flex SDK. Now inline
styles can be defined and compiled directly into the swf;</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">Extending with your own classes was more difficult than it
needed to be. This still needs a bit of work, but you’ll be able to add
your own classes, written in AS3 to the application.</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">You can now use all the skinning stuff to create your own skins,
and Xerte can create / edit skins. I’ve an example, but this is pretty
nifty.</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">You have support for states that are much better managed in .mxml
than ActionScript. States are also pretty nifty.</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">You’ll be able to use components from the vast array of Flex
resources out there;</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">You’re no longer dependent on my runtime. This means less
work for me, and means that all the existing Flex books / tutorials / resources
are relevant to you. Xerte is essentially now an .mxml editor. You are getting
into a very marketable and transferable set of knowledge and skills;</span></p>

<p class="ecxMsoListParagraph" style="text-indent: -18pt;"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);"><span style="">-<span style="font: 7pt &quot;Times New Roman&quot;;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">It will be much easier to keep up with future changes to the
Flex SDK. This is another big weight off my mind / desk.</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">&nbsp;</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">The older files more or less translate, as the xml had initialisation
info for each component in it, so &lt;ButtonIcon…/&gt; is much the same
as &lt;Button…/&gt;</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">&nbsp;</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">I think the changes are well worth it.</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">&nbsp;</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">J</span></p>

<p class="ecxMsoNormal"><span style="font-size: 11pt; font-family: 'Calibri','sans-serif'; color: rgb(31, 73, 125);">&nbsp;</span></p>

<div style="border-right: medium none; border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; padding: 3pt 0cm 0cm;">

<p class="ecxMsoNormal" style="margin-left: 36pt;"><b><span style="font-size: 10pt; font-family: 'Tahoma','sans-serif';" lang="EN-US">From:</span></b><span style="font-size: 10pt; font-family: 'Tahoma','sans-serif';" lang="EN-US">
xerte-bounces@lists.nottingham.ac.uk
[mailto:xerte-bounces@lists.nottingham.ac.uk] <b>On Behalf Of </b>Kemp
Johnathan<br>
<b>Sent:</b> 09 October 2010 21:44<br>
<b>To:</b> Xerte discussion list<br>
<b>Subject:</b> Re: [Xerte] Xerte 3.0 Beta</span></p>

</div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">Congratulations on your new
version of Xerte 3.</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">I have downloaded and installed
the new version, but find that it will not open any of the examples that you
created for the earlier version of Xerte 3.</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">It looks very interesting, I am
looking forward to the tutorials.</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">Kind regards</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

</div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">Johnathan</p>

</div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">On 7 October 2010 14:02, Ron
Mitchell &lt;<a href="mailto:ronm@mitchellmedia.co.uk">ronm@mitchellmedia.co.uk</a>&gt;
wrote:</p>

<div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 11pt; color: rgb(31, 73, 125);">Brilliant!
Wish I had time to play. </span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 11pt; color: rgb(31, 73, 125);">Congrats to
all involved.</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 11pt; color: rgb(31, 73, 125);">&nbsp;</span></p>

<div>

<div style="border-right: medium none; border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; padding: 3pt 0cm 0cm;">

<p class="ecxMsoNormal" style="margin-left: 36pt;"><b><span style="font-size: 10pt;" lang="EN-US">From:</span></b><span style="font-size: 10pt;" lang="EN-US"> <a href="mailto:xerte-bounces@lists.nottingham.ac.uk">xerte-bounces@lists.nottingham.ac.uk</a>
[mailto:<a href="mailto:xerte-bounces@lists.nottingham.ac.uk">xerte-bounces@lists.nottingham.ac.uk</a>]
<b>On Behalf Of </b>Dave Burnett<br>
<b>Sent:</b> 07 October 2010 13:50<br>
<b>To:</b> Xerte list<br>
<b>Subject:</b> RE: [Xerte] Xerte 3.0 Beta</span></p>

</div>

</div>

<div>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

<p class="ecxMsoNormal" style="margin-bottom: 12pt; margin-left: 36pt;"><span style="font-size: 10pt;"><br>
Kudos to all involved.<br>
A major undertaking.<br>
<br>
Dave</span></p>

<div class="ecxMsoNormal" style="margin-left: 36pt; text-align: center;" align="center"><span style="font-size: 10pt;">

<hr align="center" width="100%" size="3">

</span></div>

<p class="ecxMsoNormal" style="margin-bottom: 12pt; margin-left: 36pt;"><span style="font-size: 10pt;">From: <a href="mailto:Julian.Tenney@nottingham.ac.uk">Julian.Tenney@nottingham.ac.uk</a><br>
To: <a href="mailto:xerte@lists.nottingham.ac.uk">xerte@lists.nottingham.ac.uk</a><br>
Date: Thu, 7 Oct 2010 13:41:42 +0100<br>
Subject: [Xerte] Xerte 3.0 Beta</span></p>

<div>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">Hi,</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">There is a new beta of Xerte
3.0 to play with that you can download here: <a href="http://www.nottingham.ac.uk/xerte/xerte3.htm" target="_blank">http://www.nottingham.ac.uk/xerte/xerte3.htm</a>.
Xerte 3.0 is a complete rewrite of Xerte 2.x, using the Flex framework. There
is a major difference between this latest version and previous versions which I
wanted to say something about. Anyone following Xerte 3.0 developments, or
starting to use Xerte 3.0 to develop content needs to be aware of these
changes.</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;"><br>
Xerte 3.0 now compiles .swf files. It creates, from your code, the actual .swf
file. There is no engine.swf unlike previous versions of Xerte 3.0 and Xerte
2.x. There are a number of good reasons why this was a good step to take. </span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">Xerte 3.0 is really an .mxml
editor and compiler using the Flex SDK to compile.swfs. You will need to
download and install the Flex SDK to use Xerte 3.0 (see instructions on the web
site). This means that Xerte 3.0 is quite clearly a tool for developers. It
also means that you are interacting with the Flex SDK directly, rather than
having our code parse and play your code. There are major performance benefits
to doing this, as well as getting access to all the benefits of the Flex SDK,
and it means that you can directly draw on all the Flex community’s
knowledge to create content with Xerte 3.0. Xerte 3.0 can compile many of the
examples on Adobe’s website and in the help system, as well as dozens of
samples already available from the Flex community. It also means you are
developing marketable skills in an established software development
environment.</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">Flex is a very powerful,
flexible (pardon the pun) and extensible suite of tools. Xerte 3.0 aims to fill
a gap in the market of tools that sits somewhere between the hardcode
coder’s IDEs such as FlashDevelop or FlashBuilder, and something like
Xerte 2.x or Authorware, and as time goes on Xerte 3.0 will contain more and
more elearning specific features.</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">Xerte 3.0 can build
‘normal’ &nbsp;flash applications. It can also build Air
applications, and package them into installers, and when the Flex 4.5 SDK is
complete, Xerte 3.0 will be able to build Mobile Applications. Being able to
target all these platforms is exciting, particularly the mobile Air
applications. Xerte 3.0 development is now closely following the development of
the Flex 4.5 SDK – when that is complete I’ll be able to finish
Xerte 3.0 and draw on all the new features in Flex 4.5.</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">There’s loads more to
say about Flex, but not enough time or space here. I’m going to start a
series of short tutorials to introduce you to the new environment and features,
and walk you through all the new components, and other stuff you’ll want
to know about: components, styles, skinning, states, effects, transitions, data
binding, using your own custom classes…</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">In the meantime, download
and install the beta, and let me know any comments,</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">Thanks to Peter Huppertz -
who has made a major contribution,</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">Have fun.</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">&nbsp;</span></p>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;">J</span></p>

</div>

<p class="ecxMsoNormal" style="margin-left: 36pt;"><span style="font-size: 10pt;"><br>
This message and any attachment are intended solely for the addressee and may
contain confidential information. If you have received this message in error,
please send it back to me, and immediately delete it. Please do not use, copy
or disclose the information contained in this message or in any attachment. Any
views or opinions expressed by the author of this email do not necessarily
reflect the views of the University of Nottingham. <br>
This message has been checked for viruses but the contents of an attachment may
still contain software viruses which could damage your computer system: you are
advised to perform your own checks. Email communications with the University of
Nottingham may be monitored as permitted by UK legislation. <br>
<br>
_______________________________________________ Xerte mailing list <a href="mailto:Xerte@lists.nottingham.ac.uk">Xerte@lists.nottingham.ac.uk</a>
<a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte</a>
This message and any attachment are intended solely for the addressee and may
contain confidential information. If you have received this message in error,
please send it back to me, and immediately delete it. Please do not use, copy
or disclose the information contained in this message or in any attachment. Any
views or opinions expressed by the author of this email do not necessarily
reflect the views of the University of Nottingham. This message has been
checked for viruses but the contents of an attachment may still contain
software viruses which could damage your computer system: you are advised to
perform your own checks. Email communications with the University of Nottingham
may be monitored as permitted by UK legislation. </span></p>

</div>

</div>

</div>

</div>

<p class="ecxMsoNormal" style="margin-right: 0cm; margin-bottom: 12pt; margin-left: 36pt;"><br>
_______________________________________________<br>
Xerte mailing list<br>
<a href="mailto:Xerte@lists.nottingham.ac.uk">Xerte@lists.nottingham.ac.uk</a><br>
<a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte</a><br>
<br>
This message and any attachment are intended solely for the addressee and may
contain confidential information. If you have received this message in error, please
send it back to me, and immediately delete it. &nbsp; Please do not use, copy
or disclose the information contained in this message or in any attachment.
&nbsp;Any views or opinions expressed by the author of this email do not
necessarily reflect the views of the University of Nottingham.<br>
<br>
This message has been checked for viruses but the contents of an attachment<br>
may still contain software viruses which could damage your computer system:<br>
you are advised to perform your own checks. Email communications with the<br>
University of Nottingham may be monitored as permitted by UK legislation.<br>
<br>
</p>

</div>

<p class="ecxMsoNormal" style="margin-left: 36pt;">&nbsp;</p>

</div>




<br>_______________________________________________
Xerte mailing list
Xerte@lists.nottingham.ac.uk
http://lists.nottingham.ac.uk/mailman/listinfo/xerte

This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it.   Please do not use, copy or disclose the information contained in this message or in any attachment.  Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham.

This message has been checked for viruses but the contents of an attachment
may still contain software viruses which could damage your computer system:
you are advised to perform your own checks. Email communications with the
University of Nottingham may be monitored as permitted by UK legislation.                                               </body>
</html>