[PATCH] [MAMDACPP/MAMDAJAVA/MAMDAC#] Updates to SecurityStatus & SecuritySatusQual.


Adrienne Ambrose <AAmbrose@...>
 

TESTING –

I have attached modified versions of mamapublisherc  & secstatuslisten.cpp for testing of this issue.

The publisher has been modified to now include commandline parameters for both the securitystatus & also the securitystatusqual. 
And slight modification to the secstatuslisten to now publish the securitystatusqual as well as the securitystatus.

The same example program modification was done to test Java & C#.

 

 

From 4ea8730990ec24abbf0800366b7f22d92cd44a06 Mon Sep 17 00:00:00 2001

From: A Ambrose <aambrose@...>

Date: Mon, 12 May 2014 11:56:15 +0100

Subject: [PATCH] Updates to SecurityStatus & SecurityStatusQual for

C++/C#/Java [OMAMA-254] - Additions & corrections to enums

 

Signed-off-by: A Ambrose <aambrose@...>

---

mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp        |   7 +

mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp    | 159 ++++++++++++++-------

mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h    |   1 +

.../c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h  |  32 +++--

mamda/dotnet/src/cs/MamdaSecurityStatus.cs         |  12 ++

mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs     | 154 ++++++++++++++------

.../java/com/wombat/mamda/MamdaSecurityStatus.java |  12 ++

.../com/wombat/mamda/MamdaSecurityStatusQual.java  | 125 ++++++++++++----

8 files changed, 364 insertions(+), 138 deletions(-)

 

diff --git a/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp b/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp

index 6d9ef4b..5aabefc 100644

--- a/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp

+++ b/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp

@@ -35,6 +35,8 @@ namespace Wombat

     static const char* SECURITY_STATUS_STR_CROSSING   = "Crossing";

     static const char* SECURITY_STATUS_STR_SUSPENDED  = "Suspended";

     static const char* SECURITY_STATUS_STR_AT_LAST    = "AtLast";

+    static const char* SECURITY_STATUS_STR_INACTIVE   = "Inactive";

+    static const char* SECURITY_STATUS_STR_UNKNOWN    = "Unknown";

     const char* toString (MamdaSecurityStatus  securityStatus)

     {

@@ -50,6 +52,7 @@ namespace Wombat

             case SECURITY_STATUS_CROSSING:  return SECURITY_STATUS_STR_CROSSING;

             case SECURITY_STATUS_SUSPENDED: return SECURITY_STATUS_STR_SUSPENDED;

             case SECURITY_STATUS_AT_LAST:   return SECURITY_STATUS_STR_AT_LAST;

+            case SECURITY_STATUS_INACTIVE:  return SECURITY_STATUS_STR_INACTIVE;

             case SECURITY_STATUS_UNKNOWN:

             default:                        return "Unknown";

         }

@@ -73,6 +76,8 @@ namespace Wombat

         if (strcmp (securityStatus, SECURITY_STATUS_STR_CROSSING)  == 0)    return SECURITY_STATUS_CROSSING;

         if (strcmp (securityStatus, SECURITY_STATUS_STR_SUSPENDED) == 0)    return SECURITY_STATUS_SUSPENDED;

         if (strcmp (securityStatus, SECURITY_STATUS_STR_AT_LAST)   == 0)    return SECURITY_STATUS_AT_LAST;

+        if (strcmp (securityStatus, SECURITY_STATUS_STR_INACTIVE)  == 0)    return SECURITY_STATUS_INACTIVE;

+        if (strcmp (securityStatus, SECURITY_STATUS_STR_UNKNOWN)   == 0)    return SECURITY_STATUS_UNKNOWN;

         // A misconfigured FH might send numbers as strings:

         if (strcmp (securityStatus,"0") == 0)   return SECURITY_STATUS_NONE;

@@ -85,6 +90,8 @@ namespace Wombat

         if (strcmp (securityStatus,"7") == 0)   return SECURITY_STATUS_CROSSING;

         if (strcmp (securityStatus,"8") == 0)   return SECURITY_STATUS_SUSPENDED;

         if (strcmp (securityStatus,"9") == 0)   return SECURITY_STATUS_AT_LAST;

+        if (strcmp (securityStatus,"10")== 0)   return SECURITY_STATUS_INACTIVE;

+        if (strcmp (securityStatus,"99")== 0)   return SECURITY_STATUS_UNKNOWN;

         return SECURITY_STATUS_UNKNOWN;

     }

diff --git a/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp b/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp

index 4da35a7..28eb9c1 100644

--- a/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp

+++ b/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp

@@ -61,6 +61,9 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_IPO_IMBALANCE_BUY       = "IpoImbBuy";

     static const char* SECURITY_STATUS_QUAL_STR_IPO_IMBALANCE_SELL      = "IpoImbSell";

     static const char* SECURITY_STATUS_QUAL_STR_NO_IPO_IMBALANCE        = "IpoNoImb";

+    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY             = "EmcImbBuy";

+    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL            = "EmcImbSell";

+    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE            = "EmcImbNone";

     static const char* SECURITY_STATUS_QUAL_STR_OPEN_DELAY              = "OpenDelay";

     static const char* SECURITY_STATUS_QUAL_STR_NO_OPEN_NO_RESUME       = "NoOpenNoResume";

     static const char* SECURITY_STATUS_QUAL_STR_PRICE_IND               = "PriceInd";

@@ -77,9 +80,6 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_RELATED                 = "Related";

     static const char* SECURITY_STATUS_QUAL_STR_IPO                     = "IPO";

-    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY                   = "EmcImbBuy";

-    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL                  = "EmcImbSell";

-    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE                  = "EmcImbNone";

     static const char* SECURITY_STATUS_QUAL_STR_PRE_CROSS                     = "Pre-Cross";

     static const char* SECURITY_STATUS_QUAL_STR_CROSS                         = "Cross";

     static const char* SECURITY_STATUS_QUAL_STR_RELEASED_FOR_QUOTATION        = "Released For Quotation (IPO)";

@@ -120,10 +120,10 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_NEWS_PENDING_RELATED          = "NewsPendingRelated";

     static const char* SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED  = "EquipChangeOverRelated";

     static const char* SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED     = "SubPennyTradingRelated";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+    static const char* SECURITY_STATUS_QUAL_STR_POST_TRADING                  = "PostTrading";

+    static const char* SECURITY_STATUS_QUAL_STR_ONE_SIDED                     = "OneSided";

+    static const char* SECURITY_STATUS_QUAL_STR_PRE_CALL                      = "PreCall";

+    static const char* SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN               = "RestrictedOpen";

     static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE              = "VolatilityPause";

     static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME = "VolatilityPauseQuoteResume";

     static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_GUARD              = "VolatilityGuard";

@@ -134,7 +134,15 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_1       = "CircuitBreakerLevel1";

     static const char* SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_2       = "CircuitBreakerLevel2";

     static const char* SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3       = "CircuitBreakerLevel3";

-    static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE    = "VolatilityPauseStraddle";

+    static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE     = "VolatilityPauseStraddle";

+    static const char* SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED         = "ShortSaleRestricted";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE        = "ImbPreOpenNone";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE       = "ImbPreCloseNone";

+    static const char* SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY            = "ScheduledIntraday";

     static const char* SECURITY_STATUS_QUAL_STR_UNKNOWN                       = "Unknown";

     const char* toString (MamdaSecurityStatusQual  securityStatusQual)

@@ -213,6 +221,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_STR_IPO_IMBALANCE_SELL ; 

         case SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE:          

             return SECURITY_STATUS_QUAL_STR_NO_IPO_IMBALANCE;  

+        case SECURITY_STATUS_QUAL_EMC_IMB_BUY:

+                return SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY;

+        case SECURITY_STATUS_QUAL_EMC_IMB_SELL:

+                return SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL;

+        case SECURITY_STATUS_QUAL_EMC_IMB_NONE:

+                return SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE;

         case SECURITY_STATUS_QUAL_OPEN_DELAY:        

                        return SECURITY_STATUS_QUAL_STR_OPEN_DELAY;

         case SECURITY_STATUS_QUAL_NO_OPEN_NO_RESUME: 

@@ -246,12 +260,6 @@ namespace Wombat

         case SECURITY_STATUS_QUAL_UNKNOWN:

             return SECURITY_STATUS_QUAL_STR_UNKNOWN;

-        case SECURITY_STATUS_QUAL_EMC_IMB_BUY:               

-            return SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY;      

-        case SECURITY_STATUS_QUAL_EMC_IMB_SELL:              

-            return SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL;     

-        case SECURITY_STATUS_QUAL_EMC_IMB_NONE:              

-            return SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE;     

         case SECURITY_STATUS_QUAL_PRE_CROSS:                 

             return SECURITY_STATUS_QUAL_STR_PRE_CROSS;       

         case SECURITY_STATUS_QUAL_CROSS:                     

@@ -332,14 +340,14 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED;         

         case SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED  :       

             return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;         

+        case SECURITY_STATUS_QUAL_POST_TRADING:

+            return SECURITY_STATUS_QUAL_STR_POST_TRADING;

+        case SECURITY_STATUS_QUAL_ONE_SIDED:

+            return SECURITY_STATUS_QUAL_STR_ONE_SIDED;

+        case SECURITY_STATUS_QUAL_PRE_CALL:

+            return SECURITY_STATUS_QUAL_STR_PRE_CALL;

+        case SECURITY_STATUS_QUAL_RESTRICTED_OPEN:

+            return SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN;

         case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE:

             return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE;

         case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME:

@@ -362,6 +370,22 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3;

         case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE:

             return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE;

+        case SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED:

+            return SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED;

+        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY; 

+        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL; 

+        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE:

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE;

+        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY; 

+        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;         

+        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE:

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE;

+        case SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY:

+            return SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY;

         }

         return SECURITY_STATUS_QUAL_STR_UNKNOWN;

     }

@@ -377,9 +401,9 @@ namespace Wombat

         // Older FH configurations sent strings:

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_NONE) == 0)

             return SECURITY_STATUS_QUAL_NONE;

-          if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

             return SECURITY_STATUS_QUAL_OPENING;

-         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

             return SECURITY_STATUS_QUAL_OPENING;   

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EXCUSED) == 0)

             return SECURITY_STATUS_QUAL_EXCUSED;

@@ -449,6 +473,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_IPO_IMBALANCE_SELL;

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_NO_IPO_IMBALANCE) == 0)

             return SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE;   

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY) == 0)              

+            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL) == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE) == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPEN_DELAY) == 0)

             return SECURITY_STATUS_QUAL_OPEN_DELAY;

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_NO_OPEN_NO_RESUME) == 0)

@@ -480,12 +510,6 @@ namespace Wombat

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IPO) == 0)

             return SECURITY_STATUS_QUAL_IPO;

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY) == 0)              

-            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL) == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE) == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_PRE_CROSS) == 0)                

             return SECURITY_STATUS_QUAL_PRE_CROSS;            

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_CROSS) == 0)                    

@@ -566,14 +590,14 @@ namespace Wombat

             return  SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;  

         if (strcmp (securityStatusQual,SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED) == 0)        

             return  SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;  

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY) == 0)         

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;      

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL) == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;    

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY) == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;      

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL) == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_POST_TRADING) == 0)

+            return  SECURITY_STATUS_QUAL_POST_TRADING;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_ONE_SIDED) == 0)

