Skip to main content



      Home
Home » Modeling » GMF (Graphical Modeling Framework) » Programmatically generating diagram from model
Programmatically generating diagram from model [message #144522] Fri, 27 July 2007 08:08 Go to next message
Eclipse UserFriend
Originally posted by: exquisitus.web.de

Hey Guys,
I'm searching for a way to generate the diagram code from an existing =

model-xml.
This is possible, with the user interaction "Initialize ??? diagram file=
" =

in eclipse. But I want to do this programmatically.
Help would be appreciate. Thnx.

Enjoy your weekend :).
Re: Programmatically generating diagram from model [message #144567 is a reply to message #144522] Fri, 27 July 2007 13:11 Go to previous messageGo to next message
Eclipse UserFriend
Hello Miriam,

just review generated ???InitDiagramFileAction and do the same UI-less.

-----------------
Alex Shatalin
Re: Programmatically generating diagram from model [message #144644 is a reply to message #144567] Mon, 30 July 2007 02:21 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: exquisitus.web.de

Hey Alex,


> InitDiagramFileAction
Shame on me, but I still cannot find the package where that class belong=
s =

to. Not even with google.

Thx for help. Miriam
Re: Programmatically generating diagram from model [message #144669 is a reply to message #144644] Mon, 30 July 2007 03:50 Go to previous messageGo to next message
Eclipse UserFriend
Hello Miriam,

It should be generated into ....diagram.part package

-----------------
Alex Shatalin
Programmatically generating diagram from model - Chosing Diagram Root [message #144706 is a reply to message #144644] Mon, 30 July 2007 05:33 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: exquisitus.web.de

------------ejwdZDz8txIkO4oDJ9sR9w
Content-Type: text/plain; format=flowed; delsp=yes; charset=iso-8859-15
Content-Transfer-Encoding: Quoted-Printable

Hi Alex,
I'm really new to GMF so sorry if I'm bothering you:
I found the class in: ???.diagram.part.???InitDiagramFileAction

I copied and changed the run() method according to my needs.
But now I'm confused again: How can I navigate another element of my =

model, to use it as diagram root. The line looks like that:

diagramRoot =3D (EObject) resource.getContents().get(0);

In the picture you can see a shortcut of the variable resource at runtim=
e.
I don't want the DiagramRoot element as root, but ContainerLayoutTypeImp=
l =

(seen in line 23). How can I achieve this?

Miriam

> Hey Alex,
>
>
>> InitDiagramFileAction
> Shame on me, but I still cannot find the package where that class =

> belongs to. Not even with google.
>
> Thx for help. Miriam
>
>


------------ejwdZDz8txIkO4oDJ9sR9w
Content-Disposition: attachment; filename=diagramRoot.GIF
Content-Type: image/gif; name=diagramRoot.GIF
Content-Transfer-Encoding: Base64

R0lGODlhggJYAvcAAAAAAIAAAACAAICAAAAAgIAAgACAgICAgMDAwP8AAAD/ AP//
AAAA//8A/wD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMwAA ZgAA
mQAAzAAA/wAzAAAzMwAzZgAzmQAzzAAz/wBmAABmMwBmZgBmmQBmzABm/wCZ AACZ
MwCZZgCZmQCZzACZ/wDMAADMMwDMZgDMmQDMzADM/wD/AAD/MwD/ZgD/mQD/ zAD/
/zMAADMAMzMAZjMAmTMAzDMA/zMzADMzMzMzZjMzmTMzzDMz/zNmADNmMzNm ZjNm
mTNmzDNm/zOZADOZMzOZZjOZmTOZzDOZ/zPMADPMMzPMZjPMmTPMzDPM/zP/ ADP/
MzP/ZjP/mTP/zDP//2YAAGYAM2YAZmYAmWYAzGYA/2YzAGYzM2YzZmYzmWYz zGYz
/2ZmAGZmM2ZmZmZmmWZmzGZm/2aZAGaZM2aZZmaZmWaZzGaZ/2bMAGbMM2bM ZmbM
mWbMzGbM/2b/AGb/M2b/Zmb/mWb/zGb//5kAAJkAM5kAZpkAmZkAzJkA/5kz AJkz
M5kzZpkzmZkzzJkz/5lmAJlmM5lmZplmmZlmzJlm/5mZAJmZM5mZZpmZmZmZ zJmZ
/5nMAJnMM5nMZpnMmZnMzJnM/5n/AJn/M5n/Zpn/mZn/zJn//8wAAMwAM8wA ZswA
mcwAzMwA/8wzAMwzM8wzZswzmcwzzMwz/8xmAMxmM8xmZsxmmcxmzMxm/8yZ AMyZ
M8yZZsyZmcyZzMyZ/8zMAMzMM8zMZszMmczMzMzM/8z/AMz/M8z/Zsz/mcz/ zMz/
//8AAP8AM/8AZv8Amf8AzP8A//8zAP8zM/8zZv8zmf8zzP8z//9mAP9mM/9m Zv9m
mf9mzP9m//+ZAP+ZM/+ZZv+Zmf+ZzP+Z///MAP/MM//MZv/Mmf/MzP/M//// AP//
M///Zv//mf//zP///yH5BAEAABAALAAAAACCAlgCAAj/AP9RE0hwoMGCCA8q TMhw
ocOGEB9KjEhxosWKGC9qzMhxo8eOID+KDElypMmSKE+qTMlypcuWMF+KNJjP YDVq
qXLq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq1ZkQZypq YMOK
HUu2rNmzaNOezalKZsy3Dr/Cneu2Lt27dvPi3au3L9+/fjWGFYiz8NfDhhMj Xqy4
MePHjiNDPqzTIFjCljNj3jy482XPmkFz/kw69OWvplOPVi26denVsF2zfi07 Nu3b
s3Pb1l27N+7dwH3z/i08OPHjw5MbV168OXLbBQurnU69uvXpOT8D3h6au/fA 38OD
/x8vvjz58+ajE4YMlnH7xO8Rx5feeD7q+vjdR6Z2U2B//jYF6J+AAA5oYIEI /qcg
gQseWE0qDjIoYYQUJjihhRU2iOGGGnZ4oYcZfihiiCRyOKKJJYKI4ooqtnii iym+
KGOMNLI4o40GFnTfdTz26GNaqbSVXl9yoWfkkEgeqWSSTC7pJF9hZTeZZFRO aWWV
WF7JFlg1ldZlZl9iFmZYY3IJWpnUoKkmamKe6aaXb4IZZ5tw1imnnXTeqWee fJI5
p594ArqnoH2aGaihgyJaaJp/Kkroo45GyuihkyZa6aJqNnoppJtKmimln1pa JkE7
qkLFWFS09eOq16HiBypivf/qB1pNtqTdk7jWmuuuuvbK6690GYRaTqneR6wq xkap
7HvM0ncfKlTAUhgzVSTbrLXU+PHPP358pS23175X04HjIljuf+fSNBC16pJL YLoC
wZsmhOa+a6+7+NabL7r36usvv/u2+6/AAA8cb78FJ0zwwgcH3LDBjDocMcTy Voww
wxMr/LDGGWNsscQfU3zxxh6P3DHJKJMa1h9aULPFV4VsQY0Wf5x1Klh3SGvW NDeL
xbPPPbe67T+uDj1rWhgxgcLShnR0TxXbbDRNzQk9HXVDRfqqNbBcb+1112Bz F+Vh
NFNTiBapaFEINSynTYUWpx62ydqoVJtlYXUjBq2Wjn3/OzS4VgZJXBXrVgGL cdTq
vNxm7MLGpnPMPQf54pNXLvnlkWdOOeaba26555x/3vnoopd+m8pgUbE2Ti+D VUjQ
Y4ViCDXMyBzKFChQYQjPoajwyqm35747FX0I/zMzdwhPTfBb6GwWKn8fTR1F UFNj
zw1Pg6LCNtPAgYIKhy+zNPhWM6NCIX7YsXQj1Nyj9PZTT83H+tSAsjQXzCwd w9Wd
fe1/2AD8nwADSMCuCGRYZTtb2tbWNrjBLUrMuAE17DC7ad0AFUwQAzWgJa2v RBAV
TZhdKGBQN1TIQVrQQoUT1iYKWGDLW9F74bK+4iGloSAFsWAGE5o2jRP+o3H8 YQYO
/6glDSfAYhpNiAXtVGALOByCGsu4Ac+mwYQnwgMG1ZCG4abhhKi10D/0ghGO xijG
Mt7IjDVCIxnPyMY0tnGNbowjHOeoxjq+0Y5y7A/q2Nay1qVCZmXbGR5e0ULa JW8K
MPgZNY53yETejIu/oyLupuA7OEQrLX4bGqyoI6SHUCFqT5tG9dy3tO9tQxre Q0EM
qAi+f0wjDwOZRhwIQbUevqIK0qhlze7xye5tTyFZK6AwB0jMYRqzmGJrD2Wo ICWv
MHNKdyAE4UBINyrkbYNVoOYGrWk3FRKCm4+BQwpc2Bi/+cGcfNvSpgyXjx7W TVqJ
uwwzQpgPatUtFBLkJVj6Ef+HVFDhJpCkAs8A+snE1cSXOsvH4zylqVBhqqEQ BVVE
RTXRh0r0ohTFqEUzytGNepRTDgVpRUWqUZJ21KQfPUipYJeqtORvdopkhiPB MsWb
yTSmUhQoHCq4yJpNQxQ8HQv0wLXBbUmvOgypnj1WWT1/wIF9ArEa7Zi6DVDs jmoR
7F7TloGD+OmyfV2cxuz8sQklcgaZx0wrWteq1rZmRFjhiquzFimH1YViaVrI 5iXf
aT8U5BWDKHgBDGBBrVRQ8QUogMErkocCmWHrnLNCDWTlaq2vpMuGKrgFEEmp SmoQ
A6/ZJJxTtYDZw+nwe0cU6D/bt9rPhiGVGoxXGEsGMpP/hYxjt6WtyGrL2936 Fre2
DW5vgTtc3RL3t8ZNLspOxtzcLte5zRUucrc1kB2x6rrYze6t3vJKIrn1u2wN L3jH
O8CxLWuulD2vDNPLXvS6d73ozQ7oMqPP+W5mofY1XX5Dx9/9+pd0/QXwf/Ur 4AIT
+MABRrBl9qjdBjuYR4/72nbJS2HxWrjCGAYMXN+r3g63F74g9jCHP2zePN7x Q7M1
sYrpeOIV45HFLm4xjGf84hrL2MYxzjGNJ8TgB/v4x0AS3NaCeeEiZ/jIRk6y SsxL
4iaP+MkhdnKUpVOZlHbqyiHlEn6zjOWRMrSkXz5pmK3M5TJ7uctgRrOY1Uzm M5s5
/81vXnOc2wzmHgP5zngui5SQ5ZXD8LkyQaKMnwWNkz/vmdCB7nOhEW3oQSs6 0YBu
9KIfLWlIH5rSjM40pjcdaU13mtOX/rSoQ01qR4/a1KWe9KlVnWpLo/rVrIa1 q2NN
61nbutK49nSrcw1qWfN61bfWta8RvWHrNkssxqYPsvXMbLIk+9nNHgu0nR3t ZVP7
2tKu9nmtnW1sc/vb2w73scWtbHJPu9voBve4111udp9b3e2O97vNrW1311ve 9563
vb1Nb37vO939Bvi/4a1vfPubPnbOs8IXzvCGO/zhEI+4xCdO8YpbvOHZ2VY1 hjYQ
jXN8aBunLsg/7nGRl5wgJ//v+D9CjvKVk9zlJod5y1mucpqPPOY2T/nNZ/7y nMu8
5j0POs6FzvOhG73oSAf60ZWe9J0z/elOj7rOp/5zqVed6j7POtGhjvWtW13r S/+6
17sedrI33excv7rawX72tY9d7dTg33+2gbq/2f3ueM+73vfO9777/e+AD7zg B0/4
whv+8IhPvOIXz/jGO/7xkI+85CdP+Y87ZMMsz/zONX9yzsvc86DfvOg7P/rP lz70
pE+96VWP+tW7vvWwP73sWT/719c+9rTPve11j/vd+773wL+98Hk//N8XP/jE T77x
lY980xuEfyiv7mUqT/3qW//62M8+9VWh/e57//vgD7//9TsukRK3XOXof3n6 Y77+
86v//eyHv/vjT//527/9+Jd//uu///vr///8B4D+F4AEOIAGiH/kJ4D9t4AK 2IAF
yIAP6IAHKIEQOIEReIEWmIEVuIH/x32dwT8qNX3iN4IkWIImeIIqN3j38Ad0 d4Iu
+IIwGIN4l4CXd0BgwXItuHIZ9A/bYDU4uHM5+IMnF4RDQ4TbYoQ8CIRKOIRL KHNI
+IRNKIROGIVFSIVHaIVJyIRaOIVbKIVeWIVdCIZcOIZfeIVamIJEWAU8SFa3 gIM+
KIZlmIVkCId0aIZzaIdxCIVhiId1KId5iIV6eId+2IeB+Id7OIh8mIiIuIiB SC8J
/3E1dZd3VCAKsfAPK5iDMpiJmriJI8h9ekeJlsiCdneJnFiKpniKj0eDXaFM HZdz
VSBElgg14nNDscBL6sMImoACh+BK71OJZed2v8h2aSeMYheMb0eMaFeMbYeM wLiM
x/iMxrh0rfhyyyAG/2APXPAPs4hDoQQ11WA1VPQ9vuiM0UiO5jiM0HiOyoiO 5ciO
6piM8NiM7jiP/+CBcvd8kYh3akgMtSiK22IPPnAPclCLKXAL16MNl0B3pIiK DNmQ
DpmCd3cPOPAPoDCO1xiQfzA1CvkHCLmRmOiQIBmSMqiKCoF5mwc1/VAFosSL +rOS
orQNKRmO47MNzVeTx3eTzP+Hk8u3kzaZkz7JkzqJeymoef1wQpxwCyypSqKU knQX
kzZkSj0JlD8ZlVQZlFY5lVcplVoZlR4oENCXgGySd2r4D/BQCBk5kKGokSmZ lv4o
km75li7oiXoXCq+QjQJZiSvoVRupkXDZl34pfiQZHaxIf1TTD3BAVVBEVSvY PlWg
DU+FgRwImRQ4mZJZmRpImZdpmZGZmZw5ffhnDyjAPlK1DEzFRVFDmo7ZCJqJ mZvZ
mqz5mqsZm50Jm7O5mh74GSCYj3c3ltd4A9ugDHiVkSy4lpfYDzaEAx/5l8q5 nKnI
d/6QkNsCnH4lnNsAD8EJk8eZnMy5ndxpeIG5YNJhiIL/WIiECIjmeYjkqYjp yYjn
OZ7tKZ7wWZ7o+Z7y6Z4tx57zmZ/2uZ/xqZ706Z/62Z/4yZ/1KaDreaD/OaCO qBCQ
KH0Q2Z0QGqHhJ5cSWqEWmn3fiRleMY3tuI4eGo/MGKLpSI8gOqIfKo8nKqId WqIr
iqIs+o4uGqMqCqMzSqIyaqIvaqM1mqI46pUEQncO6nIbNxAbV6QEYaRDKqQu R6RK
yqRG6qRLqqRJiqRH2qRSWqVPeqVQOqVWSqVbiqVR6qVaOqZiWqZdeqZZaqZp iqZh
yqZcuqZw2qZx+qZyWqd0eqdgiqdfuqdk6qZ5+qd8qqZ2Cqh9OqeEKqh6WqiD Gqh+
/8qohuqoi6qoifqkX0kYNigWN3GDYZGpAKKpntqpoMqporqppPqpo2qqpRqq qXqq
qoqqrtqqsMqqsrqqtPqqs2qrtRqruXqruoqrvtqrwMqrwrqrxPqrw2qsxRqs yXqs
yoqsztqs0Mqs0rqs1PqsnHoWPaYq1OA82sqtYeGtYAGu2xoW3Uqu32qu4Yqu 4woW
5cqu5+qu6Qqv60oN7Uqv72qv8Yqv81qv/Hqv/Zqv/7qv/jqwAEuwAluwCHuw Ciuu
DKuuDSuvD6uvERuwE2uwFZuwF7uwDruxEMuxEuuxFAuyFiuyGEuyGtuxKPux KRuy
K3uvziMWzpNxFzqzNEt5D/9aszibs5IXpDrbsz77s0AbtIznD3u3YUJ7tEh7 s0i7
tEvLs4unaEwbtVIbeAtpeP4AChP5N1V7ePagAhY5tSJJtHpnfneXE3+gE3/Q d3N1
ilsLtjWrcu+jnYK3gtqQi6Wki4THlBEJNX8XRXq7LU/Dd/0givcAW/9gmN+D lPDg
m24LoU77NxBStkVbJO+RffcACMl5D9vzD/4gB9q5lo37s6CbeKN7uXLrd6Z7 d/7A
m84ZB0g5im15d+ITA4Crmv5gCbBADKp5PXSnCV8buqgotnlntJK7LSgwNJGb d1wh
aJbLun9DDNa4DKqJd1YDvG87NFbTD1QwP42Qi4egvfP/g7eFm7gpqT3bYLe7 GLiA
6z04BL6h6b3uq4uBO4te6w92awjji0N4t7g9qIactT97V71/swmw4Lmca8DV aL3M
+bjIOzTHuy3Ji3cZZxgRrLWpRLvj67UpaQpLk77eo8FVYArbQ7+ViL4ZXIm3 +wrD
SQX2Ewvw67wKPLPEOZD3UJDX00OVCA8roA2UoJrLEJCPebi8SYrPiZR5ScM2 LEVo
qcN8uS3w4ANCzLmXYMSx68TWuILZ0MOhuA1Odbcr0IKjC7gcaQkoDIoAGcMM Kbwz
OJhlWw13iwI4sXfLuxN4Z5jpWwXZIAdUTEW7CA8xkMd7XEV2Bw8Tmb16vMXa 6LWW
/ziQ9lCQftzEaCyhKneJgWs13bgt/hAHt9SUTvCSYtyC1WucpaQCK2nJKjmW mbzJ
46tK/Yudo5ycCRyTfKu+ele1/ISXmKWQfBvJcMnAEOzALlfBdzcrHJdJf7O6 mFwF
ojw+2oDKyvyUKtDM2HvBloi5y2xKlpgCTem/LLi6YczLFUqc3ey/gMCXKYy5 ljgH
TVy66Jy6n4zMl2vOlvAK5YyWlwjP6Kx39nDF5Uy43ZxKS/PF2zK6t/u1qXvG 4MyJ
anx3xGt3XxE1cHwTwmx32aITxLy/jJuXu4zIedmWpHiXW1zJG33A0oDBwwk1 HX26
Cd2Xk3zSPciCT6O39xADqf+pjTfwt/fgBK+rvk41jkxJyco8y0ylt37cg3rc 03vH
v0+TyTkMwLVMuElkd/ZrjT9E1Ssdkr78D7N1Ew+itqlwtkrLua4rxEg90GOZ kmUd
xWrtx+nMxXBgkcsQC1fbCOIMk0F91RXqPSugltzcPTN5uHFbtZ91xf64zFJ0 0mmZ
SttzidJJM3Q32IadnJl8C5R8nXo3i6FpnaUkBvewNFbtu3idiQtN0Wxctl+N to0H
mvrjyiggRbOMkjbk2i34WX7Ft/YjBobNDACc0yrcv7EIyaH9l2E9ijAcebTM eFFE
efwb3A+p1SKofRLJ3NJdeG1r3FWceFebtZDXtb873SP/ONp/09DXR9ub693T Pdzm
nd7gl9Xq3d7u/d4hCd4cx4oG4Q/1fd8CYd/5jd/UoN/9zd/+HeAAPuD7XeD/ beAC
juAEfuAMnuANvuAOHuEQPuEKXuEPbuESjuEUfuEcnuEdvuEeHuIgPuIaXuIf buIi
juIkfuIsnuItvuIuHuMwPuMqjuK6Cd84nuM6LoPyLXLSseNArnjoHeREfnjs XeRI
nuRKjng9jhky+7QVPeRLbr1SHot/O+VLfuSDJxrOWdxYjsYp/eXw3eTibeQ5 sR5y
EcDUKeZN+3eyzOZKruWBN8HKJLheDudC+wd91Y97ueZ4nt5kXtqI1y0QQhnG jL02
/7RKLLiNlWjYoqQ9t8Do95A+KGAI9jO9fw6ScLu7MSDTp3zlma7jcg54hWGD aS7V
b825d429OIDUaM0EBo0D/dAE28DdMx3qb+nP09DO/bzrKo3rvEzml/q0Z4u8 Fw27
ewnbSyPbbAnGsf2SP33dwL6JKse3b27lpzztou7cVe53ffbkdge6KTnuTYCU KXnr
Qizu5Z7u3GzX2g6Suj4HdBdFevnuoR3oG9p4ONEtYX3L2qjonkyaeYyXGfna 867o
vi3A9k7tQzOW87s0fvDpI73w5j3q2700hXDXtJ3x11hKMYDM27Lxd33Pd07x Jn/y
iyfsPy6DhIzyftntLt/eFv/ffbQt0DF/8zhPffgO7jl/3j1P5EFKtELPuUQ/ 9EZf
9Eh/9Eqf9Ey/9E7f9FD/9FIf9VQ/9VZf9Vh/9Vqf9Vy/9V7f9WD/9WIf9mQ/ 9mZf
9mh/9mqf9my/9m7f9lVf5j8f3DA/93TP7Xaf93r/lzt/6nt/1XX/9+A8838H tYKf
s4SsDFZNeCB/D5huidMLD4uvz939fd9cx3de3Qzp+Mdc8ncn+Z8/+YAH8tan 8mF5
d4WAtmfOd2ureAoPuBN/+IA5NIQsvXknkK972YcADyqACoWQQbzv+1XU8nvX yMK/
+JqNt4133NTr0QDtO35+d6C+d5jN2U+5i3a72dOcuKT/O9LB//u7qI3h/3fE /zfl
P7fS/nea7514X7wOPbmZ4feGd/mXL/sleA9iAA+Pz7mj4O58xwwAEeufP1Ax /h0k
aHCgnG0HHT50qOlGQ4fwFP4bBVHjRo4O7/2hyLFflYcjNZrk+DFkx3/LJg5M NQ3k
v3twGh1ECVElS54Pdz5M+JCZQI6cVi486o9hT3+jVubsuRFqVH8sqV1NlYra xlQH
qaHw2rVj1q5ayUbt+dPjTLRt3b6FG1fuXLp17d7VuLWjP00qbtFky1HpNngq UBVi
YgheisNMxPwjduheFVAoUBx6aI9xITiPB8Yh6rAfExQpYk2ujOLmPdIpbqH2 u8yy
/2mClsWMLi2QteUYIdVOlrltt2mPVPjk/qfppj/QOJuLrkJxcsPpGqffo2IH hSFN
qrFrV02TtArhlFXY6o7C87/FjR8P3gun98PIsBvWp2wZs0O+fv/1g8OyQqLr pwmB
/AnQu/Fey+8yvvTD65+ttNILIrH+AeugC7nSSkKzNuSPispi6W61AFegLkGD akJB
hVimijBGGWeksUYbb3RIGdeg48keHzy6CUiHlmmkppvseSmz0GgCZCX4RvKH Cd1i
eLKKKJekCQcmt6kSwQNJEo00y1TQpgool/IHTJrkEMgl4bT0kT81D7qnSYTQ nHMt
Lpu4xR4X76GST5rIhEMgeP9wuJLOwIQ8KE6eatLyICKNHLJIm/5BkiIdKfKH mCDT
XFMgTYjyh5KblvGB0kxBdauqjraihkKuvrLMslhZOutDEOlkU7NbLMqGEsyW wQFA
zD7KRo6/PgoOR2efhTZaad2qsCQ49hMtj4Zku4xbzCJDa7KRGhr3UZJqu2Ea MVt8
ZSZmE2SXLdxQmGgy8WpVoV3qQGLGMi2iW2uaKqaB17//AO7HiW36ueQWcBXl srsY
BBZNWcAogse2cVWyl9mZ+rEkFXed0BcngFkC11tvIfKTOjNPpullcgkU1ic1 f2PL
XpqcyAbh6NS6a8KruHIIrIZ2fYgaPypUuloeVRoJpYT/ezZ53hapnjZrrbfm 2lkd
/0IoD542AZspUUoGeiN/LCEq6jmlfrkkMAv8yySo354bb7nd3mine+a4D5al EIoD
bI8pgrtvkOxePO7PXpmb55sX3YjstOCIdKCzA/Nn83013fFik+XWk6Y5mr37 LVc5
uirWDjXq8CtqqrnVKj/IWjolAn/+Q2DqSHa3d5jT7rp444/v2mmI+iubJeI7 AmVA
OvPkaJn5JsvmWo8Axl776V3etreEF/b+v+as9y0w4P7IHtvtJb2BTibcb0kh cQFG
MMjqdCJpuo2FbwiwtEes/d1DYc6j3PLkc5To5amB04NIX/6inO8VKBYE2U/+ 2HMD
/511zAnL+uDOQNi8nghNef/oyuxUuA2kQcR1r5NK/5oEpUJhClGFYw+Vajg6 5PXQ
hz80nj9IsTDqPQQe64nKPV4QvKNUr1aPYREKqJQ3mqgoJ8QQEJiUcZkoGsQe WSSd
nOymIo+QESGiwBJ7aiWZBKUgJDDCDZn617goWQZFVUQBiqCyRfoZEYkbMUrf lrgS
JTJxeU6ZFyz6xyY8qiaOwjEkFm9zQH8ccHxAsYqHhraRQpDlD1mJEMfmuLDx NOSL
KPgXKS2TLpgB0ZWvhCW1IgSKIKGlHxaLZbTsMZ9oPU8utJTLLUkozFxGxYTF RGYy
lblMGTGsiTwpBgmZGSNQpP8RRzCaizPnEgppcrOYq9tI67JywmmW05znxBE5 0blO
drZzRsd0ZzzlOU961tOe98TkqzQ5NFhJyJ/9BOg/BRpQgg7UoAVF6EEVmlCG LtSh
DYXoQyUaUYpO1KIVxehFNZpRjm7Uox0F6UdFGlKSjtSkJUXpSSXqT1nh06Uv hWlM
ZTpTGYEzL1iBIU11utNoqZOnPwWqs+AZVKIW1ahHRSq0bOrCfcbIdZtMalTd 6VON
nPIQVoVLuZ6licyZ7Jlw0Yw1pfrToUJEFWQ5awsfQqHWUbUtcCziwcY61wjB y5rM
+Qte5XK4UA3kEukjYlxQhbOvhg0hCfrRvI51Ebric6n/ScPpCZGmVk2iECtu TSLl
mLWufAGwsZ+V5UG4V8R7WKy00gxXFbSxFHhMYTWt/N5b+vEcmxVWNi+Bx3LI ltvP
XBAUfQStTMvqkAtlCIVWid1l7wJXVgElrsGF7kZm4qM6UQcQ2qCEZV5gxda8 BhCg
QFEd3fgfMU1kKP8wxjQeY48i/QG8MtEGFtUjXkiCt4mA2tK8kiSSPPnjr/wx Rptq
Gd14PtYhsGqphfSCgmp4iCVLK4vr/KA47RiiMjd55L3opUrX8FVRwRmOWAk8 1wqJ
6U9g6hj3QFIldS1nKZPR4LiWcYimZMMpkRkNhnnHpRebiQkDfsiMYxZjAsGr RdI5
/xnzbNao+I1YuJaVLIZqBRbKnhXBsVKFVPjkp9Po0FCIquGZZhY1zvZMzHJ1 8oiD
h7rGjS6KeUQdvFbA5oVxoR9c+IdRjOK3Nr95zgk8yBEBQ2eWTGVtpMKh6NLM TgN7
JbKzkhAKEGy7C6Uid9bZHSR9tzO09Y6z7dr0hwdWMNQuOqkVApNSejYzSH5O Z149
mG9QTJJbouImzNBXB/uX6fdV7zEjoVjM/mNk8kAMIsDUK5NN/dLhasifYJkQ T6jx
ybSS024zdFwlsQYlvDX3YGnC5rI/O910Aa4lOAisXEtVy+oOxFT8YVtLXlIM PwjE
Hn6AIhMryaV3G7tvK7puvP/dVGgwxeNAbKNbkIErbmU2+p8JXmtbYYGVElo6 pzoB
ScfYN8BiMdJ67dtes6YnE5AzvLElHtNfuPUv0VWni8FupEEyhgI/AMwi5Ppx rHWO
RUN0UasnYZO9Zl7zws5cNUYf1pRp/FuT27PZB0lrKtIaIcYFlkV3PKX0fO64 qvXP
jE0HezFRhSP8hp2ZDhfnxc2+diBi9px86aqMfMX2eD6d7nfHe96Jivam6t3v W3P7
3wXfUygP5B/4MPxWqoL4qij+8Ik3POP9uXjIU77xka/84y9v+clrvvOSdzzo Mb95
z4c+86LnvOlJj/rSj/7zp4f96mP/etnXnva3Vz3uXZ//e97v3vep/33rgT98 4Ref
9ceffe+Jj3zbK9/4yQ8+83W/fOhTv/nRr/7zr2/96Wv/82kP/ODFT5fwj9/8 MrL7
+dW/fvYXj++xgmr75Q+X8s/f/iUsfIReWP/79z+UgPY3dAq35PiRMLKLewid 4EK7
R+OQT8qKP6g4cao/X/I/o6qQKbuMGrkO2OoJYFuXBASOXSuPwpKfNZqL/fGI Bcms
ZyIg9eFAoBCbgUgQLcEN4tglsHu6yeKJ5Kodt+C2/Hou/lgXIHOLdqvAYjLC GvG2
t6gTkdMJOxmIIMS4FCHCuqBAiMCmQ9OIJWSZDcMUoiCbTaAOgyCIKhyr94M4 4ioa
/zUci1vRFSbMGSn0CXcpnyOsuyWLGVMgD24xjZFIjaTbsJnbEQSxDEZIj5q7 lxVg
kD9siTE5DZnxCStSrUN8GUbcOiRTJfL4ju24sEbMDWZpEB2DpAq7sI8AjyLh wBuE
mvIiwZ/7DzmwhU3QjZlYhj8ytRxcQ2cbi9j5kJQIEBeJOZNIjwEZCVOwDBPh jZxY
xSMzRRRghBFRo9J4jd5xL8sQMTvkGr+5lMxIlUtBkmkwN2PwDS0Zlaf5A+w6 lW48
kv2irt6BlxtAx0HrM3dcx3j0MKXQhho6FLrhsrKjk2LxsSm5GH78kxhIuHtQ AayB
CCGjIYEwiVKZsmJTtOS4I/+IBMYsga4FfCquqAYM7EEOKQuyQBpi6p5jAaD/ URfM
ECCTDDV8vBR44CA+WYxY2KWQQBIPPBLGwkbAkxtWK0EpCjYYgwOD2Q2gdEEi CkrJ
YbWtgzmdAzYRfMrpKZeoxAk5gJzfyTWoLC+BobMUIyJNQ5g4EJkmEjRQBB/n yZPZ
ioXIgLsAXDZcPAhoO65XuTQJqcuSKLO8AZW7YRW+OZic8C/UOZ0+m6GtBARC 20nk
aTe/YSS+2olSIRNB8Us3O0x3OR07YZbGpEYn9JvKtDrPBAxpQDd5RJxsk5yL ATfJ
tBLHqbprIyKUYA7I2QiGXM3RgUh8kQ7KIYZUUBMxxEj/Bcwk+JMsatgG2aEd yrJL
3CEnwooZENs1NmOG66HG0kzKVRMlCzoYgZnKF0xMaKkWXYOgf4jO7ZwGQxiI TRhL
edMGTcCW0xLKm4BJXSsXi9BOmNEr69kYZbmfmdEGHNpPGWwEYzm3u9E0WpyY 6YyZ
rxQl0twgJ3QIVayCZGmT/YqhAHJIq9QeA1I58zQ5XFQh2qkG5PSQT1InL+EP HLII
u5mDW/BLKMEhv/SSUhmWVJnHZnEJmUDM7iwePtMUf0HQj8Au24AMMIqim6gM LVic
UuLRLUKlzSyY0/DRZjnSH824WkmXNjKcE7G6NpMvYmRNH7uaUSIzO0q35UE4 ksi6
/yA0ulgwOmQExjLMSKtgQNgRGU+KkaLsjVNC0k2b0k2bjlOiF3WZDaLYDb/w yulI
jX/hylkjQR21Ef6bJyTZUe5cyLibkRtsuvRTpnuwVEf1VIhgUonkGi7sCE0o QBpB
wFI7w+BMw2WSL1H91HaC1Fg9P02l1VvFVXHTyHGCFX/o1V+VEF8NVmClBmEt VmI1
1mRF1mUd1mY9VmdVVmhl1mel1mit1mm11mzF1m2V1m69Vm/VVnDl1m8l13At 13E1
13RF13UV13Y9V3dVV3hl13el13it13m113zF132VV3hlqfjL1YAV2EVDQ4Ad 2MGb
1YPNO1tV2IZ12KDaVbUjP/+lkdiHLSrMQsFzcsUfsoeFqy12ylinyz+NOKuS lboS
4ieDtdik6hSdjMIkgkLB4KxGHUBfxJfQaMIVk6FGfbNr5AlSbZQlkYijuEKE kEI/
49mYjQqrGS+jrTqgxctaMcMVrIuCjTLYQS5Y2cjjKUpbFLaVTSefoIJ6m8K0 OFoA
VJxGxcIXfLWihQ6cm9q5SI0M/Ig7wJKNTVuCU9tea4vn+Qm8TQl3mZ9YgksM YUOO
sDIJwYosCyIc8gdAyFuwhZYZe5gu8kQX6QcROcbk0A8Wwdwq0EOFlBRHdLdC TI3b
UFL3WgFtQDZLKJkwWSX4SlRqTA2H3Ep58bo8WhjNJZH/8OCWzy3GzfURewiN I1IG
z9AvwpiNaQQP39KY7vqI91oUQcyrBOldLtLSYiSPcozNPNk6zkUBLzXG8Phe iHmk
ZnxGFDCU5fWY2oWLiL3arwiLBwOlD5kwTAMFQ22N9ZWiezHUWfND8gCQzt1f YkrB
3KgN9ZDcGqmQzqFJgxBQFDyUezAQ9vCLcSFJTzsWziqbQ+GL9lyxS3GJHAs0 OOGg
ddEhHaMY/xmYnNslIoO5W6oFjistmnSNm6sIHAAO7YHJbdiljnUIWexhDXo1 TInJ
v2iZ6WCxnCvKI3vQG+CLWsJgGh5cI2YPHX5HkFuf8mhOHr4BLR4YtnDJU7kB CyqM
/wfODA7ysZzcW1lq1ePCwLlkHV6EP6mQEqT4ywNqhngcrDW7FDjFY5PAokiB j71E
2wWmunM5U6ONOVbBq+qyGjnioTLiDW+rOtOZBigcDGI4DfXBzOk0ZDZDHdBc iDLB
idNMna1LnGjUEpVgjlZDzdttiEMbo1r5s88BClnWE6k5TYT4K2UIUL2Jwqf9 0r7k
usC0zOBoTTHBARx1F6WlClZV2diRNAejy0q7y9J5MxWY4WLrIKXMzlmj5JRr FBTA
YnxhEERm4CGZsp5bs8YMY3IJulHSZvWBZ87ktYRpSmIoBGX5Ofncsf8cCWmw H0hs
Tnexykxjlgr2GD9li44lBv8x6JcnIk9B+U/m6GQufludoxOLNmhhczmrDAxQ YASG
QEE+U2beQZ0qYIaXMEupRBgnWOHdmQaPpsoixgsPNVziRM6oGyf+mmT+gINb xuQ1
MyQ020I5EN2JVGcaASaaoBIUNUgwSVEUWxHAMVEeggqUsIjkCI3xWbeWoFHf 6IyJ
1MIbXRyFccxzjDe+6gdTMVGYbE3HqerEWQaaXEvuIAok0QaBSxda/GtTmgiw 7reW
Ux/AZl12W9G4Bki8xAyo0KuqNp3X1MsXzbZCeet0TGUERWs6u6TPPqDlkdOt VTBq
mLjTFtFYuR11qg4BpRPz9IdNsIVLaWkDCp9Qo6Bha0//yAWMkjvlNm7qtkA1 xOkV
f4kO+dpTE6OIykDd2B2tlUDujBOTm5Akz2WQkIht3fhANrWMmts0LPLu0YpG oBQT
4vDfVvPK6OZKJipKHRZj0Ji5VEoN7zYxsOE5PPVTB+run0kQzGDuQh1B/kCj RmoR
mjRuKUWleL4YQJ0YLKWTX2TRgCaJ+R4YSLwO08JwVdWnN/4Hky3ZCGmuLiLE DKyj
Yovv3tFkMTkNMkoPYLTcf+Cj4D4eqM2aTKERR3EW4t2rQ5YWf5QRTv0hq5Xx tZtV
t4UWZfDYXyLnZwHiuABcrXnqCHlV4EYehh3yK8dyH4LfLM9ULve7Y6oKzgtz zxtz
/8krc8M78zEXc9dLczQnczaH8zWX8zefczOPczrHczuvczffczXPcz7/cz/X 80B3
80E3dEA/dEFH9EVX9EYvdEZ/dEdv80m/80SP9Eun9D7H9EqH9EwndE+3dFDv dE6X
dFLfdE0X9VI3Vg73cgJL2FYPLiuH9Vmn9RnZ8lp3slfH9bGSdbTYv10nKmaB ZmCn
KSHPabaq2DmkcmIvHrejSmaXql6XNh5M9q6bkXm5yA6UQ2h/FATl9mIf7Z++ i1x5
IXNZ9nBBaA0vnW9PGodokEMgz49m94sd2br4afgDpb6RxMvVDRVJEz3cht99 Ed4t
EdhcigwrcS453XnXCG8MbP8mceZzZ3hzMna7IPezOIkM9fYrjuBRo58J7hXT gMlm
uTkNgkkNaukEnXh/Eq2ZCcqXacqVJ6t6J7+6bJoYsvbynczvvZvkbbnBpI4V rdlv
N+p9iXiZd6lbD5rbyYps3h6XwVGGZmmX9iwK1o143kAQO6Bv3rTxMfJaH+6Y uaTo
rE+JR/o7ZPW4+HXBwKFd+kFMieqZcWQwcftRAjcUI4+wRhW9T6zQRnom0tPK zGSz
P3tkqvgej9LoYFIk9WErFbnFP0mVPhlm6DDSUEQ8MhgsSvJd1/XCf7K0V8xO 9fzR
XzulB6IpJ/0b6fzUxydpZ/3XV1irBShj/SfaJ9baJyj/23dW3B8o3adW3p/9 3Bf+
3h/+4Cf+4zf+5Af+5b/95t995/996Pf96S9+5n/+649+7Kd+5Lf+7Pf+7Vd+ 6a9+
8ed+8g9/7R9/9C9/9T//709/919/+G9/8O9++nf+f1192Nf/7jT9/Y+p/AeI fwIH
Eixo8CDChAoXMmzo8CHEiBInUqxo8WJFav9SUdOI8SPIkCJHkixp8iTKlCpX smzp
8mVLfwo1UuPoEWRHmzB38uzp8yfDm8twgDok8N6fbUCB3quCsV8VpS2RSh1I NeHV
pVoxatR5UFWqsGBTBe1o9ubBeyhQNIK69S3cuHL/3cMBr5FAeGIoumVoby0K HA2z
/xLs67Afk7UrqiIkTHHZoXtw1u59aFjhMsBiLgvkXNCtZMoVqXoemFn0QdBJ ISIG
jDe1U4oyE5oNi3YgWYO5EdbsmvP2QH9xbjWdtnou8uTKSd6Ed2jZ61CxUC5T cUug
sesLoTKmeBXeje6fo14s9krO9H6ASC4L/8/fqGnkCTYVb7VKNvT/1GOsf7C9 Uv3A
UVlB/kl0lWRGGWQgcxt1dNBuKOA2E0f/1AbcUXNIVdpyHXr4oUT+XLINPGvF QNdk
KsTiTxWmqJCNE0r5I0c2TvlDyVptJZbCLf4YMx19ky0GlSk5/qPJWs+tpSJU UClj
ZGhMtvhibDNuc5qK7+GIQv8hgGxzD49YThcaCidGCeSM2sjB2JlOvhjje3Jo Y+OW
jfizY4+WANmZU6ENSQUoKGQpJotWBinodDeuVchq9wBiHCgrGKcNMZSBgpc/ lsCi
p1WP/mHHWitWioIWSbWmwpd/BIrCdCWWaRhVrvLoz6oEQjQbbxZ6VVCF/6BA 024H
+RGWg2H5kdpka91g3Dat8QgitNF2iOE/9tzQD5zG1CLHdcXBoSAxRsGDA1La FCWQ
oVBNA+dAAho1VIL/gPdlbAONi9Q0TIh7Q37d/jHNt3SRB6C9ONCqYFPYMjau uwL3
S9dq4/5TqWD7cQtxvuCKS+4f5ipoaMLzHfVHNgHDqx//wXlxvA3FnV1criYI x5Yw
E3hx951g1nIXHI1NTGcPqlQ15Q8ceIF3T83VxqDwP8a8Mp+hAlkLsX0f+YYh WYCt
tZFCtulaU7D0mVoFVOnWKy3aaSdHTCz9UILqfoktWaO9PvzDTNtk10smCpIe x2dn
TtC9X5+NJru03ny2Nndsi7tHJuJWwQE3iib21aTcgiqlzGvyBra4oINXazfe Te6d
bN+vrIYk4pcL3niMkBtWIg6gU2lVo//m3myVa7JNmIjM7qenasLfM4fxHb8d YL0i
3uI47xXhelBtvfJK06+6zjQsbn5QW19x/2Zundrlmw8Thv6IgubkqldloD+c aJNH
/6rySdUUQcLtSTVdcjytVH1uph98VSF59sMdAP92D58JTHgCaw9dGNgUZjzu XyJ7
zyb21w//iYww8qNf+O4nMv2NTD7G4yAAnXCeMVmwKhv8HwL5BMACziwqBiJG Ibgl
HO00sEpxiEUAaZjCGs1QRu07jrok2KcLiuRqELKQr6AYNoOADSyFoBbVWFS2 s52v
i16ECWhWIZBN2AIOe2IRQeDhB5s5RRNookTnqkU5Y2jDjPIyWJX6pKG+wCMG Wmxc
FYi2p8udDY1KOxKQHLUNZYjBkPbwYxyYJ0j6eKkfXODTJAE3EHv4wShodCO6 4JjG
ExGuUHYclyNrF5s+avGSpf+040BASRcN/WMoyduGP9glmcr0EV1Fu4q1cBk7 QGhD
lMvwgSLp8igx/mMTT/MlEFcDoFzKCE7UfA+7DDI9Kn4Na2eBRU6CkophYZFw 9cMP
JRT0xXWyEyf/2QvRkkQXuS1LgS+LyuIagTQTKcVVKLDbPoO2u38ESgyj0kIB dVdE
xx3QMU8iVVL2ySWnCEgMDy3VNv6irGbRcxvMgCeSUJCC9NDTgbP015fkps/D CYQZ
mhFaYoLG0omtpVSTCulI47ZRiTbiNH7QG/OUUqnKZNA0rtFp37RTKYRWzjr4 E1g8
URCZZOWUoGv56eZQYIh7vGwO3brYRJz4lbCkYiwiIU3/4iDXzrWyFSOca6tJ 6nIQ
tsE1IsHEyt+Ws82CVK+cdf0rYH8CnKgF1iKjolxhwFpYhYRLIU/tolgXK9nJ Uray
lu3iXgkCrAddtrOevYhfPyva0ULEiTLRiEzw8R4opna1qP2Hak+72tiyFrau ne1t
Wytb3daWtq/1LW53a1vhApe3v83tcHuL3OIm97jEXS50nytd5U7XudS9rnWz G1zs
ble7xu0ueL8r3uaGl7zjZS56o8vd86rXu+Z9b3qrW974rhe+7Z3vfdkrX/3W l77u
9W1fSSvgAXOTwAY+cK52heAFM7jBDl5nZgey2dA+uMJepLCFM9zWyFqNrBjW MIjB
/8jF5DgmOKCoWAwxArT9hVhaERZIgCGUij+Q9Q/ivFCLc9wStGg0MN5ay7NY cqqq
FWjEebnBY82pkH7Qbz9UbVuybiCvGBBZx2rj8IR0QyGa/MbKXlYJPOZYI9dV eSQc
Skte0RXJBXkpIZkhJWHvgan1IfLLIHoxFHuDtScmhKzFIpadA221gRQVdwfc YLdi
Op3TUHnI/sGXqqwTVX0qmmr3oAIfUMAIJEUG00naWUH6yLsvzRSvAVIsz/pp K0Gn
DcsCmSLX+lyh3gB6PC4iNaJquVFH5w5Si4kqEFPEYlaLlpbtShxdTtSPEWHM q02r
Y6uuBUjEAEmWy05g9LgKRP8egWca+rHHCtxnEL1ArJhGoUpUFbOhKiXrY6Cg HDzs
Ruzk4DnGvKqG1n4Fa9wQi6y1po++LNatAl5MFHXECwWfWpykHek1iBZYmecN 2Jtc
8MdlOsr46ki+R6uw1+QxkEQ1Bz4bRlSI74kDDAuyDEMIbGcMSssFSajmgUdc 4nNx
dawHUo2cI8R7Ej7WQQx5J8CooI6LUSYAkdfrNifzPeOruc0By6ngpJWWJb5R 0av0
OkzmMcXo6lMlCzeNNmdK3KHeC76Y7qV0900qhgzOjwjyVnvIO+pwqXc3IUSN bdCk
GjVZCDWGZazvDbQwk5PPUV7HPMQLzOt2t6xQyNc01Qn/L8w9KppVWK6+V5gM mRdb
RgyEdzBfxlFoS+Qd4x8J6jSGByraGM7dSGlqeeHlHjHC28lbterHLwfnZKGG 34O/
b83O2HoG6Usm96N5UcDCmMikZXtEfylo8n60p/kcsmvJJHoWUzR+UsppCpF9 MulI
WQDrG7OKlyyBimeHQqtpmgly/fKzii6Aqfawq9+TeufE+AQJC40BYEiAnNzE QMl4
X0xdx2kgFKhJVGQUINTp34WhzeopBHikhKhJ4LQ4yIdpoAf+VdMthD8QA4qR xIp9
4E/gnZ6hIAsOWgu+oEngHAzOIA3WIEbwH9g8CDX4A03woIX44A72oBD+4BAG IREe
/6ERJiEQLmERMiESOqESNqEUPuEURiEVXqEVZiEUbmEVciEWeqEWdqEYfuEY hiEZ
nqEZpiEYrmEZsiEauqEatqEcvuEcxiEd3qEd5iEc7mETShFn2SAgBqIgNoQK Ktgg
BmIHHiIgyqAiNqIjoiAOes0j2mAiMsV82IM6mQ+tSJnYRKAFZkn1MaJEkBVY gMUk
6hhV8ZBKDFlDGIY97IlarEXdKcTbieCIDR2QPdPIdEeJFUwtnhm6jML9eF+y 7MVd
fVkh/uFFwNrwEYQpLIOZMRFCVOApAgXFBUg2qUSSLcRVrIpUhZlUiELE9SKa 8aIC
SSN9GFnuLQg6CsSbSQ1iYf+ixayIJsRR1IkiRDAjQyyDP/QDNA5g/JVjNcrF aogI
AAmbrqFA68VUqiSQr+FSsgRbrpEGoLAKp/VDRbKFW9DdK46RKuqUQK3KitSK sxCH
qoQKrVCGq0TOsSHQSh6JPIVa6/VJqTXGahTDRxLadZAbMs5E/1UiQtgYjEGR UCaE
KfSDPSDlP05juwVUqqyKnYSUGOzTSCEFVPqDVDKaJw5kEw0EeTySwDVQwR2c vCDZ
x5FN0mClw93TqGmbPXBb6OlHmP3PI0nDuTmBKhINwiFZ0jwSveDSmjRQX1JZ AGXL
K2RO6CFRAWXL86DjMqAdfgQMuqGOoGgHdwjIUd1HP5X/4D1yIEiogq9oDTWA ZkKc
AlKe5j0sZUGM4GtMkj3UDhOMiZkkhaFoUWwmWxbBSTNsJVeSxEzhoqAYHQAx ndI5
pNq53dMpkmrgErIJBzXEhkbhUYEQ5y2hEd/4DbahEdbJyNnACjEtz1G0mUFA xnsg
GzAiXbqwS6agiTqCWDIC5RPRhIVsQzMugz3c5332Ayg0xt40CgpRzc2gjgrA EFo1
C3j25k5cI1eh1Ge8DePZHhERzoP2J5sUTlsq1H7EwYxJBSYSQxhM3VHMjOKZ k+kV
BnnczHEQzYAq0HE8lYoShzqSGwFlJ2VKHv48nD8U1QbtSbyFomd+xKzlWTPW 0j30
/0OR7qdNrlvgDM5yXgYh8c97wMHRIShPrAa4QeQgLV/z4cUxHQ/41ZOMTF+U 7g9a
ASiy3UPkLEMsvGK4LMOUNkMxcSky7Y7C3EjnIIipxA4zOVN39uc07ClxGFtB BFPZ
wF4vOdZqNJbCaFsa7V6LRaL/VcQf+B01gBM4FWVp3sM9IGlC1GNnmMzKWFqM NMwu
iuqXsFwz5R+VngTFmYaKSJQBFuM8VWZCMuB8OCCsnt+K0ksDrd9fLk7FXJ+U BRSM
hqhAVMoDmsiEHiuXNGXmpEAqrF+N1BFqFJQ2DUd9aBRGuRlgGAWSPMv1ocBe eCrv
4WM+ikVZDalpcGpC4KJEDv8JIAnEk0yV5cTrPzxJISSLPa7qZZ1ZR3aRxKDE MXrZ
e/LrB8LnVLSjPGKWJnBiSYSZqs6buRosxVasZ0EqwlosiGWsxgqaaa2WTIQs yI6s
yJYsyZ6syaYsyq6syrYsy76sy8YszM6szNYszd6szeYszu6szvYsz/6szwYt 0A6t
0BYt0R6t0SYt0i6t0tbshHVsuUItDE6s1Fat1XoRxl6txHGs1rYY1XatzZGj ZSQG
Z2ZGClQNrXCm2NoVKILtRxRsT4RFIdRYSbyc26rETTxrq3Rr43UiNxbesZ5I jqrq
0fRplTEZ+GlN7aRiBt5tSnwtSegjQ5yCam6Hka2t42L/RF4dKtFERkBaribJ 67Zu
Qk6eXE6u7TsWBCMRVp1lrvT4ZA7G7U1oRDWo61GmpkP0ot26rkVcY3D80H1g JKio
yF+EB1UmSrJsWpIYyGNyh/rkn6gFqIn8LZuMKqp9FO/G4I/uhOSWZj98L+5i BUuJ
CUxKFflmr0WgzrKI53tcgrctGg7wTm220Rl1XbWgXZttgn3YA/7GaRZR5pRy RmNN
mtTMIvo6BNxyb2gCxt8lBCicpj1oauW2i2T+TY9uY8Ae8EP4rrHyzIPGTgEJ aMrx
D7qFlLJoA52N57kBlZLNXobkJextowaD1vbCRNh0BWbcw33qcD+YwjTGq1oh SE3O
//BD/M16Glqj7FH2EY6Jhm6pku5ByCiGTqbWBPDZMNJq0hndETECw64kcu/e hbHf
Dal9aqp+zh6+KFFbDtDncrFmeaXKUZmTbQZ5XCBSlIw6jV7i0ZyJ4lIKh1qj VcHr
KaDsJWngSMVd7Aec8KQb924Nv8TvBR/wqesyHCktGqofrZKZKHFeFHIjL4SA LtpR
qRUTB7G+0hQdF8hq6G/QYWtEwR+Rzd+R5LHc4N8n0+JM5F3cpsLcCmBDnAK7 IoS2
RsVBrUZBHVQ73jLHzstDkOPgIsQFokTj3nJYPTI1C5qKRmxqkK3KiVTpvseJ nQTE
XjNCZC05IxjXnvNlQa46t/8zEb+nfMZzns2zPNczPd+zPeczPu+zPvczP/+z Pwc0
QA+0QBc0QR+0QSc0Qi+0Qjc0Qz+0Q0c0RE+0RFc0RV+0RWc0Rl+0H6azO390 15oz
SI+WR490YLGzSad0SOfyCqq0Z5U0iOwuODtsqWLEOHctSv8EKfpZSLRG2Xrz NaOO
Nkdj5QD1YJgKQ7ZijKpSEy+ZMCakLCrK0TEzv4p0h3Rvf6wGZpLPM7ux7yLN vsZV
yaVQzSlcMqty+wFvkcVymXSHh57LvKglTltzcpBmQdi1QojBFjBEX7zVMXnk NStm
5RydonCJ2hkHqDBCoJCUNzuKSKYkRMkIs33fYCtFSOn/E21WZCwgiZ1kZFsY 2Wtm
2xAvSF7lkprISGAyMpUmcIcU5c7tHKYixBZsgSHQdDmajR8PdeZy8AbVQjrV ksHE
TAcnjM9A7COZTb78jJng01c22m8PRcMMhZIJ0Jpy27LIZbjFH/Y2RTb8NhUT nWVe
UFHsKAa1CmdKbU73BGjm22gyxBbotSslhFsYZPsqBRRTc4rSCOyIDp6mn9ih Dnaa
aVGTkuswaezQqYWajprposoZhYIzMaK+j9X5KoSvqlUvx+/lWe0uxA1sQQxs QYdH
eG2uSVdzcauW0Md13Lot3umpi+GSaMnRBV5CnIyL24KaNcSh6KFpaPxJcUNF BdvZ
/+jZEMOq4cxcG6JyqMLOxTNeH8RsGwJt2/Z41Df/3PctFyQcuaZgyJKX1hKY Wqfy
3GmjVNKBK8WVavkkSUyXo1uCB9LMsOSgxm+hXgdYRvgh5w8o8JKjDiRrL0ch UCo4
dUQhKMST03aUYwV5TN8FPm8j5+2SAAkr8pRPAVWJ5moNMStWueP2ac6sUk6g aEGK
uA/+WFzQSKP7JYW2tvH1eSuqVgtqNNyRK+NVo+u/HUSH3zqI7/UP+xKnN9M3 u7SH
nGfBYKB7VLUXR6plOXOhmTgInnVwNKw4V5XWpvda+XQ3BxmwZzuEsTSSa3th wbS3
r9PH+hd+7Zd9mTu589d/5f/XufcXu6d7u687ur87vc+7vbv7vcs7vu+7vvd7 ufP7
v/u7ugc8wQ+8wcd7wSP8wcM7etlbuC8WuD88ZNG1xFd8xfa5xcNVxGd8q1E8 xwda
LGbiU9TLv0IE5sZEOPutirWthV14OwEg3e6EDK+qo8ekC2McqvYiiuIStiYz sR41
h55bKIOzHPcxQ2AuyDGRTN+NWabj4TZZQKUH4xZ9oFG7h2C1m0UDRTSsOUZc LT4i
4ObuH9wB86QF+3b50bfxlN8rYKTCiGHkH4dnxJ1nCAadOgqHeNR9Nwtu3IU2 68pS
y3O7rLNThGSZQpiCP4SvyfvBHbAYNQpkI/ru1JDvaXz/ebK4vTQMKz4xJFbC 3wHu
1I5E07s1ZqqAiiEECmaDCluAzw3Io90+5rkMeEK+akZ66/IKW1O4CONRjUuV iTaE
VKvby0zi2sWJOBTfKKqp9pdZ/VUPhIS82kKYZpEqflogpLxYVGVAj6yYpOqP JGWU
pFUuxkvCYCoSBN11uTHQDZcnBeeUzSkJRpmildlQ2y72QxPcwoqhqf13y+1Y izQw
NkCgQBHjnz9Rse4R9Eep0b97f7b9k2jPxz05sf7ZW7GtX5WClyI+nAan4cOI /zr2
cxKxGUePEmFKhCfG4R9tDGtu8wdHoMCNEjtK3Ikixa2CPFEcmugjZlOnT6FG lTqV
/2pVq1eFSqW2NVUqaljBhhVbNdW2ngKppZIKqp+9e/bcLoPaT47Re1UibooF 74ZO
kg5fTrxxr4lReyq23dUpJ2LHaUxKrvxnzOhYy5cxZ9b89KvEl3cdMhEYQxsc FXb/
TMMrEfTdaalX33Nyq2NiiK2rjOyp4tVqwIBd2lbdOE4qiP+WCcRhMibofnFi 1UaJ
9x7SGNL9QTd5T7RAFdlWSweczfRJxU+XKb0rXTzU86Aa+QN1I2Z2u4E359e/ /+pX
r535C3AstSRC4Z9q/iEQqmXecsuefkyByp/uUEDsHkB0iuMW5kzqpzscXovI H0ti
8cej6npaIcSCKEFMwBdhjP/xquP8uWSaixzCkMXvqjARJuaWSaWKoApaqcMT IUoJ
PyJzCupCl4jMrjeY7ImFmELwQ+6sQ56s6UaMRKKRRCePY+24LqcTCo6NmGxq Ji/P
xHCoFE9yUkeDMBLqoIyYktHPP+vT6p+0tgLU0Ji82oYaFKipJq2pGLznnn5A iYo5
mJLrSQz2cisMMOy0u21J34467dBTUQULwNXsiUE1iZa5zpCCRBFSG1CUmk5E OG4g
T6llcHDISLxqe8jXH8ssVlQ4I+IrRHgOsecQYrQosyBcJyJNw3+YuW41eFx9 qVWH
6tqpIdY+C0ykWf/Ry6LK3IzBJW22jXUqk8wVdht4GlL/qVmaUg34T/8KFVhG tRpN
uBoFo2KQUql2ylMiTfK0p1cSkbthxWU0Po4vjlZaKNecHFpFok3gNVjllZFy URmB
qr1JoE1PRKqQMhNyiKef/nkZyyZrHo1IDysED2iiUWAzaBRwQJqoKYEi8R6Y IXoZ
hWp1q/AkYlDYtLuOQ2oZvDlzBaVrp+zbjuqT0OupEaKLQqm7PCle2W6w/NGK K6/u
frGrP7oyzqpTKr23O1fLzG4vmD0yGwU/cuvO1H+45vLwV4+aue/NAQWQc6zO e0ra
zdr7kxn6YASX7c9Zt4pgz1uPPbNLZa/d9th9hKrKzdAE1B9ighXwMIlv7zvv qL4i
/xT24pmfqvTmoQ9w+eipr976VF+/Xvvtue/e++/B3+94qLZK679B/Uk+ffTV b5/9
96lZP37354df/vvpx9/+/Pnf3//6Aai/APZvgP8T4AEJiEADJpCBC3RgASGo wAg2
cIIPlOAFKYhBC2aQgxv0YAVBqMEQdnCEHxThCUl4v0ElqGDhc+ELYRhDGc5w ZePj
zKDOR0Md7tBu0+PhD4FosOwFkYhFNOIRkdg6GzqlfF3xYRKhGMUbVmU9pJLi FaE4
RCxukYtUTI2OuhjG8C2xKcnLIRaXcQqxwKMnqLuXFdElxpU9sSmOyZIc8QhD LUpx
Gf3wh1ywsgyetYQqbcrj5//+4DiEnCk1jVzdISHJPDLGpIl8u+IyHvSgCFlK NCko
0Z6aw5PTdMRxh/CHJmaWKU/asZShqRBCqgAKF0VSMwCCTEa81ZjcDAmOtPRl 9faY
RIdlsh9qfIo/GDMdf9UHJ8uoyF/sgQOXNIUiIoHmDbQBkhyN5Fy/zA8jV3Sh 16zI
m+X83CRhYsYWQpEtcHEnIJ2CIu/0ZnXscQLmWnOmy/FSl4/ZDXgeaU5VwSQ8 u0SX
HQWa0OIFM4lsmdQ94OmUNtmnOWeaQziTdCIchQmj5CSZQi8DzjkYhWPjtBZI UXoo
dEqkknQsIlukYcy5wGFk3JqlKErTEI5JRzHvOk+s7Bj/kh79JY4pxcqqhKql x+3y
eUZ1asAYys6Iusc6E+kJU4hmIR11iWtisBrWAIFRnXzIo08161lvt9IVKg+t bRWi
W+H6uajGla51tSv11NrSu+5Venz1a+dY+JW85Q0fBTEsYQ9r2MIOVrGJRSxj H5vY
xUrWsf+YLGMv21jIWraymY0sZjsb2s16lrOjFS1lTZta1K4WtKptLWs1C9vP xva1
taXtbWeb29LKdre21S1pgXta3/YWt8T9rXCLG1zXJhe5x12uc3mr3Og217jV la5v
1enSv26XKtrl7nfFMlfwjpe85RVLXvfmXfN+V73rdW86A/te+c53vnnF4Trp S14A
//VDlCnL73rFe8RlTNUqUxNIn5x3x49SESlJC6hEFSwVFKmowcQjojJ0iuD/ 7hW9
5msvD03hD4iCBR43fXBTaGcZ0ICul28Mjty6yUMAJXPFGwZwfC/Zj0n1g8Ch fGW7
HplV2yhSPjNjI1E21EhFyo0oQ1bRSeHWLIEU5Xdr22Yi2dRJo9ipThHeoTZr dGIb
t9W+bJWiKdryFh33GCV18dJs6vMXvnCnIeNKscXWc8tWaYPGQ7ql01TA56RS iT7b
SZeHGoJMXdomMYGhi39pOGMRJXPM5Q1wECPlzmLOhUI8QrFFxTq0r5k0JKlp 8JNL
zTZ5OhhpfSFTqcN56mleSv/RRtRmiisN1w47EYunmJQ07lG4p4SuzcQ7j2wA Cpzt
NAFMvBzOp0i1YmK3hzD3afSLXZOu1fXUN8TeIYDgk7FcWxrHl5yUTI8JB+IJ 8iTN
uEmGu/QkfwFJY2Fl5LuRlWqYLKSb9NaJkeYQEWCtiN/1OdGdcGLEocxy3HEt 8xmv
SLhCfk3gbdRZhTaULolUznGQUw2nEmMdkPt4IP9wHJYi0tVMQU488nSVaFTg T6JY
+NsNn++lbZ5znYdx15bcuV0//PO44lzoRTc6EB9evrXKb+nJa/pa4fd0pwNQ 6lWn
n9WjfnWtZ53rVN+617vO9K+LPexTLzvUwZ52sqvd7Gz/R/va4d72uL9d7nWn +92n
Pve8233veMe62/se+L/rffB8L7zfx274xCP+7IJfvOMbf3inrxDiR7f85X/Y 86Bj
3peb53xKif550Y8eekn3POnleHrUlzP0vjTk5/2Rh9WXU/NcXMYmr7Jq3rT4 555j
o7xm/9TW87CPf8RKm17P+dwFn5amR+ODJoX7p8At46qGiCox0uptMGM0Yr5x Rb3P
/F8On4bDbMumj5nMlHTaaD/CQcSUKRlCNjz54hdj7aUIigZJAy5s5s5uXsFa emrU
YqMKyIPhNgx2vM3+BIr8aOgUdGzNomL50mTfhqQJdClnCuIldoJnxo0CGVCO nA+L
//RvxKKCv0aGdsJE4GIgGzBmXU6G5uTLc7hPIGIsBL3JAXUIFNiM5LwlJoKC a1Dg
Z+yhJ2KAbHAwCXUI/+4KHoJn3FRPCcNIB81JCD1QCrEwhkYwC/MoCrnwirIn bwRr
t8ZwssrQsM5QDGMrDVcostjwDdcwDt1QDsmQDs3QDtEQD9VwDvmwDvvwDv8w DwNx
D/2wEAHREAUREQnxEBkxERtxER0xEiFxEttQESvxES9REjOREuFwEDfxEzvR EkMR
E0dRE0uRE/UQFFPxFEFRr74Qj7zwFbOo3GSxFm0RYgTFzG5xi2JxF4mICn0R pXAN
Ri7lHm6QeVTwpDBjGK/lCf/NJPysYniqhwlf6G8C5w+CsbtggkJqathO6v+m jKQ0
RVfAz8WEjIoCg19cacpeQXIgTcWIhffQxTzuqMbIkdO0Bh2hYs5Gxfv6IQ9C AuYq
RnNUx4WA8XYYBiYSckF6EB8dLD/kzcu2i5Gg8dNWB1zUhEuUsSpyp/68MeV6 4mas
LyKiqSKrwiPrSF2UUQXBaC4k0iLRJg4CqnecIjkUwhgwwmISAwHrJnq20IUU xEAk
YiGdIsRMsMC+pS945yX5Cqkygj6wT6k0Bi/mBOX2bVuAIjeogA9mrghdTcsy BwUY
AZVQwBC2YyvFEpW4BC2TojacUB2pjQPlADxkKTFgbkP/2FI9RAmWZEkbyFIL gkYF
MCJTwCYrQw7jiqWqUEQw76Iuz5IrxzIp7iEvm0p1EnM07gUi/AFlfiMULOxN wucg
bScoFXIqIPChGnIxo0MuwcMULGRnaIMKHKck9rIjXHMbyPJnVFMqTdKpkCJu qKQi
Au4fRMFoenLVClMobARHOMYlai0oerICneQi7qEonAVHNCIAEyMGjPHiBKIw S+ov
+qGZKgI7VyCbYI2oyAQ9vWQ4jSEbKAQFsIkSfqUibII+a4I9relcphMhrFNj zFM7
neJNHuIm1EMzG+whK3AoimI8eyJP4EHDJElvPCyGUqEazoJRiBIm2qkt4mIu 3Mw1
/46jpJhAKVAQOZYDR0qsFkI0N2hqHo2lRW/EKEShNxXKKVvjcErDVESi20il PZAp
2WRDODpNQOdR2ahDVJ5NSlaDMKeN4qQtNpwg2aSk054NSWWuQnbU2g5KSj+u ALM0
5nz02gxtSeOAnmpyVqpIqLzvPeJjPmptSIEjNGkxfEjTP6SCQeDi/NCtPtiP 4nIn
UKeUA+OAGthPXTCkIyZkN0rjCu+KRpYTTBCOR5aPdkZEYkRiqwJOUUfF4ITi 4Gbt
i0TEEozUGJWhWlStJTkE1O6EVAUQjHxEnJRxIQJNJadBU8dpq+wtVU8iVhMV SW51
VI00JghUVHPEL86CZ3xVRP+MARbAbE8oAq9ysfLAJ1EWJWE2FFMkZVKELZ4E 8Fv1
7R7mQECfwzhUzUcBo6xQokVsNKGcslUwp1v6YVYMwjhuJVdKpzlRAg7EYMVO Zzzw
Uyg0IQVDdFkUA6FwqTaWoRH4BRSssqgM8ygagh+zJV8gVlwzzmIdgl43wVyz sjQw
4nQ6gl6Mols0tsYMDTgQtlUq09WqgGS5hSAkDEEjYxtAYVaWCTTBRzRrB2Ec 5Wez
VVsfZgLVDSaQjwOL1gmJJCHgLyt/ZFOHSmLmlVZkEK5aJiK+6j5nxklspsEE U6lQ
gDYxM01czjsbgmu0YGdChEyyxkKSpDueCQDBFShg7jD/87HVPApt3/Y7ZaZr mKRD
6lZtrmZv5TPWkmZtgfVqhzFtbsPKFsRtqG9ikGxiqrZ2qBEojeMaB6db3eNy BLDb
Avdq1xFx2MZsUBUcWxApAIauevEyPoZ0eE8dL6Opood2B9SNBKQg6ZRa3Qol b3En
vpZ3WhLFjhEsmBF6aHICgedFpFFakee+WjeSFrDSojcbdYhnrTd7L0/zUqh7 Tch7
Syh8Ueh7yVd8wXd8zbd80Xd9z7d91dd90zd+2fd96Vd+4Xd+7deCKA+/tLd/ Q/An
/fcXA1iMsHeADTjXLveAay6INMEZ7xEz7MGTQrCAY6crVCEVLlgVNsd386vC EgzF
/2SNKkCQKqrjCYlBKcPCmVjS+2JPTfJRKGTPIWQW8wC4Wp8iaDFF+nJvIy2F h+nL
KW33BOXxI0GHCvwATCCnXVECOuJJIrmvL06pzmQ2OZRSPrpx9iiYdYgSh5HD j/o0
QDiYvo4jWo8sbo7sBxdCIEQSCMGyjG+hyAYX1rCMNrTsIU5BKZRBJN34IexA IGQw
ZwD3O/3RI8LsIyqDSdJD+SiU12CIQL4iIh4lT4lJh5uDCvrYEFCpEe6CPGjC IhCi
k8CE4nLNlqaMePBMMowhAP0yV8BRS/uMbSxGZcH0luKUl/hMNTBHMKotIxAQ VtR0
qEqCWBJ0lhRDcWLwSJ+SAf+z+HPUIkMTJE8nhZi+WCgKY3iY9kTmQBsOotZM BP7C
eL4oclGZ5iZchFPz7UdkTfuW9crCJkWC9WUWaayUg+Awxk062ViTtykCtTuU VSWV
eMNq+Hv4ZuqCVv/cqf/cw2AdSUs6+dQEdHrzyymRaRo8ZcU6MADJKS6BkNl0 JWWh
bdF+RKNoo1PuA1Robhlw1qB+g7/Ogpi/0Z9ZA3eDb5k5Ry0QJHm2AYcdSgJd 8mg+
Iykq0GmDuuHGGDw1xmTaZUqO01oK7hkzBmQSYzhLikYSbsFWMGNWRCfjiSAK FGP0
VYibYmCNNjASmYYX2eeAcitgoXxggYsNeppDOjh6dDH/SPZEgYI5UXjMSBnj TE4g
IKc0ZmY7uuNnmuNwbJZxNi4pVk6lvTOXQrqvl0rmJqeOqNMjjiyJo+LIwvbI Rkaz
40Os7Y+maxqDSVuDq4IHpyJWM6qbi/YeXhMzi3AImVKBvSj8nClGNNCsn1cX aXuB
vSeIBdaB9SOC33H1RLu3kXu8Eji59Yi5Z/F8Niu6K0u6qXu6rbu6sfu6tTu7 uXu7
vbu7wfu7xTu8yXu8zbu80fu81Tu92Xu93bu94fu95Tu+6Xu+7Zu9s8u5I02/ kei4
+fu/He6sqxfAOWfACZx5/PvA86g794PBcXtvHTg5UuDE5MOBjxcsmheSAvqI UqEQ
/66Ri8XCHkd5G3cDGi982JjAhIGvKuCSQiQYJqmixV+4HC1DWVaHGBRCL/Zx MPqR
qjSHpScntmlCd0Eqwalni6tiwHY4oL6ZvHy4p0HnD+5gy6bgyWNCCIfQysMY yw+h
/po8oacJJk71ODgzJiHteO9BKS4Vw5CDKVx7daIzj5bbiLCRpWCizqHZHyjZ PXoJ
os3LKX9EIJXKk07Jr8E0ll57lapgGWjCYT0iUxgzL//hLYOZbUhJIEzpLxHd LxMN
Oij9GRsT0wtdMgWyMcW0lSAdluYUOWhGJ0ApXuS6qlJ7E2DhlT2zKZhhdW+0 TpHI
tGOiGnx9QfohAhtSnKXJjf+rrGtie8Ln69T0syWjdZ3F6S8KOVOz6VY9qprM czu7
Ezm5KSOkiWvP5R6CJVoTgsHF/Sl1gpBvLaz+ojrqLK+rSTPFpZN1ZBMezB7s Hd/w
JUE98ELYs0b6FgUqRkJFcFr5l8P/wZmDdpjUjHP3rbXx4x4K7aRi+c8JStU6 zS67
z6PXlMm841XMpsupQ+RWw5iP7AY0+jcO1jceTRlyJeWBZtEE+58KiuZNntFG nW9f
PSYS+eOBmy5KJJmQSdD05TdQysijh2FuOmgh0EE+lIgDWT7DXPvka25ZY6My imSu
OhmhWiS0np7zxFRR9ZyPZMGIodZVrRGUgWa4fuu9/u3/v4RZDIk5ytyemSUn 5sQn
RhUjqt0mnjUnDf7+BPyKsJEaFOVn8RwqSrAfYkqI+6miT4RYOBq4m5Kg4qzf XsJe
ZIM2JANcMEdj41I6QF9cCGJhGxYwgfDmfWpJmABgUL8RQKFfl4XlZ+NkNe6j Jz1c
Vt0w8eQpLPNl62WG44mjJSLcOMbkaCJndd1def2IVEFhEibYoSIUeFpCvBpE RhSK
jWREpenq6+lDtiFrQVIMjkwLdpVuv9OjTOKr3N07RARude+hdURv2eb3C0L+ 1ZYi
KcdvyYr/AeLen23KUKDQAmjawH5V/jl0KHDbv00SHz70F+dWxHsGtQy0aBGe QYNi
//zBQaGioiYUKW451BQLpMyZNGvavIkzp86dFv3ZpPaPWipqQHkaPYo0Kc5U hVI5
/ZNKJ6hTOEUebAjKoJ8qEomhMJT1qtKxZMuaPYuzKFqzDCuGbETWXgyQ8OCu vRlx
pr9NMWfCu3FXJrwYbgMbPhwY6FC1iBs7fgw5suTJlA3nBXnPrlJifR9mntyP CQoc
IJexdKkXFOnD8FR0rgwbrc+aRIUOjY07t+7dvBEz7g08uPDhxEEqJlo8ufLl zJs7
fw49etLZNIEKrR00u3Xt3Ld77w7+u/jw5MebL4/+vPr07Ne7bw//vfz49Ofb r4//
vv78/Pf77w/gfwIGSOCA7/9lt5h0Ci7IYIMOPgghg9TNVJtTv0WIYYYaGrdh hx5+
KNNxF4JIYokmnohiimVNGGJQCaoIY4yUjZjbZcJdZs8hZNkoo0P+gAKYRTwq 1dpr
k4nY411OqeJUKqqsdc9JPtCFkpFJ6naSQa6FZpCODBk15E0McallYTSFaROX KeX0
pUP29BUlSW3iNOdDZKJk5kxo1hTalA4pM5eYohnUkkx72vRXnXVilqUYF41S EUco
OGrPDXmaxaJxRFl45VlRyfSpWfdw9Y9JeJa6CWqdxqYWqT7GEZM/f/xzqJ6u 6jSq
QpfWNOquvDaE60dhoVCIHDH1AwhPvWJ2K5vN4nSPH3f/HDvFs4Z+9KuvNGFk 5bIz
5fhPP8b+Yxph/9izpo+aaHbkPy+uOlaoKDwUqk1bcAEtIF3FBA9p/ohiJbyV YVvq
JW792NEfoKygK60DmYpCLCsRC6w/VTCkTEqmVWnxonG6Rq6WMU1cSMUXV5Hx Nh/H
FJE/VGQlMQqNuBxWI1/a48Obpcpx8MUvR7ySzT/LbDGtJ7lWtJBHx7QxyCQD y5DF
pqS0MkPSOEoMLA01HQvNBtkMrI9VmPL1P0+nDFOpceRpDw7bfBknCoHeRBFE +v5T
jJnwOBpYphZZ967ASH1azbwu4nSDIVtsgVdD4rqUF1+CV6bWoHJvk1WQtHIV Glxt
/4VbhTbr2slVXgJNA4eOIeFwuuUq1CIH5AT3C7rKH52eerixO/x26cba09Jg 04zb
2iulxyCN6l75eXoTsdyTQix/TeP8P8X/kc3uuI+0AuyQ30r7qLxvjrqX2v+h UPbG
N+xQv/cQr8Irlt9QvvWWin8PE6pXav1qpTkqkGzkrmVZMsgKVOUt8fWjgHah HeXc
hZzJDe4fIzGIu3CyOENo7kwP49nOtvGvgEkQMgTzDAqmBLfbqZB9vGvTmMIW txi8
0CJ3olqW5hIRF57MITW0Xe9auEO1Ga99BvGfPUYzwxwGESPGq2E2whYu16ns hkDk
YRCd2BCvgM1oBpFhxeIwRP/SWbGKPjKYMtj1kGV46YpQ1IslOtMyD/bDCRJZ 1Fn8
9pAK3WaERrkNNVAAuJtsIQZbuMEg08S53T1uL6rio2NatS2ebQRY4tvc5yDS kGXl
6nbjOl0VWOgtWnVyIPgj1SYlwqNS9s520yBVP+KQCmzliBh80936SJnJT35E XKnQ
pVtCaaN7VK9XbTEd+kx5q43QMVejbGUdYUkwTXKudAQDBSM8KBgAHhOVXIGY llzy
yte05XGlAlj/YIMkR+4kKtWgYFC2Ua+ZJG4LisMXr/TlDzk2JITqnEw0DWG3 ty3z
dnOQyDJuoA1iaOYeBfUHHa3nxTFCtGNQNEln2jQYWjX/9KGDaZNFhbSQTOpr hrSK
6DJi8SZiFMKeUdthy4J4jxhY7KNi6wkcLgosuWhUoBLpaMVuKkbSYTSiJa1T 0uBW
UKPqjyaV6h1GXJLRM41LSHcjhpc4Wsu14NEhgItgP5dCjWrAojawiCdIYqC4 tC7u
Vw6xKrlWI7mv+uYhlksBLCYWvbaiYCsV2Rhf46ajrIjBKh5xpl6vohAWRtEg lvLK
QYQ1KcJuEyKDigHqUPIKXDrssnjK4aBwgDCWPA99IWVllqhGysoqNn+M3YZj PSIR
wW6ssNgiE/2SOZDXou+0UxxJCmKJSsjC9iLm1EtGenXEx+5qYyQJWZf8sZK8 mg2N
/5FJp1xvsqQmPclehuxuIXn1EX9QAgUrkAg/r4ves9jxITrjyXqT896jxBRR GzRM
Uw2z1aBsao/phU0oe5Kq/t6FRqv6r0XApawSLsfASQEFdXuiifquBR7SfWDg BCyZ
OPmJvVXCsIc/3M/8dpXAIC6xdEhs4hRDCEk+wUepstPiFwMlxj6Z8T9cXOMX 4xjG
N5axjn1MYx7v2MZD/nGOg0xkIPf4yEsWspKLjGQjO5nJUG5ykqn85CxjectT 7vKV
vSzlL4s5zGSOspmtXGY0n7nKbNYymNfs5jHDmctyVrOd20znNOP5zXeOs579 PGc+
77nOg9axHlGs4kQXB9GKbv/0c6zr6EhLetLpFbGLvErpTO+G0ZrudG4g7elQ 9yi+
uplTezVE6hGKeL+c/ipUnuIUKImmvqYplKg55JC6amRQ2tSWoaxlk1wVUAWN PBOw
eSUaYucER6qz3kgkrCcFb87XO+lVAo897V9nO9jDLratqC0kJmgOSL5mLaG6 1Uay
gNrDZr3gWe5xNx9BqpwivPU/COaPN5bqSam+FrgvEsRqSxsvA59JmwpikFgs o7wO
aQa1+70ikVYkadtK9/icBaaCb4sK5oyWxUFCcQ7++8W0uXSr1WlWoeTku41L 4+Uc
Eld7c/Uht8pnYZ4GChU8sY6cyxJYEhZcheT8FhuLnif/C8OlQjHj3KEd7ukU RmzW
5rWYf7DDV7LSCIFYXWbWvgG49mIk1h5wVGHR0cQOwbVRMaTs96ACH1DAiJXo KE7R
W/tzJ7YVz6DPD1v33KAsVfSuhYW2NVssCm6LdNEonemDXyHUdy1agZzCUcoo xECs
0pJo9T2YVahZaLM6lnVjuN3tBkkGGRfsaIa3uDIHSQEtVZANww0OcDGmNhys 9x+C
LjRhx8GYXKcNfQqJNEq0Iu8/CLoWNuEW6HqeDJdPK503pFLSONZDL0IJuCzD B1GC
S1MXhTPceZ9+xoIe8xFqsM3S/lyWSmFFxgT9e6hAG0Ct0z2IH9Ljx/Sjvx/J /IXv
/xn4p3u/Fyv6FDVy8ET253vxp3OWI0NMwDI4pHEysWq2cXKONBQVBEilZxGE tFaI
9EsVE2Ctlx0OYXEiARiThEmYdEmbk22nxEN/10qg5Dq3YFsqk0vc1DBxgxIa kYNU
Z1ivBFzOxTolVEn34AQ7Vzumc0MM0UosSE04WENP6ILE5CowyEvI9DZ/h4Pk s0LI
RIP+Z4NcqEpeiErDZjyuxXWp1UUNk4W/pEJdiBaiJ2ChIhESwYEOcQNccC97 GGzx
Nj7nRYIPMXD+YDDuNz6nA4gvZXxQA30tZVRQ1A9NwHO8c1RshBkhRSsjtURg FDYp
VQgZAVKoNAfTcDfF9z4sg/8+CbFCnLhZixiHcBNvJMVEJjOJ4JRJ+Qc1VTBf pRJw
vkhDlJh8jLh7u9gTmZRUVeAPj9iJYSRRiKgTlnYdF8hHflQN1LANKmcThiQG fRhs
kugqMSdzrfJLqIc/sfM5c9RTMSA6mqGO7+MSB2VYebEMlkVabrFAzbYsB8VT 8Egu
iBcuuUM6PoQ/92g/ugIPhzBLYsAM6SIK9AcXf3GEmeQENkgqwnMyPPeESgSR A7mE
sfNUDrEMrHORN5A9TEM/H1GP/ThZAdRMBJOPnkEq/PiOuyOPriSQF2eG/2hY 06N6
3MRT4fJQ6iiUI0eH/ZUK2XiNS5mHW/AHafWU0AYRP0n/b4NoEcMGC2Fha14x XM6m
XGQSEwWBdgZRMnPiWGX5i1wkN/9wlsAilhuDlp7RhMn2REBEJuU1e0VERAaB Qsnm
Q+PjFWKAcLS1g/fofrZVmLE1KTd4lz1Flln0mH9CMTrklXLjMVTUlpI5lpMJ Q00I
jmz5mI15JykQRgeHAofAUKSomhfxE6ymYq8WS7FmEzFwA7Rpm1K5bcx1CIw0 iNSI
IgzmJs0mHbVCJP7DG8T5SBDkm/YGb5ciiFYpQSEHEqcmHRDHE47FcMBhnUoh jRcG
nWcya6UhWr35neU5V95pnumpnuuJKa1pgdbhD/Apn0ERn/Q5n9RQn/h5n/nJ n/vp
/5/2CaD6GaD9OaD/KaAHSqAIaqAJyqAL6qAFCqEKGqENOqEPKqEXSqEYaqEZ yqEb
6qEVCqIaGqIdOqIfKqInSqIoaqIpyqIr6qIlOqIIgmnsKUhPiXo0iqPp2Z0z mqMz
caPk2aNBmhbKKaQ1UQhFiqQkWIGckqQgAQOFgJuetpwPYRUPVhnACV3G6YJm ATz1
1qQDRqSt5yRjyiRHAVDKIZ0kgoZZkgK7km9euiMnkZ14AYgWsX3NmXvbMihw ATFT
AjGu0YtfShY7OqUlRno5cQrL4BA/iheNopPOMnLqJ4Z0gm3CQY4yCRHXBxJE iRjI
uYIyIS5W0oJ0ESsZURcwF/8L5OQjoCCcgmoYR5lp2+VODiGrNbEM/tAPisqo NfGm
+5Z8CRapJCVwkdobVGmIZ8gxWUI/S8MQU9NbWzI2ZSNeX5N0uOgwVscIMKN1 CRcm
8+VZrXUTgnisNmenreqqRrGk/HVrUQEU86IYN2EK/WAP/XAPisorJxE95Kou HdF5
KkCFCuRzE6MFYPh4mOeDq6V4/EIotwBd/KqDj1etn0ZXI+FFEiEXb3M+XUhO wmY+
sjMNSzUYt6c65Ep1KrN8FIZSlgV96KKE/wM6HQmwFZQutfMSyrZAzcV+53qe POpp
UaGB1ZCHyyCvQ1uv25J+ERF7YtR9ifgHt7dQmuiLxzf/fP2nJcFnXlB0f2TU MRCI
fNvpGNFERYbXWQvhOnUpttInNnPCg3iZiz8Ebw2Tb69Qp26iTYlpExhRGL3q I/qG
pzp7FITaerPSTu56bzaxDPaAuIh7D6BAEz1ERCk4TTynkeD4l08XKTI4WRDR beZG
GCW7WbdTg7hxqSuIhLKDdFGYp8DkeJHSRlZIkBkpRBanRpbkSj0ns+YFKzKB ez4S
YPzjt4kRpvamCu30R9hIDbU6E8twD/TaD6YAXs55CRbJtEH3kzrkQsworL/K Q8xI
RiTltZFBlfZQXjQ1lSAEVBJFvpSZNqWSfTTUtinUMD6ZJ96KPfrGj40LfQ4R D8fy
/0afwVDxaK6/ixPpWqgglgrXSFbaaBOnIA2Le7frBxGoV0yxc4QPVY/T5RnL VJHk
Yo/BZVC3xUIxWb7/qDIaHI8dHJAB/EC55ltpKJJ1R4aUpFrYYm4ASUx7yrkf ixIb
WTqfNChRZy3h1BaE9XHORRJWcZq0Mig68iMqLMBKAauZRqZjqhPLEAp08ncJ RSgV
wZXYIlkgNChhKTNwGXBtSVGM0kWgSTGS2QhkrLZhi2Geun2OEahPHI0/YXJ2 TIIF
XGqVahGaoKVQUmF6XBZRTMiHjMgyQsCJLGp8zMiJxmJS5hNBNslNVsk7dskv lsmV
TMmS7MmdDMqW/MmiHMqYPP/KplzKmnzKqpzKnEzKr4zKsMzKsuzKsWzLs3zL tYzL
u6zLvazKufzLvBzMvrzJw2zMxYzMq0zMynzMzJzMrdzM0PzMtBzN1DzNwHzN wvzM
I6azW1AIH9h6jvzIKWbIOXqk44zO8LLI57qr45jOVlnOOOqU7fzOHdK3IKca mUis
TAUy9ga4YgprsskT9Eyp+8xHjJFcowGpvzZynooroTMsOLsTagJulSQYN2DR NKsn
jnqzh8dFefUXBp1p8exoyEurObEM9nrO8jWBHtYaFWEM1ObQiLQWatvSfFLE /kaB
oqjPZ8Kn/cunogAL5nRf6ytq62xv7Dqr7ma4y+u8MJD/FBldYmoxgp7hlwLh eRMj
BoHnSYVXrWQXP7cSeBjMLR9jkTwnOs11SaPDRG7XJUrcYRvh1nF3mm33dqc5 qu3T
uaUDxzYRczYnOZ+zN+tJ0o0mLw4BTzehvP3A2FRxJgVVMNuQXJm3ih4csQIG 2RcB
VG2jfxJYGPdHgCVFssrIteuFM7RCGjgjXtrHfbfjigEFEanNfeMivtpwtJqY iubX
NsMTE+JrimyjTdrQvgRUQXOKpz+yJqZia6d9a/9sb7OigYVrq/dwD/M6r85L E7jn
u25yA05IScqoTyINI6M7wu+TWUCZjphbmJyFWXEol12EsbdgVenoBP/atp+q O/J9
/wifw0RS5LqTxN+emLxzB7t5vam5exGw4mA/EiRS/Z2FrWjbtQ2Gc7w2Ea+J aw9F
eyakEQrgpN4rVEBzil76FlRzZLaHib1spCjGCBGj1BWwIEkElZg27RagAON/ 2Q+W
cN7uW0WWGy46Lm2D7ePEzT11ROIWUXmr19sbFmpIva5BUTjZqMDZ3Q8NrOHb Igq1
kAcmeyyf5OWTK949ohbLoGz/YAy1kDsjaUwljIMGZY/zWAUCpI9a+KkrqcRM vH4H
RZTMQBj+uG1KDFCVJBcdmXuqlCs5ZVnWMhi9ow25e8FnUj0OwQwugRGwsH57 DnoP
Hry3pgrGe43ZaNK6S6/2av+4qQBAdzOSiQXZIyncVopezEV8cjqAbikzbdlS NRVD
SeMPg1Jeg6nkMXgqyYUQXTEpm3gwHcdbpfJZl8UwDyNSnEU1c6s2GqEvktKV MpHQ
kyIpEaPsLKEScBppzp3UAZ2HFgEKpB5s1zd4GTlbmXRDYZ4i4vwYFysq5mLg E+3H
7ROlZhHShL3p9QzwFsEZZzHwj5px4PYjgYwWzSdzTh7wkPzw9gbhEU/xFR8b hOod
+akdGn+fGy8eHB+gHt8dIH+gIp/xH4/yI5/yJ6/yLc/yL2/yMd/xMx/yNF/y Nk/y
Ob/yMl/zPX/zPq/zLs/zP0/0QQ/zOL/zSC/0Sn/0QJ//9E6/9FDf9EX/9FQf 9VY/
9UY/9FpP8zIq7xYP9mHfnrThmmIPYl9v9hI08WnP9m2PFOLu9tfFad4d9/20 9swp
JVTSzz3q43WvyO7JpD2a3m/Nm3v80Pfu96ty94l2L/lisaUKQqxnlQrDra6d WDed
+B0C97c2TwSN37wbE+Io8XTlfYkOhVSY+ZOz+CmWQfvOI1/ynIO4up+rWKlv Ig4v
aoNUSIeULQkeK1XtzibITZ9z6Ihv+zKy+iU2T/X0hxPH07FPgiu06jiQWNJ+ /B+y
+Z6GVvTE/QR9hPmLqkD6D7W7DX51Mqh//Z2S/B+2+96Fm/RYQbsp+elP/42B ++x5
/++FH871L2Dr32kaBhD/BAq0h0JFrIEJFS5k2NDhQ4gRJU6kWNHiRYwZNW7k 2NHj
R5AhRXL095DaP2qpqJ0c2dLlS5gxZc6kqZBlTZw5de7k2TPkSZUnSwr9h+/f 0KNF
kxI1irRkU5RJoTJdKrXq06tKnWqNinXrVKtfs4L12pUrVbFpzZI9G3btWLhq 0b6V
63buXbt5y+Ldq7dtX8B/BbMlHJfuYb6DDScuXDdwY8R+ITNeLLny48uKHWtG uTKl
Sp+hRY8mXVrjTdOpVa9mXRroytaxZc+mXdv2bdy5H5Z0eDIlbN3BhQ+fiZr4 ceTJ
R742rtz5c+gV7/2Z9mdbdP/s2VPzbug5FWjtyfsxQXFD4TIUKW6Fl9284b0q /apc
Z1/f/mjm94ffA3TdHyUUUMDhKFEQ0i+46aqj70AGG9SIO4Z8C8rB0rYwDyL4 CDrk
qE0Q6pBC/AaqApQAD8nwH/jkm6YKEFt08bR/JnyRpy22MGQLDK1LyB85tvGn wBlF
g6ORf+y5QUEUqVNywSCbbBDChbwDz8maYqgRx4fgo88fTVTwb5P1qKzppvlQ jK9M
+FaUj0kx2wQxPzdjuoGLGufMsr8d4/ARyDhr0jFBPPmrbho8+zT0OShtQknG Q0eq
UYwtuLjwPRYVImbDDxtticzrVHTiOmZiULFSTUvNDk7/Uz3i4o8bDWF10oWm A3U9
f+K45UcDUx3pT+vgCVALJZHUdVjaEk1ISveIrSiGG5h1FlaF1iwyQBSI9AdM ZTtK
Nltun0O125f4Y1MgXME191z7jB1IQuDQHeke8qBFL4Vc3ZVoW3vzne1bffv1 998g
1RUIWd/8KfhglAxOGGFqFG6YYYcjhnjihSt+2GKJMab4Yo4z7nhjj0MGeWSN S/7Y
ZJFRJvlkllNueWWXY4Z5ZpVrftlmmXGm+Waec+55Z5+DBnponXGOilF0a7wR YKab
ftKkRdtN2unQ8KX66jFjlPpcQ7D2+mvnBO7sM6uJvaEQGMDOmtJxZeJyQJFk pakg
/xQ25EnL2+yxOyS9feJ3xlRUCfy7VC7qGsNCM/KHVLUHoltA+Ugikdq6I1rG h5bk
izymWsPESVzNGR+PWi8jkpsif5jAXCBlYqDIHoRGDzCFccWVCPZ/Ri9dodMt Epvd
shksfKHhITJlGYGwzJLxgXpX6HEcnMf6pmVUCNOYV3TMqB9eF+Sk7dzlqBck 6V26
Rw7PazoxyQXLf0haiu7x447YpygzoslRKER7SiXK30TmDQR+Ivmbi4qHgoEU zyGn
8Ec/kKc8h5RvcwuBx+6MkY0Ago1PAokcegyCEA/eYBu+QoHrEqKJFYRpgkeB gwhj
ZULdbWM6oEih7FwoQPKoh/+FAUrFmfpBhckRKYTbGJ0OE1LEW0zHDigwBIli 8Z8A
mZCDOaQVHAIUi3tYcQVErIIpvJTFDx6xUpHTRIAKcSYx8s6KB/mHB9lYRv2N 8Uxe
lOEaYyEfZojhH6DoYRsDdJAfBvEf8PAB7lYoH1OU6B9wPCMdNYGQzhESd+xD ZICI
BMe9oc4kK/lO8A70h4Eg8CSgfAgo+mGPUyIvguQp4TY8SC8ulciNT8RW8+ZD Qnr5
sZUejAH4snWTTyUEbwKBR/ScsB5RTCOYxggTMYwokGE2jwny0qM/hvQPZtwA Xta6
5vqO0qPcVUEbmiBSklY0DfENUgWvOOY/RKENcEaTR9f/SVMTbgEPetmjl86b p5nG
Wc5+wGFDy4ieQMO3nt7hTUsLpc79UGTFP9YCfWZaUDEpqtAqTMOg/ZhogqqQ DTm8
IqP8K+b5EFLBW+hTGhsCY4COxIQNwWOf88mi3Yw0yAGp1G5rqukgRRjNn2jN k/pR
xT8ohwJqFHWBp2TqPVS5kP8QyXYEwdzinueDe8yBSVZtHg78EcxmTEOr/zCG L8HF
v6OwqKUxsOYWj0KJ3UUVqhlE0e6KpEfbZRVJcksoRFGwAmHJZ3Gbq5U24ODW lv61
fX4FrHWsCjrmJRawheLqVzE4RdItqLJq7Y9gRce41GV2rezb7OZkZxBtsIgY 1Yrc
/1oJq6dBBggHK9wsijpLKn9cYhvKKCcJBwRZDqoVrZrsTdSGep/CnUSU21Dg QpZh
D+hC9x6g6J+ZUMTKff4JoqJyKPvg5dJswKF01rSevm4Sh3olKJ14C+h4D9vM XDZv
uFmUF0srdQ8nYJCevQxn+z5LnzQtKXfozZ149csQb/LUOhkC6gDXx9eQomm4 0Owe
g0fq3/bxz6QUVTA9BRxNWeFXhtRZr4D7QeAiHYIYWnAoXxesVoeCghHg1BAx xMDg
P81ngEFFGuB8g9RFQWQZ9+gHkan7Hl6hEyGyam2JtWGJemnOnuEk12H9A1ez dquC
9LkgGgcpqq796BWrEEgtBf+CQvrQtoW1c51cLyc3f0CZkp+SK7lAAVAf3hfM BIIF
JcrJQTr7Wb5cpOQYA/1nf9y5yiedbaWsmV6t9iOYMkVRpNGYVUIP5NECrBSl MS3p
68iUsHDI1SG9LGo9tzEWsCPGGdNI5U+LDqYCWcaqY3EpJsux0vQcK6Z3zZDf cXJK
QfqDZ2DhGVI+5BRG3g2BZboiWrsOv7eQlkxdWV6yihRJyzjS4TbxijBnCl2o IaGA
tLRaFAArvAESgzXZvZB+5IGe9/PH9xpy4iWTx3rrK7e02/ndVrZ0f+eEqJcC +u7R
Tvu6UYS2ljqMoo5ud+F1++4XtWdDGQbTgyy+DomAtSL/In7KeQDvJbqB1XEU iGHj
F8ZseUA+aJNntOD0ZGVBSdfDeaP85JrOFMBtvs7u7THlIkZRMIl+kQIaUHCC +85E
lnHkLP2qP8r4lY5WKwaqpxtPHhSQVdF9RnfXDYopb1xNLjcRe6zOIiu8GtsJ Mr6L
3EOKb4fJ74xbdrzDSDWagFtDJodtiwCVaoJPMUcUnZC+9STpeWd84x1Pkk2S 7fGT
Ly7lLV+R/JRE80nZfOc5/3nPhx70oxd96Ul/etOnHvWrV33rWf9618ce9rOX fe1p
f3vb5x73u9d973n/e98HH/jDF37xiQ974OUrBoWo0eU9clznT37x2Tpc9K1/ fcVF
/76T+YIg9jECfe/jffrKulL4zX9+hdj9N+BvVPefp0j0r0uAa0xf/MUv1HMt Q5XV
h6qtJOJ2DNEijaIWuLMX3mojtbM/pgk2yQOXIfMHU/gHaBGmdjKd7pIIh0MT Jviz
cRuIeKIrBfSa8dOUZeiHInMghxg7tsqhUJudWzG5QAGE6qAhIqKitLKtLQFB c9Gt
o+DBEAQY9euxYRmyU7oHVIK6WHGsD0Q88wix+4qPDfymTqGpFxOgiXKXmwCn fvrB
xhnBQzmFIpSup4I3tWKsGnQpQnOxvTLD1tKeLdQXHnQfLkQXBty+bgGFeyAy aTiF
5eGi9pkyC/PDcII26xImHf+7H8LrlptQNG6bwy7EP3AJhSIbQ4aInDpjnzYS IVDz
NW5Dkku8QTgTNH9xN7tyxHwJwq3JFlDgwxyhJ4mbHD8ok6vzoFiEn7WaBn3D xdkp
QHBhP1P0Fy/8RWEcRvaow2Ejxn7xRWTsQCFcRmd8xrCBmvXzjaigRmusRmy8 Rm3M
Rm7cRm/sRnD8RnEMR3IcR3MsR3Q8R3VMR3ZcR3dsR3h8R3mMR3qcR3usR3y8 R33M
R37cR3/sR3g8mlQEly1gFfeDRoTkFmNUxj45SGFkyIQklmBMFf6LSIvMFlSE SDc5
mwn8RY0cjdNJvJiQHjnECC6BlkS8iArixV6ERCcZnO//EBzDeQgSYsnUIMkJ AxEz
jAgAzJIWGghiuKEIujjh4qIJMiRWqpZWfLV/MLPgMjUEy0mIKCaofA+I0iNy GQXN
0soiEcpUWUgqSbaEEEuHOJ7kcQh8w8ALxBAm6Dti4K/3KZNrGZ80YRzCS8no 4BTp
WMv3oQL6QRH7sUAAoylELJP8OaOc850PETzGXEtvmohagTs57Ju0RA8pskz6 ICfz
cskgUSqjGgjPdIhlaKBo+AeHPIpgigiuip8/uANamQKp1DRjWLLEgabaxMG5 chC0
Ci3aia30eEGpoycZ/AMaRCL+WIYNUYb92Qa6oR0luqKpsipGqgKrSjvc4ap7 GJBZ
/9IlHFCQsIsF5EQRPZqlwSrDKNKlN7IkMNoi+VCGUiQIEXosiYuIWkqoQrEH rNSV
jKSS5PpMoDCepqLEHYGoI7GiXCJPOIpFaDoTUPgifcOiKsijPcK5V7ojKuAD RQpP
/ERPCOUpiUNQdgMj65GPBs0y3LiJpFQBeJo3YWrCKjST8bAWcBoVHlEThzKS fmiC
JVMBQvQuGFMQfeqblnomnDofZMKgf2oe8zg8YoqehsoGSmApkhqQNemHKG2j 6Jk1
hoAHvPqD8JJSH/Erg/Cc03EwUiGkzWzGFimco6qG5lIIMEQlVHIqtGSR3PKw BUk7
WEuya7pTc/oDbbiEQeGftP/bMHvYouz8B2Kol0JVEm0QtN7RU0sUtDe7puzQ MDZk
JU0syj91RWpprN1CASyyDhvyREvInjQrytAhJtkyLfMsobbyMGHpQW3gStfK s+B6
qPPMNUC7rIYIz1Wlst2QMwrLsFQlFrB0ElBSrqggy/OILnuQhumKIB1L0Tra 1UOc
QkIEOIPQLxIBoImLAULsHI6yBVFAqO0aFWnxUGwVREnrUecgEzH6Q4SCMXfN qCec
VyNNER0dREeLA5EaTD/0KPrQmxUrE456hRLrFPGyUSYJhVfAkQ3zqEFBk4xa 2EAs
OlT9VbxiOVkJuz9aD45Kr/9q0jQdyBZRheugBqTahqT/EjIiIzJWvDfOap+F ba1A
+TAN6yyRI7ElE7A4Q4hieAUugLifJZRBFU4lIy1O1avYRA7+uUS54TYfEbmx IihP
FEVMpLBt604dMZInMxCLirUOsrVW07PNkSl/CDNRyB5tIAYOvAdRFVa1PZPO KRLu
IiZp06pNs4dGcwgj8RHq9D9Ke490EqadpQ8uRVZpVFMQSQWXNbaUsJw8RMKo DNM/
q7Z9Qh+iCxVpsaY/SzB8FQjPLRN9uo6CIBLNtVFt8L9l4K5Q29xbuSZu27Hk 0Mvm
ecUAicXrWC1DWDlbxC54XZPJYTHZKa/REgiPWxKfa6nSibl1Szl2rRyOaqZf GSkg
/626bYg5lBODGJLDyJQVuuG4hig3suO6gaKWQ+ASDmRGlF1Tphscp7PcShwj TQ3V
dNMREhEDEvq4i9PUWZWVrPu4meMgHxzgYFkw7UXg3pVefRsxE+2WkoyISUIO i4KJ
wGXc3hC2jww/vDSVDg6Jx7QIkTyOROvIj1jJZORMaJzgi3xh0dhPGFbEGQaY zOMM
ytiMybAMHc6MHcaMHg7iyADiIcZhHi7iHzZiIs5hJPZhJxZiJo7iI5biJZ5i K65i
LFZiLU5iLn7iJoZiyUCWGuaWEB7jNplIM05jNfYIGV5jEHZjLGRhOJ5jOs6+ DW5A
yvvgR+Qg+qvjVEFjQ9G/uP/5WmrpO+l4Wm45wLPz4yZpY255wAgEiTWpnjBp hvr7
P778JQ+cwghm5BkBZDchQhOc2SRcIkZwotx54FR2KW3YIGjSokwLnURSSkyC Q//w
QU92kWTNliGDLqaKZHjT0ZXUJ9D1qWJOkdTk44GKHovVqJj6KR2UyE2Wwlw+ FFAW
kzj1ZTq93DbcqznYK+qoTdPKL0fzsjbs5GGJQ0Su5vpwZGUxpTzcZgSz11GB JnKe
wtZNH4UKqSTLMUHsQOUlEnhAYXZukmtuE3gWUMRNQ0C90ssJ2kwcod15J1LD KVD7
Mlf9NX0hRXQuaOzY5Tsk5fqFYAbTt/Xo3zLhut9S5ZX/A+fuBWiPLpWDjmma fkZ3
ruk3welGmWmd7mlHXEii+ZmiEWqiFpqhNuqiDmqkXmqlbuqjduqkfmqpjmqq Zuqp
tuqqhmqs3mqtVmqBLOMmUZrT9GmyHo2bJkhoBOuyjlc5BpeKXGu4Jg2QPpez SZtl
VGvacJ+T5J1Mtgh8sklT5OnsGJyle9OIeGtn9CvADonWgigizRLHUmWepCu/ pa1o
9geu5DoU8AEocqsM/sGzXlOGMOyFMEvTTGsR6ZQonIkM7JRkjktOnojyuVve iU3M
VAhlCANQiCn+0sxnFOzoOKAEspwGeiCLJEpddauxW84/NWVUNk7ivKJE094e 9FTE
/4LlRSoRJgMiUS2jRggkSwLAwG3s84RsJpG0FaXmxQVt7TvGF0k2UfoHZ1UI UzhB
e1BoaRpTBmsnTliRyWGpB4WPEt3jfyAVjqoFgyKoRNsphM0oe/prfUrvFInC 03VC
gnCdgFrmDMfSQmQwHbUHehnoaejXCtpYhVjc6fhSigLZMV1QhQAF702ncrlg ZwRu
6Ciqo3rZpZLTSWwIN+Ns3YIHP3giUtAoIgFbdTZyx3NDOfBVyyKVvFqSx6IO xtqr
29LVEspV1PTVTeyeKeeiygLYDFoG1fWy1USy9um1Au5J8wvtx40KUXLTh3gu aO0H
+nXxotuGUIgFUciGLbiHLf9Y14xK0QMrO9xNkD/h58Fc0A5LkRbL11yToY5K 9I2d
NkEn6R/VEY7COefqUpdmcWwbIBur7VAzZGS08ecADZaVEJg9wTsv1l2DB0YY hVqV
hlGVVQ1b56vRkajaNIt6JGi62iMhVeGC0tDtni5H3S3yda+q6LHtNWIvtM2R O/He
1Lst3KFMs9dONKxc7xCc6/euhpU4tmObbzit3N24pmxCET/QI2YY8hOBD8MK 3b6m
GhTdRWhSZdlpBFrEVxnK1ltNzNUi3zY6iIpTbYOgD4/Tt4BVMF1M+NlGL/G9 Xl9C
Xy7ZG7rBSvZFbcd93MKWSYl4OtVU5VrZL0z82Jqb1bj/BrZodhxTH4nP/vbG fd+V
xw68Vg0XtjOC7ggV5niar3mgjz9wD3qbJ/oXueGy2DyoUPrRW3q3YHrPc/qk f3qq
n3qr5wqo/zypx/qq5/qr33qwb3qxj/qx1/qyz3q07/qwJ3u2N/u2T/uvP3u1 l/u4
f/u5t/u6d3u9h3uv7/u13/u7B/y85/u/J3y69/vDL/zAh/vkM/rwuHnHtw1U j3zK
v5qhr3zkgHzMj43J33zP3+iZ1/zP14mbaKn8HH227vhUEWSKYHPzuwdrIVbU t43L
1xVITsjmuJZLnv3h6HwQKcETxG9WhVUWgaNq4c3dj76c5/3ScPNSIUJ7MEI7 f49l
/zLxCF9C5zOOkWV+5fB9B8lmMfRxLBPWHE0ixkp+yoNo7q+N2jcVPMxDexBp qBKv
gF0kqap3xyv9w13/zG/rYQFDgLi37B/BggbvxSK4iVqVf8t8EPRHqZHBihYv Ysyo
cSPHjh4/ggwZEh6KkijEiEypciXLli5fwowpc+ZKfxqp/aOWihpOmj5/0gR1 aqM/
OCUN3fuTzSgKFdvuMY0BdCrVqil7Ws2qdSvXrl674tyJ9SvZsmbPok2rdi3b tm5l
2szIU+fOt3bv4s3Lcqzevn7/Aq4YlmfgwoYPI06sePHhuBhx6pybM6c/yJOp Vb5M
2TLkzJw9XwbdmfNmzZhJn/82Lbr0Z9SrU7dW7Xq27Nqxb4emjXu07dy9ee9m 7Ts4
7OHGgR8Xjny58ubFmT93/nq67uTRr1P/Lb069OzEvVsH3537du3YSU8Wy3g9 +/bu
38OPX9Hxxbmp6srPr78v3/3+/+s1WH8AEliggQciyB59FkGmXoIPQgjTgPv5 owkO
Fd3T0Ev2pHBLhBAK+GFFqahyH4mpiJjiRUyhkJBG/WhYEFQmrbANRzCGBNWF BBFz
g40iPZTUj/8IqZE/eURklFMFHUnQPVKp+N6CgvF034QJ/nFRlhyZMlCU+WGl YYYi
jQlShkN21A8VdyR0zxQxgtSPHC4aBCOaFZEUg42aUGT/j57/5GljhYd8SWCI KqpS
EAoFJbrRMv70E02h+/1hoz0QkYRCCjZmGgOOEpVUSKV1MqEppyV16A8xJWkx 6j2A
TPMHKDX2U2qHSS1DqDKibpPppknZURKdB0klZK0l4XBnRZ9eImizEcWY66Tr TWlQ
g4SpiCJOi4a1kSn92NOPQBmNeY8THnIyTRWgOLVMSSrEomawKBxyDxV8lETo jPBm
yK6y0+5VUKlNDWvPDf04YaMxr1ShDSiE/nPsu9rIYWOZBBlMZKVlZlgrRf5U HHEV
6oKsrp0FGdxPEwnZs2RFy6AEozZwUDRmPyw29aOQ/sThoT+beKjxjxkDrN+h KaJo
/1JJOmm0DLhPj3uRP5fcAo8fsfgzyjRwQIyyD/fM+Y89K0wT9tjaPJvU1hQV 7ZOr
lUp8gzaULAkjjk6O6iSLtA7sI45Fqu3q3rFuo0yLxvZNeMSWDEsQPCgFbnHe GN0t
8QpB3y1024hVW5B9+KWY5bY5bbMlRstIY4/q9twDSkahxCLKNFvcs8XJRA4c g7qC
xsEw768M3NTum0tYUBWCypHNykQe/09RKrzyx/DMD3k7kU14eOaZJ2eorpPN E2Qn
2Ld0vHz3GvLcuEOGMM/98Tcr7fKZdYI/v9g3EB/f0SKqYiM1KECmURlZxj3E 1Y+h
ZMQejBiFNo4hjVi8ymJhe/+V4vxhiVcAQlAXnFwE8yeTURlsGhl0CA6msQqF MOwf
mnBRkSIyERmNahk+8kfC7jEHGy2jhKOSCNuINEK8iRCHOrSUjyzyJI1pg3Ek /BeT
4KTCHvojWl3z4F86R5BrXQlBqajGXKgBC6Y56h6t28g9RIESZlyNYxpahqea 5yfv
iS0GRenhxaioEqwMTAUeAkVJ/FCFouQLcSVJBfj0VhKp8BEFhWjeqsTgLhT4 8XYz
QoHu4GSnREZyYJe7iJzidbxM+bFpJmlEplBCEGaM0h8Ps2N79ieiE92nRB5Z huuI
0jMiFStvhkNBq7b2rqcwpW6JmxwrIdTCAUJkKkcspl//rJiTKoGOmcq0ZCGl Wbz2
1DEjFgIKh9RnzcK48pszOeYxxWnOcxLImVhEJzsD1M53HiZENsGJTfDhvMnU 8570
/Ic953nPfuKTn/r850Dz6U+DBhSg+1QoQQ8qUIcyFKELLehDE0rRiFZ0ohC9 KEc3
6lGLflSjIB2pSEvaUJKe1KQSTSlLV+rSjLYUpi/FKE07itKZ2lSlMt1pTUMa 057e
lKc5/elQcepTowYVqDpV6OeyCM+nesWpUJ1qWsJJ1atiNavxUWdOxEINLuYk H5AB
KzXEmhOymvWrkEkrWse6VreGFa5llStb33pWu6o1rnfVa17nule/9rWufG3r XwUL
+VjCBpauii3sYhPL2Mc6NrKInSxeKTvYymL2spo9bGY5u1nDgraxlvUsaUML 2dGa
VrKdTS1qRbta134WtqWVLWtfe9rMpocwqDENb3fr294C97fCDS5xh2vc4iL3 uMpN
LnOX69zmQve50o0udadr3epi97razS53t+vd7oLXuk2FjG7LS97zPhO9klmv edPr
Xvaqt73wfa986xvf+9IXv/Pdr33z61/+6re/AP6vgAsc4AMTGMEDXrCBE+xg Biu4
wRB+sIQrHOELUxjDE96whTPsYfbmVqpaHTGJS4yYdZo4xSpecWCsyuIXwzjG UYWm
iGVs4xvjeCUBAQA7
------------ejwdZDz8txIkO4oDJ9sR9w--
Re: Programmatically generating diagram from model - Chosing Diagram Root [message #145041 is a reply to message #144706] Wed, 01 August 2007 04:04 Go to previous messageGo to next message
Eclipse UserFriend
Hello Miriam,

The way you are navigating from document root to ContainerLayoutTypeImpl
instance really model-specific and there could be not generic solutions.
Once you get diagramRoot instance you can probably cast it to some particular
typed interface and use corresponding methods to traverse the model.

-----------------
Alex Shatalin
Re: Programmatically generating diagram from model [message #147298 is a reply to message #144522] Tue, 21 August 2007 11:42 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: sousandre.gmail.com

Hi,

I want to do exactly the same thing, generating a diagram from a model
without using "Initialize ??? diagram file".
I've read the answers, and I took a look at the run() method and tried to
adapt it, but I was unsuccessful in my attempt.
Can someone send me some guidelines (or maybe your source code) as how to do
this without a GUI.

thanks.

"Miriam Grundig" <exquisitus@web.de> wrote in message
news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com...
Hey Guys,
I'm searching for a way to generate the diagram code from an existing
model-xml.
This is possible, with the user interaction "Initialize ??? diagram file"
in eclipse. But I want to do this programmatically.
Help would be appreciate. Thnx.

Enjoy your weekend :).
Re: Programmatically generating diagram from model [message #147335 is a reply to message #147298] Tue, 21 August 2007 13:13 Go to previous messageGo to next message
Eclipse UserFriend
Hi André,

First, you should create a diagram itself using
ViewService.createDiagram(...). For synchronized diagrams, you don't
need anything else (the diagram structure will be created for you once
you open the diagram). For non-synchronized diagrams, you should
additionally invoke XYZDiagramContentInitializer.initDiagramContent(...)
to actually create the structure underneath the diagram.

You can find the details in template NewDiagramFileWizard.xpt.

Hope that helps.

Best regards,
Boris

André Sousa wrote:
> Hi,
>
> I want to do exactly the same thing, generating a diagram from a model
> without using "Initialize ??? diagram file".
> I've read the answers, and I took a look at the run() method and tried to
> adapt it, but I was unsuccessful in my attempt.
> Can someone send me some guidelines (or maybe your source code) as how to do
> this without a GUI.
>
> thanks.
>
> "Miriam Grundig" <exquisitus@web.de> wrote in message
> news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com...
> Hey Guys,
> I'm searching for a way to generate the diagram code from an existing
> model-xml.
> This is possible, with the user interaction "Initialize ??? diagram file"
> in eclipse. But I want to do this programmatically.
> Help would be appreciate. Thnx.
>
> Enjoy your weekend :).
>
>
Programmatically generating diagram from model (the source code) [message #156818 is a reply to message #144522] Tue, 23 October 2007 11:38 Go to previous message
Eclipse UserFriend
Originally posted by: sousandre.gmail.com

This is a multi-part message in MIME format.

------=_NextPart_000_001A_01C81593.28F6FC30
Content-Type: text/plain;
charset="iso-8859-15"
Content-Transfer-Encoding: quoted-printable

Hi guys,

After a great strugle against GMF, I finally found out how to create my =
diagrams automatically.
Thanks to everyone for all your help.
Your tips helped me a lot.
Anyways, I have created a function to do the generation of diagrams from =
any domain model file, and I want to share it with everyone.
There might be someone out there with looking for the same solution I =
was, and this might be helpfull.


So here goes:

public void generateDiagram(String domainModelFileName) {
String diagramModelFileName =3D domainModelFileName + "_diagram";
EObject domainRoot =3D null;
try {
//load the domain model resource
ResourceSet domainResourceSet =3D new ResourceSetImpl();
=
domainResourceSet.getResourceFactoryRegistry().getExtensionT oFactoryMap()=
..put(Resource.Factory.Registry.DEFAULT_EXTENSION, new =
XMIResourceFactoryImpl());
URI domainFileURI =3D URI.createFileURI(new =
File(domainModelFileName).getAbsolutePath());
Resource domainResource =3D =
domainResourceSet.getResource(domainFileURI, true);

//create the diagram model resource
ResourceSet diagramResourceSet =3D new ResourceSetImpl();
=
diagramResourceSet.getResourceFactoryRegistry().getExtension ToFactoryMap(=
).put(Resource.Factory.Registry.DEFAULT_EXTENSION, new =
XMIResourceFactoryImpl());
URI diagramFileURI =3D URI.createFileURI(new =
File(diagramModelFileName).getAbsolutePath());
Resource diagramResource =3D =
diagramResourceSet.createResource(diagramFileURI);

//create the diagram and save it to the file
domainRoot =3D (EObject) domainResource.getContents().get(0);
Diagram diagram =3D =
ViewService.createDiagram(domainRoot,fct.ample.annotatedUC.a nnotateduc.di=
agram.edit.parts.AnnotatedUCModelEditPart.MODEL_ID,fct.ample .annotatedUC.=
annotateduc.diagram.part.AnnotatedUCDiagramEditorPlugin.DIAG RAM_PREFERENC=
ES_HINT);
diagramResource.getContents().add(diagram);
=
diagramResource.save(fct.ample.annotatedUC.annotateduc.diagr am.part.Annot=
atedUCDiagramEditorUtil.getSaveOptions());
}

catch (Exception e) {
e.printStackTrace();
}

if (domainRoot =3D=3D null) {
=
MessageDialog.openError(getShell(),fct.ample.annotatedUC.ann otateduc.diag=
ram.part.Messages.AnnotatedUCInitDiagramFileAction_InitDiagr amFileResourc=
eErrorDialogTitle,fct.ample.annotatedUC.annotateduc.diagram. part.Messages=
..AnnotatedUCInitDiagramFileAction_InitDiagramFileResourceEr rorDialogMessa=
ge);
return;
}
}



Regards

Andr=E9 Sousa



"Miriam Grundig" <exquisitus@web.de> wrote in message =
news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com...
Hey Guys,
I'm searching for a way to generate the diagram code from an existing =20
model-xml.
This is possible, with the user interaction "Initialize ??? diagram =
file" =20
in eclipse. But I want to do this programmatically.
Help would be appreciate. Thnx.

Enjoy your weekend :).
------=_NextPart_000_001A_01C81593.28F6FC30
Content-Type: text/html;
charset="iso-8859-15"
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-15">
<META content=3D"MSHTML 6.00.6000.16544" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2>Hi guys,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>After a great strugle against GMF, I =
finally found=20
out how to create my diagrams automatically.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Thanks to everyone for all your =
help.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Your tips helped me a lot.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Anyways, I have created a function to =
do the=20
generation of diagrams from any domain model file, and I want to share =
it with=20
everyone.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>There might be someone out there with =
looking for=20
the same solution I was, and this might be helpfull.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>So here goes:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2><STRONG><FONT=20
color=3D#800080>public void</FONT></STRONG> generateDiagram(String=20
domainModelFileName) {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
String=20
diagramModelFileName =3D domainModelFileName + <FONT=20
color=3D#0000ff>"_diagram"</FONT>;</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
EObject=20
domainRoot =3D <STRONG><FONT =
color=3D#800080>null</FONT></STRONG>;</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
<STRONG><FONT=20
color=3D#800080>try</FONT></STRONG> {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <FONT color=3D#008080>//load the domain model=20
resource</FONT></FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; ResourceSet domainResourceSet =3D <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> ResourceSetImpl();</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
domainResourceSet.getResourceFactoryRegistry().getExtensionT oFactoryMap()=
..put(Resource.Factory.Registry.<EM><FONT=20
color=3D#0000ff>DEFAULT_EXTENSION</FONT></EM>, <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> =
XMIResourceFactoryImpl());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; URI domainFileURI =3D URI.createFileURI(<STRONG><FONT =

color=3D#800080>new</FONT></STRONG>=20
File(domainModelFileName).getAbsolutePath());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; Resource domainResource =3D=20
domainResourceSet.getResource(domainFileURI, <STRONG><FONT=20
color=3D#800080>true</FONT></STRONG>);</FONT></DIV>
<DIV align=3Dleft><FONT size=3D2><FONT face=3D"Courier New"=20
size=3D2></FONT></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <FONT color=3D#008080>//create the diagram model=20
resource</FONT></FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; ResourceSet diagramResourceSet =3D <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> ResourceSetImpl();</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
diagramResourceSet.getResourceFactoryRegistry().getExtension ToFactoryMap(=
).put(Resource.Factory.Registry.<FONT=20
color=3D#0000ff><EM>DEFAULT_EXTENSION</EM></FONT>, <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> =
XMIResourceFactoryImpl());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; URI diagramFileURI =3D =
URI.createFileURI(<STRONG><FONT=20
color=3D#800080>new</FONT></STRONG>=20
File(diagramModelFileName).getAbsolutePath());</FONT></DIV >
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; Resource diagramResource =3D=20
diagramResourceSet.createResource(diagramFileURI);</FONT></DIV >
<DIV align=3Dleft><FONT size=3D2><FONT face=3D"Courier New"=20
size=3D2></FONT></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <FONT color=3D#008080>//create the diagram and save =
it to the=20
file</FONT></FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; domainRoot =3D (EObject)=20
domainResource.getContents().get(0);</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; Diagram diagram =3D=20
ViewService.createDiagram(domainRoot,fct.ample.annotatedUC.a nnotateduc.di=
agram.edit.parts.AnnotatedUCModelEditPart.<EM><FONT=20
color=3D#0000ff>MODEL_ID</FONT></EM>,fct.ample.annotatedUC.annotateduc.di=
agram.part.AnnotatedUCDiagramEditorPlugin.<EM><FONT=20
color=3D#0000ff>DIAGRAM_PREFERENCES_HINT</FONT></EM>);</FONT ></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; =
diagramResource.getContents().add(diagram);</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
diagramResource.save(fct.ample.annotatedUC.annotateduc.diagr am.part.Annot=
atedUCDiagramEditorUtil.getSaveOptions());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

}</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" =
size=3D2></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
<STRONG><FONT=20
color=3D#800080>catch</FONT></STRONG> (Exception e) {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; e.printStackTrace();</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

}</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" =
size=3D2></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
<STRONG><FONT=20
color=3D#800080>if</FONT></STRONG> (domainRoot =3D=3D <STRONG><FONT=20
color=3D#800080>null</FONT></STRONG>) {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
MessageDialog.openError(getShell(),fct.ample.annotatedUC.ann otateduc.diag=
ram.part.Messages.<EM><FONT=20
color=3D#0000ff>AnnotatedUCInitDiagramFileAction_InitDiagramFileResourceE=
rrorDialogTitle</FONT></EM>,fct.ample.annotatedUC.annotateduc.diagram.par=
t.Messages.<EM><FONT=20
color=3D#0000ff>AnnotatedUCInitDiagramFileAction_InitDiagramFileResourceE=
rrorDialogMessage</FONT></EM>);</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <STRONG><FONT=20
color=3D#800080>return</FONT></STRONG>;</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

}</FONT></DIV>
<DIV><FONT face=3D"Courier New" size=3D2>}</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Regards</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Andr=E9 Sousa</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>"Miriam Grundig" &lt;</FONT><A=20
href=3D"mailto:exquisitus@web.de"><FONT face=3DArial=20
size=3D2>exquisitus@web.de</FONT></A><FONT face=3DArial size=3D2>&gt; =
wrote in message=20
</FONT><A =
href=3D"news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com"><FONT=20
face=3DArial=20
size=3D2>news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com</FONT></A><F=
ONT=20
face=3DArial size=3D2>...</FONT></DIV><FONT face=3DArial size=3D2>Hey =
Guys,<BR>I'm=20
searching for a way to generate the diagram code from an existing&nbsp;=20
<BR>model-xml.<BR>This is possible, with the user interaction =
"Initialize ???=20
diagram file"&nbsp; <BR>in eclipse. But I want to do this=20
programmatically.<BR>Help would be appreciate. Thnx.<BR><BR>Enjoy your =
weekend=20
:).</FONT></BODY></HTML>

------=_NextPart_000_001A_01C81593.28F6FC30--
Programmatically generating diagram from model (the source code) [message #156829 is a reply to message #144522] Tue, 23 October 2007 11:38 Go to previous message
Eclipse UserFriend
Originally posted by: sousandre.gmail.com

This is a multi-part message in MIME format.

------=_NextPart_000_001A_01C81593.28F6FC30
Content-Type: text/plain;
charset="iso-8859-15"
Content-Transfer-Encoding: quoted-printable

Hi guys,

After a great strugle against GMF, I finally found out how to create my =
diagrams automatically.
Thanks to everyone for all your help.
Your tips helped me a lot.
Anyways, I have created a function to do the generation of diagrams from =
any domain model file, and I want to share it with everyone.
There might be someone out there with looking for the same solution I =
was, and this might be helpfull.


So here goes:

public void generateDiagram(String domainModelFileName) {
String diagramModelFileName =3D domainModelFileName + "_diagram";
EObject domainRoot =3D null;
try {
//load the domain model resource
ResourceSet domainResourceSet =3D new ResourceSetImpl();
=
domainResourceSet.getResourceFactoryRegistry().getExtensionT oFactoryMap()=
..put(Resource.Factory.Registry.DEFAULT_EXTENSION, new =
XMIResourceFactoryImpl());
URI domainFileURI =3D URI.createFileURI(new =
File(domainModelFileName).getAbsolutePath());
Resource domainResource =3D =
domainResourceSet.getResource(domainFileURI, true);

//create the diagram model resource
ResourceSet diagramResourceSet =3D new ResourceSetImpl();
=
diagramResourceSet.getResourceFactoryRegistry().getExtension ToFactoryMap(=
).put(Resource.Factory.Registry.DEFAULT_EXTENSION, new =
XMIResourceFactoryImpl());
URI diagramFileURI =3D URI.createFileURI(new =
File(diagramModelFileName).getAbsolutePath());
Resource diagramResource =3D =
diagramResourceSet.createResource(diagramFileURI);

//create the diagram and save it to the file
domainRoot =3D (EObject) domainResource.getContents().get(0);
Diagram diagram =3D =
ViewService.createDiagram(domainRoot,fct.ample.annotatedUC.a nnotateduc.di=
agram.edit.parts.AnnotatedUCModelEditPart.MODEL_ID,fct.ample .annotatedUC.=
annotateduc.diagram.part.AnnotatedUCDiagramEditorPlugin.DIAG RAM_PREFERENC=
ES_HINT);
diagramResource.getContents().add(diagram);
=
diagramResource.save(fct.ample.annotatedUC.annotateduc.diagr am.part.Annot=
atedUCDiagramEditorUtil.getSaveOptions());
}

catch (Exception e) {
e.printStackTrace();
}

if (domainRoot =3D=3D null) {
=
MessageDialog.openError(getShell(),fct.ample.annotatedUC.ann otateduc.diag=
ram.part.Messages.AnnotatedUCInitDiagramFileAction_InitDiagr amFileResourc=
eErrorDialogTitle,fct.ample.annotatedUC.annotateduc.diagram. part.Messages=
..AnnotatedUCInitDiagramFileAction_InitDiagramFileResourceEr rorDialogMessa=
ge);
return;
}
}



Regards

Andr=E9 Sousa



"Miriam Grundig" <exquisitus@web.de> wrote in message =
news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com...
Hey Guys,
I'm searching for a way to generate the diagram code from an existing =20
model-xml.
This is possible, with the user interaction "Initialize ??? diagram =
file" =20
in eclipse. But I want to do this programmatically.
Help would be appreciate. Thnx.

Enjoy your weekend :).
------=_NextPart_000_001A_01C81593.28F6FC30
Content-Type: text/html;
charset="iso-8859-15"
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-15">
<META content=3D"MSHTML 6.00.6000.16544" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2>Hi guys,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>After a great strugle against GMF, I =
finally found=20
out how to create my diagrams automatically.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Thanks to everyone for all your =
help.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Your tips helped me a lot.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Anyways, I have created a function to =
do the=20
generation of diagrams from any domain model file, and I want to share =
it with=20
everyone.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>There might be someone out there with =
looking for=20
the same solution I was, and this might be helpfull.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>So here goes:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2><STRONG><FONT=20
color=3D#800080>public void</FONT></STRONG> generateDiagram(String=20
domainModelFileName) {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
String=20
diagramModelFileName =3D domainModelFileName + <FONT=20
color=3D#0000ff>"_diagram"</FONT>;</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
EObject=20
domainRoot =3D <STRONG><FONT =
color=3D#800080>null</FONT></STRONG>;</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
<STRONG><FONT=20
color=3D#800080>try</FONT></STRONG> {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <FONT color=3D#008080>//load the domain model=20
resource</FONT></FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; ResourceSet domainResourceSet =3D <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> ResourceSetImpl();</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
domainResourceSet.getResourceFactoryRegistry().getExtensionT oFactoryMap()=
..put(Resource.Factory.Registry.<EM><FONT=20
color=3D#0000ff>DEFAULT_EXTENSION</FONT></EM>, <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> =
XMIResourceFactoryImpl());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; URI domainFileURI =3D URI.createFileURI(<STRONG><FONT =

color=3D#800080>new</FONT></STRONG>=20
File(domainModelFileName).getAbsolutePath());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; Resource domainResource =3D=20
domainResourceSet.getResource(domainFileURI, <STRONG><FONT=20
color=3D#800080>true</FONT></STRONG>);</FONT></DIV>
<DIV align=3Dleft><FONT size=3D2><FONT face=3D"Courier New"=20
size=3D2></FONT></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <FONT color=3D#008080>//create the diagram model=20
resource</FONT></FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; ResourceSet diagramResourceSet =3D <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> ResourceSetImpl();</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
diagramResourceSet.getResourceFactoryRegistry().getExtension ToFactoryMap(=
).put(Resource.Factory.Registry.<FONT=20
color=3D#0000ff><EM>DEFAULT_EXTENSION</EM></FONT>, <STRONG><FONT=20
color=3D#800080>new</FONT></STRONG> =
XMIResourceFactoryImpl());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; URI diagramFileURI =3D =
URI.createFileURI(<STRONG><FONT=20
color=3D#800080>new</FONT></STRONG>=20
File(diagramModelFileName).getAbsolutePath());</FONT></DIV >
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; Resource diagramResource =3D=20
diagramResourceSet.createResource(diagramFileURI);</FONT></DIV >
<DIV align=3Dleft><FONT size=3D2><FONT face=3D"Courier New"=20
size=3D2></FONT></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <FONT color=3D#008080>//create the diagram and save =
it to the=20
file</FONT></FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; domainRoot =3D (EObject)=20
domainResource.getContents().get(0);</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; Diagram diagram =3D=20
ViewService.createDiagram(domainRoot,fct.ample.annotatedUC.a nnotateduc.di=
agram.edit.parts.AnnotatedUCModelEditPart.<EM><FONT=20
color=3D#0000ff>MODEL_ID</FONT></EM>,fct.ample.annotatedUC.annotateduc.di=
agram.part.AnnotatedUCDiagramEditorPlugin.<EM><FONT=20
color=3D#0000ff>DIAGRAM_PREFERENCES_HINT</FONT></EM>);</FONT ></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; =
diagramResource.getContents().add(diagram);</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
diagramResource.save(fct.ample.annotatedUC.annotateduc.diagr am.part.Annot=
atedUCDiagramEditorUtil.getSaveOptions());</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

}</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" =
size=3D2></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
<STRONG><FONT=20
color=3D#800080>catch</FONT></STRONG> (Exception e) {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; e.printStackTrace();</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

}</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" =
size=3D2></FONT>&nbsp;</DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =
<STRONG><FONT=20
color=3D#800080>if</FONT></STRONG> (domainRoot =3D=3D <STRONG><FONT=20
color=3D#800080>null</FONT></STRONG>) {</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp;=20
MessageDialog.openError(getShell(),fct.ample.annotatedUC.ann otateduc.diag=
ram.part.Messages.<EM><FONT=20
color=3D#0000ff>AnnotatedUCInitDiagramFileAction_InitDiagramFileResourceE=
rrorDialogTitle</FONT></EM>,fct.ample.annotatedUC.annotateduc.diagram.par=
t.Messages.<EM><FONT=20
color=3D#0000ff>AnnotatedUCInitDiagramFileAction_InitDiagramFileResourceE=
rrorDialogMessage</FONT></EM>);</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

&nbsp;&nbsp;&nbsp; <STRONG><FONT=20
color=3D#800080>return</FONT></STRONG>;</FONT></DIV>
<DIV align=3Dleft><FONT face=3D"Courier New" size=3D2>&nbsp;&nbsp;&nbsp; =

}</FONT></DIV>
<DIV><FONT face=3D"Courier New" size=3D2>}</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Regards</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Andr=E9 Sousa</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>"Miriam Grundig" &lt;</FONT><A=20
href=3D"mailto:exquisitus@web.de"><FONT face=3DArial=20
size=3D2>exquisitus@web.de</FONT></A><FONT face=3DArial size=3D2>&gt; =
wrote in message=20
</FONT><A =
href=3D"news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com"><FONT=20
face=3DArial=20
size=3D2>news:op.tv4hb2biw6zt2o@elster.boeblingen.de.ibm.com</FONT></A><F=
ONT=20
face=3DArial size=3D2>...</FONT></DIV><FONT face=3DArial size=3D2>Hey =
Guys,<BR>I'm=20
searching for a way to generate the diagram code from an existing&nbsp;=20
<BR>model-xml.<BR>This is possible, with the user interaction =
"Initialize ???=20
diagram file"&nbsp; <BR>in eclipse. But I want to do this=20
programmatically.<BR>Help would be appreciate. Thnx.<BR><BR>Enjoy your =
weekend=20
:).</FONT></BODY></HTML>

------=_NextPart_000_001A_01C81593.28F6FC30--
Previous Topic:Abnormal workbench condition
Next Topic:Versioning of diagram file
Goto Forum:
  


Current Time: Sat Aug 30 01:56:03 EDT 2025

Powered by FUDForum. Page generated in 0.05501 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top