<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Ok, well that looks like a problem with VMMaker, so I'll cc the vm-dev list</div><div><br></div>Note the&nbsp;<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;addrSize = interpreterProxy-&gt;byteSizeOf((oopForPointer( socketAddress ) - nil));<br><div>where as I have&nbsp;</div><div><blockquote type="cite"><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0.8ex; padding-left: 1ex; position: static; z-index: auto; "><div style="word-wrap: break-word; "><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span style="white-space: pre; ">                </span>addrSize =&nbsp;<span style="color: rgb(63, 131, 136); ">interpreterProxy</span>-&gt;<span style="color: rgb(63, 131, 136); ">byteSizeOf</span>((<span style="color: rgb(127, 71, 36); ">oopForPointer</span>(&nbsp;<span style="color: rgb(127, 71, 36); ">socketAddress</span>&nbsp;) -&nbsp;<span style="color: rgb(70, 0, 225); ">4</span>));</div></div></div></blockquote></div></blockquote><div><br></div><div>So I think the current VMMaker build process is broken?&nbsp;</div><div><br></div><div>Fortunately it won't compile so the person can't get to the point of having the VM crash.&nbsp;</div><div><br></div><div><br></div><div><br></div></div></div><div><div>On 2010-02-20, at 3:47 PM, Javier Pimás wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">mine uses it. I generated this from an image that I crated this afternoon, with RC2 and latest VMMaker from monticello. It says:<br><br>EXPORT(sqInt) primitiveResolverGetAddressInfoResult(void) {<br>&nbsp;&nbsp;&nbsp; sqInt addrSize;<br>

&nbsp;&nbsp;&nbsp; char *socketAddress;<br><br>&nbsp;&nbsp;&nbsp; interpreterProxy-&gt;success(interpreterProxy-&gt;isBytes(interpreterProxy-&gt;stackValue(0)));<br>&nbsp;&nbsp;&nbsp; socketAddress = ((char *) (interpreterProxy-&gt;firstIndexableField(interpreterProxy-&gt;stackValue(0))));<br>

&nbsp;&nbsp;&nbsp; if (interpreterProxy-&gt;failed()) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return null;<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; if (!(interpreterProxy-&gt;failed())) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; addrSize = interpreterProxy-&gt;byteSizeOf((oopForPointer( socketAddress ) - nil));<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sqResolverGetAddressInfoResultSize(socketAddress, addrSize);<br>

&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; if (interpreterProxy-&gt;failed()) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return null;<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; interpreterProxy-&gt;pop(1);<br>&nbsp;&nbsp;&nbsp; return null;<br>}<br><br>Regards,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Javier.<br><br><div class="gmail_quote">On Sat, Feb 20, 2010 at 8:34 PM, John M McIntosh <span dir="ltr">&lt;<a href="mailto:johnmci@smalltalkconsulting.com">johnmci@smalltalkconsulting.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div style="word-wrap: break-word;"><br><div><div class="im"><div>On 2010-02-20, at 3:02 PM, Javier Pimás wrote:</div>

<br><blockquote type="cite">take it easy man, you look a bit nervous ;) . It is compiling now!!! but....<br></blockquote><div><br></div><div><br></div></div><div>It must be all the objective-c compiling i'm doing at the moment.....&nbsp;</div>

<div class="im"><br><blockquote type="cite"><br>Alien compiled fine, but here I'm having some other problems, not related to alien itself, but to the vm building.<br><br>I had to add B3DAccelerator plugin because there were some errors, and now these errors mutated to:<br>



<br>Linking C executable squeakvm&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>B3DAcceleratorPlugin/libB3DAcceleratorPlugin.a(sqOpenGLRenderer.c.o): In function `glRenderVertexBuffer':&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>



/home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:846: undefined reference to `glColorMaterial'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>/home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:847: undefined reference to `glGetError'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>



/home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:848: undefined reference to `glEnable'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>/home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:849: undefined reference to `glGetError' <br>



