Browse Source

Adding old demo scripts.

tags/mostlyLastEclipse2xTree_20040112
mkersten 20 years ago
parent
commit
5ba7e88c10
2 changed files with 981 additions and 0 deletions
  1. 310
    0
      docs/teaching/demos/oopsla2001-script.html
  2. 671
    0
      docs/teaching/demos/oopsla2002-script.html

+ 310
- 0
docs/teaching/demos/oopsla2001-script.html View File

@@ -0,0 +1,310 @@
<html>

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>AspectJ Installation Note</title>
<STYLE TYPE="text/css">
<!--
/* FOR THE SDA PAGE */
/*
BODY {margin-top: 15px; margin-left: 15px; margin-right: 15px;}
*/

A:link {
color:#4756AC;
}
A:visited {
color:#60657B;
}
A:hover {
color:red
}
INPUT {font:12px "Courier New", sans-serif;}
H2 {
font:18px/18px Verdana, Arial, Helvetica, sans-serif;
color:black;
font-weight:bold;
margin-left: 10px;
line-height:110%;
}
H3 {
font:18px/18px Verdana, Arial, Helvetica, sans-serif;
color:black;
font-weight:bold;
margin-left: 10px;
line-height:110%;
}
H4 {
font:15px/16px Verdana, Arial, Helvetica, sans-serif;
color:black;
font-weight:bold;
margin-left: 10px;
line-height:140%;
}
P {
font:13px/13px Verdana, Arial, Helvetica, sans-serif;
margin-right: 10px;
margin-left: 10px;
line-height:130%;
}
.paragraph {
font:13px/13px Verdana, Arial, Helvetica, sans-serif;
margin-right: 10px;
margin-left: 10px;
line-height:130%;
}
.smallParagraph {
font:11px/11px Verdana, Arial, Helvetica, sans-serif;
margin-right: 10px;
margin-left: 10px;
line-height:130%;
}
LI {
font:13px/13px Verdana, Arial, Helvetica, sans-serif;
text-align:justify;
margin-right: 10px;
margin-left: 15px;
line-height:120%;
}
/*
UL {
font:13px/13px Verdana, Arial, Helvetica, sans-serif;
text-align:justify;
margin-right: 10px;
margin-left: 15px;
line-height:120%;
}*/
DL {
font:13px/13px Verdana, Arial, Helvetica, sans-serif;
text-align:justify;
margin-right: 10px;
margin-left: 15px;
line-height:120%;
}
B { font:13px/13px Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
line-height:140%;
}
.footer {
font:10px/10px Verdana, Arial, Helvetica, sans-serif;
color:#888888;
text-align:left
}
.figureTitle {
font:13px/13px Verdana, Arial, Helvetica, sans-serif;
text-align:justify;
text-align:center
}
.copyrightNotice {
font:10px/10px Verdana, Arial, Helvetica, sans-serif;
color:#999999;
line-height:110%;
}
.smallHeading {
font:13px/13px Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
line-height:110%;
}
.tinyHeading {
font:11px/11px Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
line-height:120%;
}
.newsText {
font:11px/11px Verdana, Arial, Helvetica, sans-serif;
line-height:130%;
}
.smallParagraph {
font:11px/11px Verdana, Arial, Helvetica, sans-serif;
line-height:130%;
}
.fancyHeading {
font:20px/20px Chantilly, Arial, Helvetica, sans-serif;
margin-right: 10px;
color:#6f7a92;
margin-left: 10px;
line-height:130%;
}
-->
</STYLE>
</head>

<BODY BGCOLOR="white">

<h3 align="center">AspectJ Demo</h3>

<h4>1. Installing the Demo</h4>