+            return  SECURITY_STATUS_QUAL_ONE_SIDED;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_PRE_CALL) == 0)

+            return  SECURITY_STATUS_QUAL_PRE_CALL;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN) == 0)

+            return  SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if(strcmp(securityStatusQual, SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE) == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if(strcmp(securityStatusQual,SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME) == 0)

@@ -596,12 +620,29 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if(strcmp(securityStatusQual,SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE) == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

-                

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED) == 0)

+            return  SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;      

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;    

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE) == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;      

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE) == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY) == 0)

+            return  SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

            

 

         // A misconfigured FH might send numbers as strings:

         if (strcmp (securityStatusQual, "0") == 0)

             return SECURITY_STATUS_QUAL_NONE;

+        if (strcmp (securityStatusQual, "1") == 0)

+            return SECURITY_STATUS_QUAL_OPENING;

         if (strcmp (securityStatusQual, "7") == 0)

             return SECURITY_STATUS_QUAL_EXCUSED;

         if (strcmp (securityStatusQual, "8") == 0)

@@ -670,6 +711,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_IPO_IMBALANCE_SELL;

         if (strcmp (securityStatusQual, "44") == 0)

             return SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE;

+        if (strcmp (securityStatusQual, "46") == 0)              

+            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

+        if (strcmp (securityStatusQual, "47") == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

+        if (strcmp (securityStatusQual, "48") == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;          

         if (strcmp (securityStatusQual, "51") == 0)

             return SECURITY_STATUS_QUAL_OPEN_DELAY;

         if (strcmp (securityStatusQual, "52") == 0)

@@ -694,18 +741,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_SEC; 

         if (strcmp (securityStatusQual, "62") == 0)

             return SECURITY_STATUS_QUAL_TIMES;

-        if (strcmp (securityStatusQual, "62") == 0)

+        if (strcmp (securityStatusQual, "63") == 0)

             return SECURITY_STATUS_QUAL_OTHER;

         if (strcmp (securityStatusQual, "64") == 0)

             return SECURITY_STATUS_QUAL_RELATED;

         if (strcmp (securityStatusQual, "65") == 0)

             return SECURITY_STATUS_QUAL_IPO;

-        if (strcmp (securityStatusQual, "46") == 0)              

-            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

-        if (strcmp (securityStatusQual, "47") == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;          

-        if (strcmp (securityStatusQual, "48") == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

         if (strcmp (securityStatusQual, "66") == 0)                

             return SECURITY_STATUS_QUAL_PRE_CROSS;            

         if (strcmp (securityStatusQual, "67") == 0)                    

@@ -786,14 +827,14 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

         if (strcmp (securityStatusQual, "110") == 0)        

             return SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;   

+        if (strcmp (securityStatusQual, "111") == 0)

+            return  SECURITY_STATUS_QUAL_POST_TRADING;

         if (strcmp (securityStatusQual, "112") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY; 

+            return  SECURITY_STATUS_QUAL_ONE_SIDED;

         if (strcmp (securityStatusQual, "113") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL; 

+            return  SECURITY_STATUS_QUAL_PRE_CALL;

         if (strcmp (securityStatusQual, "114") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY; 

-        if (strcmp (securityStatusQual, "115") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL; 

+            return  SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if(strcmp(securityStatusQual, "116") == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if(strcmp(securityStatusQual, "117") == 0)

@@ -816,6 +857,22 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if(strcmp(securityStatusQual, "126") == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+        if(strcmp(securityStatusQual, "127") == 0)

+            return  SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if(strcmp(securityStatusQual, "128") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+        if(strcmp(securityStatusQual, "129") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+        if(strcmp(securityStatusQual, "130") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if(strcmp(securityStatusQual, "131") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+        if(strcmp(securityStatusQual, "132") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if(strcmp(securityStatusQual, "133") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if(strcmp(securityStatusQual, "134") == 0)

+            return  SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

         return SECURITY_STATUS_QUAL_UNKNOWN;

     }

diff --git a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h

index 1825328..29b6e8d 100644

--- a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h

+++ b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h

@@ -43,6 +43,7 @@ namespace Wombat

         SECURITY_STATUS_CROSSING,    /* toString() returns "Crossing" */

         SECURITY_STATUS_SUSPENDED,   /* toString() returns "Suspended" */

         SECURITY_STATUS_AT_LAST,     /* toString() returns "AtLast" */

+        SECURITY_STATUS_INACTIVE,    /* toString() returns "Inactive" */

         SECURITY_STATUS_UNKNOWN = 99 /* toString() returns "Unknown" */

     };

diff --git a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h

index c278b85..54e3134 100644

--- a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h

+++ b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h

@@ -130,23 +130,31 @@ namespace Wombat

         SECURITY_STATUS_QUAL_NEWS_PENDING_RELATED           = 108, // toString() - NewsPendingRelated

         SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED   = 109, // toString() - EquipChangeOverRelated

         SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED      = 110, // toString() - SubPennyTradingRelated

-       

-        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY          = 112, // toString() - ImbPreOpenBuy

-        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL         = 113, // toString() - ImbPreOpenSell

-        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY         = 114, // toString() - ImbPreCloseBuy

-        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL        = 115, // toString() - ImbPreCloseSell   

+        SECURITY_STATUS_QUAL_POST_TRADING                   = 111, // toString() - PostTrading

+        SECURITY_STATUS_QUAL_ONE_SIDED                      = 112, // toString() - OneSided

+        SECURITY_STATUS_QUAL_PRE_CALL                       = 113, // toString() - PreCall

+        SECURITY_STATUS_QUAL_RESTRICTED_OPEN                = 114, // toString() - RestrictedOpen

        

         SECURITY_STATUS_QUAL_VOLATILITY_PAUSE               = 116, // toString() - VolatilityPause

         SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME  = 117, // toString() - VolatilityPauseQuoteResume

         SECURITY_STATUS_QUAL_VOLATILITY_GUARD               = 118, // toString() - VolatilityGuard

         SECURITY_STATUS_QUAL_VOLATILITY_GUARD_QUOTE_RESUME  = 119, // toString() - VolatilityGuardQuoteResume

-        SECURITY_STATUS_QUAL_LIMIT_STATE_BID                = 120, //toString() - LimitStateBid

-        SECURITY_STATUS_QUAL_LIMIT_STATE_ASK                = 121, //toString() - LimitStateAsk

-        SECURITY_STATUS_QUAL_LIMITSTATEBID_LIMITSTATEASK    = 122, //toString() - LimitStateBid:LimitStateAsk

-        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_1        = 123, //toString() - CircuitBreakerLevel1

-        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2        = 124, //toString() - CircuitBreakerLevel2

-        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3        = 125, //toString() - CircuitBreakerLevel3

-        SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE      = 126  //toString() - VolatilityPauseStraddle

+        SECURITY_STATUS_QUAL_LIMIT_STATE_BID                = 120, // toString() - LimitStateBid

+        SECURITY_STATUS_QUAL_LIMIT_STATE_ASK                = 121, // toString() - LimitStateAsk

+        SECURITY_STATUS_QUAL_LIMITSTATEBID_LIMITSTATEASK    = 122, // toString() - LimitStateBid:LimitStateAsk

+        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_1        = 123, // toString() - CircuitBreakerLevel1

+        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2        = 124, // toString() - CircuitBreakerLevel2

+        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3        = 125, // toString() - CircuitBreakerLevel3

+        SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE      = 126, // toString() - VolatilityPauseStraddle

+

+        SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED          = 127, // toString() - ShortSaleRestricted

+        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY          = 128, // toString() - ImbPreOpenBuy

+        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL         = 129, // toString() - ImbPreOpenSell

+        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE         = 130, // toString() - ImbPreOpenNone

+        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY         = 131, // toString() - ImbPreCloseBuy

+        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL        = 132, // toString() - ImbPreCloseSell   

+        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE        = 133, // toString() - ImbPreCloseNone   

+        SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY             = 134  // toString() - ScheduledIntraday   

     };

 

diff --git a/mamda/dotnet/src/cs/MamdaSecurityStatus.cs b/mamda/dotnet/src/cs/MamdaSecurityStatus.cs

index 067a5ad..7566ea6 100644

--- a/mamda/dotnet/src/cs/MamdaSecurityStatus.cs

+++ b/mamda/dotnet/src/cs/MamdaSecurityStatus.cs

@@ -44,6 +44,7 @@ namespace Wombat

                                               SECURITY_STATUS_CROSSING           = 7,

             SECURITY_STATUS_SUSPENDED          = 8,

             SECURITY_STATUS_AT_LAST            = 9,

+            SECURITY_STATUS_INACTIVE           = 10,

                                               SECURITY_STATUS_UNKNOWN            = 99

                               }

@@ -57,6 +58,8 @@ namespace Wombat

                               private static string SECURITY_STATUS_STR_CROSSING    = "Crossing";

         private static string SECURITY_STATUS_STR_SUSPENDED   = "Suspended";

         private static string SECURITY_STATUS_STR_AT_LAST     = "AtLast";

+        private static string SECURITY_STATUS_STR_INACTIVE    = "Inactive";

+        private static string SECURITY_STATUS_STR_UNKNOWN     = "Unknown";

                                /// <summary>

                               /// Convert a MamdaSecurityStatus to an appropriate, displayable string

@@ -75,6 +78,7 @@ namespace Wombat

                                                               case  mamdaSecurityStatus.SECURITY_STATUS_CROSSING:                        return SECURITY_STATUS_STR_CROSSING;

                 case  mamdaSecurityStatus.SECURITY_STATUS_SUSPENDED:    return SECURITY_STATUS_STR_SUSPENDED;

                 case  mamdaSecurityStatus.SECURITY_STATUS_AT_LAST:      return SECURITY_STATUS_STR_AT_LAST;

+                case  mamdaSecurityStatus.SECURITY_STATUS_INACTIVE:     return SECURITY_STATUS_STR_INACTIVE;

                                                               case  mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN:

                                                               default:

                                                                               return "Unknown";

@@ -111,6 +115,10 @@ namespace Wombat

                 return mamdaSecurityStatus.SECURITY_STATUS_SUSPENDED;

             if (securityStatus == SECURITY_STATUS_STR_AT_LAST)

                 return mamdaSecurityStatus.SECURITY_STATUS_AT_LAST;

+            if (securityStatus == SECURITY_STATUS_STR_INACTIVE)

+                return mamdaSecurityStatus.SECURITY_STATUS_INACTIVE;

+            if (securityStatus == SECURITY_STATUS_STR_UNKNOWN)

+                return mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN;

                                                if (securityStatus == "0")

                                                               return mamdaSecurityStatus.SECURITY_STATUS_NONE;

@@ -132,6 +140,10 @@ namespace Wombat

                 return mamdaSecurityStatus.SECURITY_STATUS_SUSPENDED;

             if (securityStatus == "9")

                 return mamdaSecurityStatus.SECURITY_STATUS_AT_LAST;

+            if (securityStatus == "10")

+                return mamdaSecurityStatus.SECURITY_STATUS_INACTIVE;

+            if (securityStatus == "99")

+                return mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN;

                                                return mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN;

                               }

diff --git a/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs b/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs

index f502d57..81bf195 100644

--- a/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs

+++ b/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs

@@ -92,7 +92,7 @@ namespace Wombat

             SECURITY_STATUS_QUAL_SECURITY_FORBIDDEN            = 74,     // toString SecurityForbidden

             SECURITY_STATUS_QUAL_FAST_MARKET                   = 75,     // toString FastMarket

             SECURITY_STATUS_QUAL_SLOW_MARKET                   = 76,     // toString SlowMarket

-            SECURITY_STATUS_QUAL_SUM_PENNY_TRADING             = 77,     // toString SubPennyTrading

+            SECURITY_STATUS_QUAL_SUB_PENNY_TRADING             = 77,     // toString SubPennyTrading

             SECURITY_STATUS_QUAL_ORDER_INPUT                   = 78,     // toString OrderInput

             SECURITY_STATUS_QUAL_PRE_ORDER_MATCHING            = 79,     // toString PreOrderMatching

             SECURITY_STATUS_QUAL_ORDER_MATCHING                = 80,     // toString OrderMatching

@@ -122,10 +122,10 @@ namespace Wombat

             SECURITY_STATUS_QUAL_NEWS_PENDING_RELATED          = 108,    // toString NewsPendingRelated

             SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED  = 109,    // toString EquipChangeOverRelated

             SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED     = 110,    // toString SubPennyTradingRelated  

-            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 112,    // toString ImbPreOpenBuy

-            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 113,    // toString ImbPreOpenSell

-            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 114,    // toString ImbPreCloseBuy

-            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 115,    // toString ImbPreCloseSell

+            SECURITY_STATUS_QUAL_POST_TRADING                  = 111,    // toString PostTrading

+            SECURITY_STATUS_QUAL_ONE_SIDED                     = 112,    // toString OneSided

+            SECURITY_STATUS_QUAL_PRE_CALL                      = 113,    // toString PreCall

+            SECURITY_STATUS_QUAL_RESTRICTED_OPEN               = 114,    // toString RestrictedOpen

             SECURITY_STATUS_QUAL_VOLATILITY_PAUSE              = 116,    // toString VolatilityPause

             SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME = 117,    // toString VolatilityPauseQuoteResume

             SECURITY_STATUS_QUAL_VOLATILITY_GUARD              = 118,    // toString VolatilityGuard

@@ -135,8 +135,16 @@ namespace Wombat

             SECURITY_STATUS_QUAL_LIMITSTATEBID_LIMITSTATEASK   = 122,    // toString() - LimitStateBid:LimitStateAsk

             SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_1       = 123,    // toString() - CircuitBreakerLevel1

             SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2       = 124,    // toString() - CircuitBreakerLevel2

-            SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3       = 125,     // toString() - CircuitBreakerLevel3

-            SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE     = 126    //toString() - VolatilityPauseStraddle

+            SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3       = 125,    // toString() - CircuitBreakerLevel3

+            SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE     = 126,    // toString() - VolatilityPauseStraddle

+            SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED         = 127,    // toString ShortSaleRestricted

+            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 128,    // toString ImbPreOpenBuy

+            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 129,    // toString ImbPreOpenSell

+            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE        = 130,    // toString ImbPreOpenNone

+            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 131,    // toString ImbPreCloseBuy

+            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 132,    // toString ImbPreCloseSell

+            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE       = 133,    // toString ImbPreCloseNone

+            SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY            = 134     // toString ScheduledIntraday

                               }

                                private static string SECURITY_STATUS_QUAL_STR_NONE                           = "None";

@@ -205,7 +213,7 @@ namespace Wombat

         private static  string SECURITY_STATUS_QUAL_STR_SECURITY_FORBIDDEN            = "SecurityForbidden";

         private static  string SECURITY_STATUS_QUAL_STR_FAST_MARKET                   = "FastMarket";

         private static  string SECURITY_STATUS_QUAL_STR_SLOW_MARKET                   = "SlowMarket";

-        private static  string SECURITY_STATUS_QUAL_STR_SUM_PENNY_TRADING             = "SubPennyTrading";

+        private static  string SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING             = "SubPennyTrading";

         private static  string SECURITY_STATUS_QUAL_STR_ORDER_INPUT                   = "OrderInput";

         private static  string SECURITY_STATUS_QUAL_STR_PRE_ORDER_MATCHING            = "PreOrderMatching";

         private static  string SECURITY_STATUS_QUAL_STR_ORDER_MATCHING                = "OrderMatching";

@@ -234,10 +242,10 @@ namespace Wombat

         private static  string SECURITY_STATUS_QUAL_STR_NEWS_PENDING_RELATED          = "NewsPendingRelated";

         private static  string SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED  = "EquipChangeOverRelated";

         private static  string SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED     = "SubPennyTradingRelated";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+        private static  string SECURITY_STATUS_QUAL_STR_POST_TRADING                  = "PostTrading";

+        private static  string SECURITY_STATUS_QUAL_STR_ONE_SIDED                     = "OneSided";

+        private static  string SECURITY_STATUS_QUAL_STR_PRE_CALL                      = "PreCall";

+        private static  string SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN               = "RestrictedOpen";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE              = "VolatilityPause";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME = "VolatilityPauseQuoteResume";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_GUARD              = "VolatilityGuard";

@@ -249,6 +257,14 @@ namespace Wombat

         private static  string SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_2       = "CircuitBreakerLevel2";

         private static  string SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3       = "CircuitBreakerLevel3";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE     = "VolatilityPauseStraddle";

+        private static  string SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED         = "ShortSaleRestricted";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE        = "ImbPreOpenNone";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE       = "ImbPreCloseNone";

+        private static  string SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY            = "ScheduledIntraday";

         private static  string SECURITY_STATUS_QUAL_STR_UNKNOWN                        = "Unknown";

                                public string toString (MamdaSecurityStatusQual.mamdaSecurityStatusQual securityStatusQual)

@@ -385,8 +401,8 @@ namespace Wombat

                     return SECURITY_STATUS_QUAL_STR_FAST_MARKET;           

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SLOW_MARKET:               

                     return SECURITY_STATUS_QUAL_STR_SLOW_MARKET;           

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUM_PENNY_TRADING:         

-                    return SECURITY_STATUS_QUAL_STR_SUM_PENNY_TRADING;     

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING:         

+                    return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING;     

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_INPUT:               

                     return SECURITY_STATUS_QUAL_STR_ORDER_INPUT;           

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_ORDER_MATCHING:        

@@ -446,14 +462,14 @@ namespace Wombat

                     return SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED:

                     return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

-                    return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

-                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

-                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

-                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_POST_TRADING:

+                    return  SECURITY_STATUS_QUAL_STR_POST_TRADING;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ONE_SIDED:

+                    return SECURITY_STATUS_QUAL_STR_ONE_SIDED;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CALL:

+                    return  SECURITY_STATUS_QUAL_STR_PRE_CALL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESTRICTED_OPEN:

+                    return  SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE:

                     return   SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME:

@@ -476,6 +492,22 @@ namespace Wombat

                     return SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE:

                     return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED:

+                    return SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

+                    return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY:

+                    return  SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY;

                                                }

                                               return SECURITY_STATUS_QUAL_STR_UNKNOWN;

@@ -613,8 +645,8 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_FAST_MARKET;  

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SLOW_MARKET)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SLOW_MARKET;  

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SUM_PENNY_TRADING)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUM_PENNY_TRADING;  

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING;  

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_ORDER_INPUT)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_INPUT;  

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_PRE_ORDER_MATCHING)

@@ -671,14 +703,14 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL; 

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_POST_TRADING)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_POST_TRADING;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_ONE_SIDED)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ONE_SIDED; 

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_PRE_CALL)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CALL; 

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESTRICTED_OPEN; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME)

@@ -701,6 +733,22 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

                                                if (securityStatusQual == "0")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_NONE;

@@ -774,6 +822,12 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IPO_IMBALANCE_SELL;

             if (securityStatusQual == "44")

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE;

+            if (securityStatusQual == "46")              

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

+            if (securityStatusQual == "47")             

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

+            if (securityStatusQual == "48")             

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

                                                if (securityStatusQual == "51")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_OPEN_DELAY;

                                               if (securityStatusQual == "52")

@@ -798,19 +852,13 @@ namespace Wombat

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SEC;

                                               if (securityStatusQual == "62")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_TIMES;

-                                              if (securityStatusQual == "62")

+                                             if (securityStatusQual == "63")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_OTHER;

                                               if (securityStatusQual == "64")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RELATED;

                                               if (securityStatusQual == "65")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IPO;

            

-            if (securityStatusQual == "46")              

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

-            if (securityStatusQual == "47")             

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

-            if (securityStatusQual == "48")             

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

             if (securityStatusQual == "66")                

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CROSS;            

             if (securityStatusQual == "67")                    

@@ -834,7 +882,7 @@ namespace Wombat

             if (securityStatusQual == "76")          

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SLOW_MARKET;          

             if (securityStatusQual == "77")    

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUM_PENNY_TRADING;    

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING;    

             if (securityStatusQual == "78")          

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_INPUT;          

             if (securityStatusQual == "79")   

@@ -891,14 +939,14 @@ namespace Wombat

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

             if (securityStatusQual == "110")        

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;

+            if (securityStatusQual == "111")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_POST_TRADING;

             if (securityStatusQual == "112")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ONE_SIDED;

             if (securityStatusQual == "113")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CALL;

             if (securityStatusQual == "114")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

-            if (securityStatusQual == "115")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

             if (securityStatusQual == "116")        

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

             if (securityStatusQual == "117")        

@@ -921,6 +969,22 @@ namespace Wombat

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

             if (securityStatusQual == "126")

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+            if (securityStatusQual == "127")

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+            if (securityStatusQual == "128")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+            if (securityStatusQual == "129")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+            if (securityStatusQual == "130")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+            if (securityStatusQual == "131")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+            if (securityStatusQual == "132")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+            if (securityStatusQual == "133")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+            if (securityStatusQual == "134")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

                                                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_UNKNOWN;

                               }

