<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
p.emailquote, li.emailquote, div.emailquote
        {mso-style-name:emailquote;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:1.0pt;
        border:none;
        padding:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
p.sig, li.sig, div.sig
        {mso-style-name:sig;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Arial","sans-serif";
        color:black;}
p.sigsmall, li.sigsmall, div.sigsmall
        {mso-style-name:sigsmall;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:10.0pt;
        font-family:"Arial","sans-serif";
        color:black;}
span.sig1
        {mso-style-name:sig1;
        font-family:"Arial","sans-serif";}
span.sigsmall1
        {mso-style-name:sigsmall1;
        font-family:"Arial","sans-serif";}
span.E-MailFormatvorlage23
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:58209480;
        mso-list-template-ids:929231358;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1
        {mso-list-id:1128205005;
        mso-list-template-ids:-702145192;}
@list l1:level1
        {mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-language:EN-US;}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body bgcolor=white lang=DE link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Dear Francoid.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Thanks for your response<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Yes You understand me right (I will try to explain my Ideas a little bit more below)<o:p></o:p></span></p><div><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>Kind regards / Mit freundlichen Grüßen <br>Joachim Setzer </span><o:p></o:p></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:fuchsia'>T</span><b><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif"'>-Systems</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif"'> International GmbH<br>System Engineer <br>Application Service Center Standard Software Automotive + Manufacturing Industry Application Service Factory, Technology Line Standard Software</span><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:35.4pt'><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext'>Von:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext'> Francois Armand [mailto:francois.armand@normation.com] <br><b>Gesendet:</b> Mittwoch, 27. November 2013 11:04<br><b>An:</b> Setzer, Joachim; rudder-users@lists.rudder-project.org<br><b>Betreff:</b> Re: [rudder-users] rudder plugin<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:35.4pt'><o:p> </o:p></p><div><p class=MsoNormal style='margin-left:35.4pt'>On 26/11/2013 15:43, <a href="mailto:Joachim.Setzer@t-systems.com">Joachim.Setzer@t-systems.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>Hi All,<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>was anyone a hint (or a tutorial) to extend rudder ?<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>We need to check that for example oracle client is installed in the right version<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>For this fusion-inventory should check if it is installed in the right version<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>For this we need to extend fusion-inventory, too<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>We also want to have an addition collumn / section at the host in rudder gui where we see the information about<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>Oracle client installation (path, version, installdate…..)<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>Can anyone help ?<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:35.4pt'><span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>Kind regards / Mit freundlichen Grüßen <br>Joachim Setzer </span><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:35.4pt'><o:p> </o:p></p></blockquote><p class=MsoNormal style='margin-left:35.4pt'><br>Hello Joachim, <br><br>As I saw your ticket <a href="http://www.rudder-project.org/redmine/issues/4195">http://www.rudder-project.org/redmine/issues/4195</a>, you are already aware of the plugins in Rudder.  And you are right, contrary to new Techniques, these plugins are intended to extends Rudder web interface with new functionnality, or view. <br><br><span lang=EN-US>For the record, the base plugin example to build new UI plugin is here: </span><a href="https://github.com/Normation/rudder-plugin-helloworld/"><span lang=EN-US>https://github.com/Normation/rudder-plugin-helloworld/</span></a><span lang=EN-US><br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> I have tried to download and compile it, but it will not work (In case of this I have opened the redmine ticket)</span><span lang=EN-US><br></span><span lang=EN-US style='color:#1F497D'>(I hope this was the correct way ?)<o:p></o:p></span></p><p class=MsoNormal style='margin-left:35.4pt'><span lang=EN-US><br>Now, for you case: I f I understand correctly, you wand to: <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1'><![if !supportLists]><span lang=EN-US><span style='mso-list:Ignore'>1.<span style='font:7.0pt "Times New Roman"'>      </span></span></span><![endif]>add some more inventory data (oracle client installed version),<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:107.4pt;text-indent:-18.0pt;mso-list:l1 level2 lfo1'><![if !supportLists]><span style='font-size:10.0pt;font-family:"Courier New"'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'>    </span></span></span><![endif]>that means extending Fusion Inventory<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt'><span style='font-size:11.0pt;font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'> yes, right, I did it successfully with your tips yesterday (thanks again for the hint)<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1'><![if !supportLists]><span lang=EN-US><span style='mso-list:Ignore'>2.<span style='font:7.0pt "Times New Roman"'>      </span></span></span><![endif]>store that data in Rudder, <o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:107.4pt;text-indent:-18.0pt;mso-list:l1 level2 lfo1'><![if !supportLists]><span style='font-size:10.0pt;font-family:"Courier New"'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'>    </span></span></span><![endif]>that needs extending the stored inventory information and add the logic to know how to handle them<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:53.4pt'><span style='font-size:11.0pt;font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'> I think so, (I will try to understand the code) – At the moment I’m new in scala, I nahve perl, bash, C(++) and Java Knowledge (but I try to learn scala, too </span><span lang=EN-US style='font-size:11.0pt;font-family:Wingdings;color:#1F497D'>J</span><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>)<br><br><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1'><![if !supportLists]><span lang=EN-US><span style='mso-list:Ignore'>3.<span style='font:7.0pt "Times New Roman"'>      </span></span></span><![endif]><span lang=EN-US>be able to query it so that you can know what nodes have an oracle client installed, and in which version,<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:107.4pt;text-indent:-18.0pt;mso-list:l1 level2 lfo1'><![if !supportLists]><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'>    </span></span></span><![endif]><span lang=EN-US>that means extendings the data model to know how to handle queries on Oracle client</span><span lang=EN-US style='color:#1F497D'><br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> I found out that only a few attributes where stored in LDP after rudder gets them from FusionInventory<br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> I’m looking for a way to extend this, too</span><span lang=EN-US><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1'><![if !supportLists]><span lang=EN-US><span style='mso-list:Ignore'>4.<span style='font:7.0pt "Times New Roman"'>      </span></span></span><![endif]>display that data on node details<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:107.4pt;text-indent:-18.0pt;mso-list:l1 level2 lfo1'><![if !supportLists]><span lang=EN-US style='font-size:10.0pt;font-family:"Courier New"'><span style='mso-list:Ignore'>o<span style='font:7.0pt "Times New Roman"'>    </span></span></span><![endif]><span lang=EN-US>that is an UI extension, using the precedent steps<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:35.4pt'><span lang=EN-US style='font-size:11.0pt;font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'> For this I will need a plugin, is that right ?<o:p></o:p></span></p><p class=MsoNormal style='margin-left:35.4pt'><span lang=EN-US>Unfortunatly, as of today, the plugins possibility are only on UI extension and displaying existing datas, not storing new datas along with other inventory one. Or the data "provisionning" need to be also handled by the plugin (for example, a plugin building it's own database from API requests to other software, or whatever). <br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> ok I understand<o:p></o:p></span></p><p class=MsoNormal style='margin-left:35.4pt'><span lang=EN-US><br>So you need implies some modification of Rudder internals, and may be hard - or at least involves quite a bit of Scala coding, plus understanding of Rudder internal architecture. If you want to go that path, we will help you as much as we can, and also try to find way to have your contributions integrated in Rudder. <br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> thanks for your help, I will try to understand the code first, and later I hope that I can present a way to fit my requirements<br></span><span lang=EN-US><br>As that may seems a little deceptive, I still have a workaround for your use case. </span>It seems that what you are after (in part, at least) is checking Oracle client installation compliance with some company rules. And that clearly looks like a job for Rudder!<br><span lang=EN-US>So, I'm thinking that a first step, far easier and shorter than building the full "oracle client installation plugin", could be to build a Technique whose goal would be:</span><span lang=EN-US style='color:#1F497D'><br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> Yes, I think so, too</span><span lang=EN-US><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2'><![if !supportLists]><span style='font-size:10.0pt;font-family:Symbol'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>         </span></span></span><![endif]>to check oracle client installation (perhaps configurable installation parameters, like path, etc) <o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2'><![if !supportLists]><span style='font-size:10.0pt;font-family:Symbol'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>         </span></span></span><![endif]>to check oracle client version (configurable version)<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2'><![if !supportLists]><span style='font-size:10.0pt;font-family:Symbol'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>         </span></span></span><![endif]>optionnally, to correct bad installation or version with a new installation or update <o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:71.4pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2'><![if !supportLists]><span lang=EN-US style='font-size:10.0pt;font-family:Symbol'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>         </span></span></span><![endif]><span lang=EN-US>optionnaly, well whatever is needed for your teams. </span><span lang=EN-US style='color:#1F497D'><br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> I will try to write the required techniques, Is there an example too, where I can start </span><span lang=EN-US><o:p></o:p></span></p><p style='margin-left:35.4pt'>Given that Technique, you could create Rules to check that a certain version of Oracle Client is correctly installed on a given group of nodes. And the integrated Rudder reporting will display node with uncorrect installation (and if you want handle the correction automaticaly). <o:p></o:p></p><p class=MsoNormal style='margin-left:35.4pt'><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> That sounds very good<o:p></o:p></span></p><p class=MsoNormal style='margin-left:35.4pt'><span lang=EN-US><br>Hope it helps and allows to see what alternatives are available!<br></span><span lang=EN-US style='font-family:Wingdings;color:#1F497D'>à</span><span lang=EN-US style='color:#1F497D'> </span><span lang=FR style='color:#1F497D'>Yes, thanks for your help again<o:p></o:p></span></p><p class=MsoNormal style='margin-left:35.4pt'><span lang=FR><br>Cheers, <o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:35.4pt'><span lang=FR>-- <o:p></o:p></span></p><table class=MsoNormalTable border=0 cellpadding=0 width=380 style='width:285.0pt;margin-left:35.4pt'><tr><td colspan=2 style='padding:0cm 0cm 0cm 0cm'><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="100%" align=center></div></td></tr><tr><td colspan=2 style='padding:0cm 0cm 0cm 0cm'><p class=MsoNormal><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter" />
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0" />
<v:f eqn="sum @0 1 0" />
<v:f eqn="sum 0 0 @1" />
<v:f eqn="prod @2 1 2" />
<v:f eqn="prod @3 21600 pixelWidth" />
<v:f eqn="prod @3 21600 pixelHeight" />
<v:f eqn="sum @0 0 1" />
<v:f eqn="prod @6 1 2" />
<v:f eqn="prod @7 21600 pixelWidth" />
<v:f eqn="sum @8 21600 0" />
<v:f eqn="prod @7 21600 pixelHeight" />
<v:f eqn="sum @10 21600 0" />
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" />
<o:lock v:ext="edit" aspectratio="t" />
</v:shapetype><v:shape id="_x0000_s1026" type="#_x0000_t75" alt="" style='position:absolute;margin-left:0;margin-top:0;width:37.5pt;height:37.5pt;z-index:251658240;mso-wrap-distance-left:7.5pt;mso-wrap-distance-top:0;mso-wrap-distance-right:7.5pt;mso-wrap-distance-bottom:0;mso-position-horizontal:left;mso-position-horizontal-relative:text;mso-position-vertical-relative:line' o:allowoverlap="f">
<v:imagedata src="cid:image001.png@01CEEB69.294F7650" o:title="part1.06020008.00050106@normation" />
<w:wrap type="square"/>
</v:shape><![endif]--><![if !vml]><img width=50 height=50 src="cid:image002.png@01CEEB69.294F7650" align=left hspace=10 v:shapes="_x0000_s1026"><![endif]><span class=sig1><b><span lang=FR>François ARMAND</span></b></span><span lang=FR><br></span><span class=sig1><i><span lang=FR>Directeur de la R&D</span></i></span><span lang=FR><br></span><span class=sig1><a href="http://www.normation.com"><span lang=FR style='color:#962322;text-decoration:none'>Normation</span></a></span> <span lang=FR><o:p></o:p></span></p></td></tr><tr><td colspan=2 style='padding:0cm 0cm 0cm 0cm'><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="100%" align=center></div></td></tr><tr><td colspan=2 style='padding:0cm 0cm 0cm 0cm'><p class=MsoNormal><span class=sigsmall1><b><span lang=FR style='font-size:10.0pt'>87 rue de Turbigo, 75003 </span></b></span><span class=sigsmall1><b><span style='font-size:10.0pt'>Paris, France</span></b></span><o:p></o:p></p></td></tr><tr><td style='padding:0cm 0cm 0cm 0cm'><p class=MsoNormal><span class=sigsmall1><span style='font-size:10.0pt'>Telephone:</span></span><o:p></o:p></p></td><td style='padding:0cm 0cm 0cm 0cm'><p class=MsoNormal><span class=sigsmall1><span style='font-size:10.0pt'>+33 (0)1 83 62 99 23</span></span><o:p></o:p></p></td></tr><tr><td style='padding:0cm 0cm 0cm 0cm'><p class=MsoNormal><span class=sigsmall1><span style='font-size:10.0pt'>Mobile:</span></span><o:p></o:p></p></td><td style='padding:0cm 0cm 0cm 0cm'><p class=MsoNormal><span class=sigsmall1><span style='font-size:10.0pt'>+33 (0)6 63 37 60 55</span></span><o:p></o:p></p></td></tr><tr><td colspan=2 style='padding:0cm 0cm 0cm 0cm'><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="100%" align=center></div></td></tr></table><p class=MsoNormal style='margin-left:35.4pt'><span style='color:windowtext'><o:p> </o:p></span></p></div></div></body></html>