<ul>
<li>Extract the contents of &quot;aspectj-demo.zip&quot; to
&quot;C:\aspectj-demo&quot;, resulting in the following directory structure:
<ul>
<li>C:\aspectj-demo
<ul>
<li>apps</li>
<li>bin</li>
<li>examples</li>
<li>slides</li>
</ul>
</li>
</ul>
</li>
<li>Verify that JBuilder 4 is using the correct project by opening it, closing
all of the current projects
<ul>
<li>Under the &quot;File&quot; menu select &quot;Close Projects...&quot;,
select all of the open projects and close them</li>
<li>Under the &quot;File&quot; menu select &quot;Open Project...&quot;,
and open &quot;C:\aspectj-demo\examples\jbuilder\Spacewar.jpr&quot;</li>
<li>You should now be able to compile &quot;Spacewar&quot;.&nbsp; If
ajdeForJBuilder reports any problems refer to
&quot;C:\aspectj-demo\apps\aspectj0.8\doc\primer\tools\ajdeForJBuilder.html&quot;</li>
</ul>
</li>
<li>Set up your &quot;Windows Taskbar&quot; to be permanently visible by
right-clicking the bar, selecting &quot;Properties&quot;, and un-checking
&quot;Auto hide&quot;</li>
<li>From your &quot;Windows Explorer&quot; drag the
&quot;C:\aspectj-demo\bin\Demo&quot; folder to the &quot;Windows
Taskbar&quot;.&nbsp; This will have the effect of placing the demo buttons
on the taskbar.&nbsp; To remove the buttons drag off the &quot;Demo&quot;
toolbar and close the resulting floating toolbar window.</li>
<li>It is useful to have the &quot;Task Manager&quot; running in the
&quot;System Tray&quot; during the demo in order to see when the debugger is
loading since it is slow.&nbsp; To launch it right-click the &quot;Windows
Taskbar&quot; and select &quot;Task Manager&quot;, then minimize the window.
</li>
</ul>
<h4>2. Initial Setup</h4>
<ul>
<li>Emacs Setup
<ul>
<li>Click &quot;Emacs&quot;, and move the cursor to the beginning of the
&quot;spacewar.Ship.fire&quot; method</li>
</ul>
</li>
<li>JBuilder Setup
<ul>
<li>Click &quot;JBuilder&quot;, open the &quot;AspectJ Structure
View&quot;, and bring the editor to the &quot;spacewar.Ship.fire&quot;
method</li>
<li>under the &quot;Spacewar.jpr&quot; node in the &quot;Project
Explorer&quot; (left pane of main window) expand the &quot;spacewar&quot;
package to see its classes</li>
<li>ensure that the last compile was done without &quot;Debug.java&quot;
in the build configuration</li>
</ul>
</li>
<li>Forte Setup
<ul>
<li>Click &quot;Forte&quot;, click the &quot;AspectJ Structure View&quot;
button, and navigate the editor to the &quot;spacewar.EnsureShipIsAlive&quot;
class </li>
</ul>
</li>
<li>AJDoc Setup
<ul>
<li>click &quot;AJDoc&quot;, browse to the &quot;spacewar/Ship.java&quot;
class</li>
</ul>
</li>
</ul>
<h4>3. Running the Demo</h4>
<ul>
<li>Emacs
<ul>
<li>At the declaration of the &quot;spacewar.Ship.fire&quot; method hit
&quot;&lt;cntrl&gt;x, &lt;cntrl&gt;j&quot;</li>
<li>Follow the resulting popup menu to the &quot;EnsureShipIsAlive&quot;
advice</li>
<li>Navigate back to &quot;spacewar.Ship.fire&quot; using the same method</li>
</ul>
</li>
<li>JBuilder
<ul>
<li>Navigation
<ul>
<li>In the &quot;Structure View&quot; select the &quot;fire&quot;
method and expand it's children to reveal &quot;EnsureShipIsAlive:
around...&quot;</li>
<li>Double-click &quot;EnsureShipIsAlive: around...&quot; to navigate
to that advice declaration</li>
<li>Navigate back using the same method, or using the
&quot;Back&quot;, then &quot;Forward&quot; method in conjuntion with
the structure tree (this navigation can also be done by
right-clicking the inline advice icons in the editor's gutter)</li>
</ul>
</li>
<li>Compilation
<ul>
<li>In &quot;EnsureShipIsAlive&quot; remove &quot;ship&quot; from the
&quot;proceed(ship)&quot; call and recompile.</li>
<li>When the error message pops up fix it by replacing
&quot;ship&quot;</li>
</ul>
</li>
<li>Build Configuration
<ul>
<li>Double-click &quot;Default.lst&quot; and select the &quot;lst
Designer&quot; tab at the bottom of the editor pane</li>
<li>Expand the &quot;spacewar&quot; node</li>
<li>Click &quot;Debug.java&quot; in order to add it to the
configuration</li>
<li>Navigate to the &quot;Ship.java&quot; class so that the effects of
the new compilation are visible in the &quot;Structure View&quot;
when the compilation completes</li>
<li>Compile &quot;Default.lst&quot;</li>
<li>Run the project (top the execution of the project by clicking the
red stop button in the run messages pane)</li>
</ul>
</li>
<li>Debugging
<ul>
<li>Start the debugger</li>
<li>When the &quot;Please select launch parameters...&quot; dialog
pops up click &quot;OK&quot;</li>
<li>Select the &quot;Classes&quot; tab (4th tab from the top)</li>
<li>When the game starts, expand &quot;spacewar&quot;, expand &quot;Ship.java&quot;</li>
<li>Browse to the &quot;fire&quot; method and expand it</li>
<li>Right-click on the &quot;fire&quot; method and select &quot;stop
in spaceawar.Ship.fire&quot;</li>
<li>Wait for the breakpoint to be hit</li>
<li>Use the &quot;Step Into&quot; button (5th button on the bottom
from the left) to single step the file until you step through the
advice and into the body of the fire method</li>
<li>Click the red stop button (1st button) in order to stop the
debugging</li>
</ul>
</li>
</ul>
</li>
<li>Forte
<ul>
<li>Currently no Forte demo (fyi: navigate the structure the same way as
in JBuilder, and right-click the LST files to compile them, right click
&quot;Game.java&quot; to execute it)</li>
</ul>
</li>
<li>AJDoc
<ul>
<li>Scroll down to the &quot;fire&quot; method, and follow it's
&quot;Advised by: &quot; link to get to the &quot;EnsureShipIsAlive&quot;
aspect</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>


</body>

</html>

+ 671
- 0
docs/teaching/demos/oopsla2002-script.html View File

@@ -0,0 +1,671 @@
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 11">
<meta name=Originator content="Microsoft Word 11">
<link rel=File-List href="oopsla2002-script_files/filelist.xml">
<title>demo: OO IDE</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Mik Kersten</o:Author>
<o:LastAuthor>Mik Kersten</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>91</o:TotalTime>
<o:LastPrinted>2002-09-06T19:46:00Z</o:LastPrinted>
<o:Created>2003-11-11T03:52:00Z</o:Created>
<o:LastSaved>2003-11-11T03:52:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>320</o:Words>
<o:Characters>1829</o:Characters>
<o:Company>Xerox PARC</o:Company>
<o:Lines>15</o:Lines>
<o:Paragraphs>4</o:Paragraphs>
<o:CharactersWithSpaces>2145</o:CharactersWithSpaces>
<o:Version>11.5606</o:Version>
</o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:UseWord2002TableStyleRules/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" LatentStyleCount="156">
</w:LatentStyles>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Courier;
panose-1:2 7 4 9 2 2 5 2 4 4;
mso-font-alt:"Courier New";
mso-font-charset:0;
mso-generic-font-family:modern;
mso-font-format:other;
mso-font-pitch:fixed;
mso-font-signature:3 0 0 0 1 0;}
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;
mso-font-charset:2;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:0 268435456 0 0 -2147483648 0;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;
mso-font-charset:0;
mso-generic-font-family:swiss;
mso-font-pitch:variable;
mso-font-signature:1627421319 -2147483648 8 0 66047 0;}
@font-face
{font-family:Verdana;
panose-1:2 11 6 4 3 5 4 4 2 4;
mso-font-charset:0;
mso-generic-font-family:swiss;
mso-font-pitch:variable;
mso-font-signature:536871559 0 0 0 415 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoHeader, li.MsoHeader, div.MsoHeader
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
tab-stops:center 3.0in right 6.0in;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoFooter, li.MsoFooter, div.MsoFooter
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
tab-stops:center 3.0in right 6.0in;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
/* Page Definitions */
@page
{mso-footnote-separator:url("oopsla2002-script_files/header.html") fs;
mso-footnote-continuation-separator:url("oopsla2002-script_files/header.html") fcs;
mso-endnote-separator:url("oopsla2002-script_files/header.html") es;
mso-endnote-continuation-separator:url("oopsla2002-script_files/header.html") ecs;}
@page Section1
{size:8.5in 11.0in;
margin:.5in 1.25in .5in 1.25in;
mso-header-margin:.2in;
mso-footer-margin:.2in;
mso-header:url("oopsla2002-script_files/header.html") h1;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:68115525;
mso-list-type:hybrid;
mso-list-template-ids:858938398 1703206876 -2139089146 -2064071216 1691643238 1804361448 1106935208 795498688 1114022646 513440110;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:•;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Times New Roman";}
@list l1
{mso-list-id:149487999;
mso-list-type:hybrid;
mso-list-template-ids:996163290 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:40.5pt;
mso-level-number-position:left;
margin-left:40.5pt;
text-indent:-.25in;
font-family:Symbol;}
@list l2
{mso-list-id:285232438;
mso-list-type:hybrid;
mso-list-template-ids:-1431031654 -726899658 -63553996 -873671648 -1949522634 -2029475690 883689166 1438958244 -911152764 -143889788;}
@list l2:level1
{mso-level-number-format:bullet;
mso-level-text:•;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Times New Roman";}
@list l3
{mso-list-id:666597725;
mso-list-type:hybrid;
mso-list-template-ids:1496319566 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l3:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:40.5pt;
mso-level-number-position:left;
margin-left:40.5pt;
text-indent:-.25in;
font-family:Symbol;}
@list l4
{mso-list-id:829760420;
mso-list-type:hybrid;
mso-list-template-ids:697599534 737209016 718337656 126128176 699144238 -186582856 2015656828 -573567698 -98694796 -102872622;}
@list l4:level1
{mso-level-number-format:bullet;
mso-level-text:•;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Times New Roman";}
@list l5
{mso-list-id:1175682958;
mso-list-type:hybrid;
mso-list-template-ids:-1913763548 1683933168 -207477172 -1896716198 -1685027206 1819944446 78184194 2140690680 2113166228 -1703233950;}
@list l5:level1
{mso-level-number-format:bullet;
mso-level-text:•;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Times New Roman";}
@list l6
{mso-list-id:1372803880;
mso-list-type:hybrid;
mso-list-template-ids:-1464406574 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l6:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:40.5pt;
mso-level-number-position:left;
margin-left:40.5pt;
text-indent:-.25in;
font-family:Symbol;}
@list l7
{mso-list-id:1447773079;
mso-list-type:hybrid;
mso-list-template-ids:-1699440192 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l7:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l8
{mso-list-id:1451361852;
mso-list-type:hybrid;
mso-list-template-ids:-1759205440 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l8:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:40.5pt;
mso-level-number-position:left;
margin-left:40.5pt;
text-indent:-.25in;
font-family:Symbol;}
@list l9
{mso-list-id:1524708695;
mso-list-type:hybrid;
mso-list-template-ids:343073212 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l9:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l10
{mso-list-id:1659534521;
mso-list-type:hybrid;
mso-list-template-ids:291794924 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l10:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:40.5pt;
mso-level-number-position:left;
margin-left:40.5pt;
text-indent:-.25in;
font-family:Symbol;}
@list l11
{mso-list-id:1796213947;
mso-list-type:hybrid;
mso-list-template-ids:286165626 -348468910 -768843216 1184416038 1188434802 1919294230 -1935737384 -448084024 -1107797042 -1968251254;}
@list l11:level1
{mso-level-number-format:bullet;
mso-level-text:•;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Times New Roman";}
@list l12
{mso-list-id:1823081790;
mso-list-type:hybrid;
mso-list-template-ids:-1570481774 -1554755134 -381011836 -1997633904 -940664112 -1372821974 -923489310 2081716164 235678500 2136529842;}
@list l12:level1
{mso-level-number-format:bullet;
mso-level-text:•;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Times New Roman";}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}
</style>
<![endif]-->
</head>

<body lang=EN-US style='tab-interval:.5in'>

<div class=Section1>

<div align=center>

<table class=MsoNormalTable border=0 cellspacing=3 cellpadding=0 width=709
style='width:531.65pt;mso-cellspacing:2.2pt;margin-left:-7.95pt;mso-padding-alt:
1.5pt 1.5pt 1.5pt 1.5pt'>
<tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes;height:14.3pt'>
<td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:14.3pt'>
<p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
font-family:Verdana;color:#383E4C'>demo: object-oriented IDE</span></b><span
style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:1;height:33.45pt'>
<td width=703 colspan=3 style='width:527.25pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<ul style='margin-top:0in' type=disc>
<li class=MsoNormal style='mso-list:l9 level1 lfo7;tab-stops:list .5in'><span
style='font-size:10.0pt;font-family:Tahoma'>good at showing hierarchical
OO structure…<o:p></o:p></span></li>
</ul>
</td>
</tr>
<tr style='mso-yfti-irow:2;height:10.45pt'>
<td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:10.45pt'>
<p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
font-family:Verdana;color:#383E4C'>demo: modularize concern</span></b><span
style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:3;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Show FigureEd running<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Inspect Point.java<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Use joinpoint probe to find<o:p></o:p></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'>call(void figures.Canvas.updateHistory())
&amp;&amp; within(*)<o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:4;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Describe places that it’s called<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>create aspect (defines a special class that can crosscut other
classes)<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>aspect HistoryUpdating <o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>write pointcut (has name and parameters)<o:p></o:p></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'>pointcut moves(): <o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'><span style='mso-tab-count:1'>    </span>call(void
Line.setP1(Point)) || <o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'><span style='mso-tab-count:1'>    </span>call(void
Line.setP2(Point));<o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:5;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>write after advice (runs “on the way back out”)<o:p></o:p></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'>after() returning: move() { <br>
<span style='mso-spacerun:yes'>   </span>&lt;runs after each move&gt; }<o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:6;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>extend advice to Point setters (multi-class)<o:p></o:p></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'>call(void FigureElement+.set*(..))<o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:7;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>capture context &amp; use interface<o:p></o:p></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'>move(FigureElement fe): target(fe) &amp;&amp;..<o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:8;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Show structure, note that SlothfulPoint is now included<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Run &amp; show effect<o:p></o:p></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'><o:p>&nbsp;</o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:9;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Show Point.moveBy history violoation<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Want to make sure that sets of private fields of classes implementing
FigureElement only happen from within the set methods<b style='mso-bidi-font-weight:
normal'><o:p></o:p></b></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'>declare warning: <o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>   
</span>set(private * FigureElement+.*) <o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>   
</span>&amp;&amp; !(withincode(* FigureElement+.set*(..)) || <span
style='mso-tab-count:1'>     </span><span style='mso-spacerun:yes'>  </span><span
style='mso-tab-count:2'>        </span><span
style='mso-spacerun:yes'>  </span>withincode(FigureElement+.new(..))):<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>   
</span>&quot;should only assign to fields from set methods&quot;;<o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:10;height:33.45pt'>
<td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l3 level1 lfo13;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Write before advice that does precondition checking on Points.<o:p></o:p></span></p>
</td>
<td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
<p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:"Courier New"'>before(int
newValue): <br>
<span style='mso-spacerun:yes'>    </span>set(int Point.*) &amp;&amp;
args(newValue) {<br>
&nbsp;&nbsp;&nbsp; if (newValue &lt; 0) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; throw new IAE(&quot;too
small&quot;);<br>
&nbsp;&nbsp;&nbsp; } <br>
}</span><span style='font-size:10.0pt;font-family:Tahoma'><o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:11;height:15.85pt'>
<td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:15.85pt'>
<p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
font-family:Verdana;color:#383E4C'>demo: pluggable aspects</span></b><span
style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:12;height:33.45pt'>
<td width=350 colspan=2 style='width:262.5pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>World’s first fully interactive video game, now 41 years old..<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Explain spacewar <o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span style='font-size:10.0pt;font-family:
Tahoma'>Launch with Ship.java and &quot;Release.lst&quot; selected and compiled.<span
style='mso-spacerun:yes'>  </span><o:p></o:p></span></p>
</td>
<td width=350 style='width:262.55pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<ul style='margin-top:0in' type=disc>
<li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
style='font-size:10.0pt;font-family:Tahoma'>Run <o:p></o:p></span></li>
<li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
style='font-size:10.0pt;font-family:Tahoma'>Show debug configuration in
config designer<o:p></o:p></span></li>
<li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
style='font-size:10.0pt;font-family:Tahoma'>Select
&quot;Debug.lst&quot;, compile, and run again <o:p></o:p></span></li>
<li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
style='font-size:10.0pt;font-family:Tahoma'>Show debug window, menu, and
method tracing<o:p></o:p></span></li>
</ul>
</td>
</tr>
<tr style='mso-yfti-irow:13;height:13.15pt'>
<td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
1.5pt 1.5pt 1.5pt 1.5pt;height:13.15pt'>
<p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
font-family:Verdana;color:#383E4C'>demo: crosscutting structure</span></b><span
style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
</td>
</tr>
<tr style='mso-yfti-irow:14;mso-yfti-lastrow:yes;height:33.45pt'>
<td width=350 colspan=2 style='width:262.5pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Explain
annotations over program structure<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Explain
links and associations, inheritance links<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Explain
model genericity, different views<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
inline annotations<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
history navigation<o:p></o:p></span></p>
</td>
<td width=350 style='width:262.55pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
height:33.45pt'>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
global views (multiple views of your code)<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
refactoring by changing helmCommandsCut<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show view
synchronization, task-oriented views<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Discuss
how it is harder in AJ (implicit invocation)<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:Tahoma'><span
style='mso-spacerun:yes'>  </span>•<span style='mso-tab-count:1'>         </span>Show
fluid documents (ISTL project)<o:p></o:p></span></p>
</td>
</tr>
<![if !supportMisalignedColumns]>
<tr height=0>
<td width=257 style='border:none'></td>
<td width=97 style='border:none'></td>
<td width=354 style='border:none'></td>
</tr>
<![endif]>
</table>

</div>

<p class=MsoNormal style='margin-right:-45.0pt'><o:p>&nbsp;</o:p></p>

</div>

</body>

</html>

Loading…
Cancel
Save