
[VeAnalyze]
	         ;    tableName,  lambdaTargetTableName, lambdaChannel, egoCorrectionChannel, activeCondition
#if   NARROW_BAND_EGO
     veAnalyzeMap = veTable1Tbl, afrTSCustom, afr1, egoCorrection
#elif LAMBDA
     veAnalyzeMap = veTable1Tbl, afrTable1Tbl, lambda1, egoCorrection
#else
     veAnalyzeMap = veTable1Tbl, afrTable1Tbl, afr1, egoCorrection
#endif
         lambdaTargetTables = afrTable1Tbl, afrTable2Tbl, afrTSCustom, 
       ; filter =  Name,        "DisplayName", outputChannel, operator, defaultVal, userAdjustable
        filter = minRPMFilter, "Minimum RPM", rpm,           <       , 500,      , true
       ; filter = maxRPMFilter, "Maximum RPM", rpm,           >       , 18000,    , true
       
       ;  filter = std_xAxisMin ; Auto build with appropriate axis channels
         filter = std_xAxisMax ; Auto build with appropriate axis channels
         filter = std_yAxisMin ; Auto build with appropriate axis channels
         filter = std_yAxisMax ; Auto build with appropriate axis channels
#if NARROWBAND
#elif NARROW_BAND_EGO
#else
         filter = std_DeadLambda ; Auto build
#endif

#if CELSIUS          
         filter = minCltFilter, "Minimum CLT", coolant,       <       , 71,       , true
#else
         filter = minCltFilter, "Minimum CLT", coolant,       <       , 160,      , true
#endif
         filter = accelFilter, "Accel Flag" , engine,         &       , 16,       , false
         filter = decelFilter, "Decel Flag" , tpsden,         >       , 0,        , false
         filter = aseFilter,   "ASE Flag"   , engine,         &       , 4,        , false
         filter = overrunFilter, "Overrun"    , pulseWidth1,  =       , 0,        , false
         filter = std_Custom ; Standard Custom Expression Filter.
         
    ; Table 2
#if   NARROW_BAND_EGO
     veAnalyzeMap = veTable2Tbl, afrTSCustom, afr2, egoCorrection2, { MAFOption != 1 && dualTable && VEIXOptn == 0 && (ECUType == 1 || ECUType == 2) }
#elif LAMBDA
     veAnalyzeMap = veTable2Tbl, afrTable2Tbl, lambda2, egoCorrection2, { MAFOption != 1 && dualTable && VEIXOptn == 0 && (ECUType == 1 || ECUType == 2) }
#else
     veAnalyzeMap = veTable2Tbl, afrTable2Tbl, afr2, egoCorrection2, { MAFOption != 1 && dualTable && VEIXOptn == 0 && (ECUType == 1 || ECUType == 2) }
#endif
         lambdaTargetTables = afrTable1Tbl, afrTable2Tbl, afrTSCustom, 
       ; filter =  Name,        "DisplayName", outputChannel, operator, defaultVal, userAdjustable
       ; filter = minRPMFilter, "Minimum RPM", rpm,           <       , 500,      , true
       ; filter = maxRPMFilter, "Maximum RPM", rpm,           >       , 18000,    , true
       
         filter = std_xAxisMin ; Auto build with appropriate axis channels
         filter = std_xAxisMax ; Auto build with appropriate axis channels
         filter = std_yAxisMin ; Auto build with appropriate axis channels
         filter = std_yAxisMax ; Auto build with appropriate axis channels
#if NARROWBAND
#elif NARROW_BAND_EGO
#else
         filter = std_DeadLambda ; Auto build
#endif

#if CELSIUS          
         filter = minCltFilter, "Minimum CLT", coolant,       <       , 71,       , true
#else
         filter = minCltFilter, "Minimum CLT", coolant,       <       , 160,      , true
#endif
         filter = accelFilter, "Accel Flag" , engine,         &       , 16,       , false
         filter = aseFilter,   "ASE Flag"   , engine,         &       , 4,        , false
         filter = decelFilter, "Decel Flag" , tpsden,         >       , 0,        , false
         filter = overrunFilter, "Overrun"  , pulseWidth2,    =       , 0,        , false
         filter = std_Custom ; Standard Custom Expression Filter.

