Index: /trunk/BNC/src/RTCM3/RTCM3Decoder.cpp
===================================================================
--- /trunk/BNC/src/RTCM3/RTCM3Decoder.cpp	(revision 8843)
+++ /trunk/BNC/src/RTCM3/RTCM3Decoder.cpp	(revision 8844)
@@ -356,5 +356,5 @@
         {0.0, 0},
         {0.0, 0},
-        {GPS_WAVELENGTH_L1, "1Z"},// not defined in RTCM3.3?
+        {0.0, 0},
         {0.0, 0},
         {0.0, 0},
@@ -421,9 +421,5 @@
     };
 
-/**
- * MSM signal types for IRNSS
- *
- * NOTE: Uses 0.0, 1.0 for wavelength as sat index dependence is done later!
- */
+/** MSM signal types for IRNSS */
 static struct CodeData irn[RTCM3_MSM_NUMSIG] = {
         {0.0, 0},
Index: /trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp
===================================================================
--- /trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp	(revision 8843)
+++ /trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp	(revision 8844)
@@ -687,20 +687,22 @@
       case CODETYPEGPS_L1_P:          return "1P";
       case CODETYPEGPS_L1_Z:          return "1W";
-      case CODETYPEGPS_L1_Y:          return "1Y";
-      case CODETYPEGPS_L1_M:          return "1M";
-
+      //case CODETYPEGPS_L1_Y:          return "1Y";
+      //case CODETYPEGPS_L1_M:          return "1M";
+      //case CODETYPEGPS_SEMI_CODELESS: return "2D";
       case CODETYPEGPS_L2_CA:         return "2C";
-      case CODETYPEGPS_SEMI_CODELESS: return "2D";
+      case CODETYPEGPS_L2_P:          return "2P";
+      case CODETYPEGPS_L2_Z:          return "2W";
+
       case CODETYPEGPS_L2C_M:         return "2S";
       case CODETYPEGPS_L2C_L:         return "2L";
       case CODETYPEGPS_L2C_ML:        return "2X";
-      case CODETYPEGPS_L2_P:          return "2P";
-      case CODETYPEGPS_L2_Z:          return "2W";
-      case CODETYPEGPS_L2_Y:          return "2Y";
-      case CODETYPEGPS_L2_M:          return "2M";
+
+      //case CODETYPEGPS_L2_Y:          return "2Y";
+      //case CODETYPEGPS_L2_M:          return "2M";
 
       case CODETYPEGPS_L5_I:          return "5I";
       case CODETYPEGPS_L5_Q:          return "5Q";
       case CODETYPEGPS_L5_IQ:         return "5X";
+
       case CODETYPEGPS_L1C_D:         return "1S";
       case CODETYPEGPS_L1C_P:         return "1L";
@@ -758,22 +760,20 @@
     switch (type) {
       case CODETYPEQZSS_L1_CA:         return "1C";
-      case CODETYPEQZSS_L1C_D:         return "1S";
-      case CODETYPEQZSS_L1C_P:         return "1L";
+
+      case CODETYPEQZSS_L6_D:          return "6S";
+      case CODETYPEQZSS_L6_P:          return "6L";
+      case CODETYPEQZSS_L6_DP:         return "6X";
+
       case CODETYPEQZSS_L2C_M:         return "2S";
       case CODETYPEQZSS_L2C_L:         return "2L";
       case CODETYPEQZSS_L2C_ML:        return "2X";
+
       case CODETYPEQZSS_L5_I:          return "5I";
       case CODETYPEQZSS_L5_Q:          return "5Q";
       case CODETYPEQZSS_L5_IQ:         return "5X";
-      case CODETYPEQZSS_L6_D:          return "6S";
-      case CODETYPEQZSS_L6_P:          return "6L";
-      case CODETYPEQZSS_L6_DP:         return "6X";
+
+      case CODETYPEQZSS_L1C_D:         return "1S";
+      case CODETYPEQZSS_L1C_P:         return "1L";
       case CODETYPEQZSS_L1C_DP:        return "1X";
-      case CODETYPEQZSS_L1_S:          return "1Z";
-      case CODETYPEQZSS_L5_D:          return "5D";
-      case CODETYPEQZSS_L5_P:          return "5P";
-      case CODETYPEQZSS_L5_DP:         return "5Z";
-      case CODETYPEQZSS_L6_E:          return "6E";
-      case CODETYPEQZSS_L6_DE:         return "6Z";
       default: return "";
     }
@@ -782,6 +782,6 @@
     switch (type) {
       case CODETYPE_SBAS_L1_CA:       return "1C";
+
       case CODETYPE_SBAS_L5_I:        return "5I";
-
       case CODETYPE_SBAS_L5_Q:        return "5Q";
       case CODETYPE_SBAS_L5_IQ:       return "5X";
@@ -800,10 +800,10 @@
       case CODETYPE_BDS_B2_Q:         return "7Q";
       case CODETYPE_BDS_B2_IQ:        return "7X";
-      case CODETYPE_BDS_B1a_D:        return "1D";
-      case CODETYPE_BDS_B1a_P:        return "1P";
-      case CODETYPE_BDS_B1a_DP:       return "1X";
-      case CODETYPE_BDS_B2a_D:        return "2D";
-      case CODETYPE_BDS_B2a_P:        return "2P";
-      case CODETYPE_BDS_B2a_DP:       return "2X";
+      case CODETYPE_BDS_B2a_D:        return "5D";
+      case CODETYPE_BDS_B2a_P:        return "5P";
+      case CODETYPE_BDS_B2a_DP:       return "5X";
+      case CODETYPE_BDS_B1C_D:        return "1D";
+      case CODETYPE_BDS_B1C_P:        return "1P";
+      case CODETYPE_BDS_B1C_DP:       return "1X";
       default: return "";
     }
Index: /trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.h
===================================================================
--- /trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.h	(revision 8843)
+++ /trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.h	(revision 8844)
@@ -144,8 +144,8 @@
   CODETYPEGPS_L1_P           = 1,
   CODETYPEGPS_L1_Z           = 2,
-  CODETYPEGPS_L1_Y         = 3,
-  CODETYPEGPS_L1_M           = 4,
+  //CODETYPEGPS_L1_Y           = 3,
+  //CODETYPEGPS_L1_M           = 4,
   CODETYPEGPS_L2_CA          = 5,
-  CODETYPEGPS_SEMI_CODELESS  = 6,
+  //CODETYPEGPS_SEMI_CODELESS  = 6,
   CODETYPEGPS_L2C_M          = 7,
   CODETYPEGPS_L2C_L          = 8,
@@ -153,6 +153,6 @@
   CODETYPEGPS_L2_P           = 10,
   CODETYPEGPS_L2_Z           = 11,
-  CODETYPEGPS_L2_Y           = 12,
-  CODETYPEGPS_L2_M           = 13,
+  //CODETYPEGPS_L2_Y           = 12,
+  //CODETYPEGPS_L2_M           = 13,
   CODETYPEGPS_L5_I           = 14,
   CODETYPEGPS_L5_Q           = 15,
@@ -209,5 +209,5 @@
   CODETYPEQZSS_L6_P          = 10,
   CODETYPEQZSS_L6_DP         = 11,
-  CODETYPEQZSS_L1C_DP        = 12,
+  CODETYPEQZSS_L1C_DP        = 12,/*
   CODETYPEQZSS_L1_S          = 13,
   CODETYPEQZSS_L5_D          = 14,
@@ -215,5 +215,5 @@
   CODETYPEQZSS_L5_DP         = 16,
   CODETYPEQZSS_L6_E          = 17,
-  CODETYPEQZSS_L6_DE         = 18,
+  CODETYPEQZSS_L6_DE         = 18,*/
 
   CODETYPE_SBAS_L1_CA        = 0,
@@ -231,10 +231,10 @@
   CODETYPE_BDS_B2_Q          = 7,
   CODETYPE_BDS_B2_IQ         = 8,
-  CODETYPE_BDS_B1a_D         = 9,
-  CODETYPE_BDS_B1a_P         = 10,
-  CODETYPE_BDS_B1a_DP        = 11,
-  CODETYPE_BDS_B2a_D         = 12,
-  CODETYPE_BDS_B2a_P         = 13,
-  CODETYPE_BDS_B2a_DP        = 14,
+  CODETYPE_BDS_B2a_D         = 9,
+  CODETYPE_BDS_B2a_P         = 10,
+  CODETYPE_BDS_B2a_DP        = 11,
+  CODETYPE_BDS_B1C_D         = 12,
+  CODETYPE_BDS_B1C_P         = 13,
+  CODETYPE_BDS_B1C_DP        = 14,
 
   CODETYPE_IRNSS_S_SPS       = 8,
Index: /trunk/BNC/src/upload/bncrtnetuploadcaster.cpp
===================================================================
--- /trunk/BNC/src/upload/bncrtnetuploadcaster.cpp	(revision 8843)
+++ /trunk/BNC/src/upload/bncrtnetuploadcaster.cpp	(revision 8844)
@@ -688,12 +688,4 @@
               biasSat->Biases[ii].Bias = it.value();
             }