diff --git a/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java b/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java

index d43353b..95a8241 100644

--- a/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java

+++ b/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java

@@ -37,6 +37,7 @@ public class MamdaSecurityStatus

     public static final short SECURITY_STATUS_CROSSING           = 7;

     public static final short SECURITY_STATUS_SUSPENDED          = 8;

     public static final short SECURITY_STATUS_AT_LAST            = 9;

+    public static final short SECURITY_STATUS_INACTIVE           = 10;

     public static final short SECURITY_STATUS_UNKNOWN            = 99;

    

     //Only used internally

@@ -50,6 +51,8 @@ public class MamdaSecurityStatus

     private static final String SECURITY_STATUS_STR_CROSSING    = "Crossing";

     private static final String SECURITY_STATUS_STR_SUSPENDED   = "Suspended";

     private static final String SECURITY_STATUS_STR_AT_LAST     = "AtLast";

+    private static final String SECURITY_STATUS_STR_INACTIVE    = "Inactive";

+    private static final String SECURITY_STATUS_STR_UNKNOWN     = "Unknown";

     /**

      * Convert a MamdaSecurityStatus to an appropriate, displayable

@@ -72,6 +75,7 @@ public class MamdaSecurityStatus

             case  SECURITY_STATUS_CROSSING:         return SECURITY_STATUS_STR_CROSSING;

             case  SECURITY_STATUS_SUSPENDED:        return SECURITY_STATUS_STR_SUSPENDED;

             case  SECURITY_STATUS_AT_LAST:          return SECURITY_STATUS_STR_AT_LAST;

+            case  SECURITY_STATUS_INACTIVE:         return SECURITY_STATUS_STR_INACTIVE;

             case  SECURITY_STATUS_UNKNOWN:  

             default:

                 return "Unknown";

@@ -114,6 +118,10 @@ public class MamdaSecurityStatus

             return SECURITY_STATUS_SUSPENDED;

         if (securityStatus.equals (SECURITY_STATUS_STR_AT_LAST))

             return SECURITY_STATUS_AT_LAST;

+        if (securityStatus.equals (SECURITY_STATUS_STR_INACTIVE))

+            return SECURITY_STATUS_INACTIVE;

+        if (securityStatus.equals (SECURITY_STATUS_STR_UNKNOWN))

+            return SECURITY_STATUS_UNKNOWN;

        

         //A misconfigured FH might send numbers as strings

         if (securityStatus.equals ("0"))

@@ -136,6 +144,10 @@ public class MamdaSecurityStatus

             return SECURITY_STATUS_SUSPENDED;

         if (securityStatus.equals ("9"))

             return SECURITY_STATUS_AT_LAST;

+        if (securityStatus.equals ("10"))

+            return SECURITY_STATUS_INACTIVE;

+        if (securityStatus.equals ("99"))

+            return SECURITY_STATUS_UNKNOWN;

         return SECURITY_STATUS_UNKNOWN;

     }

diff --git a/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java b/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java

index e169e31..4729d20 100644

--- a/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java

+++ b/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java

@@ -118,10 +118,10 @@ public class MamdaSecurityStatusQual

     public static final short SECURITY_STATUS_QUAL_NEWS_PENDING_RELATED          = 108;  // toString()  NewsPendingRelated

     public static final short SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED  = 109;  // toString()  EquipChangeOverRelated

     public static final short SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED     = 110;  // toString()  SubPennyTradingRelated

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 112;  // toString()  ImbPreOpenBuy

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 113;  // toString()  ImbPreOpenSell

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 114;  // toString()  ImbPreCloseBuy

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 115;  // toString()  ImbPreCloseSell 

+    public static final short SECURITY_STATUS_QUAL_POST_TRADING                  = 111;  // toString()  PostTrading

+    public static final short SECURITY_STATUS_QUAL_ONE_SIDED                     = 112;  // toString()  OneSided

+    public static final short SECURITY_STATUS_QUAL_PRE_CALL                      = 113;  // toString()  PreCall

+    public static final short SECURITY_STATUS_QUAL_RESTRICTED_OPEN               = 114;  // toString()  RestrictedOpen

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_PAUSE              = 116;  // toString()  VolatilityPause

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME = 117;  // toString()  VolatilityPauseQuoteResume

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_GUARD              = 118;  // toString()  VolatilityGuard

@@ -133,6 +133,14 @@ public class MamdaSecurityStatusQual

     public static final short SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2       = 124;  // toString()  CircuitBreakerLevel2

     public static final short SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3       = 125;  // toString()  CircuitBreakerLevel3

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE     = 126;  // toString()  VolatilityPauseStraddle

+    public static final short SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED         = 127;  // toString()  ShortSaleRestricted

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 128;  // toString()  ImbPreOpenBuy

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 129;  // toString()  ImbPreOpenSell

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE        = 130;  // toString()  ImbPreOpenNone

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 131;  // toString()  ImbPreCloseBuy

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 132;  // toString()  ImbPreCloseSell

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE       = 133;  // toString()  ImbPreCloseNone

+    public static final short SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY            = 134;  // toString()  ScheduledIntraday

     

     //Only used internally

     private static final String SECURITY_STATUS_QUAL_STR_NONE                               = "None";

@@ -230,10 +238,10 @@ public class MamdaSecurityStatusQual

     private static final String SECURITY_STATUS_QUAL_STR_NEWS_PENDING_RELATED               = "NewsPendingRelated";

     private static final String SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED       = "EquipChangeOverRelated";

     private static final String SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED          = "SubPennyTradingRelated";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY              = "ImbPreOpenBuy";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL             = "ImbPreOpenSell";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY             = "ImbPreCloseBuy";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL            = "ImbPreCloseSell";

+    private static final String SECURITY_STATUS_QUAL_STR_POST_TRADING                       = "PostTrading";

+    private static final String SECURITY_STATUS_QUAL_STR_ONE_SIDED                          = "OneSided";

+    private static final String SECURITY_STATUS_QUAL_STR_PRE_CALL                           = "PreCall";

+    private static final String SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN                    = "RestrictedOpen";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE                   = "VolatilityPause";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME      = "VolatilityPauseQuoteResume";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_GUARD                   = "VolatilityGuard";

@@ -246,6 +254,15 @@ public class MamdaSecurityStatusQual

     private static final String SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_2            = "CircuitBreakerLevel2";

     private static final String SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3            = "CircuitBreakerLevel3";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE          = "VolatilityPauseStraddle";

+   

+    private static final String SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED              = "ShortSaleRestricted";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY              = "ImbPreOpenBuy";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL             = "ImbPreOpenSell";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE             = "ImbPreOpenNone";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY             = "ImbPreCloseBuy";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL            = "ImbPreCloseSell";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE            = "ImbPreCloseNone";

+    private static final String SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY                 = "ScheduledIntraday";

     private static final String SECURITY_STATUS_QUAL_STR_UNKNOWN                            = "Unknown";

@@ -443,14 +460,14 @@ public class MamdaSecurityStatusQual

                 return SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED;

             case SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED:

                 return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+            case SECURITY_STATUS_QUAL_POST_TRADING:

+                return SECURITY_STATUS_QUAL_STR_POST_TRADING;

+            case SECURITY_STATUS_QUAL_ONE_SIDED:

+                return SECURITY_STATUS_QUAL_STR_ONE_SIDED;

+            case SECURITY_STATUS_QUAL_PRE_CALL:

+                return SECURITY_STATUS_QUAL_STR_PRE_CALL;

+            case SECURITY_STATUS_QUAL_RESTRICTED_OPEN:

+                return SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN;

             case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE:

                 return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE;

             case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME:

@@ -473,6 +490,22 @@ public class MamdaSecurityStatusQual

                 return SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3;

             case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE:

                 return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE;

+            case SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED:

+                return SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE;

+            case SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY:

+                return SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY;

         }

         return SECURITY_STATUS_QUAL_STR_UNKNOWN;

     }

@@ -672,14 +705,14 @@ public class MamdaSecurityStatusQual

             return  SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

         if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED))

             return SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL ))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_POST_TRADING))

+            return SECURITY_STATUS_QUAL_POST_TRADING;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_ONE_SIDED))

+            return SECURITY_STATUS_QUAL_ONE_SIDED;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_PRE_CALL))

+            return SECURITY_STATUS_QUAL_PRE_CALL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN))

+            return SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if (securityStatusQual.equals (SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE))

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if (securityStatusQual.equals (SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME))

@@ -702,6 +735,22 @@ public class MamdaSecurityStatusQual

             return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if (securityStatusQual.equals (SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE))

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED))

+            return SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY ))

+            return SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

         // A misconfigured FH might send numbers as strings:

         if (securityStatusQual.equals ("0"))

@@ -806,7 +855,7 @@ public class MamdaSecurityStatusQual

             return SECURITY_STATUS_QUAL_SEC;

         if (securityStatusQual.equals ("62"))

             return SECURITY_STATUS_QUAL_TIMES;

-        if (securityStatusQual.equals ("62"))

+        if (securityStatusQual.equals ("63"))

             return SECURITY_STATUS_QUAL_OTHER;

         if (securityStatusQual.equals ("64"))

             return SECURITY_STATUS_QUAL_RELATED;

@@ -892,14 +941,14 @@ public class MamdaSecurityStatusQual

           return SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

         if(securityStatusQual.equals("110"))

           return SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;

+        if(securityStatusQual.equals("111"))

+          return SECURITY_STATUS_QUAL_POST_TRADING;

         if(securityStatusQual.equals("112"))

-          return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+          return SECURITY_STATUS_QUAL_ONE_SIDED;

         if(securityStatusQual.equals("113"))

-          return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+          return  SECURITY_STATUS_QUAL_PRE_CALL;

         if(securityStatusQual.equals("114"))

-          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

-        if(securityStatusQual.equals("115"))

-          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+          return SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if(securityStatusQual.equals("116"))

           return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if(securityStatusQual.equals("117"))

@@ -922,6 +971,22 @@ public class MamdaSecurityStatusQual

           return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if(securityStatusQual.equals("126"))

           return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+        if(securityStatusQual.equals("127"))

+          return SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if(securityStatusQual.equals("128"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+        if(securityStatusQual.equals("129"))

+          return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+        if(securityStatusQual.equals("130"))

+          return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if(securityStatusQual.equals("131"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+        if(securityStatusQual.equals("132"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if(securityStatusQual.equals("133"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if(securityStatusQual.equals("134"))

+          return SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

         return SECURITY_STATUS_QUAL_UNKNOWN;

     }

--

1.8.3.1

 


This message may contain confidential information and is intended for specific recipients unless explicitly noted otherwise. If you have reason to believe you are not an intended recipient of this message, please delete it and notify the sender. This message may not represent the opinion of IntercontinentalExchange Group, Inc. (ICE), NYSE Euronext or any of their subsidiaries or affiliates, and does not constitute a contract or guarantee. Unencrypted electronic mail is not secure and the recipient of this message is expected to provide safeguards from viruses and pursue alternate means of communication where privacy or a binding message is desired.


Damian Maguire <DMaguire@...>
 

Hey Adrienne, 

Can you give us a little bit more of a description of the changes included in this patch?  Obviously there's quite a lot of changes contained within, but it's unclear what exactly the rational behind the changes is, or why they're required.

Thanks, 

Damian

From: Adrienne Ambrose <AAmbrose@...>
Date: Monday, May 12, 2014 3:10 PM
To: "openmama-dev@..." <openmama-dev@...>
Subject: [Openmama-dev] [PATCH] [MAMDACPP/MAMDAJAVA/MAMDAC#] Updates to SecurityStatus & SecuritySatusQual.

TESTING –

I have attached modified versions of mamapublisherc  & secstatuslisten.cpp for testing of this issue.

The publisher has been modified to now include commandline parameters for both the securitystatus & also the securitystatusqual. 
And slight modification to the secstatuslisten to now publish the securitystatusqual as well as the securitystatus.

The same example program modification was done to test Java & C#.

 

 

From 4ea8730990ec24abbf0800366b7f22d92cd44a06 Mon Sep 17 00:00:00 2001

From: A Ambrose <aambrose@...>

Date: Mon, 12 May 2014 11:56:15 +0100

Subject: [PATCH] Updates to SecurityStatus & SecurityStatusQual for

C++/C#/Java [OMAMA-254] - Additions & corrections to enums

 

Signed-off-by: A Ambrose <aambrose@...>

---

mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp        |   7 +

mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp    | 159 ++++++++++++++-------

mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h    |   1 +

.../c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h  |  32 +++--

mamda/dotnet/src/cs/MamdaSecurityStatus.cs         |  12 ++

mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs     | 154 ++++++++++++++------

.../java/com/wombat/mamda/MamdaSecurityStatus.java |  12 ++

.../com/wombat/mamda/MamdaSecurityStatusQual.java  | 125 ++++++++++++----

8 files changed, 364 insertions(+), 138 deletions(-)

 

diff --git a/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp b/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp

index 6d9ef4b..5aabefc 100644

--- a/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp

+++ b/mamda/c_cpp/src/cpp/MamdaSecurityStatus.cpp

@@ -35,6 +35,8 @@ namespace Wombat

     static const char* SECURITY_STATUS_STR_CROSSING   = "Crossing";

     static const char* SECURITY_STATUS_STR_SUSPENDED  = "Suspended";

     static const char* SECURITY_STATUS_STR_AT_LAST    = "AtLast";

+    static const char* SECURITY_STATUS_STR_INACTIVE   = "Inactive";

+    static const char* SECURITY_STATUS_STR_UNKNOWN    = "Unknown";

     const char* toString (MamdaSecurityStatus  securityStatus)

     {

@@ -50,6 +52,7 @@ namespace Wombat

             case SECURITY_STATUS_CROSSING:  return SECURITY_STATUS_STR_CROSSING;

             case SECURITY_STATUS_SUSPENDED: return SECURITY_STATUS_STR_SUSPENDED;

             case SECURITY_STATUS_AT_LAST:   return SECURITY_STATUS_STR_AT_LAST;

+            case SECURITY_STATUS_INACTIVE:  return SECURITY_STATUS_STR_INACTIVE;

             case SECURITY_STATUS_UNKNOWN:

             default:                        return "Unknown";

         }

@@ -73,6 +76,8 @@ namespace Wombat

         if (strcmp (securityStatus, SECURITY_STATUS_STR_CROSSING)  == 0)    return SECURITY_STATUS_CROSSING;

         if (strcmp (securityStatus, SECURITY_STATUS_STR_SUSPENDED) == 0)    return SECURITY_STATUS_SUSPENDED;

         if (strcmp (securityStatus, SECURITY_STATUS_STR_AT_LAST)   == 0)    return SECURITY_STATUS_AT_LAST;

+        if (strcmp (securityStatus, SECURITY_STATUS_STR_INACTIVE)  == 0)    return SECURITY_STATUS_INACTIVE;

+        if (strcmp (securityStatus, SECURITY_STATUS_STR_UNKNOWN)   == 0)    return SECURITY_STATUS_UNKNOWN;

         // A misconfigured FH might send numbers as strings:

         if (strcmp (securityStatus,"0") == 0)   return SECURITY_STATUS_NONE;

@@ -85,6 +90,8 @@ namespace Wombat

         if (strcmp (securityStatus,"7") == 0)   return SECURITY_STATUS_CROSSING;

         if (strcmp (securityStatus,"8") == 0)   return SECURITY_STATUS_SUSPENDED;

         if (strcmp (securityStatus,"9") == 0)   return SECURITY_STATUS_AT_LAST;

+        if (strcmp (securityStatus,"10")== 0)   return SECURITY_STATUS_INACTIVE;

+        if (strcmp (securityStatus,"99")== 0)   return SECURITY_STATUS_UNKNOWN;

         return SECURITY_STATUS_UNKNOWN;

     }

diff --git a/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp b/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp

index 4da35a7..28eb9c1 100644

--- a/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp

+++ b/mamda/c_cpp/src/cpp/MamdaSecurityStatusQual.cpp

@@ -61,6 +61,9 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_IPO_IMBALANCE_BUY       = "IpoImbBuy";

     static const char* SECURITY_STATUS_QUAL_STR_IPO_IMBALANCE_SELL      = "IpoImbSell";

     static const char* SECURITY_STATUS_QUAL_STR_NO_IPO_IMBALANCE        = "IpoNoImb";

+    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY             = "EmcImbBuy";

+    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL            = "EmcImbSell";

+    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE            = "EmcImbNone";

     static const char* SECURITY_STATUS_QUAL_STR_OPEN_DELAY              = "OpenDelay";

     static const char* SECURITY_STATUS_QUAL_STR_NO_OPEN_NO_RESUME       = "NoOpenNoResume";

     static const char* SECURITY_STATUS_QUAL_STR_PRICE_IND               = "PriceInd";

@@ -77,9 +80,6 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_RELATED                 = "Related";

     static const char* SECURITY_STATUS_QUAL_STR_IPO                     = "IPO";

-    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY                   = "EmcImbBuy";

-    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL                  = "EmcImbSell";

-    static const char* SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE                  = "EmcImbNone";

     static const char* SECURITY_STATUS_QUAL_STR_PRE_CROSS                     = "Pre-Cross";

     static const char* SECURITY_STATUS_QUAL_STR_CROSS                         = "Cross";

     static const char* SECURITY_STATUS_QUAL_STR_RELEASED_FOR_QUOTATION        = "Released For Quotation (IPO)";

@@ -120,10 +120,10 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_NEWS_PENDING_RELATED          = "NewsPendingRelated";

     static const char* SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED  = "EquipChangeOverRelated";

     static const char* SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED     = "SubPennyTradingRelated";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

-    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+    static const char* SECURITY_STATUS_QUAL_STR_POST_TRADING                  = "PostTrading";

+    static const char* SECURITY_STATUS_QUAL_STR_ONE_SIDED                     = "OneSided";

+    static const char* SECURITY_STATUS_QUAL_STR_PRE_CALL                      = "PreCall";

+    static const char* SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN               = "RestrictedOpen";

     static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE              = "VolatilityPause";

     static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME = "VolatilityPauseQuoteResume";

     static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_GUARD              = "VolatilityGuard";

@@ -134,7 +134,15 @@ namespace Wombat

     static const char* SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_1       = "CircuitBreakerLevel1";

     static const char* SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_2       = "CircuitBreakerLevel2";

     static const char* SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3       = "CircuitBreakerLevel3";

-    static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE    = "VolatilityPauseStraddle";

+    static const char* SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE     = "VolatilityPauseStraddle";

+    static const char* SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED         = "ShortSaleRestricted";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE        = "ImbPreOpenNone";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+    static const char* SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE       = "ImbPreCloseNone";

+    static const char* SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY            = "ScheduledIntraday";

     static const char* SECURITY_STATUS_QUAL_STR_UNKNOWN                       = "Unknown";

     const char* toString (MamdaSecurityStatusQual  securityStatusQual)

@@ -213,6 +221,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_STR_IPO_IMBALANCE_SELL ; 

         case SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE:          

             return SECURITY_STATUS_QUAL_STR_NO_IPO_IMBALANCE;  

+        case SECURITY_STATUS_QUAL_EMC_IMB_BUY:

+                return SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY;

+        case SECURITY_STATUS_QUAL_EMC_IMB_SELL:

+                return SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL;

+        case SECURITY_STATUS_QUAL_EMC_IMB_NONE:

+                return SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE;

         case SECURITY_STATUS_QUAL_OPEN_DELAY:        

                        return SECURITY_STATUS_QUAL_STR_OPEN_DELAY;

         case SECURITY_STATUS_QUAL_NO_OPEN_NO_RESUME: 

@@ -246,12 +260,6 @@ namespace Wombat

         case SECURITY_STATUS_QUAL_UNKNOWN:

             return SECURITY_STATUS_QUAL_STR_UNKNOWN;

-        case SECURITY_STATUS_QUAL_EMC_IMB_BUY:               

-            return SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY;      

-        case SECURITY_STATUS_QUAL_EMC_IMB_SELL:              

-            return SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL;     

-        case SECURITY_STATUS_QUAL_EMC_IMB_NONE:              

-            return SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE;     

         case SECURITY_STATUS_QUAL_PRE_CROSS:                 

             return SECURITY_STATUS_QUAL_STR_PRE_CROSS;       

         case SECURITY_STATUS_QUAL_CROSS:                     

@@ -332,14 +340,14 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED;         

         case SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED  :       

             return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY; 

-        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:       

-            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;         

+        case SECURITY_STATUS_QUAL_POST_TRADING:

+            return SECURITY_STATUS_QUAL_STR_POST_TRADING;

+        case SECURITY_STATUS_QUAL_ONE_SIDED:

+            return SECURITY_STATUS_QUAL_STR_ONE_SIDED;

+        case SECURITY_STATUS_QUAL_PRE_CALL:

+            return SECURITY_STATUS_QUAL_STR_PRE_CALL;

+        case SECURITY_STATUS_QUAL_RESTRICTED_OPEN:

+            return SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN;

         case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE:

             return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE;

         case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME:

@@ -362,6 +370,22 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3;

         case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE:

             return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE;

+        case SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED:

+            return SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED;

+        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY; 

+        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL; 

+        case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE:

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE;

+        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY; 

+        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:       

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;         

+        case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE:

+            return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE;

+        case SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY:

+            return SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY;

         }

         return SECURITY_STATUS_QUAL_STR_UNKNOWN;

     }

@@ -377,9 +401,9 @@ namespace Wombat

         // Older FH configurations sent strings:

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_NONE) == 0)

             return SECURITY_STATUS_QUAL_NONE;

-          if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

             return SECURITY_STATUS_QUAL_OPENING;

-         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPENING) == 0)

             return SECURITY_STATUS_QUAL_OPENING;   

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EXCUSED) == 0)

             return SECURITY_STATUS_QUAL_EXCUSED;

@@ -449,6 +473,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_IPO_IMBALANCE_SELL;

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_NO_IPO_IMBALANCE) == 0)

             return SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE;   

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY) == 0)              

+            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL) == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE) == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_OPEN_DELAY) == 0)

             return SECURITY_STATUS_QUAL_OPEN_DELAY;

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_NO_OPEN_NO_RESUME) == 0)

@@ -480,12 +510,6 @@ namespace Wombat

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IPO) == 0)

             return SECURITY_STATUS_QUAL_IPO;

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_BUY) == 0)              

-            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_SELL) == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_EMC_IMB_NONE) == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_PRE_CROSS) == 0)                

             return SECURITY_STATUS_QUAL_PRE_CROSS;            

         if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_CROSS) == 0)                    

@@ -566,14 +590,14 @@ namespace Wombat

             return  SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;  

         if (strcmp (securityStatusQual,SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED) == 0)        

             return  SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;  

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY) == 0)         

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;      

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL) == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;    

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY) == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;      

-        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL) == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_POST_TRADING) == 0)

+            return  SECURITY_STATUS_QUAL_POST_TRADING;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_ONE_SIDED) == 0)

+            return  SECURITY_STATUS_QUAL_ONE_SIDED;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_PRE_CALL) == 0)

+            return  SECURITY_STATUS_QUAL_PRE_CALL;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN) == 0)

+            return  SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if(strcmp(securityStatusQual, SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE) == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if(strcmp(securityStatusQual,SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME) == 0)

@@ -596,12 +620,29 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if(strcmp(securityStatusQual,SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE) == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

-                

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED) == 0)

+            return  SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;      

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;    

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE) == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;      

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL) == 0)        

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE) == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if (strcmp (securityStatusQual, SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY) == 0)

+            return  SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

            

 

         // A misconfigured FH might send numbers as strings:

         if (strcmp (securityStatusQual, "0") == 0)

             return SECURITY_STATUS_QUAL_NONE;

+        if (strcmp (securityStatusQual, "1") == 0)

+            return SECURITY_STATUS_QUAL_OPENING;

         if (strcmp (securityStatusQual, "7") == 0)

             return SECURITY_STATUS_QUAL_EXCUSED;

         if (strcmp (securityStatusQual, "8") == 0)

@@ -670,6 +711,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_IPO_IMBALANCE_SELL;

         if (strcmp (securityStatusQual, "44") == 0)

             return SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE;

+        if (strcmp (securityStatusQual, "46") == 0)              

+            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

+        if (strcmp (securityStatusQual, "47") == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

+        if (strcmp (securityStatusQual, "48") == 0)             

+            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;          

         if (strcmp (securityStatusQual, "51") == 0)

             return SECURITY_STATUS_QUAL_OPEN_DELAY;

         if (strcmp (securityStatusQual, "52") == 0)

@@ -694,18 +741,12 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_SEC; 

         if (strcmp (securityStatusQual, "62") == 0)

             return SECURITY_STATUS_QUAL_TIMES;

-        if (strcmp (securityStatusQual, "62") == 0)

+        if (strcmp (securityStatusQual, "63") == 0)

             return SECURITY_STATUS_QUAL_OTHER;

         if (strcmp (securityStatusQual, "64") == 0)

             return SECURITY_STATUS_QUAL_RELATED;

         if (strcmp (securityStatusQual, "65") == 0)

             return SECURITY_STATUS_QUAL_IPO;

-        if (strcmp (securityStatusQual, "46") == 0)              

-            return SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

-        if (strcmp (securityStatusQual, "47") == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_SELL;          

-        if (strcmp (securityStatusQual, "48") == 0)             

-            return SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

         if (strcmp (securityStatusQual, "66") == 0)                

             return SECURITY_STATUS_QUAL_PRE_CROSS;            

         if (strcmp (securityStatusQual, "67") == 0)                    

@@ -786,14 +827,14 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

         if (strcmp (securityStatusQual, "110") == 0)        

             return SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;   

+        if (strcmp (securityStatusQual, "111") == 0)

+            return  SECURITY_STATUS_QUAL_POST_TRADING;

         if (strcmp (securityStatusQual, "112") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY; 

+            return  SECURITY_STATUS_QUAL_ONE_SIDED;

         if (strcmp (securityStatusQual, "113") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL; 

+            return  SECURITY_STATUS_QUAL_PRE_CALL;

         if (strcmp (securityStatusQual, "114") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY; 

-        if (strcmp (securityStatusQual, "115") == 0)        

-            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL; 

+            return  SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if(strcmp(securityStatusQual, "116") == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if(strcmp(securityStatusQual, "117") == 0)

@@ -816,6 +857,22 @@ namespace Wombat

             return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if(strcmp(securityStatusQual, "126") == 0)

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+        if(strcmp(securityStatusQual, "127") == 0)

+            return  SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if(strcmp(securityStatusQual, "128") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+        if(strcmp(securityStatusQual, "129") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+        if(strcmp(securityStatusQual, "130") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if(strcmp(securityStatusQual, "131") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+        if(strcmp(securityStatusQual, "132") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if(strcmp(securityStatusQual, "133") == 0)

+            return  SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if(strcmp(securityStatusQual, "134") == 0)

+            return  SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

         return SECURITY_STATUS_QUAL_UNKNOWN;

     }

diff --git a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h

index 1825328..29b6e8d 100644

--- a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h

+++ b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatus.h

@@ -43,6 +43,7 @@ namespace Wombat

         SECURITY_STATUS_CROSSING,    /* toString() returns "Crossing" */

         SECURITY_STATUS_SUSPENDED,   /* toString() returns "Suspended" */

         SECURITY_STATUS_AT_LAST,     /* toString() returns "AtLast" */