<br>...<br><br>/home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:159: undefined reference to `glLightModelfv'<br>/home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:160: undefined reference to `glGetError'<br>



collect2: ld returned 1 exit status<br>make[2]: *** [squeakvm] Error 1<br>make[1]: *** [CMakeFiles/squeakvm.dir/all] Error 2<br>make: *** [all] Error 2<br></blockquote><div><br></div><div><br></div><br></div><div class="im">

<blockquote type="cite">[ 34%] Building C object SocketPlugin/CMakeFiles/SocketPlugin.dir/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c.o &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
</blockquote><blockquote type="cite">/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function ‘netAddressToInt’:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>

/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:206: error: ‘nil’ undeclared (first use in this function)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:206: error: (Each undeclared identifier is reported only once&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>

/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:206: error: for each function it appears in.)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br></blockquote></div></div><div><br></div>

<div>Odd I wonder what is wrong since somewhere *most* of humanity has nil defined somewhere in some header. But you don't seem to.&nbsp;</div><div>Toss a #define nil (void*) 0 &nbsp; in your sq.h&nbsp;</div><div><br></div><div>However in looking at&nbsp;<span style="font-family: Menlo; font-size: 11px;">primitiveResolverGetAddressInfoResult &nbsp;there is no 'nil', it has 'null' &nbsp;</span></div>

<div><font face="Menlo" size="3"><span style="font-size: 11px;"><span style="font-family: Helvetica; font-size: medium;">Could we see your since I don't see any 'nil'&nbsp;</span></span></font></div><div><br></div>

<div><br></div><div><div style="margin: 0px;">EXPORT(<span style="color: rgb(63, 131, 136);">sqInt</span>) primitiveResolverGetAddressInfoResult(<span style="color: rgb(205, 0, 167);">void</span>) {</div><div style="margin: 0px;">

<span style="white-space: pre;">        </span><span style="color: rgb(63, 131, 136);">sqInt</span> addrSize;</div><div style="margin: 0px; color: rgb(127, 71, 36);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span><span style="color: rgb(205, 0, 167);">char</span><span style="color: rgb(0, 0, 0);"> *</span>socketAddress<span style="color: rgb(0, 0, 0);">;</span></div>

<div style="margin: 0px; min-height: 13px;"><br></div><div style="margin: 0px; color: rgb(63, 131, 136);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>success<span style="color: rgb(0, 0, 0);">(</span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>isBytes<span style="color: rgb(0, 0, 0);">(</span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>stackValue<span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(70, 0, 225);">0</span><span style="color: rgb(0, 0, 0);">)));</span></div>

<div style="margin: 0px; color: rgb(63, 131, 136);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span><span style="color: rgb(127, 71, 36);">socketAddress</span><span style="color: rgb(0, 0, 0);"> = ((</span><span style="color: rgb(205, 0, 167);">char</span><span style="color: rgb(0, 0, 0);"> *) (</span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>firstIndexableField<span style="color: rgb(0, 0, 0);">(</span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>stackValue<span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(70, 0, 225);">0</span><span style="color: rgb(0, 0, 0);">))));</span></div>

<div style="margin: 0px; color: rgb(63, 131, 136);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span><span style="color: rgb(205, 0, 167);">if</span><span style="color: rgb(0, 0, 0);"> (</span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>failed<span style="color: rgb(0, 0, 0);">()) {</span></div>

<div style="margin: 0px; color: rgb(205, 0, 167);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">                </span></span>return<span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(127, 71, 36);">null</span><span style="color: rgb(0, 0, 0);">;</span></div>

<div style="margin: 0px;"><span style="white-space: pre;">        </span>}</div><div style="margin: 0px; color: rgb(63, 131, 136);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span><span style="color: rgb(205, 0, 167);">if</span><span style="color: rgb(0, 0, 0);"> (!(</span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>failed<span style="color: rgb(0, 0, 0);">())) {</span></div>

