From 412d4843d9cbd8dff6293e0880377b24fd970b54 Mon Sep 17 00:00:00 2001 From: rusEfi Date: Wed, 2 Dec 2015 20:10:06 -0500 Subject: [PATCH] auto-sync --- firmware/config/stm32f4ems/efifeatures.h | 4 +- .../binary/tunerstudio_configuration.h | 6 +- firmware/console/status_loop.cpp | 7 +- firmware/controllers/algo/engine.h | 9 ++ .../controllers/algo/engine_configuration.cpp | 5 + ...ngine_configuration_generated_structures.h | 90 +++++++----- firmware/controllers/algo/fuel_math.cpp | 8 +- firmware/controllers/algo/rusefi_generated.h | 135 +++++++++--------- firmware/controllers/flash_main.h | 2 +- firmware/controllers/math/speed_density.cpp | 15 +- firmware/controllers/math/speed_density.h | 3 +- firmware/integration/rusefi_config.txt | 9 +- firmware/rusefi.cpp | 2 +- firmware/tunerstudio/rusefi.ini | 120 +++++++++------- ...notations_1_0.xml => jcip_annotations.xml} | 2 +- java_console/.idea/libraries/jlatexmath.xml | 15 ++ .../{miglayout_4_0.xml => miglayout.xml} | 2 +- ...{swing_layout_1_0.xml => swing_layout.xml} | 2 +- java_console/build.xml | 3 +- java_console/io/io.iml | 2 +- .../io/src/com/rusefi/TsPageSize.java | 2 +- .../rusefi/binaryprotocol/BinaryProtocol.java | 19 ++- .../binaryprotocol/IncomingDataBuffer.java | 2 +- .../com/rusefi/binaryprotocol/IoHelper.java | 10 +- .../rusefi/binaryprotocol/test/CRCTest.java | 4 +- .../rusefi/io/tcp/BinaryProtocolServer.java | 45 ++++-- .../src/com/rusefi/io/tcp/TcpConnector.java | 2 +- .../io/src/com/rusefi/io/tcp/TcpIoStream.java | 28 ++-- .../tcp/test/BinaryProtocolServerSandbox.java | 11 ++ java_console/lib/jlatexmath-1.0.3.jar | Bin 0 -> 1014482 bytes java_console/lib/jlatexmath-src-1.0.3.zip | Bin 0 -> 1086238 bytes .../models/src/com/rusefi/config/Fields.java | 53 +++---- .../models/src/com/rusefi/core/Sensor.java | 2 + java_console/romraider/romraider.iml | 2 +- java_console/rusefi.xml | 40 +++--- java_console/ui/src/com/rusefi/Launcher.java | 8 +- .../ui/src/com/rusefi/StartupFrame.java | 3 + .../rusefi/maintenance/FirmwareFlasher.java | 4 +- .../ui/src/com/rusefi/ui/FormulasPane.java | 110 ++++++++++++++ .../ui/src/com/rusefi/ui/StatusWindow.java | 11 +- .../com/rusefi/ui/config/BaseConfigField.java | 5 + .../src/com/rusefi/ui/config/ConfigField.java | 12 +- java_console/ui/ui.iml | 3 +- unit_tests/test_speed_density.cpp | 6 +- 44 files changed, 550 insertions(+), 273 deletions(-) rename java_console/.idea/libraries/{jcip_annotations_1_0.xml => jcip_annotations.xml} (77%) create mode 100644 java_console/.idea/libraries/jlatexmath.xml rename java_console/.idea/libraries/{miglayout_4_0.xml => miglayout.xml} (79%) rename java_console/.idea/libraries/{swing_layout_1_0.xml => swing_layout.xml} (78%) create mode 100644 java_console/lib/jlatexmath-1.0.3.jar create mode 100644 java_console/lib/jlatexmath-src-1.0.3.zip create mode 100644 java_console/ui/src/com/rusefi/ui/FormulasPane.java diff --git a/firmware/config/stm32f4ems/efifeatures.h b/firmware/config/stm32f4ems/efifeatures.h index f96f31e2dc..63dcdeb00e 100644 --- a/firmware/config/stm32f4ems/efifeatures.h +++ b/firmware/config/stm32f4ems/efifeatures.h @@ -278,10 +278,10 @@ #define TS_SERIAL_AF 7 #define LED_WARNING_PORT GPIOD -#define LED_WARNING_PIN GPIOD_LED3 +#define LED_WARNING_PIN 13 #define LED_ERROR_PORT GPIOD -#define LED_ERROR_PIN GPIOD_LED5 +#define LED_ERROR_PIN 14 #define EFI_WARNING_LED TRUE diff --git a/firmware/console/binary/tunerstudio_configuration.h b/firmware/console/binary/tunerstudio_configuration.h index 0d57707e60..7e487b92f5 100644 --- a/firmware/console/binary/tunerstudio_configuration.h +++ b/firmware/console/binary/tunerstudio_configuration.h @@ -85,7 +85,7 @@ typedef struct { egt_values_s egtValues; float rpmAcceleration; float massAirFlowValue; - float veValue; + float veValue; // current volumetric efficiency float deltaTps; int triggerErrorsCounter; float currentMapAccelDelta; @@ -101,7 +101,9 @@ typedef struct { float totalFuelCorrection; floatms_t wallFuelCorrection; float idlePosition; - int unused3[5]; + float currentTargetAfr; + float chargeAirMass; + int unused3[3]; } TunerStudioOutputChannels; #endif /* TUNERSTUDIO_CONFIGURATION_H_ */ diff --git a/firmware/console/status_loop.cpp b/firmware/console/status_loop.cpp index a95e2abacf..354ce5d69d 100644 --- a/firmware/console/status_loop.cpp +++ b/firmware/console/status_loop.cpp @@ -398,7 +398,9 @@ static void showFuelInfo2(float rpm, float engineLoad) { float baseFuelMs = getBaseTableFuel(engineConfiguration, (int) rpm, engineLoad); - scheduleMsg(&logger, "SD magic fuel %f", sdMath(engineConfiguration, 100, 100, 14.7, convertCelsiusToKelvin(20))); + float magicAir = getAirMass(engineConfiguration, 1, 100, convertCelsiusToKelvin(20)); + + scheduleMsg(&logger, "SD magic fuel %f", sdMath(engineConfiguration, magicAir, 14.7)); scheduleMsg(&logger, "inj flow %fcc/min displacement %fL", engineConfiguration->injector.flow, engineConfiguration->specs.displacement); @@ -552,6 +554,7 @@ static void lcdThread(void *arg) { extern WallFuel wallFuel; extern fuel_Map3D_t veMap; +extern fuel_Map3D_t afrMap; void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_ENGINE_PARAMETER_S) { #if EFI_SHAFT_POSITION_INPUT || defined(__DOXYGEN__) @@ -579,6 +582,7 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_ tsOutputChannels->massAirFlowValue = hasMafSensor() ? getRealMaf() : 0; tsOutputChannels->veValue = veMap.getValue(getMap(), rpm); + tsOutputChannels->currentTargetAfr = afrMap.getValue(getMap(), rpm); tsOutputChannels->airFuelRatio = getAfr(); if (hasVBatt(PASS_ENGINE_PARAMETER_F)) { tsOutputChannels->vBatt = getVBatt(PASS_ENGINE_PARAMETER_F); @@ -650,6 +654,7 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_ tsOutputChannels->baseFuel = baseFuelMs; tsOutputChannels->pulseWidthMs = ENGINE(actualLastInjection); tsOutputChannels->crankingFuelMs = getCrankingFuel(PASS_ENGINE_PARAMETER_F); + tsOutputChannels->chargeAirMass = engine->engineState.airMass; } extern TunerStudioOutputChannels tsOutputChannels; diff --git a/firmware/controllers/algo/engine.h b/firmware/controllers/algo/engine.h index 0565685c25..1c05c6f60c 100644 --- a/firmware/controllers/algo/engine.h +++ b/firmware/controllers/algo/engine.h @@ -90,6 +90,8 @@ public: float iat; float clt; + float airMass; + /** * that's fuel in tank - just a gauge */ @@ -127,7 +129,14 @@ public: float currentVE; float targerAFR; + /** + * pre-calculated value from simple fuel lookup + */ float baseTableFuel; + /** + * fuel regardless of fuel logic mode + */ + float baseFuel; angle_t injectionOffset; }; diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index 955c6e4dc0..528d4747a0 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -230,7 +230,11 @@ void prepareVoidConfiguration(engine_configuration_s *activeConfiguration) { boardConfiguration->ignitionPins[i] = GPIO_UNASSIGNED; } boardConfiguration->ignitionPinMode = OM_DEFAULT; +} +void setDefaultBasePins(DECLARE_ENGINE_PARAMETER_F) { + engineConfiguration->fatalErrorPin = GPIOD_14; + engineConfiguration->warninigPin = GPIOD_13; } /** @@ -564,6 +568,7 @@ void setDefaultConfiguration(DECLARE_ENGINE_PARAMETER_F) { engineConfiguration->communicationPin = GPIOD_15; engineConfiguration->runningPin = GPIOD_12; + setDefaultBasePins(PASS_ENGINE_PARAMETER_F); engineConfiguration->binarySerialTxPin = GPIOC_10; engineConfiguration->binarySerialRxPin = GPIOC_11; engineConfiguration->consoleSerialTxPin = GPIOC_10; diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h index 8211000739..dae4ae0f63 100644 --- a/firmware/controllers/algo/engine_configuration_generated_structures.h +++ b/firmware/controllers/algo/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Wed Nov 18 19:07:01 EST 2015 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Tue Dec 01 20:29:19 EST 2015 // begin #include "rusefi_types.h" typedef struct { @@ -1428,7 +1428,23 @@ typedef struct { * offset 2212 */ float mapAccelEnrichmentMultiplier; - /** total size 2216*/ + /** + * offset 2216 + */ + brain_pin_e fatalErrorPin; + /** + * offset 2220 + */ + brain_pin_e warninigPin; + /** + * offset 2224 + */ + brain_pin_e configResetPin; + /** + * offset 2228 + */ + int unused[197]; + /** total size 3016*/ } engine_configuration_s; typedef struct { @@ -1437,143 +1453,143 @@ typedef struct { */ engine_configuration_s engineConfiguration; /** - * offset 2216 + * offset 3016 */ le_formula_t le_formulas[LE_COMMAND_COUNT]; /** - * offset 5416 + * offset 6216 */ le_formula_t timingMultiplier; /** - * offset 5616 + * offset 6416 */ le_formula_t timingAdditive; /** - * offset 5816 + * offset 6616 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** - * offset 5880 + * offset 6680 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** - * offset 5944 + * offset 6744 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** - * offset 6008 + * offset 6808 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** - * offset 6072 + * offset 6872 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** - * offset 6104 + * offset 6904 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** - * offset 6136 + * offset 6936 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** - * offset 6168 + * offset 6968 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based adjustment for simple manual idle controller - * offset 6200 + * offset 7000 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** - * offset 6264 + * offset 7064 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** * kg/hour value. * By the way 2.081989116 kg/h = 1 ft³/m - * offset 6328 + * offset 7128 */ float mafDecoding[MAF_DECODING_COUNT]; /** - * offset 7352 + * offset 8152 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** - * offset 8376 + * offset 9176 */ ignition_table_t ignitionIatCorrTable; /** - * offset 9400 + * offset 10200 */ float ignitionIatCorrLoadBins[IGN_LOAD_COUNT]; /** - * offset 9464 + * offset 10264 */ float ignitionIatCorrRpmBins[IGN_RPM_COUNT]; /** - * offset 9528 + * offset 10328 */ ignition_table_t injectionPhase; /** - * offset 10552 + * offset 11352 */ float injPhaseLoadBins[FUEL_LOAD_COUNT]; /** - * offset 10616 + * offset 11416 */ float injPhaseRpmBins[FUEL_RPM_COUNT]; /** - * offset 10680 + * offset 11480 */ fuel_table_t fuelTable; /** - * offset 11704 + * offset 12504 */ float fuelLoadBins[FUEL_LOAD_COUNT]; /** * RPM is float and not integer in order to use unified methods for interpolation - * offset 11768 + * offset 12568 */ float fuelRpmBins[FUEL_RPM_COUNT]; /** - * offset 11832 + * offset 12632 */ ignition_table_t ignitionTable; /** - * offset 12856 + * offset 13656 */ float ignitionLoadBins[IGN_LOAD_COUNT]; /** - * offset 12920 + * offset 13720 */ float ignitionRpmBins[IGN_RPM_COUNT]; /** - * offset 12984 + * offset 13784 */ ve_table_t veTable; /** - * offset 14008 + * offset 14808 */ float veLoadBins[FUEL_LOAD_COUNT]; /** - * offset 14072 + * offset 14872 */ float veRpmBins[FUEL_RPM_COUNT]; /** - * offset 14136 + * offset 14936 */ afr_table_t afrTable; /** - * offset 15160 + * offset 15960 */ float afrLoadBins[FUEL_LOAD_COUNT]; /** - * offset 15224 + * offset 16024 */ float afrRpmBins[FUEL_RPM_COUNT]; - /** total size 15288*/ + /** total size 16088*/ } persistent_config_s; // end -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Wed Nov 18 19:07:01 EST 2015 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Tue Dec 01 20:29:19 EST 2015 diff --git a/firmware/controllers/algo/fuel_math.cpp b/firmware/controllers/algo/fuel_math.cpp index fa4f52c117..16932917bb 100644 --- a/firmware/controllers/algo/fuel_math.cpp +++ b/firmware/controllers/algo/fuel_math.cpp @@ -74,13 +74,15 @@ floatms_t getBaseFuel(int rpm DECLARE_ENGINE_PARAMETER_S) { floatms_t tpsAccelEnrich = ENGINE(tpsAccelEnrichment.getTpsEnrichment(PASS_ENGINE_PARAMETER_F)); if (CONFIG(algorithm) == LM_SPEED_DENSITY) { - return tpsAccelEnrich + getSpeedDensityFuel(rpm PASS_ENGINE_PARAMETER); + engine->engineState.baseFuel = getSpeedDensityFuel(rpm PASS_ENGINE_PARAMETER); } else if (engineConfiguration->algorithm == LM_REAL_MAF) { float maf = getRealMaf(PASS_ENGINE_PARAMETER_F) + engine->mapAccelEnrichment.getMapEnrichment(PASS_ENGINE_PARAMETER_F); - return tpsAccelEnrich + getRealMafFuel(maf, rpm PASS_ENGINE_PARAMETER); + engine->engineState.baseFuel = getRealMafFuel(maf, rpm PASS_ENGINE_PARAMETER); } else { - return tpsAccelEnrich + engine->engineState.baseTableFuel; + engine->engineState.baseFuel = engine->engineState.baseTableFuel; } + + return tpsAccelEnrich + engine->engineState.baseFuel; } float getinjectionOffset(int rpm DECLARE_ENGINE_PARAMETER_S) { diff --git a/firmware/controllers/algo/rusefi_generated.h b/firmware/controllers/algo/rusefi_generated.h index 397231c0ea..7684b23b00 100644 --- a/firmware/controllers/algo/rusefi_generated.h +++ b/firmware/controllers/algo/rusefi_generated.h @@ -722,70 +722,71 @@ #define decelEnleanmentMultiplier_offset 2204 #define mapAccelEnrichmentThreshold_offset 2208 #define mapAccelEnrichmentMultiplier_offset 2212 -#define le_formulas1_offset 2216 -#define le_formulas2_offset 2416 -#define le_formulas2_offset_hex 970 -#define le_formulas3_offset 2616 -#define le_formulas4_offset 2816 -#define le_formulas5_offset 3016 -#define le_formulas6_offset 3216 -#define le_formulas7_offset 3416 -#define le_formulas8_offset 3616 -#define le_formulas9_offset 3816 -#define le_formulas10_offset 4016 -#define le_formulas11_offset 4216 -#define le_formulas11_offset_hex 1078 -#define le_formulas12_offset 4416 -#define le_formulas12_offset_hex 1140 -#define le_formulas13_offset 4616 -#define le_formulas13_offset_hex 1208 -#define le_formulas14_offset 4816 -#define le_formulas15_offset 5016 -#define le_formulas15_offset_hex 1398 -#define le_formulas16_offset 5216 -#define le_formulas16_offset_hex 1460 -#define timingMultiplier_offset 5416 -#define timingMultiplier_offset_hex 1528 -#define timingAdditive_offset 5616 -#define cltFuelCorrBins_offset 5816 -#define cltFuelCorr_offset 5880 -#define iatFuelCorrBins_offset 5944 -#define iatFuelCorrBins_offset_hex 1738 -#define iatFuelCorr_offset 6008 -#define iatFuelCorr_offset_hex 1778 -#define crankingFuelCoef_offset 6072 -#define crankingFuelBins_offset 6104 -#define crankingCycleCoef_offset 6136 -#define crankingCycleBins_offset 6168 -#define crankingCycleBins_offset_hex 1818 -#define cltIdleCorrBins_offset 6200 -#define cltIdleCorrBins_offset_hex 1838 -#define cltIdleCorr_offset 6264 -#define cltIdleCorr_offset_hex 1878 -#define mafDecoding_offset 6328 -#define mafDecodingBins_offset 7352 -#define ignitionIatCorrTable_offset 8376 -#define ignitionIatCorrLoadBins_offset 9400 -#define ignitionIatCorrRpmBins_offset 9464 -#define injectionPhase_offset 9528 -#define injectionPhase_offset_hex 2538 -#define injPhaseLoadBins_offset 10552 -#define injPhaseLoadBins_offset_hex 2938 -#define injPhaseRpmBins_offset 10616 -#define injPhaseRpmBins_offset_hex 2978 -#define fuelTable_offset 10680 -#define fuelLoadBins_offset 11704 -#define fuelRpmBins_offset 11768 -#define ignitionTable_offset 11832 -#define ignitionLoadBins_offset 12856 -#define ignitionLoadBins_offset_hex 3238 -#define ignitionRpmBins_offset 12920 -#define ignitionRpmBins_offset_hex 3278 -#define veTable_offset 12984 -#define veLoadBins_offset 14008 -#define veRpmBins_offset 14072 -#define afrTable_offset 14136 -#define afrTable_offset_hex 3738 -#define afrLoadBins_offset 15160 -#define afrRpmBins_offset 15224 -#define TOTAL_CONFIG_SIZE 15288 +#define fatalErrorPin_offset 2216 +#define warninigPin_offset 2220 +#define configResetPin_offset 2224 +#define unused_offset 2228 +#define le_formulas1_offset 3016 +#define le_formulas2_offset 3216 +#define le_formulas3_offset 3416 +#define le_formulas4_offset 3616 +#define le_formulas5_offset 3816 +#define le_formulas6_offset 4016 +#define le_formulas7_offset 4216 +#define le_formulas7_offset_hex 1078 +#define le_formulas8_offset 4416 +#define le_formulas8_offset_hex 1140 +#define le_formulas9_offset 4616 +#define le_formulas9_offset_hex 1208 +#define le_formulas10_offset 4816 +#define le_formulas11_offset 5016 +#define le_formulas11_offset_hex 1398 +#define le_formulas12_offset 5216 +#define le_formulas12_offset_hex 1460 +#define le_formulas13_offset 5416 +#define le_formulas13_offset_hex 1528 +#define le_formulas14_offset 5616 +#define le_formulas15_offset 5816 +#define le_formulas16_offset 6016 +#define le_formulas16_offset_hex 1780 +#define timingMultiplier_offset 6216 +#define timingMultiplier_offset_hex 1848 +#define timingAdditive_offset 6416 +#define timingAdditive_offset_hex 1910 +#define cltFuelCorrBins_offset 6616 +#define cltFuelCorr_offset 6680 +#define iatFuelCorrBins_offset 6744 +#define iatFuelCorr_offset 6808 +#define crankingFuelCoef_offset 6872 +#define crankingFuelBins_offset 6904 +#define crankingCycleCoef_offset 6936 +#define crankingCycleBins_offset 6968 +#define cltIdleCorrBins_offset 7000 +#define cltIdleCorr_offset 7064 +#define mafDecoding_offset 7128 +#define mafDecodingBins_offset 8152 +#define ignitionIatCorrTable_offset 9176 +#define ignitionIatCorrLoadBins_offset 10200 +#define ignitionIatCorrRpmBins_offset 10264 +#define ignitionIatCorrRpmBins_offset_hex 2818 +#define injectionPhase_offset 10328 +#define injectionPhase_offset_hex 2858 +#define injPhaseLoadBins_offset 11352 +#define injPhaseRpmBins_offset 11416 +#define fuelTable_offset 11480 +#define fuelLoadBins_offset 12504 +#define fuelRpmBins_offset 12568 +#define fuelRpmBins_offset_hex 3118 +#define ignitionTable_offset 12632 +#define ignitionTable_offset_hex 3158 +#define ignitionLoadBins_offset 13656 +#define ignitionLoadBins_offset_hex 3558 +#define ignitionRpmBins_offset 13720 +#define ignitionRpmBins_offset_hex 3598 +#define veTable_offset 13784 +#define veLoadBins_offset 14808 +#define veRpmBins_offset 14872 +#define afrTable_offset 14936 +#define afrLoadBins_offset 15960 +#define afrRpmBins_offset 16024 +#define TOTAL_CONFIG_SIZE 16088 diff --git a/firmware/controllers/flash_main.h b/firmware/controllers/flash_main.h index 7c67760d12..a3e1569c68 100644 --- a/firmware/controllers/flash_main.h +++ b/firmware/controllers/flash_main.h @@ -11,7 +11,7 @@ #include "engine.h" -#define FLASH_DATA_VERSION 8900 +#define FLASH_DATA_VERSION 9000 void readFromFlash(void); void initFlash(Logging *sharedLogger); diff --git a/firmware/controllers/math/speed_density.cpp b/firmware/controllers/math/speed_density.cpp index dc3fef7d50..e15209be81 100644 --- a/firmware/controllers/math/speed_density.cpp +++ b/firmware/controllers/math/speed_density.cpp @@ -48,19 +48,22 @@ float getTCharge(int rpm, float tps, float coolantTemp, float airTemp) { */ #define GAS_R 0.28705 +float getAirMass(engine_configuration_s *engineConfiguration, float VE, float MAP, float tempK) { + // todo: pre-calculate cylinder displacement to save one division + float cylinderDisplacement = engineConfiguration->specs.displacement / engineConfiguration->specs.cylindersCount; + return (cylinderDisplacement * VE * MAP) / (GAS_R * tempK); +} + /** * @return per cylinder injection time, in seconds */ -float sdMath(engine_configuration_s *engineConfiguration, float VE, float MAP, float AFR, float tempK) { +float sdMath(engine_configuration_s *engineConfiguration, float airMass, float AFR) { /** * todo: pre-calculate gramm/second injector flow to save one multiplication * open question if that's needed since that's just a multiplication */ float injectorFlowRate = cc_minute_to_gramm_second(engineConfiguration->injector.flow); - // todo: pre-calculate cylinder displacement to save one division - float cylinderDisplacement = engineConfiguration->specs.displacement / engineConfiguration->specs.cylindersCount; - float airMass = (cylinderDisplacement * VE * MAP) / (GAS_R * tempK); /** * injection_pulse_duration = fuel_mass / injector_flow * fuel_mass = air_mass / target_afr @@ -86,7 +89,9 @@ float getSpeedDensityFuel(int rpm DECLARE_ENGINE_PARAMETER_S) { float adjMap = map + engine->mapAccelEnrichment.getMapEnrichment(PASS_ENGINE_PARAMETER_F); - return sdMath(engineConfiguration, ENGINE(engineState.currentVE), adjMap, ENGINE(engineState.targerAFR), tChargeK) * 1000; + engine->engineState.airMass = getAirMass(engineConfiguration, ENGINE(engineState.currentVE), adjMap, tChargeK); + + return sdMath(engineConfiguration, engine->engineState.airMass, ENGINE(engineState.targerAFR)) * 1000; } static const baro_corr_table_t default_baro_corr = { diff --git a/firmware/controllers/math/speed_density.h b/firmware/controllers/math/speed_density.h index aa89bdcf3d..67f6af1c8b 100644 --- a/firmware/controllers/math/speed_density.h +++ b/firmware/controllers/math/speed_density.h @@ -11,7 +11,8 @@ float getTCharge(int rpm, float tps, float coolantTemp, float airTemp); void setDetaultVETable(persistent_config_s *config); -float sdMath(engine_configuration_s *engineConfiguration, float VE, float MAP, float AFR, float tempK); +float getAirMass(engine_configuration_s *engineConfiguration, float VE, float MAP, float tempK); +float sdMath(engine_configuration_s *engineConfiguration, float airMass, float AFR); #define gramm_second_to_cc_minute(gs) ((gs) / 0.0119997981) diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 7655bc080f..5ec53bbe28 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -230,7 +230,7 @@ adc_channel_e fuelLevelSensor; float vehicleSpeedCoef;This coefficient translates vehicle speed input frequency (in Hz) into vehicle speed, km/h;"coef", 1, 0, 0.01, 2000.0, 2 -custom can_nbc_e 4 bits, U32, @OFFSET@, [0:1], "BMW", "FIAT", "VAG" , "INVALID" +custom can_nbc_e 4 bits, U32, @OFFSET@, [0:1], "BMW", "FIAT", "VAG" , "MAZDA RX8" can_nbc_e canNbcType; int canSleepPeriod;CANbus thread period, ms;"ms", 1, 0, 0, 1000.0, 2 @@ -621,6 +621,13 @@ baro_corr_table_t baroCorrTable; float mapAccelEnrichmentThreshold;;"roc", 1, 0, 0, 200, 3 float mapAccelEnrichmentMultiplier;;"coeff", 1, 0, 0, 200, 3 + + brain_pin_e fatalErrorPin; + brain_pin_e warninigPin; + brain_pin_e configResetPin; + int[197] unused; + + end_struct engine_configuration_s engineConfiguration; diff --git a/firmware/rusefi.cpp b/firmware/rusefi.cpp index 3bbc0bfb5d..4565e41ba4 100644 --- a/firmware/rusefi.cpp +++ b/firmware/rusefi.cpp @@ -275,5 +275,5 @@ int getRusEfiVersion(void) { return 123; // this is here to make the compiler happy about the unused array if (UNUSED_CCM_SIZE[0] * 0 != 0) return 3211; // this is here to make the compiler happy about the unused array - return 20151124; + return 20151201; } diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 2de22734a7..636c79cd78 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -3,8 +3,15 @@ ; this should stop TS from looking for the CAN ID in the 2nd byte location and allow the page reads to work correctly. enable2ndByteCanID = false +;This enables the "full" CAN/serial commands so this INI can be used anywhere on the CAN network. +#unset CAN_COMMANDS + [TunerStudio] +#if CAN_COMMANDS + queryCommand = "r\x00\x0f\x00\x00\x00\x14" ; Verify against signature. +#else queryCommand = "S" +#endif signature = "MShift v0.01" ; signature is expected to be 7 or more characters. [Constants] @@ -40,9 +47,9 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Wed Nov 18 19:07:01 EST 2015 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Tue Dec 01 20:29:19 EST 2015 -pageSize = 15288 +pageSize = 16088 page = 1 engineType = bits, S32, 0, [0:2], "AUDI_AAN", "DODGE_NEON_1995", "FORD_ASPIRE_1996", "FORD_FIESTA", "NISSAN_PRIMERA", "HONDA_ACCORD", "FORD_INLINE_6_1995", "GY6_139QMB" ;skipping headerMagicValue offset 4 @@ -114,7 +121,7 @@ page = 1 fanOffTemperature = scalar, F32, 480, "*C", 1, 0, 0, 1000.0, 2 fuelLevelSensor = bits, U32, 484, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" vehicleSpeedCoef = scalar, F32, 488, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 492, [0:1], "BMW", "FIAT", "VAG" , "INVALID" + canNbcType = bits, U32, 492, [0:1], "BMW", "FIAT", "VAG" , "MAZDA RX8" canSleepPeriod = scalar, S32, 496, "ms", 1, 0, 0, 1000.0, 2 operationMode = bits, U32, 500, [0:1], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke" displayMode = bits, U32, 504, [0:1], "none", "hd44780", "hd44780 over pcf8574", "INVALID" @@ -510,55 +517,59 @@ page = 1 decelEnleanmentMultiplier = scalar, F32, 2204, "coeff", 1, 0, 0, 200, 3 mapAccelEnrichmentThreshold = scalar, F32, 2208, "roc", 1, 0, 0, 200, 3 mapAccelEnrichmentMultiplier = scalar, F32, 2212, "coeff", 1, 0, 0, 200, 3 - le_formulas1 = array, U08, 2216, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas2 = array, U08, 2416, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas3 = array, U08, 2616, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas4 = array, U08, 2816, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas5 = array, U08, 3016, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas6 = array, U08, 3216, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas7 = array, U08, 3416, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas8 = array, U08, 3616, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas9 = array, U08, 3816, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas10 = array, U08, 4016, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas11 = array, U08, 4216, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas12 = array, U08, 4416, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas13 = array, U08, 4616, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas14 = array, U08, 4816, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas15 = array, U08, 5016, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas16 = array, U08, 5216, [200],"char", 1, 0, 0.0, 3.0, 2 - timingMultiplier = array, U08, 5416, [200],"char", 1, 0, 0.0, 3.0, 2 - timingAdditive = array, U08, 5616, [200],"char", 1, 0, 0.0, 3.0, 2 - cltFuelCorrBins = array, F32, 5816, [16], "C", 1, 0, -100.0, 250.0, 2 - cltFuelCorr = array, F32, 5880, [16], "%", 1, 0, 0.0, 500.0, 2 - iatFuelCorrBins = array, F32, 5944, [16], "C", 1, 0, -100.0, 250.0, 2 - iatFuelCorr = array, F32, 6008, [16], "%", 1, 0, 0.0, 500.0, 2 - crankingFuelCoef = array, F32, 6072, [8], "%", 1, 0, 0.0, 700.0, 2 - crankingFuelBins = array, F32, 6104, [8], "C", 1, 0, -80.0, 170.0, 2 - crankingCycleCoef = array, F32, 6136, [8], "%", 1, 0, 0.0, 500.0, 2 - crankingCycleBins = array, F32, 6168, [8], "C", 1, 0, -80.0, 170.0, 2 - cltIdleCorrBins = array, F32, 6200, [16], "C", 1, 0, -100.0, 250.0, 2 - cltIdleCorr = array, F32, 6264, [16], "%", 1, 0, 0.0, 500.0, 2 - mafDecoding = array, F32, 6328, [256], "kg/hour", 1, 0, -500.0, 4000.0, 2 - mafDecodingBins = array, F32, 7352, [256], "V", 1, 0, -5.0, 150.0, 2 - ignitionIatCorrTable = array, F32, 8376, [16x16],"deg", 1, 0, -720, 720, 2 - ignitionIatCorrLoadBins = array, F32, 9400, [16], "Load", 1, 0.0, 0, 300.0, 2 - ignitionIatCorrRpmBins = array, F32, 9464, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - injectionPhase = array, F32, 9528, [16x16],"deg", 1, 0, -720, 720, 2 - injPhaseLoadBins = array, F32, 10552, [16], "Load", 1, 0.0, 0, 300.0, 2 - injPhaseRpmBins = array, F32, 10616, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - fuelTable = array, F32, 10680, [16x16],"ms", 1, 0, 0.0, 300.0, 2 - fuelLoadBins = array, F32, 11704, [16], "V", 1, 0, 0.0, 300.0, 2 - fuelRpmBins = array, F32, 11768, [16], "RPM", 1, 0, 0.0, 25500.0, 2 - ignitionTable = array, F32, 11832, [16x16],"deg", 1, 0, -720, 720, 2 - ignitionLoadBins = array, F32, 12856, [16], "Load", 1, 0.0, 0, 300.0, 2 - ignitionRpmBins = array, F32, 12920, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - veTable = array, F32, 12984, [16x16],"%", 1, 0, 0, 999.0, 2 - veLoadBins = array, F32, 14008, [16], "%", 1, 0.0, 0, 300.0, 2 - veRpmBins = array, F32, 14072, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - afrTable = array, F32, 14136, [16x16],"deg", 1, 0, 0, 25.0, 2 - afrLoadBins = array, F32, 15160, [16], "%", 1, 0.0, 0, 300.0, 2 - afrRpmBins = array, F32, 15224, [16], "RPM", 1, 0.0, 0, 18000.0, 2 -; total TS size = 15288 + fatalErrorPin = bits, U32, 2216, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + warninigPin = bits, U32, 2220, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + configResetPin = bits, U32, 2224, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping unused offset 2228 + le_formulas1 = array, U08, 3016, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas2 = array, U08, 3216, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas3 = array, U08, 3416, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas4 = array, U08, 3616, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas5 = array, U08, 3816, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas6 = array, U08, 4016, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas7 = array, U08, 4216, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas8 = array, U08, 4416, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas9 = array, U08, 4616, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas10 = array, U08, 4816, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas11 = array, U08, 5016, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas12 = array, U08, 5216, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas13 = array, U08, 5416, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas14 = array, U08, 5616, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas15 = array, U08, 5816, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas16 = array, U08, 6016, [200],"char", 1, 0, 0.0, 3.0, 2 + timingMultiplier = array, U08, 6216, [200],"char", 1, 0, 0.0, 3.0, 2 + timingAdditive = array, U08, 6416, [200],"char", 1, 0, 0.0, 3.0, 2 + cltFuelCorrBins = array, F32, 6616, [16], "C", 1, 0, -100.0, 250.0, 2 + cltFuelCorr = array, F32, 6680, [16], "%", 1, 0, 0.0, 500.0, 2 + iatFuelCorrBins = array, F32, 6744, [16], "C", 1, 0, -100.0, 250.0, 2 + iatFuelCorr = array, F32, 6808, [16], "%", 1, 0, 0.0, 500.0, 2 + crankingFuelCoef = array, F32, 6872, [8], "%", 1, 0, 0.0, 700.0, 2 + crankingFuelBins = array, F32, 6904, [8], "C", 1, 0, -80.0, 170.0, 2 + crankingCycleCoef = array, F32, 6936, [8], "%", 1, 0, 0.0, 500.0, 2 + crankingCycleBins = array, F32, 6968, [8], "C", 1, 0, -80.0, 170.0, 2 + cltIdleCorrBins = array, F32, 7000, [16], "C", 1, 0, -100.0, 250.0, 2 + cltIdleCorr = array, F32, 7064, [16], "%", 1, 0, 0.0, 500.0, 2 + mafDecoding = array, F32, 7128, [256], "kg/hour", 1, 0, -500.0, 4000.0, 2 + mafDecodingBins = array, F32, 8152, [256], "V", 1, 0, -5.0, 150.0, 2 + ignitionIatCorrTable = array, F32, 9176, [16x16],"deg", 1, 0, -720, 720, 2 + ignitionIatCorrLoadBins = array, F32, 10200, [16], "Load", 1, 0.0, 0, 300.0, 2 + ignitionIatCorrRpmBins = array, F32, 10264, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + injectionPhase = array, F32, 10328, [16x16],"deg", 1, 0, -720, 720, 2 + injPhaseLoadBins = array, F32, 11352, [16], "Load", 1, 0.0, 0, 300.0, 2 + injPhaseRpmBins = array, F32, 11416, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + fuelTable = array, F32, 11480, [16x16],"ms", 1, 0, 0.0, 300.0, 2 + fuelLoadBins = array, F32, 12504, [16], "V", 1, 0, 0.0, 300.0, 2 + fuelRpmBins = array, F32, 12568, [16], "RPM", 1, 0, 0.0, 25500.0, 2 + ignitionTable = array, F32, 12632, [16x16],"deg", 1, 0, -720, 720, 2 + ignitionLoadBins = array, F32, 13656, [16], "Load", 1, 0.0, 0, 300.0, 2 + ignitionRpmBins = array, F32, 13720, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + veTable = array, F32, 13784, [16x16],"%", 1, 0, 0, 999.0, 2 + veLoadBins = array, F32, 14808, [16], "%", 1, 0.0, 0, 300.0, 2 + veRpmBins = array, F32, 14872, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + afrTable = array, F32, 14936, [16x16],"deg", 1, 0, 0, 25.0, 2 + afrLoadBins = array, F32, 15960, [16], "%", 1, 0.0, 0, 300.0, 2 + afrRpmBins = array, F32, 16024, [16], "RPM", 1, 0.0, 0, 18000.0, 2 +; total TS size = 16088 ; CONFIG_DEFINITION_END @@ -606,7 +617,12 @@ page = 1 ; see TS_FILE_VERSION in firmware code fileVersion = { 20150625 } +#if CAN_COMMANDS +;full version that works anywhere - be sure to change the no. bytes requested + ochGetCommand = "r\x00\x07\x00\x00\x01\x98" +#else ochGetCommand = "O" +#endif ; see OUTPUT_CHANNELS_SIZE in console source code ochBlockSize = 196 diff --git a/java_console/.idea/libraries/jcip_annotations_1_0.xml b/java_console/.idea/libraries/jcip_annotations.xml similarity index 77% rename from java_console/.idea/libraries/jcip_annotations_1_0.xml rename to java_console/.idea/libraries/jcip_annotations.xml index 33c8236843..3f7017513f 100644 --- a/java_console/.idea/libraries/jcip_annotations_1_0.xml +++ b/java_console/.idea/libraries/jcip_annotations.xml @@ -1,5 +1,5 @@ - + diff --git a/java_console/.idea/libraries/jlatexmath.xml b/java_console/.idea/libraries/jlatexmath.xml new file mode 100644 index 0000000000..eb594b5d59 --- /dev/null +++ b/java_console/.idea/libraries/jlatexmath.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/java_console/.idea/libraries/miglayout_4_0.xml b/java_console/.idea/libraries/miglayout.xml similarity index 79% rename from java_console/.idea/libraries/miglayout_4_0.xml rename to java_console/.idea/libraries/miglayout.xml index 527499cd32..1fc7c4a7e8 100644 --- a/java_console/.idea/libraries/miglayout_4_0.xml +++ b/java_console/.idea/libraries/miglayout.xml @@ -1,5 +1,5 @@ - + diff --git a/java_console/.idea/libraries/swing_layout_1_0.xml b/java_console/.idea/libraries/swing_layout.xml similarity index 78% rename from java_console/.idea/libraries/swing_layout_1_0.xml rename to java_console/.idea/libraries/swing_layout.xml index 4893bfcb0c..835872eb08 100644 --- a/java_console/.idea/libraries/swing_layout_1_0.xml +++ b/java_console/.idea/libraries/swing_layout.xml @@ -1,5 +1,5 @@ - + diff --git a/java_console/build.xml b/java_console/build.xml index e2a52309b2..173e1b970a 100644 --- a/java_console/build.xml +++ b/java_console/build.xml @@ -8,7 +8,7 @@ + classpath="lib/jcip-annotations-1.0.jar:lib/jlatexmath-1.0.3.jar:lib/swing-layout-1.0.jar:lib/jep.jar:lib/log4j.jar:lib/junit.jar:lib/jssc.jar:lib/SteelSeries-3.9.30.jar:lib/annotations.jar:lib/miglayout-4.0.jar:lib/surfaceplotter-2.0.1.jar"> @@ -68,6 +68,7 @@ + diff --git a/java_console/io/io.iml b/java_console/io/io.iml index 743cadfef6..16f29aca3b 100644 --- a/java_console/io/io.iml +++ b/java_console/io/io.iml @@ -12,6 +12,6 @@ - + \ No newline at end of file diff --git a/java_console/io/src/com/rusefi/TsPageSize.java b/java_console/io/src/com/rusefi/TsPageSize.java index f658c6e164..701eaf7f19 100644 --- a/java_console/io/src/com/rusefi/TsPageSize.java +++ b/java_console/io/src/com/rusefi/TsPageSize.java @@ -1,5 +1,5 @@ package com.rusefi; public interface TsPageSize { - int IMAGE_SIZE = 15288; + int IMAGE_SIZE = 16088; } diff --git a/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java b/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java index a521ab95b2..929b15189e 100644 --- a/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java +++ b/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java @@ -33,7 +33,8 @@ import static com.rusefi.binaryprotocol.IoHelper.*; * 3/6/2015 */ public class BinaryProtocol { - private static final int OUTPUT_CHANNELS_SIZE = 196; + // todo: is this auto-synched with rusefi.ini? + public static final int OUTPUT_CHANNELS_SIZE = 196; private static final int BLOCKING_FACTOR = 256; private static final byte RESPONSE_OK = 0; @@ -51,6 +52,10 @@ public class BinaryProtocol { public static final char COMMAND_HELLO = 'S'; public static final char COMMAND_PROTOCOL = 'F'; public static final char COMMAND_CRC_CHECK_COMMAND = 'k'; + public static final char COMMAND_PAGE = 'P'; + public static final char COMMAND_READ = 'R'; + public static final char COMMAND_CHUNK_WRITE = 'C'; + public static final char COMMAND_BURN = 'B'; private final Logger logger; private final IoStream stream; @@ -65,6 +70,8 @@ public class BinaryProtocol { @Deprecated public static BinaryProtocol instance; public boolean isClosed; + // todo: make a singleton? + public static byte[] currentOutputs; public BinaryProtocol(final Logger logger, IoStream stream) { this.logger = logger; @@ -269,7 +276,7 @@ public class BinaryProtocol { byte[] packet = new byte[packetSize]; incomingData.getData(packet); int packetCrc = swap32(incomingData.getInt()); - int actualCrc = crc32(packet); + int actualCrc = getCrc32(packet); boolean isCrcOk = actualCrc == packetCrc; if (!isCrcOk) { @@ -298,7 +305,7 @@ public class BinaryProtocol { int requestSize = Math.min(remainingSize, BLOCKING_FACTOR); byte packet[] = new byte[7]; - packet[0] = 'R'; + packet[0] = COMMAND_READ; putShort(packet, 1, 0); // page putShort(packet, 3, swap16(offset)); putShort(packet, 5, swap16(requestSize)); @@ -357,7 +364,7 @@ public class BinaryProtocol { isBurnPending = true; byte packet[] = new byte[7 + size]; - packet[0] = 'C'; + packet[0] = COMMAND_CHUNK_WRITE; putShort(packet, 1, 0); // page putShort(packet, 3, swap16(offset)); putShort(packet, 5, swap16(size)); @@ -383,7 +390,7 @@ public class BinaryProtocol { while (true) { if (isClosed) return; - byte[] response = executeCommand(new byte[]{'B'}, "burn", false); + byte[] response = executeCommand(new byte[]{COMMAND_BURN}, "burn", false); if (!checkResponseCode(response, RESPONSE_BURN_OK) || response.length != 1) { continue; } @@ -461,6 +468,8 @@ public class BinaryProtocol { if (response == null || response.length != (OUTPUT_CHANNELS_SIZE + 1) || response[0] != RESPONSE_OK) return; + currentOutputs = response; + for (Sensor sensor : Sensor.values()) { if (sensor.getType() == FieldType.FLOAT) { diff --git a/java_console/io/src/com/rusefi/binaryprotocol/IncomingDataBuffer.java b/java_console/io/src/com/rusefi/binaryprotocol/IncomingDataBuffer.java index 38eb8de361..7ad6d48b36 100644 --- a/java_console/io/src/com/rusefi/binaryprotocol/IncomingDataBuffer.java +++ b/java_console/io/src/com/rusefi/binaryprotocol/IncomingDataBuffer.java @@ -29,7 +29,7 @@ public class IncomingDataBuffer { logger.trace(freshData.length + " byte(s) arrived"); synchronized (cbb) { if (cbb.size() - cbb.length() < freshData.length) { - logger.error("buffer overflow not expected"); + logger.error("IncomingDataBuffer: buffer overflow not expected"); cbb.clear(); } cbb.put(freshData); diff --git a/java_console/io/src/com/rusefi/binaryprotocol/IoHelper.java b/java_console/io/src/com/rusefi/binaryprotocol/IoHelper.java index 2925b6fdac..e6e6c8f859 100644 --- a/java_console/io/src/com/rusefi/binaryprotocol/IoHelper.java +++ b/java_console/io/src/com/rusefi/binaryprotocol/IoHelper.java @@ -9,9 +9,13 @@ import java.util.zip.CRC32; * 3/6/2015 */ public class IoHelper { - public static int crc32(byte[] packet) { + public static int getCrc32(byte[] packet) { + return getCrc32(packet, 0, packet.length); + } + + public static int getCrc32(byte[] packet, int offset, int length) { CRC32 c = new CRC32(); - c.update(packet); + c.update(packet, offset, length); return (int) c.getValue(); } @@ -25,7 +29,7 @@ public class IoHelper { packet[1] = (byte) command.length; System.arraycopy(command, 0, packet, 2, command.length); - int crc = crc32(command); + int crc = getCrc32(command); putInt(packet, packet.length - 4, crc); return packet; diff --git a/java_console/io/src/com/rusefi/binaryprotocol/test/CRCTest.java b/java_console/io/src/com/rusefi/binaryprotocol/test/CRCTest.java index 4ff8333de4..b6ca6ab785 100644 --- a/java_console/io/src/com/rusefi/binaryprotocol/test/CRCTest.java +++ b/java_console/io/src/com/rusefi/binaryprotocol/test/CRCTest.java @@ -17,11 +17,11 @@ public class CRCTest { public void testCrc() { { byte[] a = {'A'}; - assertEquals(0xD3D99E8B, IoHelper.crc32(a)); + assertEquals(0xD3D99E8B, IoHelper.getCrc32(a)); } { byte[] a = {'S'}; - assertEquals(0x2060EFC3, IoHelper.crc32(a)); + assertEquals(0x2060EFC3, IoHelper.getCrc32(a)); } } diff --git a/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java b/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java index 00300afeac..313fc76e7e 100644 --- a/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java +++ b/java_console/io/src/com/rusefi/io/tcp/BinaryProtocolServer.java @@ -4,10 +4,7 @@ import com.rusefi.FileLog; import com.rusefi.binaryprotocol.BinaryProtocol; import com.rusefi.binaryprotocol.IoHelper; -import java.io.ByteArrayInputStream; -import java.io.DataInputStream; -import java.io.IOException; -import java.io.OutputStream; +import java.io.*; import java.net.ServerSocket; import java.net.Socket; @@ -86,11 +83,11 @@ public class BinaryProtocolServer { System.out.println("Got [" + (char) command + "/" + command + "] command"); int crc = in.readInt(); - if (crc != IoHelper.crc32(packet)) + if (crc != IoHelper.getCrc32(packet)) throw new IllegalStateException("CRC mismatch"); - TcpIoStream stream = new TcpIoStream(clientSocket.getOutputStream(), null); + TcpIoStream stream = new TcpIoStream(clientSocket.getInputStream(), clientSocket.getOutputStream()); if (command == BinaryProtocol.COMMAND_HELLO) { BinaryProtocol.sendCrcPacket((TS_OK + TS_SIGNATURE).getBytes(), FileLog.LOGGER, stream); } else if (command == BinaryProtocol.COMMAND_PROTOCOL) { @@ -99,12 +96,42 @@ public class BinaryProtocolServer { } else if (command == BinaryProtocol.COMMAND_CRC_CHECK_COMMAND) { short page = dis.readShort(); short offset = dis.readShort(); - short count = dis.readShort(); + short count = dis.readShort(); // no swap here? interesting! System.out.println("CRC check " + page + "/" + offset + "/" + count); + BinaryProtocol bp = BinaryProtocol.instance; + int result = IoHelper.getCrc32(bp.getController().getContent(), offset, count); + ByteArrayOutputStream response = new ByteArrayOutputStream(); + response.write(TS_OK.charAt(0)); + new DataOutputStream(response).write(result); + BinaryProtocol.sendCrcPacket(response.toByteArray(), FileLog.LOGGER, stream); + } else if (command == BinaryProtocol.COMMAND_PAGE) { + BinaryProtocol.sendCrcPacket(TS_OK.getBytes(), FileLog.LOGGER, stream); + } else if (command == BinaryProtocol.COMMAND_READ) { + short page = dis.readShort(); + short offset = swap16(dis.readShort()); + short count = swap16(dis.readShort()); + System.out.println("read " + page + "/" + offset + "/" + count); + BinaryProtocol bp = BinaryProtocol.instance; + + byte[] response = new byte[1 + count]; + response[0] = (byte) TS_OK.charAt(0); + System.arraycopy(bp.getController().getContent(), offset, response, 1, count); + BinaryProtocol.sendCrcPacket(response, FileLog.LOGGER, stream); + } else if (command == BinaryProtocol.COMMAND_OUTPUTS) { + + byte[] response = new byte[1 + BinaryProtocol.OUTPUT_CHANNELS_SIZE]; + response[0] = (byte) TS_OK.charAt(0); + byte[] currentOutputs = BinaryProtocol.currentOutputs; + if (currentOutputs != null) + System.arraycopy(currentOutputs, 1, response, 1, BinaryProtocol.OUTPUT_CHANNELS_SIZE); + BinaryProtocol.sendCrcPacket(response, FileLog.LOGGER, stream); + } else { + FileLog.MAIN.logLine("Error: unknown command " + command); } - - } + } + private static short swap16(short x) { + return (short) (((x) << 8) | ((x) >> 8)); } } \ No newline at end of file diff --git a/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java b/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java index 3cd132619d..fea39fb68c 100644 --- a/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java +++ b/java_console/io/src/com/rusefi/io/tcp/TcpConnector.java @@ -100,7 +100,7 @@ public class TcpConnector implements LinkConnector { }; // ioStream.setDataListener(listener1); - bp = new BinaryProtocol(FileLog.LOGGER, new TcpIoStream(os, stream)); + bp = new BinaryProtocol(FileLog.LOGGER, new TcpIoStream(stream, os)); boolean result = bp.connectAndReadConfiguration(listener1); if (result) { diff --git a/java_console/io/src/com/rusefi/io/tcp/TcpIoStream.java b/java_console/io/src/com/rusefi/io/tcp/TcpIoStream.java index 185586d790..63dcb0a7ea 100644 --- a/java_console/io/src/com/rusefi/io/tcp/TcpIoStream.java +++ b/java_console/io/src/com/rusefi/io/tcp/TcpIoStream.java @@ -5,7 +5,6 @@ import com.rusefi.io.DataListener; import com.rusefi.io.IoStream; import com.rusefi.io.LinkManager; -import java.io.BufferedInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; @@ -15,12 +14,16 @@ import java.io.OutputStream; * 5/11/2015. */ public class TcpIoStream implements IoStream { - private final OutputStream os; - private final InputStream stream; + private final InputStream input; + private final OutputStream output; - public TcpIoStream(OutputStream os, InputStream stream) { - this.os = os; - this.stream = stream; + public TcpIoStream(InputStream input, OutputStream output) { + if (input == null) + throw new NullPointerException("input"); + if (output == null) + throw new NullPointerException("output"); + this.output = output; + this.input = input; } @Override @@ -30,8 +33,8 @@ public class TcpIoStream implements IoStream { @Override public void write(byte[] bytes) throws IOException { - os.write(bytes); - os.flush(); + output.write(bytes); + output.flush(); } @Override @@ -50,13 +53,12 @@ public class TcpIoStream implements IoStream { byte b[] = new byte[1]; while (true) { try { - int result = stream.read(b); - if (result == -1) { - System.err.println("End of stream?"); - } + int result = input.read(b); + if (result == -1) + throw new IOException("TcpIoStream: End of input?"); listener.onDataArrived(b); } catch (IOException e) { - System.err.println("End of connection"); + System.err.println("TcpIoStream: End of connection"); return; } } diff --git a/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java b/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java index f760a22d95..eb31f8c215 100644 --- a/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java +++ b/java_console/io/src/com/rusefi/io/tcp/test/BinaryProtocolServerSandbox.java @@ -1,9 +1,20 @@ package com.rusefi.io.tcp.test; +import com.rusefi.ConfigurationImage; +import com.rusefi.FileLog; +import com.rusefi.binaryprotocol.BinaryProtocol; import com.rusefi.io.tcp.BinaryProtocolServer; +import com.rusefi.io.tcp.TcpIoStream; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; class BinaryProtocolServerSandbox { public static void main(String[] args) { + TcpIoStream stream = new TcpIoStream(new ByteArrayInputStream(new byte[0]), new ByteArrayOutputStream()); + BinaryProtocol.instance = new BinaryProtocol(FileLog.LOGGER, stream); + BinaryProtocol.instance.setController(new ConfigurationImage(new byte[14008])); + BinaryProtocol.currentOutputs = new byte[1 + BinaryProtocol.OUTPUT_CHANNELS_SIZE]; BinaryProtocolServer.start(); } } \ No newline at end of file diff --git a/java_console/lib/jlatexmath-1.0.3.jar b/java_console/lib/jlatexmath-1.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..d9b2223e2de6954fbd273b6d5083562e93e778fc GIT binary patch literal 1014482 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 z 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%0D4<){0RP z+Y$%H^xtuYAK@jNO3_FsH&SaA!iBv3%6Ej#b%g!*%yWb-a12{vA!K4DWD4PzL*O13 zX{o-7xnzai92dL4MehXt-hvZ%*!TMfU40AAz6{vX6n7xZ=O&)zhnmf(F*xp|n{D6r z@+@r8drAMpmwmVi*v@-=`PRua~K>Tta%OivDEv`^{y*7Y6C4MW3cC zww&q_9N$Fco3XT1ZJ|k1p-CiX8B)lnsQX^?<#znHEOS;L(^I7BIYJ(Npysqx1*$|v z1o~M#msDb)kmk2}dlW){o!w<)r;fsY!Y`)iJ*_s#aa6H=9J1R8^cSk%@1T*}qLEv( zk=p~VM7+52!VH3UlcN>kW>!< zX*4=`GAd-iC|@CEWTJR%JawVzo}cpVq3mA0*jNSl7!vUkx zfYGuyiBa$Pc;_>$_Np8EM$P+AX4cP=>~Ktw){I1B_fpEf@g9bZyCzQ8wvgN+{NW4S z9R$$R2-eV#)acWy6>6BgCEkcOt-I+4vijDSpBenDbL?2hZS9zbv_2%3tuc+Zh@Vuf zgCqBx+S=+9^L?@^&rDxb;wMqL`4LE)4RuoP^Lw8grk#`zyuU-hF&C;>M`VdUg4!m6 zy(z_A*L$@80cqKV@ z^^eOLdn>4vCv*&ON-AuTQR&cD$vhLj@uwV|573m&)1#aWP0%d+8$+rPgOFOr7$)R; zzL>OdmauZBO84}dcK#sFxOX3o`C3#!T$tvNL;CNphM}g^Ve-3g1oOP9ns*ZZiI-4h zTFm_c+QrB~oZmPGDl!2sD#2m!QB_EaYbd6e83oGvl5#;`VnJVQL0@WNOMGGL6wKOy z?>sv;vTze~j?UgH1jj$fhKKgc(K89={mk*-~x;BOfDn5WFV4Y z_$niv{*Fve<40XB*=nC+m<{!f4!wy0+`obS8{uCOLUt|blV*)&w)zx&6P#vW3_nQjwI+=K~&dH zWI{IlA1W6S1N3PhoIwLRF0c5nC3=_B)62cYlRm z%@zif|7d{bjm%O1)Pf!4!sFTH4_V;|Mqyt$H{RL3o<>H3LLm$l5?DYt03el{e*Fr$ zOUfI209GA=tUp(K!{gD-H%YCRV3A-SPTE$&ShP)8_zgNvT!AfDpHB9~okqKjW2})z(BfBV+AvJjS=XTpjYn6FMK=QybR$h@$ilnY#yX z(AhgK-|hfirHG3)dKOrIJvPiNA5Us}$?^oLYL_^JLH^>pI3f%PgN4Z{Sl-nYOk{~K z=nSowg?!~V92Z&88G0}BTZo|-EZTy$lp{O22M2izG`avbx&R8gfL}M7i#wP|rz@1A zB$T2El%fQbq7>A$Fx2!0GZZ^tMQ|u)&=Gmi5n0d?MGy{o5Dr-o&J|8j*1t+LoV^58 zGg(jyMUV!0kOo=M`V(UB1j<=1MbI)?&@x33H)#+*T5rZb{VP=bccGag=t~&t>YqfR z+{uI7|MMxTAOl?nZ(`!DushO-3`-~fTK6?19EPa}vf^-mzSph-;!cQ(> zrQ8y^3d~b;VQ9zwL||(Y5PD|d7YA@0vcG~}c|?8tU>Z|^YqFy9?g8m`6pJpkp-r)5 zY@|lM^-;GwCN#u8g$3>jdG8hAc*)03f)qU&#LG(Xex<>~i$5Wvh!}fMua2Mp}Nqft)Co0VRlM&$u7{aksO{yOf*1f7oSL=y)73G(% zC-FWfu=5*kYolDi+!JAD$nRX89^9o}57B-@TSh^IS}(f|p&YwYGcit@ZB zTP)6y*ce-8ra3BG%$aaf^wK_pWaq8+VD7xwpRd&p0RNZ7zcx3KyyWq;Y014L&rX(k zKviFWmQD%eRfcN=DvgjGqgp1E@@1Q`e`p_Pi`CotlDJ_|@PEF3Tht=Z5)6bFo|sH( z@QMP=SOyvO0qq|IQ=U2#CidQD4yDL!*O_)RobPdzj;m+FKVeqy-A9W2d*EJaslgou*;)dMe1z*So6Ul{TO$3-H!@Q*;>i4`cFcNJU*+Vb}msVh& z4AcP>m$cv#{8hgbOt!yZ&6Kf7U6c?5%bayrC;HhwCHjf2{pDDH3)8rQ6?3$Z&`^Ft zD+A$$$|cypl|jBZ2D;~V^8p%!Yo!)}n&8+<07cgtK1w4tJo=x`1+GD^xG~-XI#A?t zcIc?SiH`b*S|s)dWAL51&F_Eyt|Xc3<#C_E_-eZIwmyJ2Ka0|9>=>y8hVjx~*Qi~y z&XSew&coiEL_F`if#n3-u~r|$s;uuSzK@taF8^MS^epqlh!v2rebmNSuSme=t4^Cx zbfj5PnptI$&YM>@CTc5xk;Z4yh0wQF_E18~&wRy|qLMj$7iSAw9}xib362C#pku7z zVW+7+(@=H-{o_=8+B7>D;xDNNcaddO;*Y3`o+C?;GMfgtsS@0i2HfZfkh4~BkH?4l zl( z_oo@29M^VKq@=GIDo_s|H|0^*5wdhf@{f<4M|b(<6Pm;=eK*q3xQIBoAlquRxY8(3 zL-ZTYdswuLmx?xNzRGEzX)RV$X1Oy44okn`4X2j9tZ(sZNz@D-D{@moH|n zR@C3jP(HrPwQf6AKFSik>cu;E@9A7<{5pR6o%kjw{^;FOMBf?G&9fpfZlmzfCqdYe zK^R9l;e0%LUOm=imqQIOgiekx%;<4Ts4J}UjUA%5)hijVnkQ<@wyYQai}%4fJ*9*B zeZUGRZqg`NEEg$hT7s#(Sh=A*F@vp$3RvFw)nRIO@2&csc{IHq(#>O( zUS~E=(8Q$5>tB*tqmX}t#Fr}(K~+JMfx$MFDjjL2GRUN#s_BH9XKWK*;{Ex6ZO7~H;p z&1vk=(F*j#I=I9-YR##o{y1C63Nr$-39eq&b6TD>J4vY{%a%yHz_V3WM|OVfOS9o# z-*fSd5O4XqkH*q*@M<_%nyo(hgsX8IT*kbFiEW#s0BhgW;K{B40lR9}_u@tvAzN4yD~F~wxL$(|@auW1 zX96-ks4|(Cax>~3bK2(OU(8m2{5E)}eL~A{GoA;!^f{|12UM+h)2>*09V9+BLoweE zczO-Mq0eOkf7w*Gx&+~!BAE%PXc`)kkPv6k)&AIKgZ?FdzPwsHJa`Ke?pr=_0L5FQ zac)s#gLYwqesN}q(7rWv*otxRPvN`c(>J!+ROp@1MYblt%6~Wgv9Kcc2Px`iUSq`p z+%R{&*>}AWU6{(<1X{j|u$qD; zoa)Vgjz4R?xOcrtcD;YpwLxorfYo_T`_;D9aH=~9^i=r4Df{Cp`$K7cSpM74{J$Gs zr3aqq2A-@;AJ|7uE#elZFL26_8i!8BP+7_i#1{-i7YroTzseyizFS8vR+6{*SNIX# z_(Ip6{w96uFXH+f(lIW>q|>?SMs zms0-TGr$m7bxfJ{StuqS?-FIMf$X(9xT*5Si6J@BtZrGuc({73_-S}TD5>wJ)js%ko5YHz%D!!OrM@Qv>SQ8iFt0jeDAr}U< zWr1Nb7rwfc2^8<4d6r`QUj4{usPWAWGPGnLEjsT{BkX%D!szXah!4~4dhBp4E{vFn zxMQl}W{Exc%2}RjUwl*%d>UZ`JMzdm>bxyE$<8zgDQi_b4s`%N17#Eyc2ogn6m&Gl zcRSTcn#*R~@--SK>UbW+LCpZ;%qZi`U}Hvc)+s?@V_i2xj)%e}K<1`Uco=#3Aix+t zUh@y-cVP@1^6)SsQjC~bO0N7yP`^iMfA-txVZ?Mn{tws``_JEo9Y%tLE_QULmgBkY zO&jJo@hIw~MzCdOKFj#fR&&tV)NEw5DTvv4zDYLso^PyoL$I-KojDv zOkG{^MZk@wSDTMt=tJh%kzVb+obqXtOq7*pr+Y&E(7e&=Jw#hXCQ*UJyGuqBLa7_& zTs^**wNNGtydO3{0Q{ z#LakZp^f?wWEERu{p(2(+nSc3l?dLMoS&vru`Bfv6YYHcU+hFYt#O=dhubLqp6+r^ zsA|b%#A>U5!4j@`9@5JmaksLIeupBf!V7BHuObNDh^__XQ<~sKgI$AsT#|DeCRcVwzoql$aR7G<8 z&vQ9kHL?h09OP+rhx%vfcjS+C@9a-bFIAwHE99Gp{JpUqHmLqX(& zH%T%)3Zl`fY8(EXFWb%1twfh;gxjd#?7dj?TB)=P2y2YGj%`8-aV>oRJHvx_t+$r1ZC=7xtqSfOkX7rBd? z)Q?8H%Ic!=52f%?p`2`^9f?f+V_u8cp#qDAc{k3=tDQH=Ur7{dp_gF-wjLEeTGpHD?69Jtdnc`D;zK$FUr}=u6&>U4ldFDjn672P-Fd%-vAeGu3mKg z3>J$*JI3VBPo+}3Fp0HAOPK0FnG5aG#j4=nZi2RR_5lfv1Rx|kSl#?hC=E;Qe)%;f z$8z&8{4K%wlBbc2_$+I?-4gGGfW$RM8}|xT#8x7jBLC|dr0d-v7-r99dKS#Bs^^W{X1=S;M(y(LIJ#@!M;6lUfG)|xd^*4uVU1<#mrhrO9k(XcLHCJ#ux1dwu7a7xa~9*YJ}x0bq+@WQ$CFhr$UY_LA%;^^$)K_KgJc1zzES zR^b6};elu20d(O(4vU^Qy15OrNZeyxR54ZjfAkVxOozfTO2QVx&6K`Gh?f3IT(tY< zyk-M9IRl&!08TOhCpv(Wb-)Qf;G`Smc%kQFxz+!(?~UtE0ueq=Me;Xh=iC+%?E$31 zRR5!!=SNy%tfD^I%Yz?N^nMN5UkzrwUx0!KR!OJv7{8T-uiHxn0t(5ZA-MVeH(b0M zc(&aiBfk~n&~rd+C%;njeFMh}nT@(0u_|V|LisMbYZTsKmTa~WLgm=QfSx%%Ig#P8ZI_eOx)Mv=zro>(m+OydVR?qv z*!i(8Cw2>eYFnb1QyRBK%1tB8l}Y*)9s4Cb;_n9LoB*`-u6J_RVsB;cjXWDLA6geO zuh*wvU(^ik$0O!k{`r)W8>X@*s$KI1I}kqR!@OD_an3|gO}7qOux0Ycxi9&-EJ~|G zFs)z=%xT!~-n|^1Hb0DM*&}S-t5%#1FD&<*&6W1jkGB6r!{POhk24WK5qxpTGuvxm zvBdFo{MYJcefEVl4R%6j^Rx8baR%~~ z`hhm_H-THkG|k`Nt3;>fNnfQl?k)10}} z+3$i<-sffYIoO#!N5}PVnc46Dq;#B8Ri~vbckUxId(KaE98fuoS8d)&RJ zANexB2n)T;$O^?P3O&Xv?k9YCjF#x%rlq}X$acj#cHPHUn>JQ=?sv1@A%D4*r@bfp z%P-3L9Z_vlfax-Q>`?t+i+dfF_2U}%yNNfLtlRF`cV~YHOL?~{{yd`c4^M>95BZJ# zXZNQXyF@1fyXtedeKAsXym_&%K9wF8U9-k0i)vPfOmW)SEq&Hx;&8dgq#90jyj^jd zSCYN?-*$~r*0(dzPp|Ycef^^5w9~zxujysF)pOHwMEgHqGs?jA&2rQ5_kY42Pw`B;5jaS@{E5O!qHs-* z>3RBH4M0A$?QU5PcI&i+iy~+Ug%ldsGDiZ?w@7}R!Ws-Gr~Rrhc*S9pzb$9NdpTp#h#!VWQk!6 zA+N(fOyG2+4HstRg^?MtQj+-|0KJc(39twDk7U*S-aw5QEvNwspoS$Z8_~UhCC4#? z;BGM!^FX>)Erua;&|^tLH7a;P45PD-g>2C3d&l=6%?hPtu_6`dpE79gW0Ixn(P8)p za)px0iaU@hg37$89zIfm^0CF45e1Ks4_#%SoFQ~NgrEDq{p7iv;A$w zwyuM6{5#wVBDUJOo^o%Ho^tKemeRSNl5OdVQm=zd-`2a}(N~t@)cC}EaYx#}vrPOv zw-rVL831l<55{jCLgH=A+_xokjtR#7h-~t)_u4}nKR@SWEE5u6bVtj6pTd8P*G0CnKDseQs689?p8EA%eKXK+v$kObXN?in6b0?a}8Q+S33r2q}k z?I|`Co;g9>Kz_Jxs`uz??>-VZf65K%XH3vEup8}?{5|QKyKfu*i}XFgksD+H^vC=Z zYYB5?26a;gK*gg`>QZh{3Q%@X`cVD`=7U{QL-A4}wOhYL}@ z#ve=N$BX-8Kmw2`S$_{0Vu%5ds8}Nh95E;Wk(8`|1}rg50FhLz(E}bBm;gCS*6;z- zoYY-RRrHR6i^43th@HR3tzf-^bXd)3eLvmi(i7}Tn=)T!Pl1VZf7KY%HPKvclcw_c zRV_-;Up0y{*T!5X6vWFJY)m))>Sq2nuQ&{~EUvmm8~&riS=aeos3s=Hfu|TFnmb!7 zemNBASyq8rU%d8r(Cv$9)4{2M4!;kwHbGGiG5o|hv?8G)c}Px3^y=&5vc7#b`|v|&TRs<_%!$lOsPEyTzS zi6#q8BL?YrE~6HURIFC}g}LyWGhG-DN-w$8O41kE>(bfb{P@#q2{E74)<@NXD@wey z^nytjVx)hLM;}i~VLHnn8)O-cdx?G=CsNoTJ`{`>n zwrj=imF6a|){InyapO`G>zZ#03v;VM@wYytn_IsayV0rnJV;Gg?0uZCMy6nt)#LV zrEd4mPvz~0yOnqkj0HkDv$#obv?*~B?ensPoSyW6^+pvyjOeAU){KkX@I#Q&_*yl2 z)T$|Cf{r>JO?CvYI(do%O@g(JWl}lMlZ#5!>!bPnN!E@|W?e#Cx|D){n?k7kEqK`` z4tL)2lmu;B{QAgJ6LY*AFS7N8Nk~Vuinqa3+G#~aQ8Zj$vQG_J#>h&o8u@yzmrBW6 z0&Hw17H`gM^2Q#rIHvP^t2ltB!b35DYRo+ORMZ>cSI$PD-%T&^8zr=) z$5*ltZId9jKFw2?IMRtQ{p4WaoQ$_ozL3|sm7eB#jZzT?OyO zYpx#0u_7IaHGT|Lbl_yO!5pzZE|-~EnlZ zSkks+scOTq$s^?M<7uXr0~ERIOFGl6)Ds-g-Oy0Yi1~SBQYiLoFMWw;j6!K5wM-u) z!tCbdj!ogO{-g*s$({OOzO&URfSN>lpIozgtAx&Vz-ynnE_ozPE7LM{BR-OAr4Cdh zCufx$!Gb3*Ctr53m%z5&vEs~{F}Qff*fRZ-o^3V0+GIGLsd+?zx8ABTEx%E^eJEOj zz3CKKGDQfujLfoCZXXtq(bBw_SEElz6l9l<5t>`H_$@^3OuJs)c)vCgf{F5Ps;x;Q z<)`$M3z4{Xx4iMKUW(m2^UpJ8G)@~fHbIi`BZ`Dy=<)1}hBWo3a=#XEO}SmWt@pLE z)qc@-)2c*8^XWjg<$7s5=Yp2R6=?0a_wyxQEWZ;)a*a`^|0;u%J)l)mTGNhCx{G6; zRDmw~wTaSvxKCM%S)5+6ot{I}`5IprQ&&>i%4c_)j)J`~nb5BPowRZ0^j>E}dNf7| zkJ!8~SO2LAQ?_((qMW-;d;S#mZN#RqL$d6H%s{l2S=72_x7AYExk4zVXX;jqvQk@} zgEpbEC_?VA3&EaO;Nc@}>aTnDdeb8Q(+c(dS}WY@DRM!<_m4A$6Vg~qfZ1Z6P6^*` z4b)@O;(??lN4t#giCW3R5b9a1zwn=iH5Ja1eL8mq+!9RMvmtjD`C@TAlIn>u>e@8UB85 zqeQ+|-@h}D@|Gz@iTMkF@dv#sf|Yh#gYAm2{e*W$F*`nKguk{=ipn~u)-bU+C-)aC z26Gz>HUq3M8MJ-`@2E00m9@c&m)Wql#5j5iWc1vDdEn6B(mCUx(cOA%M85y&P=WA- zr@wK6rz86=Awv$m_=gi~0nvuO6nA$2NG+ePr%X+CW|CjKm`QEs#o11RSiLc-*jT}i zGlW9l{GvfZH}Y{_tG`|e8+eAYi_F4tj=5(YiqZpFcb$KCN6;&Sg=8%EI^{~jx`m|5>VQwKQ z<+Sp|P{EhObr0*!`gBV6VSXVvu_zRTyxCVf(tsLBeZ1UmiDS-bQE zO(BAVXzT<|KFoB$Y|wTIrX*>**$bBi5mZ)Ny=l^enH>A#`o7359keBD2OXj7^Si+I5X>k(u4gYVSN- z$0PN6E}TtpZre0)b;if_tj@`W5H;}HQ`Z-VzJpw=S>5QGZKCvsF8EARezk9{U~Sm5 zxKTB`4pr^C71WluZknFs+jA5A8y@#ES$0}CJomD1#%&Lr?yVeJa%!JkiQ2H|cEfCr z8nQnuzeO=QYu&W673(E$8{c8-2zDoEZ``S7e!}gDYWAqET}MRNvT&quxbZV_cl7RA z$=cw;YmZnD9=beyjIH%<5wtzm7vju_+8n+>H+i}X6tF%A?@%YmUw>Y zb3Gz4KmDn-XzjE1}Lfc%upL4Y=-RlH>fgwqmi-#rnwGOf=NB^H^ES z-0Ev_&S1Yyus(DFYqH+@VR>$2&mZO6e?eoy-|}I5u4CVg`xd?a-DLaM+u{o9h9CPQ zMe}yl#r|VhZBEOF)wzXzd(=nY1+z(e%ZJ^$Mimxz4;E>-@)A9<*#wX_^O+6b_ za62Lz^5?-WEz+l6!1v&cjPd@x8DJ!o8x zv)mh1a?1=lD{R|I@B!mJNXBjK`-*-GENt~a%-x6!JG+UtdBkSD#2{#w!gDOc=a%r z2AJg16z1Y&B6Wg{k0A+it989Ub~sCc%(*|_Q6OhfA#cENfgeUJ3PEHoV4?ZQ{nt>q z(Kd!qTVND7ez+mbJ(lliLpw1n>ZFmF2Q2#c0r19@a^LEW;(3UvBRJ&HOZwHEc;zsg z`(18$CeR#uJDTp_qJLTJcs${uxf*~kUPht)`T_3r zgk7_-o;TD9$66@( zLuBYIsG^yP!_&J@<;v3XaViAc0V&xtrO)}wny1&Bv*LOSnxRv%pZ-dnXSN+u;r22x z!55upa2ZSC0XbyehkeIod)6_O8QS7iA++8Hr{8)ThDXP~=9f=(Z)?{yNMPHcCKPU} z1jP~jAsEpLqN3=<5q+_5umS0N-Y<|!8_M?rZ;-PWN>%O?Nahv1>K0P>f;rgceG{bp z1=liV0KNPc6HM@qQgN39!~Mz}mhnyiGXF}b+4@4Uy}k<2dH3E~3V26Cb_rgGq%brw z9g56y5@VP z>VS6(F$gv2&*^gj>0Nsd!1{~x_2k6KtPrI^`AcB;ZO3^%)6^k6iZAtTjd(qC*Wr=f z@)_^TevA7t^AkhdU7F@T5lPfxl;b{$Fhnh0)PIx?m$vm=Fjccr>An*q{c6x4m4Qji zzC&bUXl-EwLvk`of8CsxroI)t`W$}Lo!$159`nmoi^&{Tvq1F6m`+XIyTG|Y7Yc0RkKd5v27@9820J^qKO6xWXef5`cwvorfBM%a z`p|EICskhtiZNf{|JVOwQKCRXhXDhVMg{{D`2YCX|IH}4+rYY&*Z0Blg^xuqg z=l{WJXKCnYU}}8(gn_{9BgGe%u))G21D7lRS*FB5+Mo=F9UD=(MuunT$QGOsZm8qE zxOL_3-T2u1Gv`zrtFY>)?`4ejTb49jbKsoN{zRtW+wFzJ)vCqqkwNzt_>S@hTrU3f zHzOi1h+~NyO@;6x14c-2B;!)tlA8)8PlX{oJc|z=9AVb%lsp)gNRNOR48Mjy<%h!n zu!8^M>>Z;sYnOH5bkZ?9wr$&Z(y?vZ?%1|%+jjEAwr!i;eX`E}zH|1w|Ex96nByLE z{+*-hE?jk06($YP^mG_=#G@XQIl%|_X)wtEybcY;u$^#_9sm;))im3CI#Sdo3;mL6 z+(jsKW^r@HzqGLIbFJPaE?noN-CYKNTf&Wg8w=Rve6(Kqm-ZaRW zkzuWg&$TFbz)mA{FfY5cXn1y5XZlh;7(yPW>9BOFW}|c2DC{8`&6DCCE~M?I6klHS zBVGO~$+VPsq{>}W-%{oRAl%5q+#yP70s7nP^SQi@eeX2otbkxa2^o9qP|;yaK9q!{ zYlZkAnDpTH)^)A8d>k%E~v!*afu0xa4sg9=lM(Ji}|QU#80nAlcZc?fgt zrYMV%hMdzMZBD{F`fxOnb`A8Ri5A`!*rq*Wzef)vifb!LCYI$*xO% zmp=`24K-%~he=oQu1!}VVH7vC34S)oUY{jA%j(ivVX?OL7p&}x#JHVofBTm$E9wQc zD;6;*wHqepAn4S9r+VyFzF+)Ry`SP$8E6K>KY{_%Go&`z7wC|{aib;t+tNNI0I9zh zU0Elw&der+xkurat|w8xJ3}ZHyS2KE%aH07U*Koiqakr~YHfD_frAdno5aBT8;lEL ztd#?Kt6eiC%@TR9YL`s26&@XOgp3XIIl>GlPF)ZCqaJX+Ch1sITtFrwx_w7OFA`y!fsA@fZC>0y=r8?_knhkcSb3$_oT#!p@wIn zZ1>IF_KH#o1>xftmNVG?_CdwxM~o{9jX)FzupT&Av?@6^AhsxYg!ZWcjm`Jt)~b(X zfAdn59{aZa1Em`A+qDi!HQ9@-alAM|x^%{-bw=Zw^Mb5;O3*}IOqtY$S>2zO%q~B2 zLQruD#YmiA;s7p;lAt)tO-3?&gP2{38aNWXP&k3yO&D9Kzaa&kP_Ez;=cNih@GC)n zy3P^d`+Rk}! za*go?lV_Y%mqksHsICtT!idP9t@dc8w=B7T1Bg;<@lE-{P>kzB;8-8@gkUE$1Unne zi>r`2EfzwI4yz(|Xs)7&Fnf}XUeR+5rF$6KWP1bl{9X-5Q)UVv^YwHva>P`=c7y~* zNC^jTIPhGU)<-@_W%OTvJoO$c!gSzyh3rlnf=wG>EP@|Zn;Np&-ddKZjqLhZi&$%T zbn5t0{7+Z2y}{M53I_u6i3$-e!D?HBKzmw5An@QkuK(L{Ih4AFxhG6muPdV7nb z$f(RrFXMK<_4JJ>|K0xRRWnmld01RQ#g%Em2pP0rh-FkieLzY)l@O5Jp!6IFrlq)#!R2BSc_MltI*9R5zw4 z%d?o3{%eBcv@fDXxdQP07KIfR zh!x6+U@~dk#AM23%5uzj%zVs*U^Hn)t50i8YuLoXjTwn0g(-y<%96sA!lKF;qhDo= zJElI&8Bw26A7a29V_IcWWrRCehY1Zxh&Nn~k_BYM8*oNFMZv?R#+w{s;*-p*j^1K{ z1L747tqrYBotat~V@#Y`T9|)fjxfcTW%Y5!J0Kqz1F52vuu7R^&9eGA6CKbGtbtrn zPFN>Q(`MRzZE+4i4h(^0QBqi`O!Q{j{cQ;jXa|-+wkRvC6{Z@q&AzsH2b2R-AYGIe z){dc9rUTA_E6@#d$7Hj=E%A;I_=4rebZxph`1VTl zyrY_CPhr~%CY@;(sJUb3NvRgB#7Hx8b@u(5tDG1!B<+i&&wS2FS&@hc7_hdLU4!nC%6mCTPU{wnA99%8mR5rb%eI2~ z)nWjH?iHgaiQ$ToiqR=t7$0?PtP5-^OO4g0+|eX6I;&d&W;01GsVTHP=<}!hhsvj zJFZg&xG&o4&E6E*R2dh16s1*9x+~YT){vsEVDM$DttE9|cM%svGPtsM2p<@+Xee-{nK-&C1Rx{6f4|N3ddV)K|tS zxe1Qdi>wBImTqEfO`0kK7$FzMG zJF*dr@cX%1%X6*aw-+2V&?em<0ajoq>*rMzxZ0=xD9@vnWo^FaH9#agrx|%#S&x6{ zYP48&OMARKPh}n|%x2o}@SEH=T-;S%#YABf7QRzsYTzt$l)@`i)JS54u7Hmj6$p4U z+7G@zZkPBR0{X{-C)=BrCzUtv6a5|CyBjXceux(nfvvNUT9ml{Nz^4OaCip=MVB;tzveN=@eZbD{&r+Brl>3B5A=y2@ z)DVS1p19m$?aEYiG>_f1c|9IV8o#`L=Q?vEgh^(SnbbY5(*#Pv@Gi& ztb4im%tt3rnw6D9AVh<*c}@P_l>t0gtWV+ZCI*or?EUYDvmCk&bM8rG`^xd1YsDx2(1& zO__~|ll~^Ewyu$ByS42?OPERdgcW0oEd7?v7*}{x^U~`2uf=Qulj0>Aon(t<+33Dm zW7RgUqvXR>1;uW11*aBjYVt~JMX^m6oz6Vd#U!}~nKS2(Q<@}1>>^5$z>GEu{N4Bh0-5PoYM_( z4m6tEr*`3L0oLNa#SHvZVrkzlP%7 z{d35TElwr$_G{<^3Os$cr!=3jX0o!A>+k~#Dy3#U2-6l)Ny{TR=q4-jsIT>%cw2l5 z;L=c_#xBq+QnvC0l0qHf-06?W%+PKk0((m1$gQ;H2saO7h!!r=tl)Z!=Tyh30`Nw* z?OCtBe?$E~*Ol~Mt7|^vY;+RT?I=t#;{Vb_Bc!xmdZ|yh4BQv|@>u$7_I*rBY{Vwn zGw{>J zf!H7+llmb0QeE|`Y#`Ex)oQ+GOW~@-;Iv^_h|Z8ad}qWK>m~j3Y+Wg4i9y?{)Zn%u z0X)gjPxy}r1#Cbh6ZSKT5nB|>0b5f9G&XsJ1U7l(*F-165_3*@=_UKPv=W1kwER7N zhp-TlVQF|9!<3LU!-8Auo8?Az}DP(asQrdi6o%`X&NSZQ6x8?W$S(AocRS zpY@W13Wm)gYy*q-P3n~f*_?ntGGy!o;^KbvZ0vdB!u}r@Y}QCMAyuOmx1zd(fITb9 zu!4|;)gpt&)A>3v+{%0{>!n$em<9VTPNBi@eNuReNF~-RYS{(*4o;E5^nF@*vq&e_ zESl*B`<^zz!Qg#jc#KFXR&8qf1^f0k;lbp6YIwCsD^_iqng#prHle}jeR6n?NG;Y) z>Yn1gjeU0b*2o+4*P1qw!R&oc>>h^edHdEj@j=9jon3+mPqs~p>y=xQJHHUf;nLCN*JyXZVB>x(b`Hvn zmAg<^*`C`z89YPej@4`6Yhj4mP$l*s@GzZ&=}{J7)uWJ$dwM#fIO&5@$>@>vs}lYL)G6&3-77EICk zY)u3v=CsM?xY?oyXI>snIwY~(8y3V{;)$mU8PYT3VQOa}zcNckA1(w%EvQ=x1M47V z27OrZlq?{Q=lj(Gq561uFsY`7u+4j{8Nrbj?6!GaZHdSGLK&eHXN+Bf4|m*jeV$E7 zdUFL(N}k5z=V6y(ktEekq|AXS0QA|t_~a(qgrcK(-s-T&*&p$Z<|c=Z+{})!)e)OA z;$rwEOYx-^GKVJ2BzE(2@v-J#LsK-(nr4}R^u|~uR0h%|MNEl`0LV3<qRPP+wm>xi>=uWXx zq29bjJvldD3t09K99c6Ua6zN~%-PkNKO2Q7U^<%Yv@1>gWTa&tyq@K3VAaG~;nK8& z(-lJp*)xnjnolfsShrxp$Zi&`9`S5^b;Vi5i%P41bmUMJkoa1+ zTrD(<obm7eklxJbo75rcCj9X0dr6g0WF$(@*?|9t_p+o|r1^Ni~XBczZ zw{G>N`&oHj9*s?}(|MfSeEoC~RiA&$3Yv#_I zXhMeG?qOGq9$#*`%j`PuTYOvA_$>DF)(tGdc#URj{Sjlr!_7hjKC}fa5&q*lFBwZ+ zVCs(X7MH+E40aQ}1C{-Yhq8Ou?z>9s;aK{!b?!>LirGTFJ=_Z&u3&F)AZDFC zrZ_DwGApUM{H%fy38&FsRT^9ac?sR5{_+qQtO>93=(T3NHJ91m4^ui`VAa5A&3dK1 zVX4pp-ANMO&K@CJM}}>i{6h-Y8UP??D*glZLY56VexEZr%kuO=IBRC|a|Pt?Pu4ZB z<2<86VnL6ET1iXwQ%xuSGUH@wpHC07^iYwJD3e8oE~40lep5s2FT9B5!e4B8?(ZWO za<@Bf_d41S&t{Z7E5eibmPEF(P5P_90kF`Xgmc34*K#fT>tLp^Is`5)2J0+8=SLY`6AL?d(NNn4xe%n|Cq1%?R=hk3vIZ;!N#<%<6JQLn!;jkliqZM;r*h_`$z*H^ zn$iF#(n3iH*6SQR*b=hu(t)-x0mvX1ol-sDC3Z#q0?0 z+UcAHNW(_93wUL+wsI;{Qf%w}ZA9-Nw)88Y(rQ zrWN1dA%q2*vyz1N420Sg7cN3Z)ngo-9+Voy>4o5uYkZ*67Y0FZo)l*SS#&p3-Tho9 z&nhlk?yt7L8#`9ffXABY=s!bi8wx~T!kg*dxa}eS^YURw)xbx80|DXsx`1^5?(&(K zTALU-|F`Rxupv1ph!pa-+QP`PsXk|>dL*aLy&4K%h!RFKLf3Y`g2sZ_g7&EzRTCVX zpf42JY=c-=r8|9ca@y--#+sjBZ|9q}J{ba-5=6QM*l#?RLL=4Ull?G5-I0J8)IigR z41IOlw|gH4<4Oy2cf^?UA@DHByJas?|=4H zPV~K048U@D?g$GOyg=7Z%fBL~5cwSMK*n$;S(09aZa!)0o{&oy$G@Clnn#b2{g>nvuy{6J&wV2+|*ic8wvVB&>3Ejl!0#>fX zb9(<$E~TPj7p8ldF?&A~)-CA!Su#?FO!-Nuxg!c|l%zBi?)v)>@ScDZABW&1C%yB!b1q-yo2t z*yF4$N}2)%H$FiO2c9umk~lei zolAFao$r&y=;8R9cDewQZ3MWn@+P29?7(+eaHE5w}f9n;4KCC$N*h>Zj0E~V%gokn)+ySwRF*iep`>-@5XWzI)*jTed&X5N{j0;|O~Qd${{S zT%vK}pxos8@?C;v=v0aWw7)ZZz@n1|YwSRdji9Cxu7p&D3*hDIiojD);cZkx`)bHRyGX}jz@aV~x{iL)pZVb6G{Y0sV=ryRG3 znO@&+kXxebP0e$TJXINPF@AR%>OM;E8lcvfQfUs)G6~FTpkG8g%%PO=>JzBCh=;sX&ymW z#75cShKCXJl!AxL4}eFo_ZK8-BU_!CGBuu6uU%9^r8JE->``bq)?V_+1zuSp-|LUn zXz6XYe0{!FC0Vl)v7neY?3C(eJDDj9^xB=|(>8*)BOPx)U7S*X6PCf6RFOu*GQ{tsE78;@7oO8yi;$h5{`+*!gdxd-8*%*2t;&HEwbr33o@^RO| zNEE1zsHsEgD~u$pUKfz~d2;svIbhVzT{tGPCz6VT?a(@QtY=`dDTwB`DtD(GUe;7v z!`VpGCUBhd4Nma*Bc0+`3{cTN!xq}&oyO6Ew?_}P@&orUwN9zJalXQJzuW6CE>)`>$Cjt zNGv|iOse{Zd`fGAC*Du5Pb^t8Dpq%&L8^PC_7rz)*-%JUweD!>uXAxIG&lV6)e~^J zkN2UFaRR9CUCgd0X!l;ri^)`yQvBL8IUD z2uLzF#I`pee2({?^V2t>^dez|7j;O#XL0UCiCc#NOG$&i4OHDHJAT2Lw_11`Ab06;QR?=AvT@ z*s7UFk|Jl!@l zG?i!l%pkj(;tL96s;kL>{r)huJ&ImP*8#sG-KOrS64T{F)5Uf;DL$p%rekv0Lq0=} zB9^#Ih_wK8(=7uD+%%l$PMoURFvEJlUDnGRArVJ%I$VhG!ewvV`aRH^C-hfS7%wee z3TDjTzoa37y&*L&mU@^lMSJU4YFRcV1 z*9H@U_^nQi_9K1BDG%!X74yqUEj3*@-0bki3iAeMl(0p7ZiL{fS_aO$a2-A~Pg$*t z#ZHS(Mjo4P2O=jDxX-QN%(0(+u>`Qz>WzaFcmV>iJ4jut_h4^^t1re)7r*#wXqyIV zHZI!YYcKB%x%nR@i(T7SxI{$W4}FH{-1eKsJKHAGoQ>E6UEwGVSG+_G`v; zcQ_otBS9|~5?T(-F%t_1Jo{RvT( zl0-Ew!0&Wpn9pPde0MRu_SH(p8|CD}Kd#rU9B`=|E8W~{R&0gI6K{^p0Cf8iAAxJi ztYi0vc*7W|^$34t4QUtA5{k8tWs@E18~88p@0e>3m=MmPR_spL#xe;ICSF>v>gD|w zEm!0cI)}6HN6E6HBJmE1f;cKEzVQ;h<7xQt;4dA$QWlV*+$2Qh)Z@04mOrT-5DH#+ zLehf9%RHnd?~Jg5t_KFGgRQh{F)HGCg4>d}wf+J5r(%V=22rzpDHRj+e-J;|IU6|t zBYxPB#Zg1mVR@ZKx-O!pBSY$gLrP@FfC0$Jy~gU{ zS@cF&x`Y=Smsvn9WN}LP^{7l-JT)d@%xx@aO3~Civ%@X3ca6ddR~8|?Q%(;f-xd&v$UmJ~j~!{pu2mpJ9K z@%w2uiDw@=;!_kFq~Z{oS6{Vu@$SEbRmo!Cm9y7%ZLF=jjXbEuyW8paSq`gJG_OVzdhKR+7Ur& zNb|L9!1PwTH*IT}N&KC2__Nb-HW^-@Yp4xj;XS@3*74_7aM8HR==mrOtMZC z;xoi^bx*D*0#)~6gf6T{u7lMSpW^Ntpk?1kjU+hq@P;6v_eM7A(lWq{z=4-yfaVqj zCy%k>xE&Bn+GDfb^f`nu)Z_7lX8eZXd{g-F!{zVj&1nG~%wPKHo5j1fBaFH1!F+DYj#JDE9B1l|4w`BBcB0G)`ShDoU3e}4hCd>r0F{b5k&vOXxuto&w0V7f{m)sfYqM{M>dN`KrcJN+ zb+)lPsy2E1ht~(s$>qaptmnhBZ%i(PJ=-5l(eE3eZQouZUqkE^^xu1VG>=t3&|P-E zy+Paext?v%e}Q{>d3XV?-|u8DQSbc95F=hw$~wPap+Cmug^KYK8_Iz^)T<2@3RT30 zyK4`j2zlXre7ZA-P1MT_DM46U5ul+`5Qs#GTCp&CJNPfN~-eEo%pbY-R!Xm)kePd5ZJxmfdwc0 z>YfTn%2NrD4C7u0_xOIMTT8g5Rk0f`>f9*Of6qu!dsIrk2i6HlW0q+k!zkO~+|0SW{EW zYGu~ksU%VhcOgf5B=yB63fPFJs?4slmJ_Z~&Zf#v)gkrkD#tkHn8DIp1xW6SP*~t~ z$eQ_PUlMVrsi}lDp~|>1f9Br8Wpd=`;3~#Hkh8I(^;@-@O@D=AKRx=1hGnd2YnE9A z$2#fYm3hrr*w*4)ER=fk9jdZ9d{~g!w$?scw#=cb3qz?z#vxB|Ul>ZgH9_Gxpdt4OD+?zGe`PB0 z=`z`;aNiih`T?EqDf)>jz+wRX-kz71NB_g&M{C$<#81QS@D2OUyl(q=(lv43%s8SNO*R#Uh)>CT%tflce zM3e=dBmvH~fDVrRkq;Op`h7C4Av>8*1h??lzSy12S1^87hf>Cu@qSaEqDO@^*Kqf_ zn#8i3a0(Q@O?L~mu9a&8p18||7OzK$R1INw$Bw+krbS7a2$M87d>w5`D@|P4m9z*a zyBw>c{j;F7TaE7SJJvzd>)?hx-ti}_!Ra~{aH9jOX@b!oJ+E}$s?=_>1=V3Su_I~Q z7o&Q&+a@ovtB|B@n)`G7HB3i;k4Ct$xUNCHHw9Jo_`lT_7Q4ciJS3wSu;uzmm;+#U zh$D}N{Z-F7(9fjGTG7rp6!bKUT9x!vix^6K3V!NI{B9I`r#`QYd_*|UrI}xm|LYas zlk&?fz9;4#BjS-^fM%_d2}QkCT6zn(*)m~sV7oE(HczhIE#B(0Zrr12OV|!W^!-hC zivT|aCiO%Cxn^Pzr3MS}CghHGB!dfvB-XE~pLe{7?Exw{w%`zR{NxRn(KP2r%{@X) zIXf~=g(PI9H;y6CLm3nbPnKHS_x5^&X{g6Y$uEdCzu(eGG#2g0H@+K8>g?X^BI*K< zs1J8lAdfFN4a$IQE=&0ic)mgZxoax(^#X%3PYhIEXd`-QGT)`r+_oI z)cqiKBN4p@gs~g2jEpJjxul*ur@}atcR+6&r7=fMOzV_@kw4fwr_YWu=f|4}lS~9T zBY1d>Xx*}zVGXOVv@&yjl7H>fl-`2X3%-dXy!l$G-FK8dmNNx~lyTwceM-)WNV z=qApxTvn^1+tz7MmEj!SaZgrcM&@W2Y8bwq8m;UKwg%lDq0Q$P&R6)$HlNEN}uT%w~5OsVB+;Pu=Cs+%ngEf+>9od#7p*$Yw$#5x?KNbhRei5 zd1elHpXLnWi)@`Ul|83T>CMi=%e*xE?!TXo(0p+jj^NSBQY%ff7B3NlPnWUBNF$ya z-`rUo``Fc}N^_m=I$bdAox>##$ol+lskcI-^}J&j*~R0Hd1;@A zTn!aCkoZKC+q+qf_1(qd{-dE1aiR=0Q#oNTFEdD_5{a?s!dZoVmw*sLgByB*8VcBY zKhmr@Z$FsgE`IYkQB6ps4OYbE9&lkvtCQhv4;|$R0%vhyvdt#4L)2*~jJ!B};$Sqg zKi)+`?+^*K_nsr=8^B}Kj5DpT0uj-+!c67_V*H^=3qLULgC-x9NV!n@4C2&LuHptn zs6bvH>rh7*k@6JFNH&Dh_9|>8veqRl?DNhbp+}dL$UW3Xm%zZb8g&QZBey4?(S#Si z)_y=g65alf0Uh4*IUtE&;7QBZA^UeAik;hkAtv6D^)LgBsA4yj&DHepkhTSp{c93P z6haF2a)XWRq!8;x=e1m~-+Yo*|MXgUy zpc&#{sqzvg6g>qn<%hPhJZb@c`usCNL{OACvVjEwk;Mc7q5AiK^?z}PYBdip)Fr&X zJzG=Lrp#QNptR;hjz@%mdPNzeV0}_aPHDpLnkI>GV{udTTU&&ADq8i`P2212?u6Cs z`076lz(m0{gDsc7);A7o(ls|*(p0ysQ~&;BN)Ab7J1_U!X#1o4#plM2z%J+0_@xj; zR@KNEvkfrV%+1?Ij)z^7xc3XocGkYodWUpyirGs%rv@9+8Y=c9dFZQ>zcB#u&p$e8*zy%2)2J1}PJ z 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