-            else if (it.key() == "2D") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEGPS_SEMI_CODELESS;
-              biasSat->Biases[ii].Bias = it.value();
-            }
             else if (it.key() == "2S") {
               int ii = biasSat->NumberOfCodeBiases;
@@ -1058,4 +1050,12 @@
               biasSat->Biases[ii].Bias = it.value();
             }
+            else if (it.key() == "1X") {
+              int ii = biasSat->NumberOfCodeBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              biasSat->NumberOfCodeBiases += 1;
+              biasSat->Biases[ii].Type = CODETYPEQZSS_L1C_DP;
+              biasSat->Biases[ii].Bias = it.value();
+            }
             else if (it.key() == "2S") {
               int ii = biasSat->NumberOfCodeBiases;
@@ -1130,61 +1130,5 @@
               biasSat->Biases[ii].Bias = it.value();
             }
-            else if (it.key() == "1X") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEQZSS_L1C_DP;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "1Z") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEQZSS_L1_S;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "5D") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEQZSS_L5_D;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "5P") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEQZSS_L5_P;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "5Z") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEQZSS_L5_DP;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "6E") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEQZSS_L6_E;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "6Z") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPEQZSS_L6_DE;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-           }
+          }
         }
         else if (prn.system() == 'S') {
@@ -1302,4 +1246,28 @@
               biasSat->Biases[ii].Bias = it.value();
             }