+        SECURITY_STATUS_INACTIVE,    /* toString() returns "Inactive" */

         SECURITY_STATUS_UNKNOWN = 99 /* toString() returns "Unknown" */

     };

diff --git a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h

index c278b85..54e3134 100644

--- a/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h

+++ b/mamda/c_cpp/src/cpp/mamda/MamdaSecurityStatusQual.h

@@ -130,23 +130,31 @@ namespace Wombat

         SECURITY_STATUS_QUAL_NEWS_PENDING_RELATED           = 108, // toString() - NewsPendingRelated

         SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED   = 109, // toString() - EquipChangeOverRelated

         SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED      = 110, // toString() - SubPennyTradingRelated

-       

-        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY          = 112, // toString() - ImbPreOpenBuy

-        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL         = 113, // toString() - ImbPreOpenSell

-        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY         = 114, // toString() - ImbPreCloseBuy

-        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL        = 115, // toString() - ImbPreCloseSell   

+        SECURITY_STATUS_QUAL_POST_TRADING                   = 111, // toString() - PostTrading

+        SECURITY_STATUS_QUAL_ONE_SIDED                      = 112, // toString() - OneSided

+        SECURITY_STATUS_QUAL_PRE_CALL                       = 113, // toString() - PreCall

+        SECURITY_STATUS_QUAL_RESTRICTED_OPEN                = 114, // toString() - RestrictedOpen

        

         SECURITY_STATUS_QUAL_VOLATILITY_PAUSE               = 116, // toString() - VolatilityPause

         SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME  = 117, // toString() - VolatilityPauseQuoteResume

         SECURITY_STATUS_QUAL_VOLATILITY_GUARD               = 118, // toString() - VolatilityGuard

         SECURITY_STATUS_QUAL_VOLATILITY_GUARD_QUOTE_RESUME  = 119, // toString() - VolatilityGuardQuoteResume