PSfR@x>@y^`d~o# zw6QFrgW*oeTo0C`bzoDY#7kf7@Pu9cAY?cTbL^_8@)ly6q>E#m)1>BjHoH5=#t4Q7 z;XM4&<2KenWHkLUw=n1#{73*Mj+K?wB~xWHWu9UkVUs2)_a@Sd2OF^D?mzv?4Xfh@ zo^^)cS1i;>TDj|0DL1^N?yB|jx8MJA8i}C=(Ipi~3iy9T%3n34V7bLQKE)Gbvi6w_H->h8a$F9i+YLk$|g*MzP}6Lb33|~QBbr05ME(7r{fnm4(;Cl`1N_MJ7PCRow`Hjc(PR+ zeqY!gQ`QM9RrvTFvJT8)e=9W@6c2Ke&(c6_Yd>QVt)w8yi_~dT;1Zsy0eERGRN(sM zbvEG|&B3UB|G;U+@E z0JK-AIFX-C|#in~?=QeXh2yA0Nl2T|K;B zU+?j|QRh5qcO|h^?SM7KwJY1%K03r^a7npDg^Sj&xf`5FlIUcES{ z3D2o4TTpks{9uh`8CEh)6<-CUPD|MvxSwrXe?p`oxBzd7c0$AjVXq~tY20!EFH3bS zDZ~zZ>4O%L)itTzS$viAjw-RoSW*)g)4e4mF<&LkGWYUsT;#HJdJ*ebD9_*UGO-~d za-CTXk5=p6-8?TxOu(&(9HOj4Uv@qlCDZ1W;ZNj(bu*#Sb9*I}2%C&;)zBWbHUVM)4~^ zfVxO18dU=_w6czTgI%y8i96SyI&3RT0BEaXk1CWUh6`WgF4!^}`!SFt3GlNuHkV}Zm zB+Askwp9-qa3xj<3I)eXBocHI^DtA;U%aUG$Av@kv)3H!j}Ebyfv!44(a2Af_=}(D z*>YkjnSy7HtG)((9Lt3!O@gI6TtivD3FQ?@>`3(ACi7J8ings@vT8r@1XucJ`REq9 z93-oC?{A)$Ato@Wp~}hcc^al9JNP1&562E^cXL#ugz@Nn;oqOcTuQRPqVs5a{|-u@ z7h!o!pUX_Mv3nLVQBCV1s`q*Yi}!YoCnj*H#y6U7XSiXcx%~iIb?{W)GT7|T)t&d9~DK;`lP8!5tq!G?H#=9b13GN>lWlyKGNcMHYCJ+%A4Qgp_6tO z*T4TXCk9Y4-PRoJ2oWvS=(fHrSgK8)d4I;UM%Ph@4lnn^ri5-Q4l@zX1% zOXSRu{XxvV(-9M+r~%2#dl1`j>A+|p%540}e^F6VI5K9amZ)H5VR|YW4ErWaAV>3Y zHwM>^dE0o;W%Ksy87|+lYm?ZBke>E1Dl&URS}0|bI@4n!EP7P`Di~XQtO{!Gn0BMY z2g6)M?z;eMPy#k%!pDHwiDB*P{46DsjF}We7G^EW0gG%BehJZBEub%ok!0OP{(38K zE9WFPhz`-ol4t39%V4$7;EdUl{s^V7ZoMC|73Z13-2fRYs5m@!bL#s2*z(#Yr#%Ki z$jZ)Sn1*|<)d66Qeyft*liR$gB>TN-##}jl zuTf~xcN=9r5)GakeYGy(iB;)?SmOoep6kgYRi7RN42|lC32aROie<6RKqJ=^{>3NnN%{k*mJAcD^QZLkIQ>Qe>(N6z1 zR+AdRYnVtBJ=xx2B|e&^vDUxZ87t&o(bNC6z;OIiVE&xl_#c63*ncS}l+e(NiQz>1 zQbrj|9LP?bds4a5B2~BW;~xUUaHT_?2$slcyW2at6-+c}9Uza0guugd>wI8#aPIN( zv`^zxT;fK#9aMk2yE??R)(?Df?1l!kFdsD6Oei~I)K`*$sfkr~PiZhq@72iV?snbNrx<1K^A!0X{~iP$A*@l0v6zr<~gs3f=<=SS;WE zk(uO^qRFJnuzUb@2AR-7F*jGpNU;>MIuJjN1QXG7On+j4gpfuJxQp8WUpeSE)etZ< znfpg(@|y%%J;-Dhy{pjsSt;)+y!!;e3uo~WQ(_k9T44HaU+gqx>Vn7<$q}5{v0x3% zOlELrrN*{qE}i!wWB;Ku1)iiSNe)2>r4q4X+Fv;;QNnOdbc>&E$?6L6BDUgxPomml z8yQNufG0{^(~L|Uy^f4gpyiEE+TIO=BP2S|W*y3KGG9_xO}m3E-oA>^PM_4GjXx~V_o8LPRVOQh2F%N5?KpK!aPVB>#F(!{ z|4LbD>sgGPQNskvLHG3IA^}7LL@8 z9RCvx65Oz&v7*$E^~KqcXs*(!sa)pJIe!=8Kfs9g_yY_BU>Ve*_QC*6IVkc!!6<@b zD581)`f*n*e4FgsSn7(k@bN`qcIiLBc=#6>>Hh?S;twz;<^L}j>4&-|Pq*kmFnELH z7P`c{l@ns=*4Y5$13U?t(@%-1la#`8o!!&L$()uGwT`hI+rQdRTfSX_(;hrYsTHmE zz$}Av1C1`X16sBYzu^C4bcJbhFaKeV|94Rd*FVAdGh_XSXrx0>?t2~6nbE+ZFqA-n zC=iRlSP2WxH=FO$4~w2^8QN5YRBuVeY~?1pZh<{g_Af;uoqz=dXJ&HoIIuc6|1(VG zO|b2AdxKW%mRY;8#dXnKbF!Np@C=%906L&O@+Auh*cm^$km01PN(bIKPr_SS3wnIWs@~LFx6t)S zn(5mzuy7J^{wq}8DPQSNlM5J^WO14w0R~0I1XnxMk&l5Op=0jzRRCHBAc0`E?YxB*VigvLwk z4=lnleIrv{vDp8>qJLU#`gLFSv}F2%zy-%9ng_D-jR1_Ku-POzrKfQ7d?cD!r-qy$ zU;IU!k?s%=UooCIy4}ZGoeZscvb%F{GWl1MJ!7EUf`DAN(H~eaQ_t=s{{xHGYRU*_ z+3llAOipsHp%J%@1d`jTE$R+TTe?Y|9;cu96>(a5N?$5cOeU0O%U$Jfy#A7(j%f){ zjsuJNoIp0X|E{S2ucC>vwV9)kjkU9py~Dp23`a(NlL8)12;3}SDy@aM=1?oa#Oz6@ zpu+h4Ef=Q4x|h{@X>8;I=XsU)5$riXtP~O%aR<+sAbQBdrp^81lWpiO-Y%Y4z--WN z{&Gzw&+#(kZa|Ll!vqKQ+~A31CFFQnBlk_w?6nBr^@+-l-AqT?>t~N|lt~xki|vd_ z(EB&aiyo+2F4HI4hbc%^?>`

7-Ez1gX}apQTA?;Xm8w!U&MgC)$*lmwUUbE6b} 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