+            else if (it.key() == "5D") {
+              int ii = biasSat->NumberOfCodeBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              biasSat->NumberOfCodeBiases += 1;
+              biasSat->Biases[ii].Type = CODETYPE_BDS_B2a_D;
+              biasSat->Biases[ii].Bias = it.value();
+            }
+            else if (it.key() == "5P") {
+              int ii = biasSat->NumberOfCodeBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              biasSat->NumberOfCodeBiases += 1;
+              biasSat->Biases[ii].Type = CODETYPE_BDS_B2a_P;
+              biasSat->Biases[ii].Bias = it.value();
+            }
+            else if (it.key() == "5X") {
+              int ii = biasSat->NumberOfCodeBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              biasSat->NumberOfCodeBiases += 1;
+              biasSat->Biases[ii].Type = CODETYPE_BDS_B2a_DP;
+              biasSat->Biases[ii].Bias = it.value();
+            }
             else if (it.key() == "1D") {
               int ii = biasSat->NumberOfCodeBiases;
@@ -1307,5 +1275,5 @@
                 break;
               biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPE_BDS_B1a_D;
+              biasSat->Biases[ii].Type = CODETYPE_BDS_B1C_D;
               biasSat->Biases[ii].Bias = it.value();
             }
@@ -1315,5 +1283,5 @@
                 break;
               biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPE_BDS_B1a_P;
+              biasSat->Biases[ii].Type = CODETYPE_BDS_B1C_P;
               biasSat->Biases[ii].Bias = it.value();
             }
@@ -1323,29 +1291,5 @@
                 break;
               biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPE_BDS_B1a_DP;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "5D") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPE_BDS_B2a_D;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "5P") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPE_BDS_B2a_P;