-        SECURITY_STATUS_QUAL_LIMIT_STATE_BID                = 120, //toString() - LimitStateBid

-        SECURITY_STATUS_QUAL_LIMIT_STATE_ASK                = 121, //toString() - LimitStateAsk

-        SECURITY_STATUS_QUAL_LIMITSTATEBID_LIMITSTATEASK    = 122, //toString() - LimitStateBid:LimitStateAsk

-        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_1        = 123, //toString() - CircuitBreakerLevel1

-        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2        = 124, //toString() - CircuitBreakerLevel2

-        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3        = 125, //toString() - CircuitBreakerLevel3

-        SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE      = 126  //toString() - VolatilityPauseStraddle

+        SECURITY_STATUS_QUAL_LIMIT_STATE_BID                = 120, // toString() - LimitStateBid

+        SECURITY_STATUS_QUAL_LIMIT_STATE_ASK                = 121, // toString() - LimitStateAsk

+        SECURITY_STATUS_QUAL_LIMITSTATEBID_LIMITSTATEASK    = 122, // toString() - LimitStateBid:LimitStateAsk

+        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_1        = 123, // toString() - CircuitBreakerLevel1

+        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2        = 124, // toString() - CircuitBreakerLevel2

+        SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3        = 125, // toString() - CircuitBreakerLevel3