<div style="margin: 0px;"><span style="white-space: pre;">                </span>addrSize = <span style="color: rgb(63, 131, 136);">interpreterProxy</span>-&gt;<span style="color: rgb(63, 131, 136);">byteSizeOf</span>((<span style="color: rgb(127, 71, 36);">oopForPointer</span>( <span style="color: rgb(127, 71, 36);">socketAddress</span> ) - <span style="color: rgb(70, 0, 225);">4</span>));</div>

<div style="margin: 0px; color: rgb(36, 90, 94);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">                </span></span>sqResolverGetAddressInfoResultSize<span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(127, 71, 36);">socketAddress</span><span style="color: rgb(0, 0, 0);">, addrSize);</span></div>

<div style="margin: 0px;"><span style="white-space: pre;">        </span>}</div><div style="margin: 0px; color: rgb(63, 131, 136);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span><span style="color: rgb(205, 0, 167);">if</span><span style="color: rgb(0, 0, 0);"> (</span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>failed<span style="color: rgb(0, 0, 0);">()) {</span></div>

<div style="margin: 0px; color: rgb(205, 0, 167);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">                </span></span>return<span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(127, 71, 36);">null</span><span style="color: rgb(0, 0, 0);">;</span></div>

<div style="margin: 0px;"><span style="white-space: pre;">        </span>}</div><div style="margin: 0px; color: rgb(63, 131, 136);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span>interpreterProxy<span style="color: rgb(0, 0, 0);">-&gt;</span>pop<span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(70, 0, 225);">1</span><span style="color: rgb(0, 0, 0);">);</span></div>

<div style="margin: 0px; color: rgb(205, 0, 167);"><span style="color: rgb(0, 0, 0);"><span style="white-space: pre;">        </span></span>return<span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(127, 71, 36);">null</span><span style="color: rgb(0, 0, 0);">;</span></div>

<div style="margin: 0px;">}</div><div style="margin: 0px;"><br></div><div style="margin: 0px;"><br></div></div><div class="im"><br><div>
<span style="font-size: 12px;"><div style="word-wrap: break-word;"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><div style="word-wrap: break-word;">

<div><div style="margin: 0px;"><div style="word-wrap: break-word;"><div style="word-wrap: break-word;"><div style="margin: 0px;"><font face="Helvetica" size="3">--</font></div><div style="margin: 0px;"><font face="Helvetica" size="3">===========================================================================</font></div>

<div style="margin: 0px;"><font face="Helvetica" size="3">John M. McIntosh &lt;<a href="mailto:johnmci@smalltalkconsulting.com" target="_blank">johnmci@smalltalkconsulting.com</a>&gt; &nbsp; Twitter: &nbsp;squeaker68882</font></div>

<div style="margin: 0px;"><font face="Helvetica" size="3">Corporate Smalltalk Consulting Ltd.&nbsp;&nbsp;<a href="http://www.smalltalkconsulting.com/" target="_blank">http://www.smalltalkconsulting.com</a></font></div><div style="margin: 0px;">

<font face="Helvetica" size="3">===========================================================================</font></div><div><br></div></div></div></div></div></div></span></div></span><br><br>
</div>
<br></div></div></blockquote></div><br><br clear="all"><br>-- <br>Javier Pimás<br>Ciudad de Buenos Aires<br>
</blockquote></div><br><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">--</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">===========================================================================</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">John M. McIntosh &lt;<a href="mailto:johnmci@smalltalkconsulting.com">johnmci@smalltalkconsulting.com</a>&gt; &nbsp; Twitter: &nbsp;squeaker68882</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">Corporate Smalltalk Consulting Ltd.&nbsp;&nbsp;<a href="http://www.smalltalkconsulting.com">http://www.smalltalkconsulting.com</a></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">===========================================================================</font></div><div><br></div></div></div></div></div></div></span></div></span><br class="Apple-interchange-newline"></span><br class="Apple-interchange-newline">
</div>
<br></body></html>