feat: add seat firmware workbench and OTA delivery

This commit is contained in:
vee
2026-09-16 17:55:30 +08:00
parent 3eeca2ea75
commit ab8e43050c
70 changed files with 22594 additions and 316 deletions
@@ -13,6 +13,7 @@
#include "bsp_seat_backrest_heater.h"
#include "bsp_seat_fan.h"
#include "seat_controller_thermal.h"
#include "seat_feature_profile.h"
volatile uint32_t g_seatMoveResetReason = 0u;
volatile uint32_t g_seatMoveInitResult = MOTOR_API_FAILURE;
@@ -59,11 +60,13 @@ int main(void)
}
Motor_SetWatchdogServiceEnabled(true);
#if SEAT_FEATURE_THERMAL
if(!SeatControllerThermal_Init())
{
SafetyManager_LatchFault(SAFETY_FAULT_DRIVER);
SeatMove_HoldSafeOff();
}
#endif
if(!SeatMoveApplication_Init())
{
SeatMove_HoldSafeOff();
@@ -72,7 +75,9 @@ int main(void)
for(;;)
{
SeatMoveApplication_Service();
#if SEAT_FEATURE_THERMAL
SeatControllerThermal_Service1ms();
#endif
if(SafetyManager_IsInhibited())
{
Motor_ForceSafeOff();
@@ -7,6 +7,7 @@
#include "seat_backrest_heater.h"
#include "seat_backrest_heater_config.h"
#include "seat_fan_config.h"
#include "seat_feature_profile.h"
#define SEAT_CONTROLLER_THERMAL_CONTROL_ID (0x29Eu)
#define SEAT_CONTROLLER_THERMAL_CONFIG_ID (0x2AAu)
@@ -247,6 +248,7 @@ static void SeatControllerThermal_HandleControl29e(
fanGear = (uint8_t)((frame->data0 >> 16u) & 0x0Fu);
heaterGear = (uint8_t)((frame->data0 >> 20u) & 0x0Fu);
#if SEAT_FEATURE_VENTILATION
if(fanOn == 2u)
{
SeatControllerThermal_StopFan(1u);
@@ -266,7 +268,14 @@ static void SeatControllerThermal_HandleControl29e(
g_seatControllerThermalInvalidCount++;
SeatControllerThermal_StopFan(0u);
}
#else
(void)fanOn;
(void)fanMode;
(void)fanGear;
SeatControllerThermal_StopFan(1u);
#endif
#if SEAT_FEATURE_HEATING
if(heaterOn == 2u)
{
SeatControllerThermal_StopHeater(1u);
@@ -286,6 +295,11 @@ static void SeatControllerThermal_HandleControl29e(
g_seatControllerThermalInvalidCount++;
SeatControllerThermal_StopHeater(0u);
}
#else
(void)heaterOn;
(void)heaterGear;
SeatControllerThermal_StopHeater(1u);
#endif
}
static void SeatControllerThermal_HandleConfig2aa(
@@ -308,16 +322,23 @@ static void SeatControllerThermal_HandleConfig2aa(
g_seatControllerThermalInvalidCount++;
return;
}
#if SEAT_FEATURE_VENTILATION
s_fanConfiguredMaxGear = (fanConfig == 1u) ? 1u :
((fanConfig == 2u) ? 2u : 3u);
#endif
#if SEAT_FEATURE_HEATING
s_heaterConfiguredMaxLevel = (heaterConfig == 1u) ? 1u :
((heaterConfig == 2u) ? 2u : 3u);
#endif
#if SEAT_FEATURE_VENTILATION
if(s_fanRunning &&
!SeatControllerThermal_RequestFan(s_fanLastVehicleGear))
{
g_seatControllerThermalOutputFaultStage = 4u;
SeatControllerThermal_LatchOutputFault();
}
#endif
#if SEAT_FEATURE_HEATING
if(g_seatBackrestHeaterAppliedLevel !=
SEAT_BACKREST_HEATER_LEVEL_OFF)
{
@@ -327,11 +348,13 @@ static void SeatControllerThermal_HandleConfig2aa(
SeatControllerThermal_LatchOutputFault();
}
}
#endif
}
static void SeatControllerThermal_HandleMode3ce(
const bsp_seat_move_can_frame_t *frame)
{
#if SEAT_FEATURE_HEATING
uint8_t mode;
if(frame->dlc != SEAT_FAN_CAN_DLC)
{
@@ -347,6 +370,10 @@ static void SeatControllerThermal_HandleMode3ce(
g_seatControllerThermalInvalidCount++;
SeatControllerThermal_StopHeater(0u);
}
#else
(void)frame;
SeatControllerThermal_StopHeater(1u);
#endif
}
static void SeatControllerThermal_HandleSwitch42a(
@@ -363,6 +390,7 @@ static void SeatControllerThermal_HandleSwitch42a(
}
fanSwitch = (uint8_t)(frame->data0 & 0x03u);
heaterSwitch = (uint8_t)((frame->data0 >> 2u) & 0x03u);
#if SEAT_FEATURE_VENTILATION
if(fanSwitch == 1u)
{
if(!SeatControllerThermal_RequestFan(s_fanLastVehicleGear))
@@ -375,6 +403,11 @@ static void SeatControllerThermal_HandleSwitch42a(
{
SeatControllerThermal_StopFan(1u);
}
#else
(void)fanSwitch;
SeatControllerThermal_StopFan(1u);
#endif
#if SEAT_FEATURE_HEATING
if(heaterSwitch == 1u)
{
if(!SeatControllerThermal_RequestHeater(s_heaterLastVehicleGear))
@@ -387,10 +420,15 @@ static void SeatControllerThermal_HandleSwitch42a(
{
SeatControllerThermal_StopHeater(1u);
}
#else
(void)heaterSwitch;
SeatControllerThermal_StopHeater(1u);
#endif
}
static bool SeatControllerThermal_RequestFan(uint8_t vehicleGear)
{
#if SEAT_FEATURE_VENTILATION
uint8_t physicalGear = (vehicleGear >= 3u) ? 3u : vehicleGear;
if((vehicleGear == 0u) || (vehicleGear > 5u))
{
@@ -418,10 +456,15 @@ static bool SeatControllerThermal_RequestFan(uint8_t vehicleGear)
return BspSeatFan_SetDutyPercent(s_fanTargetDutyPercent);
}
return true;
#else
(void)vehicleGear;
return false;
#endif
}
static bool SeatControllerThermal_RequestHeater(uint8_t vehicleGear)
{
#if SEAT_FEATURE_HEATING
uint8_t physicalLevel = (vehicleGear >= 3u) ? 3u : vehicleGear;
if((vehicleGear == 0u) || (vehicleGear > 5u) || !s_heaterModeValid)
{
@@ -440,6 +483,10 @@ static bool SeatControllerThermal_RequestHeater(uint8_t vehicleGear)
g_seatControllerHeaterFeedbackRaw = physicalLevel + 1u;
s_feedbackPending = true;
return true;
#else
(void)vehicleGear;
return false;
#endif
}
static void SeatControllerThermal_StopFan(uint8_t feedbackRaw)
@@ -8,6 +8,7 @@
#include "safety_manager.h"
#include "seat_controller_thermal.h"
#include "seat_dynamic_mode.h"
#include "seat_feature_profile.h"
#include "seat_motor_manager.h"
#include "seat_move_config.h"
#include "seat_move_store.h"
@@ -336,7 +337,9 @@ void SeatMoveApplication_Service(void)
}
else
{
#if SEAT_FEATURE_THERMAL
SeatControllerThermal_HandleFrame(&frame);
#endif
}
}
SeatMove_ServiceDispatcher();
@@ -363,7 +366,9 @@ void Motor_CalibrationServiceHook(void)
}
else
{
#if SEAT_FEATURE_THERMAL
SeatControllerThermal_HandleFrame(&frame);
#endif
}
}
if(g_bspSeatMoveCanBusOff != 0u)
@@ -533,15 +538,28 @@ static bool SeatMove_ParseCommand(const bsp_seat_move_can_frame_t *frame,
{
case SEAT_MOVE_OPCODE_MOVE_ABSOLUTE:
case SEAT_MOVE_OPCODE_MOVE_RELATIVE:
#if SEAT_FEATURE_POSITION_CONTROL
break;
#else
*reject = SEAT_MOVE_REJECT_BAD_OPCODE;
return false;
#endif
case SEAT_MOVE_OPCODE_MOVE_TIMED:
case SEAT_MOVE_OPCODE_STOP_MOTOR:
case SEAT_MOVE_OPCODE_STOP_ALL:
break;
case SEAT_MOVE_OPCODE_CALIBRATE_RANGE:
case SEAT_MOVE_OPCODE_HOME_KNOWN_RANGE:
case SEAT_MOVE_OPCODE_QUERY_STATUS:
case SEAT_MOVE_OPCODE_CLEAR_FAULT:
case SEAT_MOVE_OPCODE_START_DYNAMIC_MODE:
case SEAT_MOVE_OPCODE_STOP_DYNAMIC_MODE:
#if SEAT_FEATURE_POSITION_CONTROL
break;
#else
*reject = SEAT_MOVE_REJECT_BAD_OPCODE;
return false;
#endif
case SEAT_MOVE_OPCODE_QUERY_STATUS:
case SEAT_MOVE_OPCODE_CLEAR_FAULT:
break;
default:
*reject = SEAT_MOVE_REJECT_BAD_OPCODE;
@@ -0,0 +1,27 @@
#ifndef SEAT_FEATURE_PROFILE_H
#define SEAT_FEATURE_PROFILE_H
/*
* Repository default is the complete controller. The workbench build script
* replaces this header only inside its isolated staging tree so every OTA
* task receives the exact capability profile selected by the user.
*/
#define SEAT_FEATURE_POSITION_CONTROL (1)
#define SEAT_FEATURE_VENTILATION (1)
#define SEAT_FEATURE_HEATING (1)
#if ((SEAT_FEATURE_POSITION_CONTROL != 0) && \
(SEAT_FEATURE_POSITION_CONTROL != 1))
#error "SEAT_FEATURE_POSITION_CONTROL must be 0 or 1"
#endif
#if ((SEAT_FEATURE_VENTILATION != 0) && (SEAT_FEATURE_VENTILATION != 1))
#error "SEAT_FEATURE_VENTILATION must be 0 or 1"
#endif
#if ((SEAT_FEATURE_HEATING != 0) && (SEAT_FEATURE_HEATING != 1))
#error "SEAT_FEATURE_HEATING must be 0 or 1"
#endif
#define SEAT_FEATURE_THERMAL \
((SEAT_FEATURE_VENTILATION != 0) || (SEAT_FEATURE_HEATING != 0))
#endif /* SEAT_FEATURE_PROFILE_H */
@@ -2359,6 +2359,9 @@
<file>
<name>$PROJ_DIR$\..\Config\seat_move_config.h</name>
</file>
<file>
<name>$PROJ_DIR$\..\Config\seat_feature_profile.h</name>
</file>
<file>
<name>$PROJ_DIR$\..\Config\seat_backrest_heater_config.h</name>
</file>
@@ -1,12 +1,12 @@
:020000041000EA
:100000000000022801EC00103DF4001055F1001032
:1000000000000228F5EB0010E1F30010F9F00010F9
:1000100000000000000000000000000000000000E0
:1000200000000000000000000000000015F20010B9
:10003000000000000000000041F4001045F4001032
:10002000000000000000000000000000B9F1001016
:100030000000000000000000E5F30010E9F30010EC
:10004000CDE50010F1E5001015E6001039E60010CE
:100050005DE6001081E60010A5E60010C9E600107C
:1000600049F400104DF4001051F4001055F4001044
:1000700059F400105DF4001061F4001065F40010F4
:10006000EDF30010F1F30010F5F30010F9F30010B8
:10007000FDF3001001F4001005F4001009F4001065
:1000800000B5010009B2002905D40121C006C00E47
:100090008140C648016000BD00B5010009B20029D9
:1000A00005D40121C006C00E8140C148016000BDD9
@@ -78,7 +78,7 @@
:1004C000060091204000FFF779FFF106C90E009168
:1004D00071090B051B0D5B1E2200D2B20321C0B2B5
:1004E000FFF7F8FED3BD80B51300A74A13600023C1
:1004F000137203F048FE01BD24F3001000B5C0B232
:1004F000137203F048FE01BDC8F2001000B5C0B28F
:10050000042801D2012000E00020C0B200BD00B5E7
:10051000401A00B2012801DB012000E00020C0B237
:1005200000BD00B5BE490978002901D000201FE0B8
@@ -313,8 +313,8 @@
:101370002000FFF723F801220321C0B2FFF762F833
:10138000884C200003F0A2FE00228749200003F0D1
:1013900063FD2000FEF720FF13BD0000FC1B0028AA
:1013A00034E700108CEB0010C21C00283CEE00104B
:1013B0002CF30010CD100010F2B5060000273C0001
:1013A00034E7001080EB0010C21C0028B8EC0010DD
:1013B000D0F20010CD100010F2B5060000273C005E
:1013C0000098002801D1002077E0380000990880BB
:1013D00003F0AEFBCD490978002903D003F0ACFB44
:1013E00000206AE00121C94A117003F0A5FB6D4D90
@@ -343,9 +343,9 @@
:10155000FFF7D5FF002806D068460078E4B2A04225
:1015600001D1012000E00020C0B232BD80B5B44AF4
:1015700000211160017C1172C168806802F003FED5
:1015800001BD00006012002808F00010000658405D
:1015800001BD000060120028ACEF001000065840BA
:1015900080065840000758408009584000B4C404F1
:1015A0000024F400000064408CEE0010F8B5012621
:1015A0000024F4000000644030EE0010F8B501267D
:1015B0003000002468460470564804700121A14898
:1015C000FEF7B8FDC24F01213800FEF7B3FD9E4D76
:1015D000280003F003FE01219C48FEF7ABFD280024
@@ -1109,12 +1109,12 @@
:104530009BB21B0A9BB2174C14401B02FF221202B3
:104540001A4022430B78052B05D10979C9B2FF2304
:104550009A43114304E04978FF239A43C9B21143B7
:10456000016300221000F2BD0CF40010FFFFFBFFFE
:10456000016300221000F2BDB0F30010FFFFFBFF5B
:10457000FFFFFCFFFFFFFFF8FFFFFFBFFFFBFFFF99
:10458000FFFDFFFFFFFEFFFFFFCFFFFF10F4001056
:10459000FFFF00FFFF00FFFF14F4001018F40010ED
:1045A000FFF3FFFFFFFCFFFF1CF4001020F40010DE
:1045B00024F400100168802212060A43026070474A
:10458000FFFDFFFFFFFEFFFFFFCFFFFFB4F30010B3
:10459000FFFF00FFFF00FFFFB8F30010BCF30010A7
:1045A000FFF3FFFFFFFCFFFFC0F30010C4F3001098
:1045B000C8F300100168802212060A4302607047A7
:1045C000016849004908016070474068704701610F
:1045D00070470069704781607047006A704700004B
:1045E00030B4434351435D18010C0C00130C5C4381
@@ -1169,7 +1169,7 @@
:1048F000142060432818007C787103A914206043B9
:104900002818C06802F0EAFC0028E7D0300002F066
:10491000E1FC002003E0012071490870012019B07A
:10492000F0BD000024F3001000000440FF00FFFF72
:10492000F0BD0000C8F2001000000440FF00FFFFCF
:10493000FF0000FFF8B584B00E00C0B20290002561
:1049400028006946088004212A0003AC200002F0F8
:1049500033FC2C0062480078002806D0674F387876
@@ -1191,16 +1191,16 @@
:104A500001D0002018E0631E042201212800FFF786
:104A6000EFFD002801D000200EE0042201212800E3
:104A7000FFF771FE002801D0002005E0009821001A
:104A8000FFF7C0FB38600120F2BD0000FCF200100F
:104A8000FFF7C0FB38600120F2BD0000A0F200106B
:104A90007CB505001D4C062100226E46300002F058
:104AA0008BFB6946280002F011FE6846007800285A
:104AB00003D1641E002CF4D101E0012000E00020AD
:104AC00076BD000014F10010E0B511490CC9083999
:104AC00076BD0000B8F00010E0B511490CC90839F6
:104AD00069460CC10839694602F0A2FD07BD000015
:104AE000B71C0028901B0028A81B00282CEA0010E7
:104AE000B71C0028901B0028A81B002820EA0010F3
:104AF000FFC99A3B00CA9A3B00109040B81C00289E
:104B00005F8DCB00608DCB0001000100A08601000D
:104B100004F300100000000000000000000000008E
:104B1000A8F20010000000000000000000000000EB
:104B2000801C800803D0401C801EFCD100BF704751
:104B3000EFF3108072B6704780F3108870474030F2
:104B4000016810220A430260704740300168082261
@@ -1234,10 +1234,10 @@
:104D0000A54394000C2222402A43C264174A146827
:104D10004C228A5C1A400725AC4322434D240C5D8B
:104D200023407024A2431C01702323401343436596
:104D3000497D816700221000F2BD0000F8F30010E9
:104D3000497D816700221000F2BD00009CF3001045
:104D4000FFFFFBFFFFFFFCFFFFFFFFF8FFFFFFBFC1
:104D5000FCF30010FFFF00FFFF00FFFF00F4001056
:104D600004F40010FFF3FFFFFFFCFFFF08F4001046
:104D5000A0F30010FFFF00FFFF00FFFFA4F300100F
:104D6000A8F30010FFF3FFFFFFFCFFFFACF3001000
:104D70000168802212060A43026070477830016899
:104D800001220A4302607047C16F0800C007C00FCC
:104D90007047010070310A68012313430B60006FF4
@@ -1246,7 +1246,7 @@
:104DC0000B79002B01D00122FFE763005B08D207BB
:104DD0001A430B4B0024095F89005A5000E0064833
:104DE00030BD00B5074A1368002B03D0126800B22B
:104DF0008000115000BD000001005600F4F30010C7
:104DF0008000115000BD00000100560098F3001023
:104E0000008020402412002870B4103A03D378C9DF
:104E1000103A78C0FBD2530701D318C918C001D586
:104E200008C908C0D20704D30B880380891C801CE2
@@ -1296,8 +1296,8 @@
:1050E0000021C1239B00C15080239B00C25081221C
:1050F00092008150124A8150154A8150114A8150C4
:10510000114A8150134A8150134A81507047000060
:105110000140AA00DCF30010E0F30010E4F30010FB
:10512000E8F30010FF3FFFFFFFFEFFFFFFFFFFFC64
:105110000140AA0080F3001084F3001088F300100F
:105120008CF30010FF3FFFFFFFFEFFFFFFFFFFFCC0
:10513000FFFDFFFFFFFBFFFFFFF7FFFF0F00000377
:10514000C80E0000C80F0000880F0000EFCDAB00B4
:10515000880E0000080F0000480F0000F8B504009A
@@ -1313,7 +1313,7 @@
:1051F00002F0DAFE0020E075E52040000A49086070
:10520000002002F031FF2C0030681049FEF7FAFF51
:10521000002122000023FFF7E3F9FFF79FFF70BD95
:10522000181B00288CED0010F01B002810E000E097
:10522000181B0028A0ED0010F01B002810E000E083
:10523000BE1C0028FFFFFF00010000FFFFFFFFFF73
:1052400014E000E0941C002818E000E040420F0049
:1052500043490A680860704742490A680860704715
@@ -1402,8 +1402,8 @@
:1057800000B5114B1870114B1970002A05D0117813
:105790000F4B197091880F4A1180C0B2002803D0B6
:1057A00001209949087002E0002097490870012003
:1057B0009649087000BD0000AC1A002834F40010AF
:1057C000D0F2001038F40010D71C0028D81C002894
:1057B0009649087000BD0000AC1A0028D8F300100C
:1057C00074F20010DCF30010D71C0028D81C00284D
:1057D000D91C0028B01C0028F8B50500002D05D004
:1057E0000C00002C02D01600002E01D1002039E060
:1057F0000A2100222700380001F0DEFC68682070D2
@@ -1866,7 +1866,7 @@
:107480009205C02000041040084300998860E08AFB
:10749000390C090480B20843218B82B208041043DE
:1074A0000099C86021001A31009800F055F801E0F9
:1074B00020480190019805B0F0BD00004CF3001089
:1074B00020480190019805B0F0BD0000F0F20010E6
:1074C000FFFEFFFFFFFDFFFFFFFBFFFFFFFFFFDFF3
:1074D0003830016801220A43026070473830016881
:1074E00001229143016070473C30016801220A4348
@@ -1874,8 +1874,8 @@
:1075000014D05B6A1C000C80190F0C00E407E40F18
:107510001470990F0C00E407E40F9470590F0C00DD
:10752000E407E40F5470D90FD17000E0014810BD9A
:10753000FFFFFFBF0100DA0050F3001054F300100A
:1075400058F300105CF3001060F30010FFFCFFFF25
:10753000FFFFFFBF0100DA00F4F20010F8F20010C4
:10754000FCF2001000F3001004F30010FFFCFFFF3A
:10755000FFF7FFFFFFF8FFFFF0B50A000023190057
:107560006F4C2468002A49D05579002D01D001269E
:1075700000E01E006B4D2540B4028026F60034402A
@@ -1905,8 +1905,8 @@
:1076F000E407E40FCC7053081C00E407E40F4C705F
:1077000013001C00E407E40F0C7092081300DB0761
:10771000DB0F8B7000E0014810BD00000100DA00B3
:1077200064F30010FFFBFFFFFFFDFFFFFFFEFFFF05
:1077300068F3001000B5012027490A68520802408A
:1077200008F30010FFFBFFFFFFFDFFFFFFFEFFFF61
:107730000CF3001000B5012027490A6852080240E6
:10774000002A01D0022001E00968084000BD274856
:1077500001680800C007C00F704700B5C21E022AAA
:1077600001D3012002E0C01E0860002000BD1CB54E
@@ -1929,7 +1929,7 @@
:107870008007800F32BD0000401626400F48006888
:10788000000AC0B270470E480068000AC0B27047D4
:10789000000000000019264010002740181B002897
:1078A000D4EC00105B080000F01B002840122640BA
:1078A00008ED00105B080000F01B00284012264085
:1078B00004480068000AC0B2704700001010204061
:1078C0000C1020400810204038B50400072C0ED3BF
:1078D000124D18221249280000F066FB0020E875BE
@@ -1937,7 +1937,7 @@
:1078F000A10040584007400F010009B2042907D1F8
:107900000448A1004058C106C90E80204000084329
:1079100000B232BD0001264000122640181B00288C
:1079200030ED0010F01B00281E4909688A03920BF5
:1079200054ED0010F01B00281E4909688A03920BD1
:107930000260090E0A00D207D20FC2711749096806
:107940000A00D204D20C82800A00120CD2B2028148
:10795000090CC9B24181264909680F220B00134066
@@ -2030,7 +2030,7 @@
:107EC000002805D002280BD006D303280CD00FE0E1
:107ED00000982860002032BD009840082860F9E72B
:107EE000009880082860F5E70098C0082860F1E74E
:107EF000002028600320EEE7181B002830ED00105A
:107EF000002028600320EEE7181B002854ED001036
:107F000063090000F01B0028001626407F090000CE
:107F1000001926401CB5040069460020FFF7AFFF9A
:107F20000100C9B2002903D000212160C0B209E0DC
@@ -2352,7 +2352,7 @@
:1092E0000C482A00D2B2805CFFF724FE002808D088
:1092F00068463221405C002803D020000124AC40A5
:1093000004436D1C2800C0B20428E8D32000C0B27A
:109310000FB030BD28F40010C027090000B5017857
:109310000FB030BDCCF30010C027090000B50178B4
:109320000A290ED0417804290BD04178062908D0AB
:109330004178072905D04178082902D040780928CA
:1093400001D1012000E00020C0B200BDF1B590B015
@@ -2378,7 +2378,7 @@
:10948000691848832B895A2270682100C9B24900A3
:10949000415A8B482700FFB2C05DFFF719FC002836
:1094A000E1D1002000E00120F2BD0000FFFF00003C
:1094B0009CF00010781A0028F8B590B00700002F33
:1094B00040F00010781A0028F8B590B00700002F8F
:1094C00004D008003B7BC0B2984201D30020BEE02C
:1094D000B8680B00DBB218246343C0180190904EAB
:1094E00002207070F17001980078B07032610198BC
@@ -2411,13 +2411,13 @@
:10969000641C2000C0B2042810D22B89B27D2000A7
:1096A000C0B240002818418D1E482700FFB2C05D9F
:1096B000FFF70EFB0028EBD1002000E00120F2BDF7
:1096C00028F4001038B5164D2C89641C200080B297
:1096C000CCF3001038B5164D2C89641C200080B2F4
:1096D000F8F7A0FFF8F750FE200080B2FEF756FF23
:1096E0002C8103206870F9F724FB286131BD38B55F
:1096F0000A000B4BD978491C0C00057BE4B2AC4244
:1097000003D30021DC88641CDC80C9B2FFF7D4FEDF
:10971000002801D1FFF7D6FF31BD000030750000F1
:10972000781A002828F40010F8B5C0B0002001F025
:10972000781A0028CCF30010F8B5C0B0002001F082
:1097300046FD20A9002000F098FA070069460120A4
:1097400000F093FA04003800C0B2022801D10125CC
:1097500000E000252000C0B2022801D1012600E06F
@@ -2591,7 +2591,7 @@
:10A1D0001500EDB22D015D196D6865601500EDB2D9
:10A1E0002D015D19AD68A5601500EDB22D015B195B
:10A1F0001B7B2373521C1300DBB2102B00D30022F5
:10A200000A70FAF799FC012032BD000024F3001017
:10A200000A70FAF799FC012032BD0000C8F2001074
:10A2100000000440FF00FFFFFF0000FFF1B594B015
:10A220000D0016005021002422006F463800FCF774
:10A23000C3FF149880210901884203D24E48006868
@@ -2639,7 +2639,7 @@
:10A4D00059188C60027070BD2817002800B5C0B2F2
:10A4E000002802D101200F49086000BDE01B0028B0
:10A4F000DC1B0028D01B0028D41B0028005A620255
:10A500006CEF0010A0EF0010D4EF0010800131407C
:10A5000010EF001044EF001078EF00108001314090
:10A51000C81B0028D81B0028B91C0028BA1C00281A
:10A52000CC1B0028E41B002800B5BFF34F8F3D482B
:10A53000AE490860BFF34F8F00BFFDE7AC490A6822
@@ -2875,9 +2875,9 @@
:10B39000D2B26946002002F027F900280CD0094DEE
:10B3A000182209492800FCF7FFFDEC75F520074934
:10B3B00008600020FCF758FE05B0F0BD00E100E099
:10B3C0001CED00E0181B0028E8ED0010F01B002821
:10B3C0001CED00E0181B0028ECED0010F01B00281D
:10B3D0008BB100100800244000F4244000F5244004
:10B3E000BB1C0028BC1C002814F3001000B500286A
:10B3E000BB1C0028BC1C0028B8F2001000B50028C7
:10B3F00001D0002901D1A04808E0A04A904206D11E
:10B4000000200880802080014860002000BD9C4A08
:10B41000904205D18020800102000A804860F4E754
@@ -2930,7 +2930,7 @@
:10B70000AD5DA4B2ADB2AC42EBD370BD000452400B
:10B7100000065240000852400000544000025440CD
:10B7200000045440000654400008544058080028C3
:10B730000CF3001001085240301B0028F1B5A8B0EE
:10B73000B0F2001001085240301B0028F1B5A8B04B
:10B740000020009000202898FFF7BAFE0700002F85
:10B7500029D0289E306D97490140002902D02898B1
:10B76000FFF73EFF0125306DC00C284000281CD19A
@@ -2970,7 +2970,7 @@
:10B98000009A120A14400C43046078680028D3D04F
:10B9900013AA012101207B689847CDE70648289922
:10B9A000BC22895809094907490F415C891C0020BC
:10B9B000B4E70000EEE0F73F0CF30010F1B594B0EF
:10B9B000B4E70000EEE0F73FB0F20010F1B594B04C
:10B9C000D34800681290D34800681190D2480768A5
:10B9D000D2480668D24800681090D24800680F909C
:10B9E000D14800680490D14800680E90D0480068A3
@@ -3024,15 +3024,15 @@
:10BCE000EB589B0814339B049B0C11409A001040A6
:10BCF0000843C0216850802252021498000C0004AE
:10BD00006946898A4018801806998B08002125E029
:10BD10006CF3001070F3001074F3001078F300104F
:10BD20007CF3001080F3001084F3001088F30010FF
:10BD30008CF3001090F3001094F3001098F30010AF
:10BD40009CF30010A0F30010A4F30010A8F300105F
:10BD5000ACF3001000260660001D491C9942F9D37F
:10BD100010F3001014F3001018F300101CF30010BF
:10BD200020F3001024F3001028F300102CF300106F
:10BD300030F3001034F3001038F300103CF300101F
:10BD400040F3001044F3001048F300104CF30010CF
:10BD500050F3001000260660001D491C9942F9D3DB
:10BD600001990120084302210143CF480840217D69
:10BD7000012901D1012100E00021CC4B0340480200
:10BD80008021890008401843217D01290CD101211F
:10BD90000BE000BFB0F30010B4F30010010062002C
:10BD90000BE000BF54F3001058F3001001006200E4
:10BDA000FFFF00FF0300FFFF0021C14B034008021B
:10BDB000802149000840184380218843402188435E
:10BDC0002021884310218843042188430190019851
@@ -3046,7 +3046,7 @@
:10BE4000E67F0E40F027B8433701F0263E40064318
:10BE50002020205C01400F20864331432220205CBB
:10BE6000012811D1012610E0FFFF80FFFCFF000038
:10BE7000FFF8FFFFFFFFFF800CF30010FFFFFFC084
:10BE7000FFF8FFFFFFFFFF80B0F20010FFFFFFC0E1
:10BE8000FFFFC0FFFFFFFFBF00268F480840F105FE
:10BE90008026360431400143E9602320215C1940AB
:10BEA0000B9E8A4830400E02FE21C90131400143F9
@@ -3126,7 +3126,7 @@
:10C34000684600788540D0203D500020F2BD0000B6
:10C35000301B002801006200FFFFFF1F030A0006D8
:10C36000330A0000FFFFFFDFFFFFFFBFFFFF7FFF7C
:10C37000FFFFF0FFFFFFDFFFFFFFEFFF0CF30010F9
:10C37000FFFFF0FFFFFFDFFFFFFFEFFFB0F2001056
:10C3800010B50200002A03D00800C0B2202801DB4B
:10C39000002021E000200123CC241459CC401C4073
:10C3A000002C09D0D4201058C8401840002801D1D2
@@ -3229,7 +3229,7 @@
:10C9B0002000F7F705FE4D492000F7F77BFC002823
:10C9C00001D000200FE02000F7F707FE4849884219
:10C9D00007D12000F7F7FDFD4649884201D101202B
:10C9E00000E00020C0B210BD24F3001070B5424C2E
:10C9E00000E00020C0B210BDC8F2001070B5424C8B
:10C9F0000021216000F046F8002803D101202060CA
:10CA000000203AE0374E002201213000FFF76FFE90
:10CA1000354D37492800F7F7DEFD2800F7F7CAFD46
@@ -3245,7 +3245,7 @@
:10CAB00032BD10B50C48F7F783FD0A4C0022012166
:10CAC000200000F07BF800220221200000F076F820
:10CAD00010BD0000FF0000FF00FFFF00FFFCFFFF94
:10CAE00038EF001080053140001E584018EB001050
:10CAE000DCEE001080053140001E58400CEB0010B9
:10CAF0001F4E0000204E0000C01B0028F8B5002586
:10CB000000956846FBF706FA002801D0002045E0B2
:10CB1000274C0098A04205D300982100F7F772FB3C
@@ -3316,7 +3316,7 @@
:10CF20001AE0534C2000F7F74BFB52492000F7F76B
:10CF3000C1F9002801D000200EE02000F7F74DFBDA
:10CF40004D49884206D12000F7F743FB002801D164
:10CF5000012000E00020C0B210BD000024F300104A
:10CF5000012000E00020C0B210BD0000C8F20010A7
:10CF600070B5464C0021216000F046F8002803D13E
:10CF70000120206000203AE03B4E002207213000D3
:10CF8000FFF777FE3A4D3C492800F7F724FB2800CD
@@ -3333,8 +3333,8 @@
:10D03000FF0000FF80B50E48F7F7C2FA00F07AF85B
:10D0400000200A49086001BD80B50948F7F7BDFA1C
:10D05000C10B0800C007C00F02BD000000FFFF00A9
:10D06000FFFCFFFF04EF001000083140B81B002850
:10D0700080205840A4EA00101F4E0000BC1B00286E
:10D06000FFFCFFFFA8EE001000083140B81B0028AD
:10D070008020584098EA00101F4E0000BC1B00287A
:10D08000F8B5002500956846FAF744FF002801D05E
:10D09000002045E0354C0098A04205D300982100BF
:10D0A000F7F7B0F8002901D0002039E000982100FE
@@ -3388,11 +3388,11 @@
:10D3A000300029001022F7F749FD00F017F8012896
:10D3B00003D1032008E0022006E000F00FF8002867
:10D3C00001D1002000E00420FEBD0000181B002851
:10D3D00024E90010F01B00280010224010B5274C53
:10D3D000A4E90010F01B00280010224010B5274CD3
:10D3E00010212000FAF762FE2068000F0007A0213C
:10D3F0000906884201D1002009E02068000F0007DB
:10D40000F0210906884201D1012000E0022010BD70
:10D41000ECF30010F0F30010000020400000224068
:10D4100090F3001094F30010000020400000224020
:10D42000FFFFFF0F38B50400FFF7D8FF0500280005
:10D43000C0B2022801D142480DE0002C04D02000E7
:10D4400027491022F7F7FAFCEDB2002D01D1002098
@@ -3411,7 +3411,7 @@
:10D5100001D1012600E002262800F040C00705D511
:10D5200009480168002901D0006880472A0CA9B287
:10D530002000FFF746FE70BDFFFFFF00801B0028A4
:10D54000FFFFFF0F1CF30010E81B0028E5D40010BC
:10D54000FFFFFF0FC0F20010E81B0028E5D4001019
:10D550000000204050480068410B0800C007C00F81
:10D5600070474D480068010B0800C007C00F7047A6
:10D5700000B54A48012102680A43026002680A4075
@@ -3445,7 +3445,7 @@
:10D73000294820188021490288420FD201200EE09A
:10D740008020000255496118814201D2012006E083
:10D7500053496118814201D2012000E0002010BD30
:10D76000FFFF00FF7CF2001010B50400FFF7F9FE88
:10D76000FFFF00FF20F2001010B50400FFF7F9FEE4
:10D77000002810D1F02000062018FE21C90388429D
:10D7800001D2002026E0654820188021C902884285
:10D790001FD200201EE0FE208003F0210906611840
@@ -3504,7 +3504,7 @@
:10DAE00015001E003800FFF7EFFF00280DD12900B8
:10DAF0003800FFF7E5FF31003800FFF7E3FF2100B2
:10DB00003800FFF7D5FF002000E00248F2BD00001A
:10DB1000D8F3001001008A00F8B584B0F7F715FCBF
:10DB10007CF3001001008A00F8B584B0F7F715FC1B
:10DB2000BA49012708680322904338430860B8487F
:10DB30000A6802400A60B7490A6803239A433A43D5
:10DB40000A600A6802400A60B3490A6803239A43DC
@@ -3589,8 +3589,8 @@
:10E030004018FA218900F6F7E5F828602868C0033F
:10E040001749086007B030BD041626400C19264059
:10E050001C1926404016264044162640141226401D
:10E06000E0F2001040122640080020400804204042
:10E070000815264064F20010181B00286CEC0010F4
:10E0600084F200104012264008002040080420409E
:10E070000815264008F20010181B002860EC00105C
:10E08000F01B0028941C0028981C00283F420F0019
:10E0900040420F00A01C00289C1C0028E703000041
:10E0A000A41C0028F3B595B0170000210D0008004E
@@ -3672,7 +3672,7 @@
:10E5600000210120FFF7ECFE0020FFF7DDFE012077
:10E57000FFF7DAFE10BD000000E100E000E400E07B
:10E580001CED00E000132040FFFFF7FF8013204048
:10E59000A013204044F3001064EC001068EC00105D
:10E59000A0132040E8F2001058EC00105CEC0010D2
:10E5A00080000000001D00280000001008ED00E0C1
:10E5B00000B5010009B2002905D40121C006C00E32
:10E5C00081404A48016000BD00B5FEE780B548487B
@@ -3694,23 +3694,23 @@
:10E6C0000620FFF775FF01BD80B51848006818489F
:10E6D0000068C10F002905D007498005800D800022
:10E6E000085880470720FFF763FF01BD80E200E084
:10E6F000B8F300100011204048090028BCF30010B6
:10E7000004112040C0F3001008112040C4F3001091
:10E710000C112040C8F3001010112040CCF3001061
:10E7200014112040D0F3001018112040D4F3001031
:10E730001C11204034F1001090F200108002314092
:10E6F0005CF30010001120404809002860F300106E
:10E700000411204064F300100811204068F3001049
:10E710000C1120406CF300101011204070F3001019
:10E720001411204074F300101811204078F30010E9
:10E730001C112040D8F0001034F20010800231404B
:10E740000400000008000000800658403A01000064
:10E7500000093140020000000A0F0D07E00100002F
:10E76000FC53000098210000F4010000E8030000C1
:10E77000F4010000C0F10010A0F20010800231404E
:10E77000F401000064F1001044F200108002314006
:10E780000500000008000000000758403B010000A1
:10E7900000053140010000000AF0D0707601000051
:10E7A000E0150000D41700005E010000E80300003F
:10E7B000F4010000DCF10010B0F200100004314060
:10E7B000F401000080F1001054F200100004314018
:10E7C00000000000080000008009584040010000DF
:10E7D0000007314000000000090F0D0795030000FD
:10E7E000901A000028230000F4010000E803000054
:10E7F000F4010000F8F10010C0F200108000314078
:10E7F000F40100009CF1001064F200108000314030
:10E800000000000008000000000658403901000028
:10E81000000631400500000009F0D07087020000BA
:10E82000201C000098210000F4010000D007000027
@@ -3729,169 +3729,169 @@
:10E8F00075FCECE7F41B0028281200280648006885
:10E9000070470020C04304490860044908600020A3
:10E91000034908607047000000182640041826408C
:10E9200008102640443A5C6875616E672E787565FC
:10E930007765695C4769745C436F676E6974697673
:10E94000655F4167656E745C2E636F6465785F74A4
:10E950006D705C736561742D6669726D7761726547
:10E960002D6275696C642D3031363932303434396A
:10E97000363564343762306139303435613463613F
:10E98000646131636231385C636F6D6D6F6E5C73AF
:10E9900072635C647269766572735C6970635C63F0
:10E9A000795F6970635F6472762E6800F1B4016804
:10E9B0004118436858080A1800988068DB0701D599
:10E9C0004B46C01891422DD00D78491C03240326D4
:10E9D0002E4002D10E78F61C491C2B090F2B07D1B3
:10E9E0000B780F33491C03E00F78491C0770401C5B
:10E9F000761EF9D1002BE5D00E78491CAD082C40CD
:10EA0000032C01D10C78491C2402341965424419A5
:10EA10000025AE1E9E42D5D02678641C0670401C90
:10EA20006D1CF6E700980C30F2BC704700053140D1
:10EA30000600000000000000801890400200000066
:10EA40000006314001000000000000004019904025
:10EA50000500000000053140070000000000000034
:10EA6000C018904003000000000531400500000080
:10EA700000000000401890400100000000063140F6
:10EA80000200000000000000801990400600000015
:10EA9000000631400600000000000000801A90408F
:10EAA0000A00000004000000000000000000000058
:10EAB00000000000010003031F4E000000000000E2
:10E9200008102640F1B401684118436858080A18D5
:10E9300000988068DB0701D54B46C01891422DD066
:10E940000D78491C032403262E4002D10E78F61CB4
:10E95000491C2B090F2B07D10B780F33491C03E0FF
:10E960000F78491C0770401C761EF9D1002BE5D0AA
:10E970000E78491CAD082C40032C01D10C78491CA1
:10E9800024023419654244190025AE1E9E42D5D09A
:10E990002678641C0670401C6D1CF6E700980C304D
:10E9A000F2BC7047443A5C50726F6A6563745C35C0
:10E9B00031315C4E375765625C2E636F6465785FFA
:10E9C000746D705C736561742D6669726D776172C8
:10E9D000652D6275696C642D326530363863373762
:10E9E00063306635346431386233393863383339EB
:10E9F00063663830633463625C636F6D6D6F6E5C49
:10EA00007372635C647269766572735C6970635C6F
:10EA100063795F6970635F6472762E68000000003E
:10EA20000005314006000000000000008018904002
:10EA3000020000000006314001000000000000005C
:10EA4000401990400500000000053140070000001B
:10EA500000000000C0189040030000000005314095
:10EA60000500000000000000401890400100000078
:10EA700000063140020000000000000080199040B4
:10EA80000600000000063140060000000000000003
:10EA9000801A90400A0000000400000000000000FE
:10EAA0000000000000000000010003031F4E0000F2
:10EAB0000000000000000000000000000000000056
:10EAC0000000000000000000000000000000000046
:10EAD0000000000000000000000000000000000036
:10EAE000000000000203000000000000030000001E
:10EAF0000000000003000000000000000300000010
:10EB000000000000030000000000000003000000FF
:10EB100001000000010200000400000000000000ED
:10EB20000000000000000000010003031F4E000071
:10EB30000000000000000000204E00000000000067
:10EB400000000000000000000000000000000000C5
:10EB500000000000000000000203000000000000B0
:10EB6000030000000000000003000000000000009F
:10EB7000030000000000000003000000000000008F
:10EB8000030000000100000001020000040000007A
:10EB9000000000000000000000000000010003036E
:10EBA00063000000000000000000000032000000D0
:10EAD0000000000000000000020300000000000031
:10EAE0000300000000000000030000000000000020
:10EAF0000300000000000000030000000000000010
:10EB000003000000010000000102000004000000FA
:10EB100000000000000000000000000001000303EE
:10EB20001F4E00000000000000000000204E00000A
:10EB300000000000000000000000000000000000D5
:10EB400000000000000000000000000002030000C0
:10EB500000000000030000000000000003000000AF
:10EB6000000000000300000000000000030000009F
:10EB7000000000000300000001000000010200008E
:10EB80000400000000000000000000000000000081
:10EB9000010003036300000000000000000000000B
:10EBA0003200000000000000000000000000000033
:10EBB0000000000000000000000000000000000055
:10EBC0000000000000000000000000000203000040
:10EBD000000000000300000000000000030000002F
:10EBE000000000000300000000000000030000001F
:10EBF000000000000300000001000000010200000E
:10EC000072B6104810490860BFF34F8F0120C0044E
:10EC10000E490A6802430A600D490A6802430A6005
:10EC20000C490A6802430A60002000210D4A03C211
:10EC30006A45FCD1084FB847084FB847084FB84756
:10EC4000FEE700000000001008ED00E00013204087
:10EC500080132040A0132040B9E30010CDF0001035
:10EC600031F2001000FF0128FFFF0128443A5C68E0
:10EC700075616E672E7875657765695C4769745C48
:10EC8000436F676E69746976655F4167656E745C32
:10EC90006669726D776172655C7432675C747669FF
:10ECA000696268386D5C7372635C73797374656DE7
:10ECB0005C7265765F645C73797374656D5F74769E
:10ECC00069696268386D5F636D30706C75732E634F
:10ECD00000000000443A5C6875616E672E787565C7
:10ECE0007765695C4769745C436F676E69746976C0
:10ECF000655F4167656E745C6669726D77617265A8
:10ED00005C7432675C747669696268386D5C7372D2
:10ED1000635C647269766572735C737973636C6B40
:10ED20005C63795F737973636C6B2E68000000001D
:10ED3000443A5C6875616E672E7875657765695CC5
:10ED40004769745C436F676E69746976655F416794
:10ED5000656E745C6669726D776172655C7432674A
:10ED60005C747669696268386D5C7372635C647246
:10ED700069766572735C737973636C6B5C63795FDE
:10ED8000737973636C6B2E6300000000443A5C6817
:10ED900075616E672E7875657765695C4769745C27
:10EDA000436F676E69746976655F4167656E745C11
:10EDB0006669726D776172655C7432675C636F6DF2
:10EDC0006D6F6E5C7372635C647269766572735C9E
:10EDD0007379737469636B5C63795F737973746956
:10EDE000636B2E6300000000443A5C6875616E67D7
:10EDF0002E7875657765695C4769745C436F676EEB
:10EE000069746976655F4167656E745C6669726D89
:10EE1000776172655C7432675C636F6D6D6F6E5C99
:10EE20007372635C6D775C666C6173685C63795F59
:10EE30006D775F666C6173682E6300009F0F000042
:10EE400000000000000000000000000000000000C2
:10EE500000000300000000000000000000000000AF
:10EE6000000300000000000003000000000000009C
:10EE7000030000000000000003000000000000008C
:10EE8000030000000100000000000000010000007D
:10EE90000000000000000000100000001000000052
:10EEA0001000000001000001000000000000000050
:10EBC000020300000000000003000000000000003D
:10EBD000030000000000000003000000000000002F
:10EBE000030000000000000003000000010000001E
:10EBF0000102000072B6104810490860BFF34F8F41
:10EC00000120C0040E490A6802430A600D490A68DF
:10EC100002430A600C490A6802430A60002000218E
:10EC20000D4A03C26A45FCD1084FB847084FB847A0
:10EC3000084FB847FEE700000000001008ED00E0B4
:10EC40000013204080132040A0132040B9E300109F
:10EC500071F00010D5F1001000FF0128FFFF01281E
:10EC6000443A5C50726F6A6563745C3531315C4E56
:10EC7000375765625C6669726D776172655C743284
:10EC8000675C747669696268386D5C7372635C7323
:10EC9000797374656D5C7265765F645C73797374A7
:10ECA000656D5F747669696268386D5F636D307039
:10ECB0006C75732E630000009F0F000000000000C1
:10ECC0000000000000000000000000000000030041
:10ECD0000000000000000000000000000003000031
:10ECE000000000000300000000000000030000001E
:10ECF000000000000300000000000000030000000E
:10ED00000100000000000000443A5C50726F6A6528
:10ED100063745C3531315C4E375765625C6669728D
:10ED20006D776172655C7432675C7476696962687C
:10ED3000386D5C7372635C647269766572735C7360
:10ED40007973636C6B5C63795F737973636C6B2E3F
:10ED500068000000443A5C50726F6A6563745C3509
:10ED600031315C4E375765625C6669726D776172EE
:10ED7000655C7432675C747669696268386D5C736F
:10ED800072635C647269766572735C737973636CC9
:10ED90006B5C63795F737973636C6B2E6300000047
:10EDA000443A5C50726F6A6563745C3531315C4E15
:10EDB000375765625C6669726D776172655C743243
:10EDC000675C636F6D6D6F6E5C7372635C647269B8
:10EDD000766572735C7379737469636B5C63795F76
:10EDE0007379737469636B2E63000000443A5C505E
:10EDF000726F6A6563745C3531315C4E375765629A
:10EE00005C6669726D776172655C7432675C636FB2
:10EE10006D6D6F6E5C7372635C6D775C666C617355
:10EE2000685C63795F6D775F666C6173682E630001
:10EE300001000000000000000000000010000000C1
:10EE400010000000100000000100000100000000A0
:10EE500000000000000000000000000000000000B2
:10EE600000000000000000000000000070B401235A
:10EE7000002413E00168001D194202D04D466918B4
:10EE8000491E0C60091D121F042AFAD20D009607B4
:10EE900001D50C80AD1C1A4000D02C700268001DFA
:10EEA000002AE7D170BC7047000000000600000097
:10EEB0000000000000000000000000000000000052
:10EEC000000000000000000070B40123002413E0E3
:10EED0000168001D194202D04D466918491E0C6098
:10EEE000091D121F042AFAD20D00960701D50C80C5
:10EEF000AD1C1A4000D02C700268001D002AE7D11A
:10EF000070BC704700000000060000000000000018
:10EF100000000000000000000000000000000000F1
:10EEC0000000000000000000000000000000000042
:10EED0000000000000000000000000000000000032
:10EEE000060000000000000000000000000000001C
:10EEF0000000000000000000000000000000000012
:10EF00000000000000000000000000000000000001
:10EF100000000000080000001500000000000000D4
:10EF200000000000000000000000000000000000E1
:10EF300000000000000000000000000006000000CB
:10EF400000000000000000000000000000000000C1
:10EF300000000000000000000000000000000000D1
:10EF400000000000010000000E000000150000009D
:10EF500000000000000000000000000000000000B1
:10EF600000000000000000000000000000000000A1
:10EF70000800000015000000000000000000000074
:10EF7000000000000000000001000000060000008A
:10EF80000000000000000000000000000000000081
:10EF90000000000000000000000000000000000071
:10EFA000010000000E00000015000000000000003D
:10EFB0000000000000000000000000000000000051
:10EFA0000000000000000000000000000000000061
:10EFB000060000000000000000000000000000004B
:10EFC0000000000000000000000000000000000041
:10EFD000000000000100000006000000000000002A
:10EFE0000000000000000000000000000000000021
:10EFF0000000000000000000000000000000000011
:10F0000000000000000000000000000006000000FA
:10F0100000000000000000000000000000000000F0
:10F0200000000000000000000000000000000000E0
:10F0300000000000000000000000000002000000CE
:10F0400000000000983A00000E01FA00CC01900187
:10F05000020000000300000000000000983A0000D9
:10F06000720182001C02CC010200000005000000B9
:10F070000000000030750000F6001901BD02EE012D
:10F0800002000000060000000000000030750000D3
:10F0900087018C009501940102000000010000002E
:10F0A00034F300103CF000100200000030F40010B7
:10F0B00008003200020000003CF300106CF0001069
:10F0C000020000002CF400100C00320010B50749BB
:10F0D00079441831064C7C44163404E0081D0A6853
:10F0E000891888470100A142F8D110BD080000002E
:10F0F00024000000D5FDFFFFE409000008130028EC
:10F1000000000000A9F8FFFF5E0300003A010000C4
:10F1100000080028000003010000000001000000BA
:10F12000000000000000000001000000FF0F0100CF
:10F13000000000004D4F544F525F494E325F48422D
:10F14000375F4842385F484F52495A4F4E54414CFE
:10F150000000000004207146084202D0EFF309804D
:10F1600001E0EFF3088000B50149884700BD0000C9
:10F170006F80001000F00EF8002801D0FFF7A6FF06
:10F1800000BF00BF002000BF00BFFFF75FFB00F023
:10F1900003F800000020704780B500F001F801BDC1
:10F1A0000746384600F002F8FBE7000080B500BFD4
:10F1B00000BF024A11001820ABBEFBE72600020088
:10F1C0004D4F544F525F494E335F4842355F48427E
:10F1D000365F534541545F50414E00004D4F544FF0
:10F1E000525F494E345F4842335F4842345F424188
:10F1F000434B5245535400004D4F544F525F494EBC
:10F20000315F4842315F4842325F4C454752455377
:10F210005400000004207146084201D0EFF3098039
:10F22000EFF3088000B50149884700BDF1F20010F6
:10F230000548014603B4684680F3098800BF00BF53
:10F2400000BF00BFFFF796FFA5EDF5FE9E029E0AE8
:10F25000AA02AA0ACE03CE0B2A042A0C0003000B32
:10F26000F002F00A00127A00000000000024F4000E
:10F27000008000000080000000800000010002000B
:10F28000040008001000200040008000000100027F
:10F29000484F52495A4F4E54414C5F48414C4C00E4
:10F2A000534541545F50414E5F48414C4C00000073
:10F2B0004241434B524553545F48414C4C0000007F
:10F2C0004C4547524553545F48414C4C00000000A8
:10F2D000E02E0000401F0000E02E0000307500000E
:10F2E0000003000100040103020200020003000504
:10F2F0008169891E0978C9B2016070470000000069
:10F3000000010101010101000001000002030405E8
:10F3100006080C10000000000000000002000000C1
:10F32000010000000403000113140015C7010300CD
:10F33000010000004001BE00F401AE0187018C0015
:10F340009501940100080028FFFF0128000000003B
:10EFD0000000000000000000000000000000000031
:10EFE0000200000000000000983A00000E01FA0044
:10EFF000CC019001020000000300000000000000AE
:10F00000983A0000720182001C02CC01020000004C
:10F01000050000000000000030750000F600190136
:10F02000BD02EE010200000006000000000000002A
:10F030003075000087018C009501940102000000EA
:10F0400001000000D8F20010E0EF00100200000004
:10F05000D4F300100800320002000000E0F20010BB
:10F0600010F0001002000000D0F300100C0032007D
:10F0700010B5074979441831064C7C44163404E035
:10F08000081D0A68891888470100A142F8D110BDFF
:10F090000800000024000000D5FDFFFFE409000087
:10F0A00008130028000000007DF8FFFF5E03000049
:10F0B0003A010000000800280000030100000000E1
:10F0C000010000000000000000000000010000003E
:10F0D000FF0F0100000000004D4F544F525F494E9A
:10F0E000325F4842375F4842385F484F52495A4F73
:10F0F0004E54414C0000000004207146084202D0EA
:10F10000EFF3098001E0EFF3088000B5014988477B
:10F1100000BD00006F80001000F00EF8002801D044
:10F12000FFF7A6FF00BF00BF002000BF00BFFFF732
:10F130008DFB00F003F800000020704780B500F060
:10F1400001F801BD0746384600F002F8FBE7000071
:10F1500080B500BF00BF024A11001820ABBEFBE71C
:10F16000260002004D4F544F525F494E335F4842D4
:10F17000355F4842365F534541545F50414E000071
:10F180004D4F544F525F494E345F4842335F4842BF
:10F19000345F4241434B5245535400004D4F544F4E
:10F1A000525F494E315F4842315F4842325F4C45C1
:10F1B000475245535400000004207146084201D0D4
:10F1C000EFF30980EFF3088000B50149884700BDDF
:10F1D00095F200100548014603B4684680F309889B
:10F1E00000BF00BF00BF00BFFFF796FFA5EDF5FE13
:10F1F0009E029E0AAA02AA0ACE03CE0B2A042A0C59
:10F200000003000BF002F00A00127A000000000078
:10F210000024F40000800000008000000080000056
:10F2200001000200040008001000200040008000DF
:10F2300000010002484F52495A4F4E54414C5F481A
:10F24000414C4C00534541545F50414E5F48414C46
:10F250004C0000004241434B524553545F48414CDF
:10F260004C0000004C4547524553545F48414C4CBC
:10F2700000000000E02E0000401F0000E02E000013
:10F2800030750000000300010004010302020002C7
:10F29000000300058169891E0978C9B201607047C1
:10F2A0000000000000010101010101000001000057
:10F2B0000203040506080C10000000000000000016
:10F2C00002000000010000000403000113140015F7
:10F2D000C7010300010000004001BE00F401AE01BF
:10F2E00087018C009501940100080028FFFF012888
:10F2F000000000000000000000000000000000000E
:10F3000000000000000000000000000000000000FD
:10F3100000000000000000000000000000000000ED
:10F3200000000000000000000000000000000000DD
:10F3300000000000000000000000000000000000CD
:10F3400000000000000000000000000000000000BD
:10F3500000000000000000000000000000000000AD
:10F36000000000000000000000000000000000009D
:10F37000000000000000000000000000000000008D
@@ -3899,27 +3899,27 @@
:10F39000000000000000000000000000000000006D
:10F3A000000000000000000000000000000000005D
:10F3B000000000000000000000000000000000004D
:10F3C000000000000000000000000000000000003D
:10F3D000000000000000000000000000000000002D
:10F3E000000000000000000000000000000000001D
:10F3F000000000000000000000000000000000000D
:10F4000000000000000000000000000000000000FC
:10F4100000000000000000000000000000000000EC
:10F4200000000000000000000001020332325A32E6
:10F430005A5A5A32000102035A5A5A32FEE7000061
:10F44000FEE70000FEE70000FEE70000FEE7000028
:10F45000FEE70000FEE70000FEE70000FEE7000018
:10F46000FEE70000FEE740045500020001000150E5
:10F470000325A40010000132DD0CA00409000401E2
:10F4800001000112060E834CF2286004FFFFFF1FEB
:10F49000020225920807F0010352400001F2060221
:10F4A00018F2060418F2060618F2060818F3060009
:10F4B0005478F10618F2060418F2060618F2050848
:10F4C00018F002FFC9E5001004F1FF04F1FF04F198
:10F4D000FF04F1FF04F1FF04F1FF04F1FF04F14721
:10F4E000046C0248090028060AF321060001F123F2
:10F4F00034F2520868000A01010102030203010FFD
:10F500000F010100000000000000000000000000EA
:10F3C0000000000000000000000000000001020337
:10F3D00032325A325A5A5A32000102035A5A5A32B7
:10F3E000FEE70000FEE70000FEE70000FEE7000089
:10F3F000FEE70000FEE70000FEE70000FEE7000079
:10F40000FEE70000FEE70000FEE7400455000200B2
:10F41000010001500325A40010000132DD0CA004FE
:10F420000900040101000112060E83F0F1286004B6
:10F43000FFFFFF1F020225920807F0010352400060
:10F4400001F2060218F2060418F2060618F206087F
:10F4500018F306005478F10618F2060418F20606AE
:10F4600018F2050818F002FFC9E5001004F1FF04C6
:10F47000F1FF04F1FF04F1FF04F1FF04F1FF04F1D7
:10F48000FF04F147046C0248090028060AF321062C
:10F490000001F12334F2520868000A01010102035D
:10F4A0000203010F0F010100000000000000000036
:10F4B000000000000000000000000000000000004C
:10F4C000000000000000000000000000000000003C
:10F4D000000000000000000000000000000000002C
:10F4E000000000000000000000000000000000001C
:10F4F000000000000000000000000000000000000C
:10F5000000000000000000000000000000000000FB
:10F5100000000000000000000000000000000000EB
:10F5200000000000000000000000000000000000DB
:10F5300000000000000000000000000000000000CB
@@ -3937,11 +3937,6 @@
:10F5F000000000000000000000000000000000000B
:10F6000000000000000000000000000000000000FA
:10F6100000000000000000000000000000000000EA
:10F6200000000000000000000000000000000000DA
:10F6300000000000000000000000000000000000CA
:10F6400000000000000000000000000000000000BA
:10F6500000000000000000000000000000000000AA
:10F66000000000000000000000000000000000009A
:0DF67000000000000000000000000000008D
:040000051000F231C4
:01F6200000E9
:040000051000F1D521
:00000001FF