+        SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE      = 126, // toString() - VolatilityPauseStraddle

+

+        SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED          = 127, // toString() - ShortSaleRestricted

+        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY          = 128, // toString() - ImbPreOpenBuy

+        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL         = 129, // toString() - ImbPreOpenSell

+        SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE         = 130, // toString() - ImbPreOpenNone

+        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY         = 131, // toString() - ImbPreCloseBuy

+        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL        = 132, // toString() - ImbPreCloseSell   

+        SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE        = 133, // toString() - ImbPreCloseNone   

+        SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY             = 134  // toString() - ScheduledIntraday   

     };

 

diff --git a/mamda/dotnet/src/cs/MamdaSecurityStatus.cs b/mamda/dotnet/src/cs/MamdaSecurityStatus.cs

index 067a5ad..7566ea6 100644

--- a/mamda/dotnet/src/cs/MamdaSecurityStatus.cs

+++ b/mamda/dotnet/src/cs/MamdaSecurityStatus.cs

@@ -44,6 +44,7 @@ namespace Wombat

                                               SECURITY_STATUS_CROSSING           = 7,

             SECURITY_STATUS_SUSPENDED          = 8,

             SECURITY_STATUS_AT_LAST            = 9,

+            SECURITY_STATUS_INACTIVE           = 10,

                                               SECURITY_STATUS_UNKNOWN            = 99

                               }

@@ -57,6 +58,8 @@ namespace Wombat

                               private static string SECURITY_STATUS_STR_CROSSING    = "Crossing";

         private static string SECURITY_STATUS_STR_SUSPENDED   = "Suspended";

         private static string SECURITY_STATUS_STR_AT_LAST     = "AtLast";

+        private static string SECURITY_STATUS_STR_INACTIVE    = "Inactive";

+        private static string SECURITY_STATUS_STR_UNKNOWN     = "Unknown";

                                /// <summary>

                               /// Convert a MamdaSecurityStatus to an appropriate, displayable string

@@ -75,6 +78,7 @@ namespace Wombat

                                                               case  mamdaSecurityStatus.SECURITY_STATUS_CROSSING:                        return SECURITY_STATUS_STR_CROSSING;

                 case  mamdaSecurityStatus.SECURITY_STATUS_SUSPENDED:    return SECURITY_STATUS_STR_SUSPENDED;

                 case  mamdaSecurityStatus.SECURITY_STATUS_AT_LAST:      return SECURITY_STATUS_STR_AT_LAST;

+                case  mamdaSecurityStatus.SECURITY_STATUS_INACTIVE:     return SECURITY_STATUS_STR_INACTIVE;

                                                               case  mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN:

                                                               default:

                                                                               return "Unknown";

@@ -111,6 +115,10 @@ namespace Wombat

                 return mamdaSecurityStatus.SECURITY_STATUS_SUSPENDED;

             if (securityStatus == SECURITY_STATUS_STR_AT_LAST)

                 return mamdaSecurityStatus.SECURITY_STATUS_AT_LAST;

+            if (securityStatus == SECURITY_STATUS_STR_INACTIVE)

+                return mamdaSecurityStatus.SECURITY_STATUS_INACTIVE;

+            if (securityStatus == SECURITY_STATUS_STR_UNKNOWN)

+                return mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN;

                                                if (securityStatus == "0")

                                                               return mamdaSecurityStatus.SECURITY_STATUS_NONE;

@@ -132,6 +140,10 @@ namespace Wombat

                 return mamdaSecurityStatus.SECURITY_STATUS_SUSPENDED;

             if (securityStatus == "9")

                 return mamdaSecurityStatus.SECURITY_STATUS_AT_LAST;

+            if (securityStatus == "10")

+                return mamdaSecurityStatus.SECURITY_STATUS_INACTIVE;

+            if (securityStatus == "99")

+                return mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN;

                                                return mamdaSecurityStatus.SECURITY_STATUS_UNKNOWN;

                               }

diff --git a/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs b/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs

index f502d57..81bf195 100644

--- a/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs

+++ b/mamda/dotnet/src/cs/MamdaSecurityStatusQual.cs

@@ -92,7 +92,7 @@ namespace Wombat

             SECURITY_STATUS_QUAL_SECURITY_FORBIDDEN            = 74,     // toString SecurityForbidden

             SECURITY_STATUS_QUAL_FAST_MARKET                   = 75,     // toString FastMarket

             SECURITY_STATUS_QUAL_SLOW_MARKET                   = 76,     // toString SlowMarket

-            SECURITY_STATUS_QUAL_SUM_PENNY_TRADING             = 77,     // toString SubPennyTrading

+            SECURITY_STATUS_QUAL_SUB_PENNY_TRADING             = 77,     // toString SubPennyTrading

             SECURITY_STATUS_QUAL_ORDER_INPUT                   = 78,     // toString OrderInput

             SECURITY_STATUS_QUAL_PRE_ORDER_MATCHING            = 79,     // toString PreOrderMatching

             SECURITY_STATUS_QUAL_ORDER_MATCHING                = 80,     // toString OrderMatching

@@ -122,10 +122,10 @@ namespace Wombat

             SECURITY_STATUS_QUAL_NEWS_PENDING_RELATED          = 108,    // toString NewsPendingRelated

             SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED  = 109,    // toString EquipChangeOverRelated

             SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED     = 110,    // toString SubPennyTradingRelated  