-              biasSat->Biases[ii].Bias = it.value();
-            }
-            else if (it.key() == "5X") {
-              int ii = biasSat->NumberOfCodeBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              biasSat->NumberOfCodeBiases += 1;
-              biasSat->Biases[ii].Type = CODETYPE_BDS_B2a_DP;
+              biasSat->Biases[ii].Type = CODETYPE_BDS_B1C_DP;
               biasSat->Biases[ii].Bias = it.value();
             }
@@ -1449,15 +1393,4 @@
               phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
             }
-            else if (pbSig.type == "2D") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEGPS_SEMI_CODELESS;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
             else if (pbSig.type == "2S") {
               int ii = phasebiasSat->NumberOfPhaseBiases;
@@ -1983,4 +1916,15 @@
               phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
             }
+            else if (pbSig.type == "1X") {
+              int ii = phasebiasSat->NumberOfPhaseBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              phasebiasSat->NumberOfPhaseBiases += 1;
+              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L1C_DP;
+              phasebiasSat->Biases[ii].Bias = pbSig.bias;
+              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
+              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
+              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
+            }            
             else if (pbSig.type == "2S") {
               int ii = phasebiasSat->NumberOfPhaseBiases;
@@ -2076,81 +2020,4 @@
               phasebiasSat->NumberOfPhaseBiases += 1;
               phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L6_DP;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "1X") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L1C_DP;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "1Z") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L1_S;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "5D") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L5_D;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "5P") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L5_P;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "5Z") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L5_DP;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "6E") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L6_E;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "6Z") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPEQZSS_L6_DE;
               phasebiasSat->Biases[ii].Bias = pbSig.bias;
               phasebiasSat->Biases[ii].SignalIntegerIndicator = pbSig.integerIndicator;
@@ -2311,4 +2178,34 @@
               phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
             }
+            else if (pbSig.type == "5D") {
+              int ii = phasebiasSat->NumberOfPhaseBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              phasebiasSat->NumberOfPhaseBiases += 1;
+              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B2a_D;
+              phasebiasSat->Biases[ii].Bias = pbSig.bias;
+              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
+              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
+            }
+            else if (pbSig.type == "5P") {
+              int ii = phasebiasSat->NumberOfPhaseBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              phasebiasSat->NumberOfPhaseBiases += 1;
+              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B2a_P;
+              phasebiasSat->Biases[ii].Bias = pbSig.bias;
+              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
+              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
+            }
+            else if (pbSig.type == "5X") {
+              int ii = phasebiasSat->NumberOfPhaseBiases;
+              if (ii >= CLOCKORBIT_NUMBIAS)
+                break;
+              phasebiasSat->NumberOfPhaseBiases += 1;
+              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B2a_DP;
+              phasebiasSat->Biases[ii].Bias = pbSig.bias;
+              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
+              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
+            }
             else if (pbSig.type == "1D") {
               int ii = phasebiasSat->NumberOfPhaseBiases;
@@ -2316,5 +2213,5 @@
                 break;
               phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B1a_D;
+              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B1C_D;
               phasebiasSat->Biases[ii].Bias = pbSig.bias;
               phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
@@ -2326,5 +2223,5 @@
                 break;
               phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B1a_P;
+              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B1C_P;
               phasebiasSat->Biases[ii].Bias = pbSig.bias;
               phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
@@ -2336,35 +2233,5 @@
                 break;
               phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B1a_DP;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "5D") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B2a_D;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "5P") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B2a_P;
-              phasebiasSat->Biases[ii].Bias = pbSig.bias;
-              phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
-              phasebiasSat->Biases[ii].SignalDiscontinuityCounter = pbSig.discontinuityCounter;
-            }
-            else if (pbSig.type == "5X") {
-              int ii = phasebiasSat->NumberOfPhaseBiases;
-              if (ii >= CLOCKORBIT_NUMBIAS)
-                break;
-              phasebiasSat->NumberOfPhaseBiases += 1;
-              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B2a_DP;
+              phasebiasSat->Biases[ii].Type = CODETYPE_BDS_B1C_DP;
               phasebiasSat->Biases[ii].Bias = pbSig.bias;
               phasebiasSat->Biases[ii].SignalsWideLaneIntegerIndicator = pbSig.wlIndicator;
