| BendpointEditPolicy bug [message #54230] | 
Mon, 13 January 2003 09:13   | 
 
Eclipse User  | 
 | 
 | 
   | 
 
This is a multi-part message in MIME format. 
 
------=_NextPart_000_006D_01C2BB16.66082680 
Content-Type: text/plain; 
	charset="iso-8859-2" 
Content-Transfer-Encoding: quoted-printable 
 
I am not sure, but I think there is a bug in BendpointEditPolicy class. = 
When I create BendpointRequest with request type set to = 
REQ_DELETE_BENDPOINT than no command returned on getCommand(request) = 
call. Method getDeleteBendpointCommand(request:BendpointRequest):Command = 
is not called. 
I think that method getCommand(request:Request) should contain folowing = 
code (or similar) 
 
public Command getCommand(Request request) { 
    if (REQ_MOVE_BENDPOINT.equals(request.getType())) { 
        if (isDeleting) { 
            return getDeleteBendpointCommand((BendpointRequest) = 
request); 
        } 
        return getMoveBendpointCommand((BendpointRequest)request); 
    } 
    if (REQ_CREATE_BENDPOINT.equals(request.getType())) { 
        return getCreateBendpointCommand((BendpointRequest)request); 
    } 
     if(request.getType().equals(RequestConstants.REQ_DELETE_BEND POINT)) = 
{ 
        return this.getDeleteBendpointCommand((BendpointRequest) = 
request); 
    } 
    return null; 
} 
 
[Q] Do you thing it is correct to leave REQ_MOVE_BENDPOINT as type of = 
request in call getDeleteBendpointCommand method when isDeleted is true? = 
Isn't it better to do something like: 
public Command getCommand(Request request) { 
    if (REQ_MOVE_BENDPOINT.equals(request.getType())) { 
        if (isDeleting) { 
            request.setType(RequestConstants.REQ_DELETE_BENDPOINT); 
            return getDeleteBendpointCommand((BendpointRequest) = 
request); 
        } 
        return getMoveBendpointCommand((BendpointRequest)request); 
    } 
    if (REQ_CREATE_BENDPOINT.equals(request.getType())) { 
        return getCreateBendpointCommand((BendpointRequest)request); 
    } 
     if(RequestConstants.REQ_DELETE_BENDPOINT.equals(request.getT ype())) = 
{ 
        return this.getDeleteBendpointCommand((BendpointRequest) = 
request); 
    } 
    return null; 
} 
 
 
Regards, 
Roman Bosak 
 
------=_NextPart_000_006D_01C2BB16.66082680 
Content-Type: text/html; 
	charset="iso-8859-2" 
Content-Transfer-Encoding: quoted-printable 
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML><HEAD> 
<META http-equiv=3DContent-Type content=3D"text/html; = 
charset=3Diso-8859-2"> 
<META content=3D"MSHTML 6.00.2800.1126" name=3DGENERATOR> 
<STYLE></STYLE> 
</HEAD> 
<BODY> 
<DIV><FONT face=3DArial size=3D2>I am not sure, but I think there is a = 
bug in=20 
<STRONG><FONT face=3D"Courier New">BendpointEditPolicy</FONT></STRONG> = 
class. When=20 
I create <STRONG><FONT face=3D"Courier = 
New">BendpointRequest</FONT></STRONG> with=20 
request type set to <STRONG><FONT=20 
face=3D"Courier New">REQ_DELETE_BENDPOINT</FONT></STRONG> than no = 
command returned=20 
on <STRONG><FONT face=3D"Courier = 
New">getCommand(request)</FONT></STRONG>=20 
call. Method <FONT=20 
face=3D"Courier = 
New"><STRONG>getDeleteBendpointCommand(request:BendpointRequest):Command <= 
/STRONG></FONT>=20 
is not called.</FONT></DIV> 
<DIV><FONT face=3DArial size=3D2>I think that method <FONT=20 
face=3D"Courier New"><STRONG>getCommand(request:Request)</STRONG></FONT> = 
should=20 
contain folowing code (or similar)</FONT></DIV> 
<DIV><FONT face=3D"Courier New" size=3D2><FONT color=3D#000000><FONT=20 
face=3D"Courier New" size=3D2></FONT></FONT></FONT> </DIV> 
<DIV><FONT face=3D"Courier New" size=3D2><FONT color=3D#000000><FONT=20 
face=3D"Courier New" size=3D2>public</FONT><FONT face=3D"Courier New" = 
size=3D2> Command=20 
getCommand(Request request) {<BR>    </FONT></FONT><FONT=20 
face=3D"Courier New" size=3D2>if</FONT><FONT face=3D"Courier New" = 
size=3D2>=20 
(REQ_MOVE_BENDPOINT.equals(request.getType())) {<BR>   =20 
    </FONT><FONT face=3D"Courier New" size=3D2>if = 
(isDeleting)=20 
{<BR></FONT><FONT size=3D+0><FONT face=3D"Courier New"=20 
size=3D2>            &nbs= 
p;=20 
</FONT></FONT><FONT face=3D"Courier New" size=3D2>return=20 
getDeleteBendpointCommand((BendpointRequest) = 
request);<BR>   =20 
    }</FONT><FONT size=3D+0><BR><FONT face=3D"Courier = 
New"=20 
size=3D2>        </FONT></FONT><FONT=20 
face=3D"Courier New" size=3D2>return=20 
getMoveBendpointCommand((BendpointRequest)request);<BR></FONT ><FONT=20 
face=3D"Courier New" size=3D2>    }<BR>    = 
 
</FONT><FONT face=3D"Courier New" size=3D2>if</FONT><FONT = 
face=3D"Courier New" size=3D2>=20 
(REQ_CREATE_BENDPOINT.equals(request.getType())) {<BR>    = 
 
    </FONT><FONT size=3D2><FONT face=3D"Courier = 
New">return=20 
getCreateBendpointCommand((BendpointRequest)request);<BR>  &nbs= 
p;=20 
}<BR>    <FONT face=3D"Courier New"=20 
size=3D2><STRONG>if(request.getType().equals(RequestConstants.REQ_DELETE_= 
BENDPOINT))=20 
{<BR>        </STRONG></FONT><STRONG><FONT = 
 
face=3D"Courier New" size=3D2>return=20 
this.getDeleteBendpointCommand((BendpointRequest)=20 
request);<BR>    </FONT><FONT face=3D"Courier New"=20 
size=3D2>}</FONT></STRONG></FONT></FONT><FONT size=3D2><FONT=20 
face=3D"Courier New"><BR>    </FONT></FONT><FONT = 
size=3D2><FONT=20 
face=3D"Courier New">return null</FONT><FONT = 
size=3D2>;</FONT></FONT><BR><FONT=20 
face=3D"Courier New" size=3D2>}</FONT></DIV></FONT><FONT face=3DArial = 
size=3D2></FONT> 
<DIV><FONT face=3DArial size=3D2></FONT> </DIV> 
<DIV><FONT face=3DArial size=3D2>[Q] Do you thing it is correct to leave = 
<FONT=20 
face=3D"Courier New"><STRONG>REQ_MOVE_BENDPOINT</STRONG></FONT> as type = 
of=20 
request in call <FONT=20 
face=3D"Courier New"><STRONG>getDeleteBendpointCommand</STRONG></FONT> = 
method when=20 
<FONT face=3D"Courier New"><STRONG>isDeleted</STRONG></FONT> is true? = 
Isn't it=20 
better to do something like:</FONT></DIV> 
<DIV> 
<P><FONT face=3D"Courier New" size=3D2>public<FONT face=3D"Courier New" = 
size=3D2>=20 
Command getCommand(Request request) {<BR>    </FONT><FONT = 
 
face=3D"Courier New" size=3D2>if</FONT><FONT face=3D"Courier New" = 
size=3D2>=20 
(REQ_MOVE_BENDPOINT.equals(request.getType())) {<BR>   =20 
    </FONT><FONT face=3D"Courier New" size=3D2>if = 
(isDeleting)=20 
{<BR>             =20 
<STRONG>request.setType(RequestConstants.REQ_DELETE_BENDPOINT); </STRONG><= 
/FONT><FONT=20 
size=3D+0><BR><FONT face=3D"Courier New"=20 
size=3D2><STRONG>           &n= 
bsp; =20 
</STRONG></FONT></FONT><FONT face=3D"Courier New" size=3D2>return=20 
getDeleteBendpointCommand((BendpointRequest) = 
request);<BR>   =20 
    </FONT></FONT><FONT face=3D"Courier New" = 
size=3D2><FONT=20 
face=3D"Courier New" size=3D2>}</FONT><FONT size=3D+0><BR><FONT = 
face=3D"Courier New"=20 
size=3D2>        </FONT></FONT><FONT=20 
face=3D"Courier New" size=3D2>return=20 
getMoveBendpointCommand((BendpointRequest)request);<BR></FONT ><FONT=20 
face=3D"Courier New" size=3D2>    }<BR>    = 
 
</FONT><FONT face=3D"Courier New" size=3D2>if</FONT><FONT = 
face=3D"Courier New" size=3D2>=20 
(REQ_CREATE_BENDPOINT.equals(request.getType())) {<BR>    = 
 
    </FONT><FONT size=3D2><FONT face=3D"Courier = 
New">return=20 
getCreateBendpointCommand((BendpointRequest)request);<BR>  &nbs= 
p;=20 
}<BR>    <FONT face=3D"Courier New"=20 
size=3D2> if(RequestConstants.REQ_DELETE_BENDPOINT.equals(request.getT ype(= 
)))=20 
{<BR>           </FONT></FONT></FONT= 
></FONT><FONT=20 
face=3D"Courier New" size=3D2><FONT size=3D2><FONT face=3D"Courier = 
New"><FONT=20 
face=3D"Courier New" size=3D2>return=20 
this.getDeleteBendpointCommand((BendpointRequest)=20 
request);<BR>    </FONT><FONT face=3D"Courier New"=20 
size=3D2>}</FONT></FONT></FONT><FONT size=3D2><FONT=20 
face=3D"Courier New"><BR>    </FONT></FONT><FONT = 
size=3D2><FONT=20 
face=3D"Courier New">return null</FONT><FONT face=3D"Times New Roman"=20 
size=3D2>;</FONT></FONT><BR><FONT face=3D"Courier New"=20 
size=3D2>}</FONT></FONT></P></DIV> 
<DIV><FONT face=3DArial size=3D2></FONT> </DIV> 
<DIV><FONT face=3DArial size=3D2>Regards,</FONT></DIV> 
<DIV><FONT face=3DArial size=3D2>Roman Bosak</FONT></DIV> 
<DIV><FONT face=3DArial size=3D2></FONT> </DIV></BODY></HTML> 
 
------=_NextPart_000_006D_01C2BB16.66082680--
 |  
 |  
  | 
| Re: BendpointEditPolicy bug [message #58822 is a reply to message #54230] | 
Tue, 28 January 2003 15:30   | 
 
Eclipse User  | 
 | 
 | 
   | 
 
Originally posted by: none.us.ibm.com 
 
This is a multi-part message in MIME format. 
 
------=_NextPart_000_008A_01C2C6E2.3636BA20 
Content-Type: text/plain; 
	charset="iso-8859-2" 
Content-Transfer-Encoding: quoted-printable 
 
Some routers will use an orthoganal (manhattan) routing method, such as = 
Rational Rose.  For these routers, it is not always a straight line that = 
indicates that the bendpoint should be deleted. If you have 
 
O---   a 
   |=20 
   | 
   x---| 
       | 
       O 
 
where "x" indicates a bendpoint, then moving "x" to point "a" indicates = 
that the bendpoint should be deleted. This implies that a general = 
bendpoint drag tracker cannot know when to sent a DeleteRequest. 
 
ConnectionBendpointTracker is independant of the router being used, so = 
it consider *all* operations to be REQ_MOVE_BENDPOINT.  Delete is = 
*interpreted* by the BendpointEditPolicy, never sent by the drag = 
tracker. REQ_DELETE_BENDPOINT is never used.  It should probably be = 
deleted. 
  "Roman Bos=E1k" <bosakr@dev.disnet.cz> wrote in message = 
news:avugni$crl$1@rogue.oti.com... 
  I am not sure, but I think there is a bug in BendpointEditPolicy = 
class. When I create BendpointRequest with request type set to = 
REQ_DELETE_BENDPOINT than no command returned on getCommand(request) = 
call. Method getDeleteBendpointCommand(request:BendpointRequest):Command = 
is not called. 
  I think that method getCommand(request:Request) should contain = 
folowing code (or similar) 
 
  public Command getCommand(Request request) { 
      if (REQ_MOVE_BENDPOINT.equals(request.getType())) { 
          if (isDeleting) { 
              return getDeleteBendpointCommand((BendpointRequest) = 
request); 
          } 
          return getMoveBendpointCommand((BendpointRequest)request); 
      } 
      if (REQ_CREATE_BENDPOINT.equals(request.getType())) { 
          return getCreateBendpointCommand((BendpointRequest)request); 
      } 
      = 
 if(request.getType().equals(RequestConstants.REQ_DELETE_BEND POINT)) { 
          return this.getDeleteBendpointCommand((BendpointRequest) = 
request); 
      } 
      return null; 
  } 
 
  [Q] Do you thing it is correct to leave REQ_MOVE_BENDPOINT as type of = 
request in call getDeleteBendpointCommand method when isDeleted is true? = 
Isn't it better to do something like: 
  public Command getCommand(Request request) { 
      if (REQ_MOVE_BENDPOINT.equals(request.getType())) { 
          if (isDeleting) { 
              request.setType(RequestConstants.REQ_DELETE_BENDPOINT); 
              return getDeleteBendpointCommand((BendpointRequest) = 
request); 
          } 
          return getMoveBendpointCommand((BendpointRequest)request); 
      } 
      if (REQ_CREATE_BENDPOINT.equals(request.getType())) { 
          return getCreateBendpointCommand((BendpointRequest)request); 
      } 
      = 
 if(RequestConstants.REQ_DELETE_BENDPOINT.equals(request.getT ype())) { 
          return this.getDeleteBendpointCommand((BendpointRequest) = 
request); 
      } 
      return null; 
  } 
 
 
  Regards, 
  Roman Bosak 
 
 
------=_NextPart_000_008A_01C2C6E2.3636BA20 
Content-Type: text/html; 
	charset="iso-8859-2" 
Content-Transfer-Encoding: quoted-printable 
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML><HEAD> 
<META http-equiv=3DContent-Type content=3D"text/html; = 
charset=3Diso-8859-2"> 
<META content=3D"MSHTML 6.00.2600.0" name=3DGENERATOR> 
<STYLE></STYLE> 
</HEAD> 
<BODY bgColor=3D#ffffff> 
<DIV><FONT face=3DArial size=3D2>Some routers will use an orthoganal = 
(manhattan)=20 
routing method, such as Rational Rose.  For = 
these routers, it is=20 
not always a straight line that indicates that the bendpoint should be = 
deleted.=20 
If you have</FONT></DIV> 
<DIV><FONT face=3DArial size=3D2></FONT> </DIV> 
<DIV><FONT face=3DCourier size=3D2>O---   a</FONT></DIV> 
<DIV><FONT face=3DCourier size=3D2>   |</FONT> </DIV> 
<DIV><FONT face=3DCourier size=3D2>   |</FONT></DIV> 
<DIV><FONT face=3DCourier size=3D2>   x---|</FONT></DIV> 
<DIV><FONT face=3DCourier size=3D2>        =20 
|</FONT></DIV> 
<DIV><FONT face=3DCourier size=3D2>        =20 
O</FONT></DIV> 
<DIV><FONT face=3DArial size=3D2></FONT> </DIV> 
<DIV><FONT face=3DArial size=3D2>where "x" indicates a bendpoint, then = 
moving "x" to=20 
point "a" indicates that the bendpoint should be deleted. This implies = 
that a=20 
general bendpoint drag tracker cannot know when to sent a=20 
DeleteRequest.</FONT></DIV> 
<DIV><FONT face=3DArial size=3D2></FONT> </DIV> 
<DIV><FONT face=3DArial size=3D2>ConnectionBendpointTracker is = 
independant of the=20 
router being used, so it consider *all* operations to be=20 
REQ_MOVE_BENDPOINT.  Delete is *interpreted* by the = 
BendpointEditPolicy,=20 
never sent by the drag tracker. REQ_DELETE_BENDPOINT is never = 
used. =20 
It should probably be deleted.</FONT></DIV> 
<BLOCKQUOTE dir=3Dltr=20 
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; = 
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px"> 
  <DIV>"Roman Bos=E1k" <<A=20 
  href=3D"mailto:bosakr@dev.disnet.cz">bosakr@dev.disnet.cz</A>> = 
wrote in=20 
  message <A=20 
  = 
href=3D"news:avugni$crl$1@rogue.oti.com">news:avugni$crl$1@rogue.oti.com<= 
/A>...</DIV> 
  <DIV><FONT face=3DArial size=3D2>I am not sure, but I think there is a = 
bug in=20 
  <STRONG><FONT face=3D"Courier New">BendpointEditPolicy</FONT></STRONG> = 
class.=20 
  When I create <STRONG><FONT=20 
  face=3D"Courier New">BendpointRequest</FONT></STRONG> with request = 
type set to=20 
  <STRONG><FONT face=3D"Courier = 
New">REQ_DELETE_BENDPOINT</FONT></STRONG> than no=20 
  command returned on <STRONG><FONT=20 
  face=3D"Courier New">getCommand(request)</FONT></STRONG> = 
call. Method <FONT=20 
  face=3D"Courier = 
New"><STRONG>getDeleteBendpointCommand(request:BendpointRequest):Command <= 
/STRONG></FONT>=20 
  is not called.</FONT></DIV> 
  <DIV><FONT face=3DArial size=3D2>I think that method <FONT=20 
  face=3D"Courier = 
New"><STRONG>getCommand(request:Request)</STRONG></FONT> should=20 
  contain folowing code (or similar)</FONT></DIV> 
  <DIV><FONT face=3D"Courier New" size=3D2><FONT color=3D#000000><FONT=20 
  face=3D"Courier New" size=3D2></FONT></FONT></FONT> </DIV> 
  <DIV><FONT face=3D"Courier New" size=3D2><FONT color=3D#000000><FONT=20 
  face=3D"Courier New" size=3D2>public</FONT><FONT face=3D"Courier New" = 
size=3D2>=20 
  Command getCommand(Request request) {<BR>   =20 
  </FONT></FONT><FONT face=3D"Courier New" size=3D2>if</FONT><FONT=20 
  face=3D"Courier New" size=3D2> = 
(REQ_MOVE_BENDPOINT.equals(request.getType()))=20 
  {<BR>        </FONT><FONT = 
face=3D"Courier New"=20 
  size=3D2>if (isDeleting) {<BR></FONT><FONT size=3D+0><FONT = 
face=3D"Courier New"=20 
  = 
size=3D2>            &nbs= 
p;=20 
  </FONT></FONT><FONT face=3D"Courier New" size=3D2>return=20 
  getDeleteBendpointCommand((BendpointRequest) = 
request);<BR>   =20 
      }</FONT><FONT size=3D+0><BR><FONT face=3D"Courier = 
New"=20 
  size=3D2>        </FONT></FONT><FONT=20 
  face=3D"Courier New" size=3D2>return=20 
  getMoveBendpointCommand((BendpointRequest)request);<BR></FONT ><FONT=20 
  face=3D"Courier New" size=3D2>    = 
}<BR>   =20 
  </FONT><FONT face=3D"Courier New" size=3D2>if</FONT><FONT = 
face=3D"Courier New"=20 
  size=3D2> (REQ_CREATE_BENDPOINT.equals(request.getType()))=20 
  {<BR>        </FONT><FONT size=3D2><FONT = 
 
  face=3D"Courier New">return=20 
  = 
getCreateBendpointCommand((BendpointRequest)request);<BR>  &nbs= 
p;=20 
  }<BR>    <FONT face=3D"Courier New"=20 
  = 
size=3D2><STRONG>if(request.getType().equals(RequestConstants.REQ_DELETE_= 
BENDPOINT))=20 
  {<BR>        = 
</STRONG></FONT><STRONG><FONT=20 
  face=3D"Courier New" size=3D2>return=20 
  this.getDeleteBendpointCommand((BendpointRequest)=20 
  request);<BR>    </FONT><FONT face=3D"Courier New"=20 
  size=3D2>}</FONT></STRONG></FONT></FONT><FONT size=3D2><FONT=20 
  face=3D"Courier New"><BR>    </FONT></FONT><FONT = 
size=3D2><FONT=20 
  face=3D"Courier New">return null</FONT><FONT = 
size=3D2>;</FONT></FONT><BR><FONT=20 
  face=3D"Courier New" size=3D2>}</FONT></DIV></FONT><FONT face=3DArial = 
size=3D2></FONT> 
  <DIV><FONT face=3DArial size=3D2></FONT> </DIV> 
  <DIV><FONT face=3DArial size=3D2>[Q] Do you thing it is correct to = 
leave <FONT=20 
  face=3D"Courier New"><STRONG>REQ_MOVE_BENDPOINT</STRONG></FONT> as = 
type of=20 
  request in call <FONT=20 
  face=3D"Courier New"><STRONG>getDeleteBendpointCommand</STRONG></FONT> = 
method=20 
  when <FONT face=3D"Courier New"><STRONG>isDeleted</STRONG></FONT> is = 
true? Isn't=20 
  it better to do something like:</FONT></DIV> 
  <DIV> 
  <P><FONT face=3D"Courier New" size=3D2>public<FONT face=3D"Courier = 
New" size=3D2>=20 
  Command getCommand(Request request) {<BR>    = 
</FONT><FONT=20 
  face=3D"Courier New" size=3D2>if</FONT><FONT face=3D"Courier New" = 
size=3D2>=20 
  (REQ_MOVE_BENDPOINT.equals(request.getType())) {<BR>    = 
 
      </FONT><FONT face=3D"Courier New" size=3D2>if = 
(isDeleting)=20 
  {<BR>             =20 
  = 
<STRONG>request.setType(RequestConstants.REQ_DELETE_BENDPOINT); </STRONG><= 
/FONT><FONT=20 
  size=3D+0><BR><FONT face=3D"Courier New"=20 
  = 
size=3D2><STRONG>           &n= 
bsp; =20 
  </STRONG></FONT></FONT><FONT face=3D"Courier New" size=3D2>return=20 
  getDeleteBendpointCommand((BendpointRequest) = 
request);<BR>   =20 
      </FONT></FONT><FONT face=3D"Courier New" = 
size=3D2><FONT=20 
  face=3D"Courier New" size=3D2>}</FONT><FONT size=3D+0><BR><FONT = 
face=3D"Courier New"=20 
  size=3D2>        </FONT></FONT><FONT=20 
  face=3D"Courier New" size=3D2>return=20 
  getMoveBendpointCommand((BendpointRequest)request);<BR></FONT ><FONT=20 
  face=3D"Courier New" size=3D2>    = 
}<BR>   =20 
  </FONT><FONT face=3D"Courier New" size=3D2>if</FONT><FONT = 
face=3D"Courier New"=20 
  size=3D2> (REQ_CREATE_BENDPOINT.equals(request.getType()))=20 
  {<BR>        </FONT><FONT size=3D2><FONT = 
 
  face=3D"Courier New">return=20 
  = 
getCreateBendpointCommand((BendpointRequest)request);<BR>  &nbs= 
p;=20 
  }<BR>    <FONT face=3D"Courier New"=20 
  = 
size=3D2> if(RequestConstants.REQ_DELETE_BENDPOINT.equals(request.getT ype(= 
)))=20 
  = 
{<BR>           </FONT></FONT></FONT= 
></FONT><FONT=20 
  face=3D"Courier New" size=3D2><FONT size=3D2><FONT face=3D"Courier = 
New"><FONT=20 
  face=3D"Courier New" size=3D2>return=20 
  this.getDeleteBendpointCommand((BendpointRequest)=20 
  request);<BR>    </FONT><FONT face=3D"Courier New"=20 
  size=3D2>}</FONT></FONT></FONT><FONT size=3D2><FONT=20 
  face=3D"Courier New"><BR>    </FONT></FONT><FONT = 
size=3D2><FONT=20 
  face=3D"Courier New">return null</FONT><FONT face=3D"Times New Roman"=20 
  size=3D2>;</FONT></FONT><BR><FONT face=3D"Courier New"=20 
  size=3D2>}</FONT></FONT></P></DIV> 
  <DIV><FONT face=3DArial size=3D2></FONT> </DIV> 
  <DIV><FONT face=3DArial size=3D2>Regards,</FONT></DIV> 
  <DIV><FONT face=3DArial size=3D2>Roman Bosak</FONT></DIV> 
  <DIV><FONT face=3DArial = 
size=3D2></FONT> </DIV></BLOCKQUOTE></BODY></HTML > 
 
------=_NextPart_000_008A_01C2C6E2.3636BA20--
 |  
 |  
  | 
Powered by 
FUDForum. Page generated in 0.05101 seconds