-            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 112,    // toString ImbPreOpenBuy

-            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 113,    // toString ImbPreOpenSell

-            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 114,    // toString ImbPreCloseBuy

-            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 115,    // toString ImbPreCloseSell

+            SECURITY_STATUS_QUAL_POST_TRADING                  = 111,    // toString PostTrading

+            SECURITY_STATUS_QUAL_ONE_SIDED                     = 112,    // toString OneSided

+            SECURITY_STATUS_QUAL_PRE_CALL                      = 113,    // toString PreCall

+            SECURITY_STATUS_QUAL_RESTRICTED_OPEN               = 114,    // toString RestrictedOpen

             SECURITY_STATUS_QUAL_VOLATILITY_PAUSE              = 116,    // toString VolatilityPause

             SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME = 117,    // toString VolatilityPauseQuoteResume

             SECURITY_STATUS_QUAL_VOLATILITY_GUARD              = 118,    // toString VolatilityGuard

@@ -135,8 +135,16 @@ namespace Wombat

             SECURITY_STATUS_QUAL_LIMITSTATEBID_LIMITSTATEASK   = 122,    // toString() - LimitStateBid:LimitStateAsk

             SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_1       = 123,    // toString() - CircuitBreakerLevel1

             SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2       = 124,    // toString() - CircuitBreakerLevel2

-            SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3       = 125,     // toString() - CircuitBreakerLevel3

-            SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE     = 126    //toString() - VolatilityPauseStraddle

+            SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3       = 125,    // toString() - CircuitBreakerLevel3

+            SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE     = 126,    // toString() - VolatilityPauseStraddle

+            SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED         = 127,    // toString ShortSaleRestricted

+            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 128,    // toString ImbPreOpenBuy

+            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 129,    // toString ImbPreOpenSell

+            SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE        = 130,    // toString ImbPreOpenNone

+            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 131,    // toString ImbPreCloseBuy

+            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 132,    // toString ImbPreCloseSell

+            SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE       = 133,    // toString ImbPreCloseNone

+            SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY            = 134     // toString ScheduledIntraday

                               }

                                private static string SECURITY_STATUS_QUAL_STR_NONE                           = "None";

@@ -205,7 +213,7 @@ namespace Wombat

         private static  string SECURITY_STATUS_QUAL_STR_SECURITY_FORBIDDEN            = "SecurityForbidden";

         private static  string SECURITY_STATUS_QUAL_STR_FAST_MARKET                   = "FastMarket";

         private static  string SECURITY_STATUS_QUAL_STR_SLOW_MARKET                   = "SlowMarket";

-        private static  string SECURITY_STATUS_QUAL_STR_SUM_PENNY_TRADING             = "SubPennyTrading";

+        private static  string SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING             = "SubPennyTrading";

         private static  string SECURITY_STATUS_QUAL_STR_ORDER_INPUT                   = "OrderInput";

         private static  string SECURITY_STATUS_QUAL_STR_PRE_ORDER_MATCHING            = "PreOrderMatching";

         private static  string SECURITY_STATUS_QUAL_STR_ORDER_MATCHING                = "OrderMatching";

@@ -234,10 +242,10 @@ namespace Wombat

         private static  string SECURITY_STATUS_QUAL_STR_NEWS_PENDING_RELATED          = "NewsPendingRelated";

         private static  string SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED  = "EquipChangeOverRelated";

         private static  string SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED     = "SubPennyTradingRelated";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

-        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+        private static  string SECURITY_STATUS_QUAL_STR_POST_TRADING                  = "PostTrading";

+        private static  string SECURITY_STATUS_QUAL_STR_ONE_SIDED                     = "OneSided";

+        private static  string SECURITY_STATUS_QUAL_STR_PRE_CALL                      = "PreCall";

+        private static  string SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN               = "RestrictedOpen";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE              = "VolatilityPause";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME = "VolatilityPauseQuoteResume";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_GUARD              = "VolatilityGuard";

@@ -249,6 +257,14 @@ namespace Wombat

         private static  string SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_2       = "CircuitBreakerLevel2";

         private static  string SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3       = "CircuitBreakerLevel3";

         private static  string SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE     = "VolatilityPauseStraddle";

+        private static  string SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED         = "ShortSaleRestricted";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY         = "ImbPreOpenBuy";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL        = "ImbPreOpenSell";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE        = "ImbPreOpenNone";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY        = "ImbPreCloseBuy";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL       = "ImbPreCloseSell";

+        private static  string SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE       = "ImbPreCloseNone";

+        private static  string SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY            = "ScheduledIntraday";

         private static  string SECURITY_STATUS_QUAL_STR_UNKNOWN                        = "Unknown";

                                public string toString (MamdaSecurityStatusQual.mamdaSecurityStatusQual securityStatusQual)

@@ -385,8 +401,8 @@ namespace Wombat

                     return SECURITY_STATUS_QUAL_STR_FAST_MARKET;           

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SLOW_MARKET:               

                     return SECURITY_STATUS_QUAL_STR_SLOW_MARKET;           

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUM_PENNY_TRADING:         

-                    return SECURITY_STATUS_QUAL_STR_SUM_PENNY_TRADING;     

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING:         

+                    return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING;     

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_INPUT:               

                     return SECURITY_STATUS_QUAL_STR_ORDER_INPUT;           

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_ORDER_MATCHING:        

@@ -446,14 +462,14 @@ namespace Wombat

                     return SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED:

                     return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

-                    return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

-                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

-                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

-                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

-                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_POST_TRADING:

+                    return  SECURITY_STATUS_QUAL_STR_POST_TRADING;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ONE_SIDED:

+                    return SECURITY_STATUS_QUAL_STR_ONE_SIDED;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CALL:

+                    return  SECURITY_STATUS_QUAL_STR_PRE_CALL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESTRICTED_OPEN:

+                    return  SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE:

                     return   SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME:

@@ -476,6 +492,22 @@ namespace Wombat

                     return SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3;

                 case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE:

                     return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED:

+                    return SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

+                    return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE:

+                    return  SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE;

+                case mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY:

+                    return  SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY;

                                                }

                                               return SECURITY_STATUS_QUAL_STR_UNKNOWN;

@@ -613,8 +645,8 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_FAST_MARKET;  

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SLOW_MARKET)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SLOW_MARKET;  

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SUM_PENNY_TRADING)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUM_PENNY_TRADING;  

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING;  

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_ORDER_INPUT)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_INPUT;  

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_PRE_ORDER_MATCHING)

@@ -671,14 +703,14 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY; 

-            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL)

-                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL; 

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_POST_TRADING)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_POST_TRADING;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_ONE_SIDED)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ONE_SIDED; 

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_PRE_CALL)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CALL; 

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESTRICTED_OPEN; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME)

@@ -701,6 +733,22 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3; 

             if (securityStatusQual == SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE)

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+            if (securityStatusQual == SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY)

+                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

                                                if (securityStatusQual == "0")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_NONE;

@@ -774,6 +822,12 @@ namespace Wombat

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IPO_IMBALANCE_SELL;

             if (securityStatusQual == "44")

                 return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_NO_IPO_IMBALANCE;

+            if (securityStatusQual == "46")              

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

+            if (securityStatusQual == "47")             

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

+            if (securityStatusQual == "48")             

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

                                                if (securityStatusQual == "51")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_OPEN_DELAY;

                                               if (securityStatusQual == "52")

@@ -798,19 +852,13 @@ namespace Wombat

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SEC;

                                               if (securityStatusQual == "62")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_TIMES;

-                                              if (securityStatusQual == "62")

+                                             if (securityStatusQual == "63")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_OTHER;

                                               if (securityStatusQual == "64")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RELATED;

                                               if (securityStatusQual == "65")

                                                               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IPO;

            

-            if (securityStatusQual == "46")              

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_BUY;          

-            if (securityStatusQual == "47")             

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_SELL;         

-            if (securityStatusQual == "48")             

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EMC_IMB_NONE;         

             if (securityStatusQual == "66")                

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CROSS;            

             if (securityStatusQual == "67")                    

@@ -834,7 +882,7 @@ namespace Wombat

             if (securityStatusQual == "76")          

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SLOW_MARKET;          

             if (securityStatusQual == "77")    

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUM_PENNY_TRADING;    

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING;    

             if (securityStatusQual == "78")          

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_INPUT;          

             if (securityStatusQual == "79")   

@@ -891,14 +939,14 @@ namespace Wombat

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

             if (securityStatusQual == "110")        

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;

+            if (securityStatusQual == "111")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_POST_TRADING;

             if (securityStatusQual == "112")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ONE_SIDED;

             if (securityStatusQual == "113")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_PRE_CALL;

             if (securityStatusQual == "114")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

-            if (securityStatusQual == "115")        

-              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

             if (securityStatusQual == "116")        

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

             if (securityStatusQual == "117")        

@@ -921,6 +969,22 @@ namespace Wombat

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

             if (securityStatusQual == "126")

               return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+            if (securityStatusQual == "127")

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+            if (securityStatusQual == "128")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+            if (securityStatusQual == "129")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+            if (securityStatusQual == "130")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+            if (securityStatusQual == "131")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+            if (securityStatusQual == "132")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+            if (securityStatusQual == "133")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+            if (securityStatusQual == "134")        

+              return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

                                                return mamdaSecurityStatusQual.SECURITY_STATUS_QUAL_UNKNOWN;

                               }

diff --git a/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java b/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java

index d43353b..95a8241 100644

--- a/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java

+++ b/mamda/java/com/wombat/mamda/MamdaSecurityStatus.java

@@ -37,6 +37,7 @@ public class MamdaSecurityStatus

     public static final short SECURITY_STATUS_CROSSING           = 7;

     public static final short SECURITY_STATUS_SUSPENDED          = 8;

     public static final short SECURITY_STATUS_AT_LAST            = 9;

+    public static final short SECURITY_STATUS_INACTIVE           = 10;

     public static final short SECURITY_STATUS_UNKNOWN            = 99;

    

     //Only used internally

@@ -50,6 +51,8 @@ public class MamdaSecurityStatus

     private static final String SECURITY_STATUS_STR_CROSSING    = "Crossing";

     private static final String SECURITY_STATUS_STR_SUSPENDED   = "Suspended";

     private static final String SECURITY_STATUS_STR_AT_LAST     = "AtLast";

+    private static final String SECURITY_STATUS_STR_INACTIVE    = "Inactive";

