<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">As far as I know, older versions of
      Drools were not guaranteed to be thread-safe, <br>
      and the whole (de)serialization subsystem has been upgraded since
      5.3.0.Final.<br>
      Could you try a later version such as 5.5.0.Final or 5.6.0.CR1?<br>
      <br>
      Bugs and issues are usually reported using JIRA (community) or
      Bugzilla (product)<br>
      You can find more information on how to report/contribute here:<br>
      <a class="moz-txt-link-freetext" href="http://www.jboss.org/contribute">http://www.jboss.org/contribute</a><br>
      or in the drools documentation, chapter 1.2<br>
      <br>
      Davide<br>
      &nbsp;<br>
      On 12/13/2013 12:39 PM, <a class="moz-txt-link-abbreviated" href="mailto:adarsh.chaini@hsbcib.com">adarsh.chaini@hsbcib.com</a> wrote:<br>
    </div>
    <blockquote
cite="mid:OF3773F95F.57B00781-ON80257C40.0069E134-80257C40.006C0688@hsbcib.com"
      type="cite"><font face="sans-serif" size="2">Hi,</font>
      <br>
      <br>
      <font face="sans-serif" size="2">We &nbsp;have found that &nbsp;some
        of the drools classes are not thread safe and hence causing the
        whole KB
        serialisation &nbsp;and deserialisation &nbsp;issues &nbsp;in a highly
        concurrent &nbsp;distributed cluster.</font>
      <br>
      <br>
      <font face="sans-serif" size="2">The below is an example of one of
        the
        instances we have come across where &nbsp;the &nbsp;usage of a &nbsp;non
        thread safe collection as instance variables has caused the
        issue.</font>
      <br>
      <br>
      <font face="sans-serif" size="2">Could someone look into this and
        advise:</font>
      <br>
      <br>
      <font face="sans-serif" size="2">1) If this has been reported
        /identified
        and logged somewhere &nbsp;as an issue already </font>
      <br>
      <font face="sans-serif" size="2">2)If &nbsp;there has been &nbsp;any
        fix to problems like this in &nbsp;later versions of <b>&nbsp;5.3.0.Final
          ?.</b></font>
      <br>
      <font face="sans-serif" size="2">3)If not fixed already what &nbsp;is
        the process to initiate a fix.</font>
      <br>
      <br>
      <font face="Segoe UI" size="1">Caused by:
        java.io.InvalidObjectException:
        Illegal mappings count: -1</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; <b>at
          java.util.HashMap.readObject(</b></font><font color="#0062e1"
        face="Segoe UI" size="1"><b><u>HashMap.java:1130</u></b></font><font
        face="Segoe UI" size="1"><b>)</b></font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        sun.reflect.DelegatingMethodAccessorImpl.invoke(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>DelegatingMethodAccessorImpl.java:43</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.lang.reflect.Method.invoke(</font><font color="#0062e1"
        face="Segoe UI" size="1"><u>Method.java:601</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectStreamClass.invokeReadObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectStreamClass.java:1004</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readSerialData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1891</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1796</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1"><b>&nbsp; &nbsp; &nbsp; &nbsp; at
          org.jbpm.workflow.core.DroolsAction.readExternal(</b></font><font
        color="#0062e1" face="Segoe UI" size="1"><b><u>DroolsAction.java:61</u></b></font><font
        face="Segoe UI" size="1"><b>)</b></font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
org.jbpm.workflow.core.impl.DroolsConsequenceAction.readExternal(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>DroolsConsequenceAction.java:49</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readExternalData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        org.drools.rule.JavaDialectRuntimeData.readExternal(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>JavaDialectRuntimeData.java:182</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readExternalData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.util.HashMap.readObject(</font><font color="#0062e1"
        face="Segoe UI" size="1"><u>HashMap.java:1155</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        sun.reflect.DelegatingMethodAccessorImpl.invoke(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>DelegatingMethodAccessorImpl.java:43</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.lang.reflect.Method.invoke(</font><font color="#0062e1"
        face="Segoe UI" size="1"><u>Method.java:601</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectStreamClass.invokeReadObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectStreamClass.java:1004</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readSerialData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1891</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1796</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        org.drools.rule.DialectRuntimeRegistry.readExternal(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>DialectRuntimeRegistry.java:59</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readExternalData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        org.drools.rule.Package.readExternal(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>Package.java:197</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readExternalData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.util.HashMap.readObject(</font><font color="#0062e1"
        face="Segoe UI" size="1"><u>HashMap.java:1155</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        sun.reflect.DelegatingMethodAccessorImpl.invoke(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>DelegatingMethodAccessorImpl.java:43</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.lang.reflect.Method.invoke(</font><font color="#0062e1"
        face="Segoe UI" size="1"><u>Method.java:601</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectStreamClass.invokeReadObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectStreamClass.java:1004</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readSerialData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1891</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1796</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        org.drools.common.AbstractRuleBase.readExternal(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>AbstractRuleBase.java:270</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        org.drools.reteoo.ReteooRuleBase.readExternal(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ReteooRuleBase.java:223</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        org.drools.impl.KnowledgeBaseImpl.readExternal(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>KnowledgeBaseImpl.java:116</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readExternalData(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1835</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readOrdinaryObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1794</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject0(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:1348</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        java.io.ObjectInputStream.readObject(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>ObjectInputStream.java:370</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        com.hsbc.gbm.dsl.domain.DSLRuleSet$Serializer.createInstance(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>DSLRuleSet.java:328</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        com.hsbc.gbm.dsl.domain.DSLRuleSet$Serializer.createInstance(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>DSLRuleSet.java:1</u></font><font
        face="Segoe UI" size="1">)</font>
      <br>
      <font face="Segoe UI" size="1">&nbsp; &nbsp; &nbsp; &nbsp; at
        com.hsbc.gbm.dsl.domain.AbstractSerializer.deserialize(</font><font
        color="#0062e1" face="Segoe UI" size="1"><u>AbstractSerializer.java:144</u></font><font
        face="Segoe UI" size="1">)</font><font face="sans-serif"
        size="2"><br>
      </font>
      <br>
      <font face="sans-serif" size="2">Thanks and regards,<br>
      </font>
      <br>
      <font color="red" face="Arial" size="2"><b>Adarsh CHAINI </b></font>
      <br>
      <font face="Arial" size="1">SENIOR LEAD DEVELOPMENT SPECIALIST |
        HSBC
        Bank Plc<br>
        8 Canada Square, London E14 5HQ, UK</font>
      <table>
        <tbody>
          <tr>
            <td><font color="red" face="Arial" size="1">_______________________________________________</font>
              <br>
              <font size="1"><br>
              </font>
              <table width="100%">
                <tbody>
                  <tr>
                    <td width="12%">
                      <br>
                    </td>
                    <td width="87%">
                      <br>
                    </td>
                  </tr>
                  <tr>
                    <td><font color="#4f4f4f" face="Arial" size="1">Phone</font>
                    </td>
                    <td><font color="#4f4f4f" face="Arial" size="1">Int:
                        (0)79914720 Ext: +44 (0)20
                        79914720</font>
                    </td>
                  </tr>
                  <tr>
                    <td><font color="#4f4f4f" face="Arial" size="1">Mobile</font>
                    </td>
                    <td><font color="#4f4f4f" face="Arial" size="1">+44(0)7595530105</font>
                    </td>
                  </tr>
                  <tr>
                    <td><font color="#4f4f4f" face="Arial" size="1">Email</font>
                    </td>
                    <td><a moz-do-not-send="true"
                        href="mailto:adarsh.chaini@hsbcib.com"><font
                          color="red" face="Arial" size="1"><u>adarsh.chaini@hsbcib.com</u></font></a></td>
                  </tr>
                </tbody>
              </table>
              <br>
              <br>
              <font color="red" face="Arial" size="1">_______________________________________________</font>
              <br>
              <font color="#008000" face="Arial" size="1">Protect our
                environment - please
                only print this if you have to!</font></td>
          </tr>
        </tbody>
      </table>
      <br>
      <font face="sans-serif" size="2"><br>
        <br>
        ************************************************************<br>
        HSBC Bank plc may be solicited in the course of its placement
        efforts for
        a new issue, by investment clients of the firm for whom the Bank
        as a firm
        already provides other services. It may equally decide to
        allocate to its
        own proprietary book or with an associate of HSBC Group. This
        represents
        a potential conflict of interest. HSBC Bank plc has internal
        arrangements
        designed to ensure that the firm would give unbiased and full
        advice to
        the corporate finance client about the valuation and pricing of
        the offering
        as well as internal systems, controls and procedures to identify
        and manage
        conflicts of interest.<br>
        <br>
        HSBC Bank plc<br>
        Registered Office: 8 Canada Square, London E14 5HQ, United
        Kingdom<br>
        Registered in England - Number 14259<br>
        Authorised by the Prudential Regulation Authority and regulated
        by the
        Financial Conduct Authority and the Prudential Regulation
        Authority<br>
        ************************************************************<br>
      </font>
      -----------------------------------------
      SAVE PAPER - THINK BEFORE YOU PRINT!
      This transmission has been issued by a member of the HSBC Group
      "HSBC" for the information of the addressee only and should not be
      reproduced and/or distributed to any other person. Each page
      attached hereto must be read in conjunction with any disclaimer
      which forms part of it. Unless otherwise stated, this transmission
      is neither an offer nor the solicitation of an offer to sell or
      purchase any investment. Its contents are based on information
      obtained from sources believed to be reliable but HSBC makes no
      representation and accepts no responsibility or liability as to
      its
      completeness or accuracy.
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
rules-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-users">https://lists.jboss.org/mailman/listinfo/rules-users</a></pre>
    </blockquote>
    <br>
  </body>
</html>