+    private static final String SECURITY_STATUS_STR_UNKNOWN     = "Unknown";

     /**

      * Convert a MamdaSecurityStatus to an appropriate, displayable

@@ -72,6 +75,7 @@ public class MamdaSecurityStatus

             case  SECURITY_STATUS_CROSSING:         return SECURITY_STATUS_STR_CROSSING;

             case  SECURITY_STATUS_SUSPENDED:        return SECURITY_STATUS_STR_SUSPENDED;

             case  SECURITY_STATUS_AT_LAST:          return SECURITY_STATUS_STR_AT_LAST;

+            case  SECURITY_STATUS_INACTIVE:         return SECURITY_STATUS_STR_INACTIVE;

             case  SECURITY_STATUS_UNKNOWN:  

             default:

                 return "Unknown";

@@ -114,6 +118,10 @@ public class MamdaSecurityStatus

             return SECURITY_STATUS_SUSPENDED;

         if (securityStatus.equals (SECURITY_STATUS_STR_AT_LAST))

             return SECURITY_STATUS_AT_LAST;

+        if (securityStatus.equals (SECURITY_STATUS_STR_INACTIVE))

+            return SECURITY_STATUS_INACTIVE;

+        if (securityStatus.equals (SECURITY_STATUS_STR_UNKNOWN))

+            return SECURITY_STATUS_UNKNOWN;

        

         //A misconfigured FH might send numbers as strings

         if (securityStatus.equals ("0"))

@@ -136,6 +144,10 @@ public class MamdaSecurityStatus

             return SECURITY_STATUS_SUSPENDED;

         if (securityStatus.equals ("9"))

             return SECURITY_STATUS_AT_LAST;

+        if (securityStatus.equals ("10"))

+            return SECURITY_STATUS_INACTIVE;

+        if (securityStatus.equals ("99"))

+            return SECURITY_STATUS_UNKNOWN;

         return SECURITY_STATUS_UNKNOWN;

     }

diff --git a/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java b/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java

index e169e31..4729d20 100644

--- a/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java

+++ b/mamda/java/com/wombat/mamda/MamdaSecurityStatusQual.java

@@ -118,10 +118,10 @@ public class MamdaSecurityStatusQual

     public static final short SECURITY_STATUS_QUAL_NEWS_PENDING_RELATED          = 108;  // toString()  NewsPendingRelated

     public static final short SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED  = 109;  // toString()  EquipChangeOverRelated

     public static final short SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED     = 110;  // toString()  SubPennyTradingRelated

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 112;  // toString()  ImbPreOpenBuy

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 113;  // toString()  ImbPreOpenSell

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 114;  // toString()  ImbPreCloseBuy

-    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 115;  // toString()  ImbPreCloseSell 

+    public static final short SECURITY_STATUS_QUAL_POST_TRADING                  = 111;  // toString()  PostTrading

+    public static final short SECURITY_STATUS_QUAL_ONE_SIDED                     = 112;  // toString()  OneSided

+    public static final short SECURITY_STATUS_QUAL_PRE_CALL                      = 113;  // toString()  PreCall

+    public static final short SECURITY_STATUS_QUAL_RESTRICTED_OPEN               = 114;  // toString()  RestrictedOpen

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_PAUSE              = 116;  // toString()  VolatilityPause

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME = 117;  // toString()  VolatilityPauseQuoteResume

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_GUARD              = 118;  // toString()  VolatilityGuard

@@ -133,6 +133,14 @@ public class MamdaSecurityStatusQual

     public static final short SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_2       = 124;  // toString()  CircuitBreakerLevel2

     public static final short SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3       = 125;  // toString()  CircuitBreakerLevel3

     public static final short SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE     = 126;  // toString()  VolatilityPauseStraddle

+    public static final short SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED         = 127;  // toString()  ShortSaleRestricted

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY         = 128;  // toString()  ImbPreOpenBuy

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL        = 129;  // toString()  ImbPreOpenSell

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE        = 130;  // toString()  ImbPreOpenNone

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY        = 131;  // toString()  ImbPreCloseBuy

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL       = 132;  // toString()  ImbPreCloseSell

+    public static final short SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE       = 133;  // toString()  ImbPreCloseNone

+    public static final short SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY            = 134;  // toString()  ScheduledIntraday

     

     //Only used internally

     private static final String SECURITY_STATUS_QUAL_STR_NONE                               = "None";

@@ -230,10 +238,10 @@ public class MamdaSecurityStatusQual

     private static final String SECURITY_STATUS_QUAL_STR_NEWS_PENDING_RELATED               = "NewsPendingRelated";

     private static final String SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED       = "EquipChangeOverRelated";

     private static final String SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED          = "SubPennyTradingRelated";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY              = "ImbPreOpenBuy";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL             = "ImbPreOpenSell";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY             = "ImbPreCloseBuy";

-    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL            = "ImbPreCloseSell";

+    private static final String SECURITY_STATUS_QUAL_STR_POST_TRADING                       = "PostTrading";

+    private static final String SECURITY_STATUS_QUAL_STR_ONE_SIDED                          = "OneSided";

+    private static final String SECURITY_STATUS_QUAL_STR_PRE_CALL                           = "PreCall";

+    private static final String SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN                    = "RestrictedOpen";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE                   = "VolatilityPause";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME      = "VolatilityPauseQuoteResume";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_GUARD                   = "VolatilityGuard";

@@ -246,6 +254,15 @@ public class MamdaSecurityStatusQual

     private static final String SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_2            = "CircuitBreakerLevel2";

     private static final String SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3            = "CircuitBreakerLevel3";

     private static final String SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE          = "VolatilityPauseStraddle";

+   

+    private static final String SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED              = "ShortSaleRestricted";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY              = "ImbPreOpenBuy";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL             = "ImbPreOpenSell";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE             = "ImbPreOpenNone";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY             = "ImbPreCloseBuy";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL            = "ImbPreCloseSell";

+    private static final String SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE            = "ImbPreCloseNone";

+    private static final String SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY                 = "ScheduledIntraday";

     private static final String SECURITY_STATUS_QUAL_STR_UNKNOWN                            = "Unknown";

@@ -443,14 +460,14 @@ public class MamdaSecurityStatusQual

                 return SECURITY_STATUS_QUAL_STR_EQUIPMENT_CHANGEOVER_RELATED;

             case SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED:

                 return SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

-            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

-                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+            case SECURITY_STATUS_QUAL_POST_TRADING:

+                return SECURITY_STATUS_QUAL_STR_POST_TRADING;

+            case SECURITY_STATUS_QUAL_ONE_SIDED:

+                return SECURITY_STATUS_QUAL_STR_ONE_SIDED;

+            case SECURITY_STATUS_QUAL_PRE_CALL:

+                return SECURITY_STATUS_QUAL_STR_PRE_CALL;

+            case SECURITY_STATUS_QUAL_RESTRICTED_OPEN:

+                return SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN;

             case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE:

                 return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE;

             case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_QUOTE_RESUME:

@@ -473,6 +490,22 @@ public class MamdaSecurityStatusQual

                 return SECURITY_STATUS_QUAL_STR_CIRCUIT_BREAKER_LEVEL_3;

             case SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE:

                 return SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE;

+            case SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED:

+                return SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL;

+            case SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE:

+                return SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE;

+            case SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY:

+                return SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY;

         }

         return SECURITY_STATUS_QUAL_STR_UNKNOWN;

     }

@@ -672,14 +705,14 @@ public class MamdaSecurityStatusQual

             return  SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

         if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_SUB_PENNY_TRADING_RELATED))

             return SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

-        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL ))

-            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_POST_TRADING))

+            return SECURITY_STATUS_QUAL_POST_TRADING;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_ONE_SIDED))

+            return SECURITY_STATUS_QUAL_ONE_SIDED;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_PRE_CALL))

+            return SECURITY_STATUS_QUAL_PRE_CALL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_RESTRICTED_OPEN))

+            return SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if (securityStatusQual.equals (SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE))

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if (securityStatusQual.equals (SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_QUOTE_RESUME))

@@ -702,6 +735,22 @@ public class MamdaSecurityStatusQual

             return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if (securityStatusQual.equals (SECURITY_STATUS_QUAL_STR_VOLATILITY_PAUSE_STRADDLE))

             return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_SHORT_SALE_RESTRICTED))

+            return SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_BUY))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_SELL))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PREOPEN_NONE))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_BUY))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_SELL))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_IMBALANCE_PRECLOSE_NONE))

+            return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if (securityStatusQual.equals ( SECURITY_STATUS_QUAL_STR_SCHEDULED_INTRADAY ))

+            return SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

         // A misconfigured FH might send numbers as strings:

         if (securityStatusQual.equals ("0"))

@@ -806,7 +855,7 @@ public class MamdaSecurityStatusQual

             return SECURITY_STATUS_QUAL_SEC;

         if (securityStatusQual.equals ("62"))

             return SECURITY_STATUS_QUAL_TIMES;

-        if (securityStatusQual.equals ("62"))

+        if (securityStatusQual.equals ("63"))

             return SECURITY_STATUS_QUAL_OTHER;

         if (securityStatusQual.equals ("64"))

             return SECURITY_STATUS_QUAL_RELATED;

@@ -892,14 +941,14 @@ public class MamdaSecurityStatusQual

           return SECURITY_STATUS_QUAL_EQUIPMENT_CHANGEOVER_RELATED;

         if(securityStatusQual.equals("110"))

           return SECURITY_STATUS_QUAL_SUB_PENNY_TRADING_RELATED;

+        if(securityStatusQual.equals("111"))

+          return SECURITY_STATUS_QUAL_POST_TRADING;

         if(securityStatusQual.equals("112"))

-          return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+          return SECURITY_STATUS_QUAL_ONE_SIDED;

         if(securityStatusQual.equals("113"))

-          return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+          return  SECURITY_STATUS_QUAL_PRE_CALL;

         if(securityStatusQual.equals("114"))

-          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

-        if(securityStatusQual.equals("115"))

-          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+          return SECURITY_STATUS_QUAL_RESTRICTED_OPEN;

         if(securityStatusQual.equals("116"))

           return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE;

         if(securityStatusQual.equals("117"))

@@ -922,6 +971,22 @@ public class MamdaSecurityStatusQual

           return SECURITY_STATUS_QUAL_CIRCUIT_BREAKER_LEVEL_3;

         if(securityStatusQual.equals("126"))

           return SECURITY_STATUS_QUAL_VOLATILITY_PAUSE_STRADDLE;

+        if(securityStatusQual.equals("127"))

+          return SECURITY_STATUS_QUAL_SHORT_SALE_RESTRICTED;

+        if(securityStatusQual.equals("128"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_BUY;

+        if(securityStatusQual.equals("129"))

+          return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_SELL;

+        if(securityStatusQual.equals("130"))

+          return  SECURITY_STATUS_QUAL_IMBALANCE_PREOPEN_NONE;

+        if(securityStatusQual.equals("131"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_BUY;

+        if(securityStatusQual.equals("132"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_SELL;

+        if(securityStatusQual.equals("133"))

+          return SECURITY_STATUS_QUAL_IMBALANCE_PRECLOSE_NONE;

+        if(securityStatusQual.equals("134"))

+          return SECURITY_STATUS_QUAL_SCHEDULED_INTRADAY;

         return SECURITY_STATUS_QUAL_UNKNOWN;

     }

--

1.8.3.1

 


This message may contain confidential information and is intended for specific recipients unless explicitly noted otherwise. If you have reason to believe you are not an intended recipient of this message, please delete it and notify the sender. This message may not represent the opinion of IntercontinentalExchange Group, Inc. (ICE), NYSE Euronext or any of their subsidiaries or affiliates, and does not constitute a contract or guarantee. Unencrypted electronic mail is not secure and the recipient of this message is expected to provide safeguards from viruses and pursue alternate means of communication where privacy or a binding message is desired.

This message may contain confidential information and is intended for specific recipients unless explicitly noted otherwise. If you have reason to believe you are not an intended recipient of this message, please delete it and notify the sender. This message may not represent the opinion of IntercontinentalExchange Group, Inc. (ICE), NYSE Euronext or any of their subsidiaries or affiliates, and does not constitute a contract or guarantee. Unencrypted electronic mail is not secure and the recipient of this message is expected to provide safeguards from viruses and pursue alternate means of communication where privacy or a binding message is desired.