535.43.02

This commit is contained in:
Andy Ritger
2023-05-30 10:11:36 -07:00
parent 6dd092ddb7
commit eb5c7665a1
1403 changed files with 295367 additions and 86235 deletions

View File

@@ -29,6 +29,7 @@
#include "flcn/flcn_nvswitch.h"
#include "rmflcncmdif_nvswitch.h"
#include "haldef_nvswitch.h"
static NvlStatus
_nvswitch_core_bios_read
@@ -48,7 +49,6 @@ _nvswitch_core_bios_read
RM_SOE_CORE_CMD_BIOS *pParams = &cmd.cmd.core.bios;
NvU64 dmaHandle = 0;
NvU8 *pReadBuffer = NULL;
NvU32 spiReadCnt = 0;
NvU32 offset = 0;
NvU32 bufferSize = (reqSize < SOE_DMA_MAX_SIZE) ? SOE_DMA_MAX_SIZE : MAX_READ_SIZE;
@@ -134,7 +134,6 @@ _nvswitch_core_bios_read
}
offset += pParams->sizeInBytes;
spiReadCnt++;
}
nvswitch_os_unmap_dma_region(device->os_handle, pReadBuffer, dmaHandle,
@@ -203,7 +202,7 @@ nvswitch_bios_get_image
return NVL_SUCCESS;
}
status = nvswitch_bios_read_size(device, &biosSize);
status = device->hal.nvswitch_get_bios_size(device, &biosSize);
if (status != NVL_SUCCESS || biosSize == 0)
{
NVSWITCH_PRINT(device, ERROR,

View File

@@ -153,14 +153,21 @@ nvswitch_record_error
NvBool error_resolved,
void *data,
NvU32 data_size,
NvU32 line
NvU32 line,
const char *description
)
{
NvU32 idx_error;
NvU32 description_len = (NvU32)nvswitch_os_strlen(description) - 2; //take out leading and trailing quotation
NVSWITCH_ASSERT(errors != NULL);
NVSWITCH_ASSERT(data_size <= sizeof(errors->error_log[idx_error].data));
if (description_len > NVSWITCH_ERROR_MAX_DESCRPTION_LEN)
{
description_len = NVSWITCH_ERROR_MAX_DESCRPTION_LEN;
}
// If no error log has been created, don't log it.
if ((errors->error_log_size != 0) && (errors->error_log != NULL))
{
@@ -192,6 +199,8 @@ nvswitch_record_error
errors->error_log[idx_error].severity = severity;
errors->error_log[idx_error].error_resolved = error_resolved;
errors->error_log[idx_error].line = line;
errors->error_log[idx_error].data_size = data_size;
nvswitch_os_memcpy(&errors->error_log[idx_error].description, description + 1, description_len);
// Log tracking info
errors->error_log[idx_error].timer_count = nvswitch_hw_counter_read_counter(device);
@@ -265,6 +274,7 @@ nvswitch_get_error
error_entry->timer_count =
((device == NULL) ? 0 : nvswitch_hw_counter_read_counter(device));
error_entry->time = nvswitch_os_get_platform_time();
error_entry->data_size = 0;
}
else
{
@@ -545,6 +555,13 @@ nvswitch_ctrl_get_errors
p->error[p->errorCount].subinstance = error.subinstance;
p->error[p->errorCount].time = error.time;
p->error[p->errorCount].error_resolved = error.error_resolved;
p->error[p->errorCount].error_data_size = error.data_size;
if (error.data_size > 0)
{
nvswitch_os_memcpy(p->error[p->errorCount].error_data, error.data.raw.data, error.data_size);
}
nvswitch_os_memcpy(p->error[p->errorCount].error_description, error.description, sizeof(error.description));
p->errorCount++;
index++;
}

View File

@@ -132,13 +132,13 @@ void nvswitch_assert_log
NvU32 line
);
#define NVSWITCH_ASSERT(_cond) \
#define NVSWITCH_ASSERT(_cond) \
((void)((!(_cond)) ? nvswitch_assert_log(__FUNCTION__, __FILE__, __LINE__) : 0))
#else
void nvswitch_assert_log(void);
#define NVSWITCH_ASSERT(_cond) \
#define NVSWITCH_ASSERT(_cond) \
((void)((!(_cond)) ? nvswitch_assert_log() : 0))
#endif
@@ -469,7 +469,8 @@ nvswitch_record_error
NvBool error_resolved,
void *data,
NvU32 data_size,
NvU32 line
NvU32 line,
const char *description
);
void
@@ -579,5 +580,6 @@ NvlStatus nvswitch_set_training_mode(nvswitch_device *device);
NvBool nvswitch_is_link_in_reset(nvswitch_device *device, nvlink_link *link);
void nvswitch_apply_recal_settings(nvswitch_device *device, nvlink_link *link);
void nvswitch_init_buffer_ready(nvswitch_device *device, nvlink_link *link, NvBool bNportBufferReady);
NvBool nvswitch_does_link_need_termination_enabled(nvswitch_device *device, nvlink_link *link);
NvlStatus nvswitch_link_termination_setup(nvswitch_device *device, nvlink_link* link);
#endif //_COMMON_NVSWITCH_H_

View File

@@ -99,6 +99,8 @@ typedef struct
NvU64 timer_count; // NvSwitch timer count
NvU64 time; // Platform time, in ns
NvU32 line;
NvU32 data_size; // Size of data
NvU8 description[NVSWITCH_ERROR_MAX_DESCRPTION_LEN]; // Short description of error type
union
{
@@ -135,9 +137,9 @@ typedef struct
NVSWITCH_ERROR_SEVERITY_FATAL, \
_errresolved, \
NULL, 0, \
__LINE__)
__LINE__, NULL)
#define NVSWITCH_LOG_FATAL_DATA(_device, _errsrc, _errtype, _instance, _subinstance, _errresolved, _errdata) \
#define NVSWITCH_LOG_FATAL_DATA(_device, _errsrc, _errtype, _instance, _subinstance, _errresolved, _errdata, ...) \
nvswitch_record_error( \
_device, \
&(_device->log_FATAL_ERRORS), \
@@ -147,8 +149,7 @@ typedef struct
NVSWITCH_ERROR_SEVERITY_FATAL, \
_errresolved, \
_errdata, sizeof(*_errdata), \
__LINE__)
__LINE__, #__VA_ARGS__)
#define NVSWITCH_LOG_NONFATAL(_device, _errsrc, _errtype, _instance, _subinstance, _errresolved) \
nvswitch_record_error( \
@@ -160,9 +161,9 @@ typedef struct
NVSWITCH_ERROR_SEVERITY_NONFATAL, \
_errresolved, \
NULL, 0, \
__LINE__)
__LINE__, NULL)
#define NVSWITCH_LOG_NONFATAL_DATA(_device, _errsrc, _errtype, _instance, _subinstance, _errresolved, _errdata) \
#define NVSWITCH_LOG_NONFATAL_DATA(_device, _errsrc, _errtype, _instance, _subinstance, _errresolved, _errdata, ...) \
nvswitch_record_error( \
_device, \
&(_device->log_NONFATAL_ERRORS), \
@@ -172,7 +173,7 @@ typedef struct
NVSWITCH_ERROR_SEVERITY_NONFATAL, \
_errresolved, \
_errdata, sizeof(*_errdata), \
__LINE__)
__LINE__, #__VA_ARGS__)
#define NVSWITCH_NVLINK_ARCH_ERROR_NONE 0
#define NVSWITCH_NVLINK_ARCH_ERROR_GENERIC 1

View File

@@ -122,6 +122,8 @@
_op(NvlStatus, nvswitch_init_soe, (nvswitch_device *device), _arch) \
_op(NvBool, nvswitch_is_inforom_supported, (nvswitch_device *device), _arch) \
_op(NvBool, nvswitch_is_spi_supported, (nvswitch_device *device), _arch) \
_op(NvBool, nvswitch_is_bios_supported, (nvswitch_device *device), _arch) \
_op(NvlStatus, nvswitch_get_bios_size, (nvswitch_device *device, NvU32 *pSize), _arch) \
_op(NvBool, nvswitch_is_smbpbi_supported, (nvswitch_device *device), _arch) \
_op(NvlStatus, nvswitch_post_init_device_setup, (nvswitch_device *device), _arch) \
_op(void, nvswitch_post_init_blacklist_device_setup, (nvswitch_device *device), _arch) \
@@ -229,6 +231,9 @@
_op(NvlStatus, nvswitch_ctrl_get_board_part_number, (nvswitch_device *device, NVSWITCH_GET_BOARD_PART_NUMBER_VECTOR *p), _arch) \
_op(NvlStatus, nvswitch_ctrl_therm_read_voltage, (nvswitch_device *device, NVSWITCH_CTRL_GET_VOLTAGE_PARAMS *info), _arch) \
_op(void, nvswitch_soe_init_l2_state, (nvswitch_device *device), _arch) \
_op(NvlStatus, nvswitch_ctrl_therm_read_power, (nvswitch_device *device, NVSWITCH_GET_POWER_PARAMS *info), _arch) \
_op(NvBool, nvswitch_does_link_need_termination_enabled, (nvswitch_device *device, nvlink_link *link), _arch) \
_op(NvlStatus, nvswitch_link_termination_setup, (nvswitch_device *device, nvlink_link *link), _arch) \
#define NVSWITCH_HAL_FUNCTION_LIST_LS10(_op, _arch) \
_op(NvlStatus, nvswitch_launch_ALI, (nvswitch_device *device), _arch) \

View File

@@ -90,7 +90,7 @@
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR ## _logenum, \
"Non-fatal, Link %02d %s%s\n", link, _str, NVSWITCH_FIRST()); \
NVSWITCH_LOG_NONFATAL_DATA(device, _HW, _logenum, \
link, 0, NV_FALSE, &report); \
link, 0, NV_FALSE, &report, _str); \
if (nvswitch_lib_notify_client_events(device, \
NVSWITCH_DEVICE_EVENT_NONFATAL) != NVL_SUCCESS) \
{ \
@@ -106,7 +106,7 @@
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR ## _logenum, \
"Fatal, Link %02d %s%s\n", link, _str, NVSWITCH_FIRST()); \
NVSWITCH_LOG_FATAL_DATA(device, _HW, _logenum, \
link, 0, NV_FALSE, &report); \
link, 0, NV_FALSE, &report, _str); \
nvswitch_set_fatal_error(device, device_fatal, link); \
if (nvswitch_lib_notify_client_events(device, \
NVSWITCH_DEVICE_EVENT_FATAL) != NVL_SUCCESS) \
@@ -122,7 +122,7 @@
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR ## _logenum, \
"Non-fatal, %s, instance=%d, chiplet=%d\n", _str, instance, chiplet); \
NVSWITCH_LOG_NONFATAL_DATA(device, _HW, _logenum, \
instance, chiplet, NV_FALSE, &err_data); \
instance, chiplet, NV_FALSE, &err_data, _str); \
if (nvswitch_lib_notify_client_events(device, \
NVSWITCH_DEVICE_EVENT_NONFATAL) != NVL_SUCCESS) \
{ \
@@ -137,7 +137,7 @@
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR ## _logenum, \
"Fatal, %s, instance=%d, chiplet=%d\n", _str, instance, chiplet); \
NVSWITCH_LOG_FATAL_DATA(device, _HW, _logenum, \
instance, chiplet, NV_FALSE, &err_data); \
instance, chiplet, NV_FALSE, &err_data, _str); \
nvswitch_set_fatal_error(device, device_fatal, 0); \
if (nvswitch_lib_notify_client_events(device, \
NVSWITCH_DEVICE_EVENT_FATAL) != NVL_SUCCESS) \

View File

@@ -569,8 +569,25 @@ typedef struct
// Ganged Link table
NvU64 *ganged_link_table;
//
// Mask of links on the LR10 device connected to a disabled
// remote link
//
NvU64 disabledRemoteEndLinkMask;
//
// Bool indicating if disabledRemoteEndLinkMask
// has been cached previously
//
NvBool bDisabledRemoteEndLinkMaskCached;
} lr10_device;
typedef struct {
NvU32 switchPhysicalId;
NvU64 linkMask;
} lr10_links_connected_to_disabled_remote_end;
#define NVSWITCH_GET_CHIP_DEVICE_LR10(_device) \
( \
((_device)->chip_id == NV_PSMC_BOOT_42_CHIP_ID_LR10) ? \
@@ -643,8 +660,8 @@ NvlStatus nvswitch_ctrl_get_nvlink_lp_counters_lr10(nvswitch_device *device, NVS
NvlStatus nvswitch_service_nvldl_fatal_link_lr10(nvswitch_device *device, NvU32 nvliptInstance, NvU32 link);
NvlStatus nvswitch_ctrl_inband_send_data_lr10(nvswitch_device *device, NVSWITCH_INBAND_SEND_DATA_PARAMS *p);
NvlStatus nvswitch_ctrl_inband_read_data_lr10(nvswitch_device *device, NVSWITCH_INBAND_READ_DATA_PARAMS *p);
void nvswitch_send_inband_nack_lr10(nvswitch_device *device, NvU32 *msghdr, NvU32 linkId);
NvU32 nvswitch_get_max_persistent_message_count_lr10(nvswitch_device *device);
void nvswitch_send_inband_nack_lr10(nvswitch_device *device, NvU32 *msghdr, NvU32 linkId);
NvU32 nvswitch_get_max_persistent_message_count_lr10(nvswitch_device *device);
NvlStatus nvswitch_launch_ALI_link_training_lr10(nvswitch_device *device, nvlink_link *link, NvBool bSync);
NvlStatus nvswitch_service_minion_link_lr10(nvswitch_device *device, NvU32 nvliptInstance);
void nvswitch_apply_recal_settings_lr10(nvswitch_device *device, nvlink_link *link);
@@ -660,5 +677,7 @@ NvlStatus nvswitch_launch_ALI_lr10(nvswitch_device *device);
NvlStatus nvswitch_reset_and_train_link_lr10(nvswitch_device *device, nvlink_link *link);
NvlStatus nvswitch_ctrl_get_bios_info_lr10(nvswitch_device *device, NVSWITCH_GET_BIOS_INFO_PARAMS *p);
NvBool nvswitch_does_link_need_termination_enabled_lr10(nvswitch_device *device, nvlink_link *link);
NvlStatus nvswitch_link_termination_setup_lr10(nvswitch_device *device, nvlink_link* link);
#endif //_LR10_H_

View File

@@ -62,4 +62,11 @@ nvswitch_ctrl_therm_read_voltage_lr10
NVSWITCH_CTRL_GET_VOLTAGE_PARAMS *info
);
NvlStatus
nvswitch_ctrl_therm_read_power_lr10
(
nvswitch_device *device,
NVSWITCH_GET_POWER_PARAMS *info
);
#endif //_THERM_LR10_H_

View File

@@ -186,6 +186,9 @@
#define DMA_ADDR_WIDTH_LS10 64
#define SOE_VBIOS_VERSION_MASK 0xFF0000
#define SOE_VBIOS_REVLOCK_DISABLE_NPORT_FATAL_INTR 0x370000
//
// Helpful IO wrappers
//
@@ -500,10 +503,16 @@ typedef struct
NV_NPORT_PORTSTAT_LS10(_block, _reg, _idx, ), _data); \
}
#define NVSWITCH_DEFERRED_LINK_STATE_CHECK_INTERVAL_NS (10 * NVSWITCH_INTERVAL_1SEC_IN_NS)
#define NVSWITCH_DEFERRED_FAULT_UP_CHECK_INTERVAL_NS (10 * NVSWITCH_INTERVAL_1MSEC_IN_NS)
#define NVSWITCH_DEFERRED_LINK_STATE_CHECK_INTERVAL_NS (12 * NVSWITCH_INTERVAL_1SEC_IN_NS)
#define NVSWITCH_DEFERRED_FAULT_UP_CHECK_INTERVAL_NS (12 * NVSWITCH_INTERVAL_1MSEC_IN_NS)
// Struct used for passing around error masks in error handling functions
typedef struct
{
NvBool bPending;
NvU32 regData;
} MINION_LINK_INTR;
typedef struct
{
NvU32 dl;
@@ -513,17 +522,17 @@ typedef struct
NvU32 tlcRx1Injected;
NvU32 liptLnk;
NvU32 liptLnkInjected;
MINION_LINK_INTR minionLinkIntr;
} NVLINK_LINK_ERROR_INFO_ERR_MASKS, *PNVLINK_LINK_ERROR_INFO_ERR_MASKS;
typedef struct
{
{
NvBool bLinkErrorsCallBackEnabled;
NvBool bLinkStateCallBackEnabled;
NvBool bResetAndDrainRetry;
NVLINK_LINK_ERROR_INFO_ERR_MASKS fatalIntrMask;
NVLINK_LINK_ERROR_INFO_ERR_MASKS nonFatalIntrMask;
NvBool bResetAndDrainRetry;
} NVLINK_LINK_ERROR_REPORTING;
typedef struct
@@ -795,7 +804,6 @@ typedef const struct
#define nvswitch_ctrl_get_info_ls10 nvswitch_ctrl_get_info_lr10
#define nvswitch_ctrl_set_switch_port_config_ls10 nvswitch_ctrl_set_switch_port_config_lr10
#define nvswitch_ctrl_get_fom_values_ls10 nvswitch_ctrl_get_fom_values_lr10
#define nvswitch_ctrl_get_throughput_counters_ls10 nvswitch_ctrl_get_throughput_counters_lr10
#define nvswitch_save_nvlink_seed_data_from_minion_to_inforom_ls10 nvswitch_save_nvlink_seed_data_from_minion_to_inforom_lr10
@@ -867,7 +875,6 @@ NvlStatus nvswitch_ctrl_get_nvlink_status_ls10(nvswitch_device *device, NVSWITCH
NvlStatus nvswitch_ctrl_get_info_lr10(nvswitch_device *device, NVSWITCH_GET_INFO *p);
NvlStatus nvswitch_ctrl_set_switch_port_config_lr10(nvswitch_device *device, NVSWITCH_SET_SWITCH_PORT_CONFIG *p);
NvlStatus nvswitch_ctrl_get_fom_values_lr10(nvswitch_device *device, NVSWITCH_GET_FOM_VALUES_PARAMS *p);
NvlStatus nvswitch_ctrl_get_throughput_counters_lr10(nvswitch_device *device, NVSWITCH_GET_THROUGHPUT_COUNTERS_PARAMS *p);
void nvswitch_save_nvlink_seed_data_from_minion_to_inforom_lr10(nvswitch_device *device, NvU32 linkId);
void nvswitch_store_seed_data_from_inforom_to_corelib_lr10(nvswitch_device *device);
@@ -973,6 +980,7 @@ void nvswitch_load_link_disable_settings_ls10(nvswitch_device *device, nvli
void nvswitch_link_disable_interrupts_ls10(nvswitch_device *device, NvU32 link);
void nvswitch_init_dlpl_interrupts_ls10(nvlink_link *link);
void nvswitch_set_dlpl_interrupts_ls10(nvlink_link *link);
NvlStatus nvswitch_reset_and_drain_links_ls10(nvswitch_device *device, NvU64 link_mask);
void nvswitch_service_minion_all_links_ls10(nvswitch_device *device);
@@ -992,9 +1000,6 @@ NvlStatus nvswitch_launch_ALI_ls10(nvswitch_device *device);
NvlStatus nvswitch_ctrl_set_mc_rid_table_ls10(nvswitch_device *device, NVSWITCH_SET_MC_RID_TABLE_PARAMS *p);
NvlStatus nvswitch_ctrl_get_mc_rid_table_ls10(nvswitch_device *device, NVSWITCH_GET_MC_RID_TABLE_PARAMS *p);
void nvswitch_init_dlpl_interrupts_ls10(nvlink_link *link);
NvlStatus nvswitch_reset_and_drain_links_ls10(nvswitch_device *device, NvU64 link_mask);
void nvswitch_service_minion_all_links_ls10(nvswitch_device *device);
NvBool nvswitch_is_inforom_supported_ls10(nvswitch_device *device);
@@ -1002,6 +1007,8 @@ void nvswitch_set_error_rate_threshold_ls10(nvlink_link *link, NvBool bIsDe
void nvswitch_configure_error_rate_threshold_interrupt_ls10(nvlink_link *link, NvBool bEnable);
NvlStatus nvswitch_reset_and_train_link_ls10(nvswitch_device *device, nvlink_link *link);
NvBool nvswitch_are_link_clocks_on_ls10(nvswitch_device *device, nvlink_link *link, NvU32 clocksMask);
NvBool nvswitch_does_link_need_termination_enabled_ls10(nvswitch_device *device, nvlink_link *link);
NvlStatus nvswitch_link_termination_setup_ls10(nvswitch_device *device, nvlink_link* link);
void nvswitch_get_error_rate_threshold_ls10(nvlink_link *link);
#endif //_LS10_H_

View File

@@ -24,6 +24,21 @@
#ifndef _MINION_NVLINK_DEFINES_PUBLIC_H_
#define _MINION_NVLINK_DEFINES_PUBLIC_H_
//PAD REG READ API (Bug 2643883)
#define NV_MINION_UCODE_READUPHYPAD_ADDR 11:0
#define NV_MINION_UCODE_READUPHYPAD_LANE 15:12
//FIELD FOR DEBUG_MISC_i DATA REGISTERS
#define NV_MINION_DEBUG_MISC_0_LINK_STATE 7:0
#define NV_MINION_DEBUG_MISC_0_ISR_ID 15:8
#define NV_MINION_DEBUG_MISC_0_OTHER_DATA 31:16
// Recal values checks
#define NV_MINION_UCODE_L1_EXIT_MARGIN 100
#define NV_MINION_UCODE_L1_EXIT_MAX 200
#define NV_MINION_UCODE_RECOVERY_TIME 250
#define NV_MINION_UCODE_PEQ_TIME 96
// SUBCODES for DLCMD FAULT (uses DLCMDFAULR code) - dlCmdFault() - NVLINK_LINK_INT
typedef enum _MINION_STATUS
{
@@ -31,4 +46,6 @@ typedef enum _MINION_STATUS
MINION_ALARM_BUSY = 80,
} MINION_STATUS;
#define LINKSTATUS_EMERGENCY_SHUTDOWN 0x29
#define LINKSTATUS_INITPHASE1 0x24
#endif // _MINION_NVLINK_DEFINES_PUBLIC_H_

View File

@@ -1,5 +1,5 @@
/*
* SPDX-FileCopyrightText: Copyright (c) 2020-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* SPDX-FileCopyrightText: Copyright (c) 2020-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* SPDX-License-Identifier: MIT
*
* Permission is hereby granted, free of charge, to any person obtaining a
@@ -39,9 +39,16 @@ void nvswitch_cci_soe_callback_ls10(nvswitch_device *device, RM_FLCN_MSG *pGenMs
void *pParams, NvU32 seqDesc, NV_STATUS status);
NvlStatus nvswitch_set_nport_tprod_state_ls10(nvswitch_device *device, NvU32 nport);
void nvswitch_soe_unregister_events_ls10(nvswitch_device *device);
void nvswitch_therm_soe_callback_ls10(nvswitch_device *device, union RM_FLCN_MSG *pMsg,
void *pParams, NvU32 seqDesc, NV_STATUS status);
NvlStatus nvswitch_soe_register_event_callbacks_ls10(nvswitch_device *device);
NvlStatus nvswitch_soe_restore_nport_state_ls10(nvswitch_device *device, NvU32 nport);
NvlStatus nvswitch_soe_issue_nport_reset_ls10(nvswitch_device *device, NvU32 nport);
void nvswitch_soe_init_l2_state_ls10(nvswitch_device *device);
void nvswitch_heartbeat_soe_callback_ls10(nvswitch_device *device, RM_FLCN_MSG *pGenMsg,
void *pParams, NvU32 seqDesc, NV_STATUS status);
NvlStatus nvswitch_soe_set_nport_interrupts_ls10(nvswitch_device *device, NvU32 nport, NvBool bEnable);
void nvswitch_soe_disable_nport_fatal_interrupts_ls10(nvswitch_device *device, NvU32 nport,
NvU32 nportIntrEnable, NvU8 nportIntrType);
#endif //_SOE_LS10_H_

View File

@@ -56,4 +56,11 @@ nvswitch_ctrl_therm_read_voltage_ls10
nvswitch_device *device,
NVSWITCH_CTRL_GET_VOLTAGE_PARAMS *info
);
NvlStatus
nvswitch_ctrl_therm_read_power_ls10
(
nvswitch_device *device,
NVSWITCH_GET_POWER_PARAMS *info
);
#endif //_THERM_LS10_H_

View File

@@ -164,16 +164,6 @@ typedef struct
NvBool bBlockProtocol;
} NVSWITCH_I2C_HW_CMD, *PNVSWITCH_I2C_HW_CMD;
typedef enum
{
NVSWITCH_I2C_ACQUIRER_NONE = 0,
NVSWITCH_I2C_ACQUIRER_UNKNOWN,
NVSWITCH_I2C_ACQUIRER_IOCTL, // e.g. MODS
NVSWITCH_I2C_ACQUIRER_EXTERNAL, // e.g. Linux Direct
} NVSWITCH_I2C_ACQUIRER;
typedef enum {
i2cProfile_Standard,
i2cProfile_Fast,

View File

@@ -116,8 +116,8 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x99bf000f, 0xf70fa3b2, 0x550094b3, 0x4b00a0b3, 0x0005987e, 0x000f9881, 0x000f8c82, 0x2abf10bf,
0x900030bc, 0x517e10aa, 0x29bf000c, 0xbf0490b5, 0xf409a619, 0x78890b18, 0x423e0010, 0x7c89000a,
0x9abf0010, 0xbb902bbf, 0x0c0f7e10, 0x092e7e00, 0xb3010f00, 0x7e0a00a4, 0x0f00000e, 0xfbfab201,
0x00a0b331, 0x03a99811, 0x99b9afbf, 0xf0f9a600, 0x00f80bac, 0xf41032f4, 0x548f1132, 0xf9bf0005,
0xa0019990, 0xf800f8f9, 0x10107e00, 0x7e00f800, 0xf8001842, 0x184a7e00, 0x8f00f800, 0xbf000554,
0x00a0b331, 0x03a99811, 0x99b9afbf, 0xf0f9a600, 0x00f80bac, 0xf41032f4, 0x5c8f1132, 0xf9bf0005,
0xa0019990, 0xf800f8f9, 0x10107e00, 0x7e00f800, 0xf8001842, 0x184a7e00, 0x8f00f800, 0xbf00055c,
0x0094b3f9, 0x1032f41a, 0xbd1132f4, 0x7eee0ba4, 0xf4000a95, 0x31f41031, 0xbf00f811, 0x019992f9,
0xf9bff9a0, 0x0a0094b3, 0xf41031f4, 0x00f81131, 0x0038a77e, 0xc9fe00f8, 0x1495b601, 0x3c089033,
0xf4089630, 0x9033130c, 0x90332002, 0x90333403, 0x1c3e1800, 0x9033000b, 0x9033280f, 0x94331810,
@@ -179,7 +179,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x0a747eb1, 0xfe0ab200, 0x00900140, 0x7e0bb208, 0xbf000012, 0x18f43d00, 0x163e1d0d, 0xe9180012,
0x01ff1020, 0x2620ee90, 0x0d1bf491, 0x0100943d, 0x233ee920, 0xf9c40012, 0xe009bcff, 0x08f4fd26,
0x7e043de0, 0x32000a9b, 0x0415fb0a, 0x0011d87e, 0x0600a433, 0x00f802f8, 0xa4f082f9, 0x31008fff,
0x31188e00, 0x58fa7c00, 0xb298ea3c, 0xbdc632b7, 0xff94f034, 0x00055888, 0x8120597c, 0x3e001104,
0x31188e00, 0x58fa7c00, 0xb298ea3c, 0xbdc632b7, 0xff94f034, 0x00056088, 0x8120597c, 0x3e001104,
0x52001354, 0x29e40122, 0x9494ffff, 0x034ffe08, 0xb31ff995, 0xd0100190, 0x03000000, 0xf594f0ff,
0xbf00d51b, 0x01008e89, 0x089f9500, 0xfffff9e4, 0x18f59ea6, 0x99900010, 0x0894b601, 0x473e89a0,
0x1f580013, 0x02195801, 0x1bf4f966, 0x000b4945, 0x000093f1, 0x0031248f, 0x18909fbc, 0x19180190,
@@ -208,7 +208,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x0c004d81, 0xcf0b004c, 0xcecf00df, 0x00d9cf00, 0x1bf4f9a6, 0xb5aea0f5, 0x00f801af, 0xcf0b0049,
0xaabf0099, 0xf8a29abc, 0xb242f900, 0xb2b3b2a0, 0x00c0b3c1, 0x0b004929, 0xb20092cf, 0x0000b394,
0xf93ab212, 0x00a03305, 0x3e010a0a, 0xcf0015e8, 0x92bb0049, 0xf491a602, 0x04b3e608, 0xa43d0a00,
0x0015e83e, 0x05f93ab2, 0x000041fb, 0xd24e0041, 0x00000554, 0x90fc00f8, 0x0015ea7e, 0xf90188fe,
0x0015e83e, 0x05f93ab2, 0x000041fb, 0xd24e0041, 0x0000055c, 0x90fc00f8, 0x0015ea7e, 0xf90188fe,
0x00289880, 0x8cd880f9, 0x9800000f, 0x47fe0088, 0xbd87a001, 0x0387b570, 0xfe0010f7, 0xb7b600a4,
0x1fb9f002, 0xf9001bf7, 0x7e00f890, 0x3e0015ea, 0xf9001647, 0x3550daf2, 0x50db0000, 0x7e000033,
0x7e0015f6, 0xf7000b68, 0x8cd80010, 0x9800000f, 0x87980088, 0x0074fe00, 0xb6028798, 0x79f00277,
@@ -349,7 +349,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0xf9cf01c0, 0x4c99c700, 0x220090b3, 0xf60190b3, 0x223e02f8, 0xf9cf0027, 0x4c99c700, 0x390090b3,
0xf60190b3, 0x363e02f8, 0xa48f0027, 0x008901ad, 0x9ff601c1, 0xb8f4bd00, 0x00010099, 0xdf009ff6,
0x800000f2, 0x020099b8, 0x009ff602, 0xb2009fcf, 0x27363e9f, 0xe400f800, 0xc7ff00bf, 0xaeb2f0b9,
0xdfd59fff, 0x0000055c, 0x0027ab3e, 0x1bf49b26, 0x01f9581a, 0x1bf49d66, 0x3df97f12, 0x08e975a4,
0xdfd59fff, 0x00000564, 0x0027ab3e, 0x1bf49b26, 0x01f9581a, 0x1bf49d66, 0x3df97f12, 0x08e975a4,
0x7501ff58, 0x00f809ef, 0x3f04ff90, 0x009433f9, 0xf8010adf, 0x0aa9b200, 0x00b0b302, 0x3db92008,
0xf900f8a4, 0xb3a0b202, 0x986500a0, 0x90b305a9, 0x0cd95e00, 0xbf000014, 0xe8aab89a, 0x277e0004,
0xa9e7001a, 0x9ab30168, 0xb34c0fff, 0xb6470090, 0xaab314a5, 0xb3400fff, 0x983b00a0, 0x94b6050e,
@@ -443,19 +443,19 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x0032b13e, 0xb53e3505, 0x02050032, 0x0032b53e, 0x003a317e, 0xf42885fb, 0xdcdff430, 0xf9000005,
0xfeffbf22, 0x99900149, 0x0142fe14, 0x94bd9fa0, 0xa00c2290, 0x3da37e29, 0x00a03300, 0xda040b56,
0x00002944, 0x2db2bcb2, 0x0042d77e, 0xa433a032, 0x41fe4300, 0x10119001, 0x8e7e1ab2, 0xa0320033,
0x3100a433, 0x2bbf1cbf, 0x24d1a4bd, 0x7e000014, 0xa000b06c, 0x00a0b31a, 0x7eb43d1a, 0xb300b104,
0xbf1200a0, 0x7eff001a, 0x3e00b63e, 0x00003371, 0x0149feff, 0xbf149990, 0x05dcd99f, 0x99bf0000,
0x3100a433, 0x2bbf1cbf, 0x24d1a4bd, 0x7e000014, 0xa000b06d, 0x00a0b31a, 0x7eb43d1a, 0xb300b105,
0xbf1200a0, 0x7eff001a, 0x3e00b63f, 0x00003371, 0x0149feff, 0xbf149990, 0x05dcd99f, 0x99bf0000,
0xf9a60a32, 0x7e070bf4, 0xfb003a31, 0x0e090c25, 0xa43da9a0, 0x30f400f8, 0x05dcdfd8, 0x62f90000,
0x30f4ffbf, 0x0149fef4, 0xa04c9990, 0xb2a93f9f, 0x01a398a6, 0x0d019033, 0x60489d33, 0x35a33e03,
0x04301800, 0x1b010d33, 0x03329801, 0x3d043198, 0x10dc4ba4, 0xd501004c, 0x00000644, 0x0038327e,
0xa4b35aa0, 0x02f80c00, 0x1a3e0501, 0x49fe0037, 0x28999001, 0x00299cd4, 0xb51cb200, 0x91b50741,
0x352bb201, 0x42b51540, 0xbd92a006, 0x10dc4ed4, 0x0020d07e, 0xad33a132, 0xbf015900, 0x33993f59,
0x980d0090, 0x95f00149, 0x0149b508, 0x000644d9, 0x1899bf00, 0x90336999, 0x9cdf1300, 0x98000029,
0x95f101f9, 0xf9b54000, 0x299cda01, 0x027e0000, 0x3098009c, 0x01027e02, 0x8aa3d900, 0xacb20000,
0x95f101f9, 0xf9b54000, 0x299cda01, 0x037e0000, 0x3098009c, 0x01027e02, 0x8aa3d900, 0xacb20000,
0xb20091b0, 0xbdb4bd0d, 0x2e70da04, 0x01b00000, 0x08013001, 0xc87e010e, 0x9cd90013, 0xdf000029,
0x1e000000, 0xfe509035, 0x99900149, 0x0142fe34, 0x22909fa0, 0xb2010a38, 0x94ee7e2b, 0x1fa43300,
0xc42bbf1b, 0x1bf401b9, 0x01b5f014, 0x2ba0010a, 0x0095097e, 0x061fa033, 0xb4bd09f8, 0x097e020a,
0x9cda0095, 0x7e000029, 0xfe009ab1, 0xb4bd014a, 0x010dc4bd, 0x7e34aa90, 0x3e0075b0, 0x33003574,
0x1e000000, 0xfe509035, 0x99900149, 0x0142fe34, 0x22909fa0, 0xb2010a38, 0x94ef7e2b, 0x1fa43300,
0xc42bbf1b, 0x1bf401b9, 0x01b5f014, 0x2ba0010a, 0x00950a7e, 0x061fa033, 0xb4bd09f8, 0x0a7e020a,
0x9cda0095, 0x7e000029, 0xfe009ab2, 0xb4bd014a, 0x010dc4bd, 0x7e34aa90, 0x3e0075b0, 0x33003574,
0xd9320204, 0x00000644, 0xa0b39abf, 0xb4d97f00, 0x98000029, 0x9bbf019c, 0x9cd9f43d, 0xbd000029,
0x159f35d4, 0x7e10dc4e, 0x320020d0, 0x356f3ea1, 0x030d3300, 0x0e7e0207, 0x39180001, 0x00903308,
0x033e9824, 0x002a3cd9, 0x2a44df00, 0x9ea00000, 0xb5043e98, 0x3998019e, 0x98f9a005, 0xfeb5063e,
@@ -463,8 +463,8 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0xf9b5059d, 0x01087e2e, 0x3e143d00, 0x33003574, 0x01ab001d, 0xb2016b18, 0x0f817e3a, 0xfe020900,
0xff90014f, 0x3df92048, 0x02f93594, 0x09033318, 0xb2b4bd04, 0x03f335fa, 0x7e01f935, 0x3e000f71,
0xfe00371a, 0x41fe0140, 0x44009001, 0xfe401190, 0x0ab20142, 0xb23c2290, 0x3d2cb21b, 0x75b07ed4,
0x02399800, 0x010a0fbf, 0x1bf4f9a6, 0x0524de3c, 0xe93f0000, 0x0e009033, 0x1e0a943d, 0x063ee920,
0xffd90036, 0xff200000, 0x94b394f9, 0x0ab2121c, 0x2cb21bb2, 0x0098b87e, 0x0036063e, 0x1bb20ab2,
0x02399800, 0x010a0fbf, 0x1bf4f9a6, 0x052cde3c, 0xe93f0000, 0x0e009033, 0x1e0a943d, 0x063ee920,
0xffd90036, 0xff200000, 0x94b394f9, 0x0ab2121c, 0x2cb21bb2, 0x0098b97e, 0x0036063e, 0x1bb20ab2,
0x3e7e2cb2, 0x4bfe008d, 0x44bb9001, 0xa9c4bebf, 0xffffdf1f, 0x94b6e0ff, 0x04effd18, 0xa0e59eff,
0x0000d9be, 0xe9ff4000, 0x6b0bf494, 0x681fa433, 0x900149fe, 0x9dbf4099, 0xbf049992, 0x1ee4339c,
0x0003df42, 0xff89ff00, 0xefff3fff, 0x94d9fff4, 0xff0294b6, 0xc0b3e5f9, 0xe9c50b00, 0x36703e03,
@@ -569,7 +569,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x328908f4, 0xfbfa324f, 0xbf02f971, 0xbcb0b2b9, 0xb9a6b0c9, 0xe41708f4, 0xbcffffd9, 0xfba6f09b,
0x980b08f4, 0xf9a60109, 0xf8050df4, 0xb2dc7202, 0x28d77eed, 0xb201fb00, 0x05ab98b9, 0xdeb2cfb2,
0xfd729cb2, 0x0042a97e, 0xf0fc00f8, 0xf9fc30f4, 0xbf62f9f0, 0x08e1b0b9, 0xd4b2a5b2, 0xa630c9bc,
0x1d08f439, 0xa6f0d3bc, 0x1508f4f3, 0xa601b998, 0x0d0cf4f9, 0x24bd0101, 0x763efc06, 0x02f80043,
0x1d08f439, 0xa6f0d3bc, 0x1508f4f3, 0xa601b998, 0x0d0cf4f9, 0x010124bd, 0x763efc06, 0x02f80043,
0x853e0101, 0x42bc0043, 0x0096b192, 0x060df401, 0x90010049, 0x96ff0399, 0x0b947e04, 0xb23bb200,
0xdd0c725a, 0x00001200, 0x7e3030bc, 0x320028d7, 0x00a433a1, 0x08b0b434, 0xb209c0b4, 0x1200da2d,
0x20bc0000, 0x01004e20, 0x0021367e, 0x0a00a033, 0x853e02f8, 0x00da0043, 0xbd000012, 0x01004cb4,
@@ -646,7 +646,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x01b024a1, 0x08113001, 0x300c1130, 0x050d1c01, 0xda00c04e, 0x000005d0, 0x005d0a7e, 0x001404da,
0x0c040b00, 0x59377e08, 0x00ad3300, 0x4d4c00f6, 0x00c3f171, 0x00d8db00, 0xa1300000, 0x00a13028,
0x3010a130, 0xa13014a1, 0x20a13018, 0xb024a130, 0x11300101, 0x0c113008, 0x0d1c0130, 0x00804e09,
0x0005d4da, 0x5d0a7e00, 0x1428da00, 0x040b0000, 0x377e080c, 0xad330059, 0x4c00a900, 0xc3f1b7ca,
0x0005d4da, 0x5d0a7e00, 0x1428da00, 0x040b0000, 0x377e080c, 0xad330059, 0x4c00a900, 0xc3f1b7cb,
0xb4db0000, 0x30000000, 0xa13028a1, 0x10a13000, 0x3014a130, 0xa13018a1, 0x24a13020, 0x300c1130,
0x01b01c01, 0x08113001, 0xc04e0a0d, 0x05d8da00, 0x0a7e0000, 0x1cda005d, 0x0b000014, 0x7e080c04,
0x33005937, 0x7e5c00a4, 0x7e005c97, 0x7e004db4, 0x7e005931, 0x7e000a74, 0x7e003cf7, 0x7e005249,
@@ -662,7 +662,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x3d071bf4, 0xc700f8a4, 0x96b024f9, 0x0b9cf002, 0x00f89a32, 0x0089050f, 0x9ff60180, 0xb8060f00,
0x00010099, 0xf8009ff6, 0x02008900, 0x0099cf01, 0x1000008f, 0xf4049ffd, 0x34da181b, 0x7e008204,
0xf0001a27, 0x1bf401a4, 0x0a02f809, 0x3d00f824, 0xd900f8a4, 0x00001430, 0x34da99bf, 0x98000014,
0x95f90e99, 0x1e0a00f8, 0x00b9a17e, 0x0600a033, 0x00f802f8, 0x0100008f, 0xf6590049, 0x00f8009f,
0x95f90e99, 0x1e0a00f8, 0x00b9a27e, 0x0600a033, 0x00f802f8, 0x0100008f, 0xf6590049, 0x00f8009f,
0x00900089, 0xf00099ce, 0x0bf40194, 0xf1008e20, 0x00e9ce00, 0x9ffdef0f, 0x00e9f704, 0x5200eeb8,
0x00e9ce02, 0xf7049ffd, 0x00f800e9, 0x7e0a004a, 0xe7001a27, 0xb30114aa, 0x4f1e06a4, 0xf9cf4f00,
0xe899c700, 0x110f94b3, 0xf000f9cf, 0x9cf0ff94, 0xf89a320b, 0xf8a43d00, 0x8902f900, 0xce009000,
@@ -751,7 +751,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x00f0b305, 0x0a09584a, 0x90014afe, 0xafb508aa, 0x010f9801, 0xb60093f0, 0xa9b50294, 0x02afb503,
0xb2100918, 0x18a9351b, 0xb5020f98, 0x099804af, 0x05a9b503, 0xa0a000bf, 0x005b0b7e, 0xf001a6b0,
0x9a120b9c, 0x59ab3e01, 0xfb020a00, 0xe27e1c15, 0x943d0059, 0xf001a6b0, 0xa6f00bac, 0xa29a3c01,
0x4c8900f8, 0x9ebf0005, 0xb5019f98, 0x9ea0019f, 0x005a267e, 0x0801a4b3, 0x00f8a43d, 0xff0a09f8,
0x548900f8, 0x9ebf0005, 0xb5019f98, 0x9ea0019f, 0x005a267e, 0x0801a4b3, 0x00f8a43d, 0xff0a09f8,
0x12f900f8, 0x000f8c89, 0xf20a99bf, 0x380090b3, 0x000fa881, 0xf10a10bf, 0x2c0004b3, 0x000a747e,
0x19a00109, 0x000f9889, 0x948990a0, 0xff0f0010, 0x90899fa0, 0x90a0000f, 0x000f9489, 0x587e9fa0,
0x10a00037, 0x12f911fb, 0x000f8c89, 0xb4bd04bd, 0xb44c90a0, 0x0fac8a00, 0x0b947e00, 0x0cb4bd00,
@@ -859,7 +859,7 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x4c99c700, 0x6a0090b3, 0xf60190b3, 0xde3e02f8, 0xf9cf0066, 0x4c99c700, 0x3a0090b3, 0xf60190b3,
0xf23e02f8, 0x00d90066, 0xbf000014, 0x014bfe9a, 0xbb90080c, 0x006e7e14, 0x0149fe00, 0xbf1c9990,
0x05dcd99f, 0x99bf0000, 0x0bf5f9a6, 0xe03e00ba, 0x00890067, 0x99cf01c2, 0x0608de00, 0x9fc70000,
0x1899c710, 0x3515ef35, 0x063e14e9, 0xff900067, 0xc1008960, 0x009ff601, 0x0000f1df, 0x0099b880,
0x1899c710, 0x3516ef35, 0x063e15e9, 0xff900067, 0xc1008960, 0x009ff601, 0x0000f1df, 0x0099b880,
0x9ff70201, 0x009fcf00, 0xf23e9fb2, 0x00890066, 0x99cf01c2, 0x009fe400, 0xff94f120, 0x00fdb33f,
0xc13eff40, 0x448f0066, 0x0089066f, 0x9ff601c1, 0x00f1df00, 0x99b88000, 0xf7020100, 0x9fcf009f,
0x3e9fb200, 0x890066a8, 0xcf01c200, 0x9fe40099, 0x94f12000, 0xfdb33fff, 0x3efec700, 0x8f006681,
@@ -1157,371 +1157,371 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x0a3299bf, 0x0bf4f9a6, 0x3a317e07, 0x2875fb00, 0x00299cd9, 0x15991800, 0xbeb2adb2, 0x0a009033,
0x008b707e, 0x44d900f8, 0xbf000006, 0xb2cab29b, 0xb0bdbcec, 0x000b7e7e, 0x00f81f0a, 0xdff430f4,
0x000005dc, 0xffbf32f9, 0x900149fe, 0xa2b21899, 0xa9bf9fa0, 0xb39899c7, 0x00aa1d99, 0x00299cd9,
0x02999800, 0xb34299c7, 0x009a0099, 0x0a0140fe, 0x14009001, 0xee7e0bb2, 0xa4330094, 0x4bfe551f,
0x90020a01, 0xee7e10bb, 0xa4330094, 0x09bf451f, 0x04bd0103, 0xbc1493ff, 0x94f09530, 0x121bf401,
0x0f0204b3, 0x009a447e, 0x0700a033, 0x900415f0, 0x04b30100, 0x49fee509, 0x14999001, 0x19a699bf,
0x0a150bf4, 0x7e1bb201, 0x33009509, 0xf80a1fa0, 0x8d233e09, 0xfe2ebf00, 0x99900149, 0xdf99bf10,
0x02999800, 0xb34299c7, 0x009a0099, 0x0a0140fe, 0x14009001, 0xef7e0bb2, 0xa4330094, 0x4bfe551f,
0x90020a01, 0xef7e10bb, 0xa4330094, 0x09bf451f, 0x04bd0103, 0xbc1493ff, 0x94f09530, 0x121bf401,
0x0f0204b3, 0x009a457e, 0x0700a033, 0x900415f0, 0x04b30100, 0x49fee50a, 0x14999001, 0x19a699bf,
0x0a150bf4, 0x7e1bb201, 0x3300950a, 0xf80a1fa0, 0x8d233e09, 0xfe2ebf00, 0x99900149, 0xdf99bf10,
0xbfffffff, 0xeffd1f0a, 0x0099b904, 0xf09419ff, 0x96f00b9c, 0x1e94b601, 0xa0059efd, 0x8d233e29,
0xfe1f0a00, 0x99900149, 0xd99fbf18, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40c35,
0x05dcdfe4, 0x52f90000, 0x49feffbf, 0x30999001, 0x9fa0a3b2, 0xc5b2afbf, 0xfdc7b4b2, 0x00ddb31d,
0xfa95075c, 0x10f99508, 0xa132f032, 0xf9339232, 0x3000d515, 0x0cf415f6, 0x05f93346, 0xf63005fb,
0x1c0cf405, 0x8701f933, 0x301f0a00, 0x08f501f6, 0xf6300739, 0x240cf503, 0x8e283e07, 0x10f93300,
0xf630041a, 0x0e0cf410, 0xf50df630, 0x3e070e08, 0x33009155, 0x070611fd, 0x00915f3e, 0x421df933,
0x1df63006, 0x33250cf4, 0x03fa18f9, 0xf418f630, 0xfd330c0c, 0x3e06e717, 0x33009408, 0x01001af9,
0xd91cfd33, 0x94c53e06, 0x21f93300, 0xf6300262, 0x0c0cf421, 0xc51efd33, 0x8ecd3e06, 0x24f93300,
0xfd330639, 0x3e06b725, 0xdf009499, 0x0000299c, 0x2614f918, 0x0d18f4a9, 0xbcffa9c4, 0x6e3e98f9,
0xbda00093, 0x0094303e, 0x1d33080a, 0x7e069d00, 0x330063f7, 0x490a0300, 0xa9fdff00, 0x3e4aa004,
0x0a009430, 0x04163003, 0x067f0cf5, 0x00299cd9, 0x0e99bf00, 0xbc080a01, 0x99c7f4e1, 0x049ffd98,
0x06670bf5, 0x0e021033, 0x10041033, 0x843eea32, 0xeab2008e, 0x008e7a3e, 0x4bfea4bd, 0x2cbb9001,
0x0063b47e, 0x008a847e, 0x3f1fad33, 0x0149fe06, 0xbf2c9990, 0x1fe9959e, 0x0a0190b3, 0xa73ed4bd,
0x00dd008e, 0xc4ff0000, 0x943380e9, 0xf4bd0a00, 0x008ebe3e, 0xe6b0010f, 0x051ff400, 0xe995ff0f,
0x95d9ff08, 0xa090f9bc, 0x94c73e49, 0xb29b3200, 0x7e5db24c, 0x3e0077ca, 0x330094c7, 0x305507a0,
0x0cf407a6, 0x299cd912, 0xa6300000, 0x2b0df402, 0x008f243e, 0xf40ca630, 0x9cd9120c, 0x30000029,
0x18f409a6, 0x8f473e57, 0x0da03300, 0x33030a61, 0x05b80e1d, 0x008f7a3e, 0xdf019998, 0x04000000,
0x008f603e, 0xdf019998, 0x08000000, 0x008f603e, 0x00299cd9, 0x02999800, 0x0200008f, 0xf5049ffd,
0x3e00c61b, 0x98009045, 0x008f0299, 0x9ffd0400, 0xc41bf504, 0x90453e00, 0x02999800, 0x0100008f,
0xf4049ffd, 0x453e2f1b, 0x9cd90090, 0x8f000029, 0x98400000, 0x873e0299, 0x9cd9008f, 0x98000029,
0x00df0299, 0xfd008000, 0x1bf5049f, 0x453e00a9, 0x10330090, 0x16307307, 0x1a0cf407, 0x4b021033,
0xf4021630, 0x1033540c, 0x1d332700, 0x3e048601, 0x30008fd7, 0x0cf40c16, 0x0916300d, 0x3e6518f4,
0x30009015, 0x0df40e16, 0x94303e6d, 0x7e4ab200, 0x3e00789f, 0x320094c7, 0xb22b321a, 0x7e5db24c,
0x3e007cca, 0x320094c7, 0xb22b321a, 0x7e5db24c, 0x3e007c3b, 0x320094c7, 0xb22b321a, 0x7e467e4c,
0x94c73e00, 0xb22b3200, 0x0a5db24c, 0x7ba27e07, 0x94c73e00, 0x32080a00, 0xb24cb22b, 0x7b037e5d,
0x321a3200, 0xb23cb22b, 0x7e5eb24d, 0x3e007ed3, 0x320094c7, 0xb22b321a, 0xb24db23c, 0x78a77e5e,
0x94c73e00, 0x3e080a00, 0x0a0094c7, 0x009d3304, 0x9cd9047a, 0x98000029, 0x080a0299, 0x400094f1,
0x04670bf5, 0xfe0149fe, 0x99900142, 0x1822902c, 0x2da09da0, 0xa0049992, 0x0499929d, 0x99929da0,
0x929da004, 0x9da00499, 0x85011933, 0x01163000, 0x0a0e08f4, 0x021d3303, 0x213e0432, 0x41fe0091,
0x0140fe01, 0x902c1190, 0x1ab22800, 0x607e0bb2, 0x19bf0075, 0x43fe00bf, 0x0142fe01, 0x900794f0,
0x22902433, 0xfe3ab220, 0x2bb20141, 0xf01c1190, 0x1cb20704, 0xfd0404b6, 0x5c7e0509, 0x29bf006a,
0x1ebf3fbf, 0xb60141fe, 0xf4f00894, 0xff94f1ff, 0x10f4b6ff, 0x9018e4b6, 0x09fd1811, 0xfd1ab205,
0x0efd050f, 0x6a497e05, 0x91473e00, 0x7e2ab200, 0xb2006a39, 0x7e20bf2a, 0xbf006a29, 0x914d3e29,
0x0141fe00, 0xb2181190, 0x6a167e1a, 0xbf1ab200, 0x6a037e10, 0xb219bf00, 0xff04f11a, 0x1094b6ff,
0x7e0590ff, 0xbf0069f0, 0xff94f119, 0xa040a0ff, 0x94303e59, 0x7efab200, 0x3e0095f3, 0x330094c7,
0x330d00a0, 0x035c01ad, 0x0091ad3e, 0x9033b0bf, 0x94330c01, 0x9d3e2f02, 0x41fe0091, 0x90010a01,
0x1bb21811, 0x0094ee7e, 0x3f1fad33, 0x091fbf03, 0x9509fffe, 0xa0049fff, 0x91a13e10, 0xff04f100,
0xb22a3201, 0x95097e0b, 0x94c73e00, 0x7e9a3200, 0x3e0094ee, 0xb20094c7, 0x95227efa, 0x94c73e00,
0x299cd300, 0x39bf0000, 0x000000df, 0xfd080a20, 0x0bf5049f, 0x030a02f5, 0xef001d33, 0x0140fe02,
0x90014cfe, 0xcc902800, 0xfe0bb22c, 0x22900142, 0x7e2ab224, 0x7f007347, 0x03967009, 0x940b9cf0,
0x0e7e0791, 0x30180001, 0x01087e58, 0x00003300, 0x3e1fb20a, 0x7f00924c, 0x00a4732a, 0x3e19b20a,
0xc500924a, 0xa0734019, 0xa0731403, 0xa4731804, 0x9fe51c02, 0x4c3e0100, 0x9fe50092, 0x4c3e0200,
0x9fe50092, 0x4c3e0300, 0x9fb20092, 0x900149fe, 0x997f2c99, 0x88049973, 0x04967000, 0x731a0cf4,
0x70480190, 0x08f40196, 0x02907336, 0x039d734c, 0xce3e00e3, 0x99730092, 0x70009b07, 0x0cf40796,
0x05907310, 0x069d7369, 0x033e00cb, 0x99730093, 0x73009c08, 0x00bd099d, 0x0093383e, 0xfe07ff89,
0x3e04f9fd, 0x49009350, 0xf9ffc7ff, 0x0095f194, 0x92bf3e20, 0xc7ff4900, 0xf194f9ff, 0x8f180095,
0xfdfe3fff, 0x9fe5049f, 0x503e4000, 0xff490093, 0x94f9ffc7, 0x100095f1, 0x0092bf3e, 0xffc7ff49,
0x95f194f9, 0xf43e0800, 0xff490092, 0x94f9ffc7, 0x100095f1, 0xfe3fff8f, 0xe5049ffd, 0x3e80009f,
0x49009350, 0xf9ffc7ff, 0x0095f194, 0x931b3e08, 0xc7ff4900, 0xf194f9ff, 0x8f100095, 0xfdfe3fff,
0x9fe5049f, 0x503ec000, 0xff490093, 0x94f9ffc7, 0x080095f1, 0x0093423e, 0xffc7ff49, 0x95f194f9,
0xff8f1000, 0x9ffdfe3f, 0x00008f04, 0xf59fff01, 0x00299cd9, 0x50991800, 0x0f009033, 0x02000089,
0x3e95f9ff, 0x8900936e, 0xfffdffff, 0x49a094f9, 0x0094303e, 0xf514a630, 0xc401480c, 0xd0d9ffaf,
0xbc000004, 0x9cd9e89f, 0x0a000029, 0x3befc708, 0xc7989fbc, 0x9fbb96ef, 0x0194f005, 0x012b0bf5,
0xe7ff29c4, 0x54010def, 0x040a029b, 0x18f5bf66, 0xf3f00119, 0xffb9e400, 0xc2f9bcff, 0xf404c6b0,
0x040c090d, 0x0093ca3e, 0xbae44da0, 0xe9c4ffff, 0x42ebe703, 0x00943301, 0xb0babc12, 0x0029bcd9,
0x3e4ab200, 0xd90093f3, 0x00000644, 0xbabc99bf, 0xbc4ab2b0, 0x7e7eb09b, 0x303e000b, 0x9b320094,
0x009aca7e, 0x0094c73e, 0x0f00a033, 0x1d33080a, 0x3e00b101, 0xfe0094c7, 0x00900140, 0x7e0ab224,
0x3f0072fb, 0x00a54f09, 0x06009433, 0x4fa05a0f, 0xc73e1f0a, 0x9cd90094, 0x18000029, 0x99331599,
0x33008700, 0x303802a0, 0x0cf402a6, 0x00a0330f, 0x01a43318, 0x946f3e6e, 0x03a03300, 0x04a4332c,
0x948f3e62, 0x7e3ab200, 0x3e009d81, 0xb20094c7, 0x7ecbb2ba, 0x3e009ffb, 0x320094c7, 0x9d0a7e2a,
0x94c73e00, 0x7e2a3200, 0x3e00a211, 0x320094c7, 0xa1a57e2a, 0x94c73e00, 0x299cd900, 0x99180000,
0x00903315, 0x6cfbc724, 0x4db22c32, 0xa4f05eb2, 0x9eab7e0f, 0x94c73e00, 0x3e020a00, 0x0a0094c7,
0x94c73e03, 0xfe090a00, 0x99900149, 0xd99fbf30, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31,
0xa4f01c55, 0x02a4b6ff, 0x1f0acaa0, 0xaf3200f8, 0xf630040a, 0x120cf402, 0xd9fff4f0, 0x00002a5c,
0x0af89fbc, 0xf8bfa01f, 0x0aaf3200, 0x02f63004, 0xf0100cf4, 0x5cd9fff4, 0x0a00002a, 0xf99bbc1f,
0x12f900f8, 0xb210af95, 0x08ae95b1, 0x00299cd0, 0x26ff0900, 0x3d1bf4e9, 0x26490918, 0xb21bf5f9,
0x4a091800, 0x99331c0a, 0x3000ab01, 0x08f50196, 0x060a00a1, 0x9d029d33, 0x13099800, 0x1f0af43d,
0x0918b9a0, 0x4a0f3549, 0x35019910, 0xf13e4909, 0x09180095, 0x330a0a4a, 0xd97a0094, 0x00002a5c,
0xf4f099bf, 0xe899c7ff, 0xbc0694b6, 0xf6b0f0f9, 0x5e0cf43f, 0xe433030a, 0xf9905b0c, 0x4096b104,
0x4e0cf400, 0xdf02f994, 0x00002a68, 0x7f909fbc, 0x019a589f, 0xf473080d, 0x09981b02, 0xf0290d04,
0x90338094, 0x4b7e0f00, 0x01090075, 0x0935d43d, 0x299cdf50, 0xfe180000, 0xffd9c449, 0x0913f9b5,
0x4af93502, 0x0affe4f0, 0x3e1ea01c, 0x0a0095f1, 0xf911fb04, 0xb2adb222, 0xe8a0c7b2, 0x06b0bbbf,
0xcc0cf53f, 0xffbcc400, 0xb3ffaec4, 0x0a0d0fe4, 0x3fc6b005, 0x00bb0cf5, 0x002a5cd9, 0xc499bf00,
0x99c7ff9f, 0x06f194e8, 0xb30694b6, 0xb32c0ee0, 0x0a440fe0, 0x0dedb31f, 0x097c009a, 0xff967190,
0x8c0cf500, 0xff9fe400, 0x2a68d9ff, 0x9fbc0000, 0x3e2fa0f8, 0x7c00966d, 0x96719001, 0x0cf400ff,
0xff9fe46f, 0x2a68d9ff, 0x9bbc0000, 0x3e1f0af9, 0xbc0096cf, 0x050af0c9, 0x94f0d9c7, 0x999002fb,
0x029c9401, 0xb1e0cbbc, 0xf41000e6, 0x01bc440c, 0xb6030a90, 0xc9bc0294, 0x00f6b1f0, 0x320cf410,
0x08f49ba6, 0xf49ea608, 0xb9a62008, 0xa6080df4, 0x1608f4bf, 0x002a68df, 0xa09fbc00, 0x7eb0bfbc,
0x3e000b7e, 0x0a00966d, 0x96cf3e04, 0xfb030a00, 0xb1c9b221, 0xf40fffa6, 0x9abc2b0c, 0x0096b190,
0x210cf410, 0x002a68de, 0x90aebc00, 0x0a00d033, 0xfa3e9ab2, 0xbab20096, 0x7e7e9bb2, 0x1f0a000b,
0x040a00f8, 0x30f400f8, 0x05dcdfe4, 0x12f90000, 0x49feffbf, 0x20999001, 0x9fa0a0b2, 0xb4f0d1b2,
0xb4edb2ff, 0xe0b40aa0, 0x0709c40b, 0x1bf49ba6, 0x2f0fc775, 0x900149fe, 0x9da00899, 0xb5029eb5,
0x9fbc019a, 0xfe94bdb8, 0xff90014f, 0xb5f9a014, 0xf1b501fc, 0x2309c702, 0xf9bcbabf, 0x850fc7c8,
0x3c8a09c7, 0xf4f0e09f, 0x910dc71f, 0x3c05cfbb, 0xeeb990d9, 0x1fd4f000, 0xb91fe4f0, 0xefbc0099,
0x1f94f0e0, 0x9dbcff0f, 0x95f9bc90, 0xbb05febb, 0xfcfd049d, 0x0099b904, 0xfd04fdbb, 0x9ffd049a,
0xfeb9a005, 0x99900149, 0xd99fbf20, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f41c15,
0x05dcd9f4, 0x82f90000, 0xd1b299bf, 0x90014ffe, 0xf9a02cff, 0xff92dd3f, 0x091f0003, 0x01f03517,
0x2002f035, 0xb2b6b2f9, 0x33a5b2e3, 0xdb1900d4, 0x00000528, 0x7e7e240c, 0x0909000b, 0x19200a32,
0x0098813e, 0xd630030a, 0x780cf409, 0xc40147fe, 0xf8b2ffc4, 0x7790043d, 0x98783e24, 0xff09c400,
0x92947bb2, 0xbc040c02, 0xd43da026, 0x0096d17e, 0x6b1fa433, 0xf9c47fbf, 0xf494a607, 0xf9c75e18,
0x01991223, 0xf4019630, 0xfec7520c, 0xffe9c42f, 0xc7c8893c, 0xf9c78afd, 0x90d93c85, 0x0cf49c26,
0x03e0333b, 0x91f9c738, 0x26909d3c, 0x2c0cf49c, 0x109052bc, 0x9fa00100, 0x0926193f, 0x0aa108f4,
0x0149fe1f, 0xbf2c9990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x98b13e23, 0xbf0d0a00, 0xff0fc439,
0x000000de, 0x049efdff, 0xa005f9fd, 0x98813e3f, 0x3a317e00, 0x0c85fb00, 0xd9a830f4, 0x000005dc,
0x99bf82f9, 0xb2f830f4, 0x014ffea7, 0xa080ff90, 0xb0aabff9, 0xc1b00eb1, 0x68a6c70d, 0x30016912,
0x0cf50396, 0xa9c7013b, 0x0a96306c, 0x01310cf5, 0xfe0141fe, 0x11900140, 0x50009057, 0x2010a5b6,
0xb2b4bd19, 0x94e27e0c, 0x1fad3300, 0x09bf011d, 0xc40142fe, 0x2290ff6b, 0x04b4b658, 0xb9bc2ab2,
0xb26c32b0, 0x7e7eb21d, 0x300097be, 0xad333fa1, 0xfe00f51f, 0x01080141, 0x3d401190, 0x08199024,
0x3d0c1e90, 0xb054bd34, 0xe1b00c91, 0x9a0d3e0b, 0x1490b400, 0x100c1bb2, 0x59bcd43d, 0x7e4ab240,
0x330096d1, 0x00c31fad, 0x1f9819bf, 0xffffde01, 0x9efde0ff, 0x021fb504, 0x203319a0, 0x043d0a00,
0x0099a73e, 0xb40cb0b4, 0x1ab20bc0, 0x008d3e7e, 0xa0321fbf, 0xffffffde, 0x1f09c4e0, 0xb604fefd,
0x9ffd1894, 0xb219a005, 0x0c1bb24a, 0x7e010d10, 0x330096d1, 0x33731fa4, 0x020a0020, 0x9a073e01,
0x1f043300, 0x3e043d3f, 0xc40099f4, 0x1c98ff09, 0x031d9802, 0xfe0de0b4, 0xff90014f, 0xa8f9bc58,
0xb00e90b4, 0x001001e1, 0xb03b3201, 0x7eb20091, 0x0097067e, 0x26579034, 0xd208f409, 0x009a073e,
0x843d19bf, 0x101f9295, 0x55900133, 0xf5362610, 0x0aff4208, 0x0080331b, 0x9a233e11, 0x3e030a00,
0x34009a26, 0x49fe3fa0, 0x80999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x30f4003a,
0x5885fb08, 0xdff430f4, 0x000005dc, 0xffbf12f9, 0x900149fe, 0x41fe1099, 0x909fa001, 0xb84a0c11,
0xb2040b00, 0x8c307e1c, 0x1fa43300, 0x0140fe2b, 0x9000b44a, 0x040b0800, 0x307e0cb2, 0xa433008c,
0x19bf161f, 0x9fa60fbf, 0xf00b9cf0, 0x9a320196, 0x009a963e, 0x49fea43d, 0x10999001, 0xdcd99fbf,
0xbf000005, 0xf4f9a699, 0x317e070b, 0x15fb003a, 0x04a9980c, 0xac90afb2, 0xf0010b59, 0x904a2095,
0x04f9b500, 0x008c307e, 0x30f400f8, 0x05dcd990, 0x52f90000, 0x4ffe99bf, 0x84ff9001, 0xf9a0030e,
0x0500ad33, 0x299cd901, 0x99180000, 0x00993359, 0xba3200f6, 0xbd014cfe, 0x20cc90b4, 0x0094e27e,
0xad33ae32, 0xfe00e31f, 0xb84a0144, 0x1c449000, 0x4cb2040b, 0x008c307e, 0xad33ae32, 0xfe00cb1f,
0xb44a0140, 0x18009000, 0x0cb2040b, 0x008c307e, 0xad33ae32, 0xbf00b31f, 0xa64abf09, 0xa60bf5a9,
0xbcaa9000, 0x0b0140fe, 0x27009001, 0x307e0cb2, 0xae32008c, 0x911fad33, 0xfe093f00, 0x43b20142,
0xf0282290, 0x0045ff94, 0x02915410, 0x009ba93e, 0x1be43abf, 0x5abcffff, 0xf4b9a692, 0x9bb2050d,
0xaa90b072, 0x00b3f0bc, 0x307e2cb2, 0x0fe4008c, 0xae32ffff, 0x511fa433, 0x107b39bf, 0x202fbc02,
0xf190f9bc, 0xa00fff94, 0x00147339, 0x0149fec7, 0xbf209990, 0x0799909a, 0x4bfe9c3f, 0x90010d01,
0xc4f028bb, 0x02c4b6ff, 0x0096d17e, 0xa433ae32, 0x4cb2171f, 0x0b00b84a, 0x8af07e04, 0x3eae3200,
0x0e009be5, 0x0149fe09, 0xbf849990, 0x05dcd99f, 0x99bf0000, 0xf9a6ea32, 0x7e070bf4, 0xfb003a31,
0xa9987055, 0xf0008f04, 0x059ffd3f, 0xf804a9b5, 0x12aeb200, 0x040a10bf, 0xf926ee09, 0x332e0df4,
0x7f0a00c4, 0x9c2c3eea, 0x01ea5800, 0x1800a073, 0xb926ff09, 0xe4140bf4, 0xbbffffa9, 0x94f0059b,
0x071bf401, 0x00f8090a, 0x00f81f0a, 0xdff830f4, 0x000005dc, 0xffbf32f9, 0xfe0149fe, 0x99900140,
0x0143fe14, 0xa2b29fa0, 0x0090b1b2, 0x12339013, 0x0b10ec4a, 0x7e0cb201, 0x33008b70, 0x3f741fa4,
0x01a6300a, 0xb3690cf4, 0xf0210020, 0xa994ffa4, 0xb6240b05, 0x2cb202a4, 0xb8a0a9bc, 0x0010eeaa,
0x008b707e, 0x4b1fa433, 0x230010b3, 0x040b0a3f, 0xa4f01cb2, 0x05a994ff, 0xbc02a4b6, 0xaab8a0a9,
0x7e0010ee, 0x33008b70, 0x4a281fa4, 0x010b10ec, 0x707e3cb2, 0xa433008b, 0x3f3f191f, 0xf401f630,
0x093f0e0c, 0x1bf49f26, 0x9cef3e8a, 0xfe050a00, 0x99900149, 0xd99fbf14, 0x000005dc, 0xf9a699bf,
0x7e070bf4, 0xfb003a31, 0x30f40835, 0x05dcdfd8, 0x22f90000, 0x49feffbf, 0x30999001, 0x9fa0a132,
0x00299cd9, 0x04999800, 0x080ab2b2, 0x400094f1, 0xfe360bf4, 0xb4bd0140, 0xb20c0090, 0x9c4c7e0a,
0x1fa43300, 0x320ab225, 0x7e010c1b, 0x33009c11, 0xc4171fa4, 0x9990ff19, 0x9099bc02, 0x7f9009bc,
0x0f92f099, 0x49fe29a0, 0x30999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x25fb003a,
0xd830f428, 0x0005dcdf, 0xbf62f900, 0x0149feff, 0xb2409990, 0xd99fa0b2, 0x0000299c, 0xb2049998,
0x0bc3b2a6, 0x0094f108, 0xe50bf510, 0xfeb4bd00, 0x11900141, 0x7e1ab21c, 0x32009c4c, 0x1fad33ab,
0xff0b00d1, 0x010c1ab2, 0x009c117e, 0xad33ab32, 0x0b00c01f, 0x3d1ab2ff, 0x9c117ec4, 0x33ab3200,
0x00af1fad, 0xbd011458, 0xa029a094, 0x04109039, 0x4c72157f, 0x004da47d, 0x01e4bd80, 0x9e313e01,
0x01c9c400, 0x7f200bf4, 0xf4fd660f, 0x1ebc0a1d, 0x9e263ea4, 0xf4fd6600, 0x1ebc0d1b, 0x05a9fd94,
0x009e263e, 0xee90df72, 0x01c57601, 0x72020090, 0x00c473fd, 0xf06ebfd0, 0xa9c400d3, 0xffffdfff,
0x94b6ff00, 0x04effd10, 0xff00008c, 0xfd059efd, 0x9dfd049c, 0xbf69a005, 0xff4ee429, 0xe8afc7ff,
0xf110ed94, 0xfdff0094, 0xf9fd059d, 0xe42fa005, 0xb9ffff59, 0xe9ff00ee, 0x150bf4a4, 0x9cfd39bf,
0x059afd04, 0x29bf39a0, 0x010095f1, 0x49fe29a0, 0x40999001, 0xdcd99fbf, 0xbf000005, 0xa6ba3299,
0x070bf4f9, 0x003a317e, 0xf42865fb, 0xdcdff030, 0xf9000005, 0xfeffbf62, 0x99900149, 0xa0a13228,
0x32b0329f, 0xb2d5b2c4, 0x04b630e6, 0x01120cf5, 0x00299cd9, 0x049e9800, 0x90ffb9c4, 0x9fc41199,
0xbb080a1f, 0x99b905ef, 0x1f94f000, 0x0f909fbc, 0x05f9bbff, 0xb334feff, 0x00e9013d, 0x4ffe94bd,
0x20ff9001, 0xb50142fe, 0x229001f9, 0xbdf9a01c, 0x7e2bb2a4, 0x33009c4c, 0x00c91fad, 0x3c322ab2,
0x117e1b32, 0xad33009c, 0x3300ba1f, 0x30460200, 0x0cf40206, 0x00003310, 0x010d331a, 0x5f3e00a5,
0x0033009f, 0x0d334103, 0x3e009804, 0xc4009f95, 0x90f1ff19, 0x9eb80126, 0x3e001136, 0xc4009f6b,
0x90f1ff19, 0x9eb80126, 0x0f001146, 0x9fa43e10, 0xff19c400, 0x012690f1, 0x9eb8040f, 0x3e001156,
0xc4009fa4, 0x90f1ff19, 0x020f0126, 0x115a9eb8, 0x9fa43e00, 0xff19c400, 0x012690f1, 0xb801004f,
0x00115c9e, 0x0a034994, 0xf89cc404, 0x18f4cfa6, 0x08c99032, 0x9fa6080b, 0xbc060df4, 0xecbcb2fc,
0x0140fea0, 0xb2200090, 0x8b707e0c, 0x1fa43300, 0xa009bf13, 0x01009859, 0xe03e60a0, 0x030a009f,
0x900149fe, 0x9fbf2899, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e, 0xf41065fb, 0xdcdfe830,
0xf9000005, 0xfeffbf52, 0x99900149, 0xa0a3b22c, 0x299cd99f, 0x99980000, 0x0ab2b204, 0x0094f108,
0xca0bf520, 0x0140fe00, 0x0090a4bd, 0x7e0bb218, 0x33009c4c, 0x00b81fad, 0xff0b0ab2, 0x117ec43d,
0xad33009c, 0xfe00a91f, 0x007f0141, 0x4a1c1190, 0x100b10dc, 0x707e1cb2, 0xad33008b, 0x7200911f,
0xbd15b20b, 0x0104bdc4, 0x3eff04e0, 0xc400a0e7, 0x0bf401b9, 0x07c6b069, 0xbf350cf4, 0xf85c3c3d,
0x901f0ec4, 0x99b90309, 0xfff4f000, 0xbc1f94f0, 0x49bc909e, 0xf49fff95, 0xbb049ebb, 0x99b904fe,
0x049dfd00, 0xa0059ffd, 0xa0db3e39, 0x3c2dbf00, 0x1ec4f85c, 0x1d09921f, 0xf00099b9, 0x94f0fff4,
0x909ebc1f, 0xff9549bc, 0x9ebbf49f, 0x04febb04, 0xfd0099b9, 0x9ffd049d, 0x9029a005, 0xb57601cc,
0x04009001, 0x73041190, 0xfe8800b4, 0x99900149, 0xd99fbf2c, 0x000005dc, 0xf9a699bf, 0x7e070bf4,
0xfb003a31, 0x30f41855, 0x05dcdfd4, 0x22f90000, 0x49feffbf, 0x34999001, 0x41fea232, 0x909fa001,
0x984a0c11, 0xb2280b23, 0x8b707e1c, 0x1fa43300, 0x0110985d, 0x90bc19bf, 0xf490a6f2, 0xf6b01008,
0x0b9cf001, 0x3e0196f0, 0x0900a155, 0xf0f9a6e1, 0x96f00b9c, 0x330b0a01, 0xd9330090, 0x000029b4,
0xbf019c98, 0x014ffe9b, 0xbc0cff90, 0x9c4d90f0, 0x08923523, 0x0990240e, 0x1f94f001, 0xb504fa90,
0x367e01f9, 0x847e0021, 0x49fe008a, 0x34999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b,
0x25fb003a, 0xf830f42c, 0x0005dcdf, 0xbf12f900, 0x0149feff, 0x320c9990, 0xd99fa0a1, 0x0000299c,
0x0a049f98, 0x00008908, 0x04f9fd01, 0xfe2a0bf4, 0xa4bd0140, 0xb2080090, 0x9c4c7e0b, 0x1fa43300,
0x320ab219, 0x7ec43d1b, 0x33009c11, 0xc40b1fa4, 0x067e1f1a, 0x49fe00a1, 0x0c999001, 0xdcd99fbf,
0xbf000005, 0xf4f9a699, 0x317e070b, 0x15fb003a, 0xf830f408, 0x0005dcdf, 0xbf12f900, 0x0149feff,
0x320c9990, 0xd99fa0a1, 0x0000299c, 0x0a049998, 0x0094f108, 0x00907380, 0x0140fe2e, 0x0090a4bd,
0x7e0bb208, 0x33009c4c, 0xb21c1fa4, 0x3d1b320a, 0x9c117ec4, 0x1fa43300, 0x1f1ac40e, 0x7e20a5f0,
0xfe00a106, 0x99900149, 0xd99fbf0c, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x52f90815,
0xb206b995, 0x0394b6c4, 0xa9bcd5b2, 0x3fb0c430, 0x00a2df3e, 0x329831bf, 0x0054b301, 0xbd010a18,
0x7e0cb2b4, 0xfd0039cd, 0x1afd052b, 0xa2c73e05, 0x0a0cb200, 0x7eb4bd01, 0xb90039cd, 0xaab900b9,
0x0429fd00, 0x92041afd, 0x40b30144, 0x00900b00, 0x4004b301, 0xb531a0c8, 0x04bd0132, 0xb3083390,
0xfbb50044, 0x7ed4bd51, 0xf800a27e, 0x7e010d00, 0xf800a27e, 0x3fbcc400, 0xb606b5b6, 0xabbc03b4,
0x01ab98a0, 0x797eaabf, 0xa4f00039, 0xb200f801, 0x3df4bdae, 0x08f0b3a4, 0x98ef3c0a, 0x90a0a93c,
0xfeb301ff, 0xf0f30080, 0xaa3907a2, 0x3f00f801, 0x01e9c4ae, 0xbd1b0bf4, 0x3cff0ef4, 0xff9098af,
0xf59e2601, 0xb300c51b, 0x3ef410f4, 0xbd00a40c, 0x90afbcf4, 0x90099918, 0x9d3301ff, 0xb300ae00,
0x18f207f4, 0x800c06ad, 0x0cf5dc26, 0xe433009e, 0xa9183800, 0x009d3301, 0xa9180093, 0x009d3302,
0xa918008b, 0x009d3303, 0xaf180083, 0x05a91804, 0x76fff4f0, 0x9ffd0894, 0x00947305, 0xf4dc266f,
0x013e691b, 0xaf1800a4, 0x05a91804, 0xf0fff4f0, 0x94b6ff94, 0x059ffd08, 0x737099cd, 0x184d0094,
0x991201a9, 0x19963041, 0x18400cf4, 0x963102a9, 0x1df40040, 0x5a963136, 0x2f1cf400, 0x3103a918,
0xf4004096, 0x9631251d, 0x1cf4005a, 0x00d0331e, 0xffefc41b, 0xf404f9c4, 0xf9c4151b, 0x0294b30a,
0x07a9180b, 0x08009033, 0x00f8060a, 0x00f8a4bd, 0x020f12f9, 0xa0b2b1b2, 0x2200a0b3, 0x94f0a93f,
0x171bf408, 0x00a30f7e, 0x060010b3, 0x09181a20, 0x26060f08, 0x051bf4a9, 0xfab2f4bd, 0xa9b211fb,
0xc0b3020a, 0x9abf1200, 0xb4b6cdb2, 0x00804c07, 0x00b7617e, 0x30f400f8, 0x05dcdff8, 0x22f90000,
0x49feffbf, 0x10999001, 0x9fa0a0b2, 0x00b3020a, 0x0abf3400, 0xb294943d, 0x0141fe07, 0x11902bb2,
0x20010c0f, 0x7e1db219, 0xb300b778, 0x3f1700a4, 0xb20abf19, 0xf01db22b, 0x010cfd94, 0x617e1920,
0x49fe00b7, 0x10999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x25fb003a, 0xf830f408,
0x0005dcdf, 0xbf42f900, 0x0149feff, 0xb2189990, 0xb29fa0a1, 0xb2c0b2b4, 0x00a0b3d3, 0x00c0b356,
0x07cf1852, 0x42fe94bd, 0x14229001, 0xa001ff10, 0x07cf3529, 0x0f7ecab2, 0x2bb200a3, 0xb2080a35,
0xa7b17e1a, 0x00a4b300, 0xb22bbf2c, 0x7e1ab20c, 0xb300a43e, 0xb21e00a4, 0x7e4bb21a, 0xb300a456,
0xb31200a4, 0xbf0e0030, 0x3e32a022, 0x0a00a531, 0x0149fe02, 0xbf189990, 0x05dcd99f, 0x99bf0000,
0x0bf4f9a6, 0x3a317e07, 0x0845fb00, 0xc0b202f9, 0x2400a0b3, 0x2000c0b3, 0xb4b6aabf, 0x00804c07,
0x787e0db2, 0xa4b300b7, 0x0ab21000, 0x00a32f7e, 0x00a5763e, 0x01fb020a, 0x1700a0b3, 0x1300c0b3,
0xcdb2aabf, 0x0c07b4b6, 0xb7787e10, 0x0a00f800, 0xf900f802, 0xb2b3b242, 0x00a2b2c4, 0x00a0b302,
0xa5e97e42, 0xb2030000, 0x00a0b3a1, 0xb23bb236, 0x7e1cb22a, 0xb200a54c, 0x00a4b3a0, 0xbd1ab21e,
0xa4107eb4, 0xb3a0b200, 0xb31000a4, 0x180c0040, 0x94f00619, 0xb249a0ff, 0x7e1bb22a, 0xb200a60b,
0xf841fb0a, 0xf800f800, 0x98aeb200, 0xa0b30eaa, 0xf4bd0a00, 0x00a6013e, 0xb30fea98, 0x0f0e00a0,
0x0eff9001, 0xe9bc94bd, 0xb300f8f9, 0x981a00b0, 0x90b30ea9, 0xa9980d00, 0x0094b30f, 0x9001090c,
0xabbc0e99, 0x9800f899, 0xa9a002b9, 0xa9b5ff09, 0x02b99801, 0xb504abb5, 0xa9b503ac, 0xf900f802,
0x32a0b222, 0x0ad2b2c1, 0x00b0b302, 0x400cb85e, 0xd4bd0001, 0xb304c998, 0x33440090, 0xb3080014,
0x3f3c0390, 0x26b93fcf, 0x321bf4f9, 0x1801cf18, 0xf92601b9, 0x18271bf4, 0xbf1802ce, 0x90ddbc02,
0xb6909dbc, 0x99b80394, 0xbc000140, 0xef269009, 0xa00b1bf4, 0x3ea4bd29, 0x9000a6a7, 0xcc9001dd,
0x14d4b318, 0xfb040ab3, 0xb2abbf21, 0xa6f009ac, 0x0d0bf4b9, 0xb503aa98, 0x5e7e01cb, 0x00f800b6,
0xa1b232f9, 0x04bdb2b2, 0xef3ef003, 0x19bf00a6, 0xb2010090, 0xf493a61a, 0x030a090d, 0x00a6f63e,
0x1bf493a6, 0x3e020a09, 0x7e00a6f6, 0xa600a6a9, 0xdd08f402, 0x31fba4bd, 0xdff830f4, 0x000005dc,
0xffbf82f9, 0x900149fe, 0xa3b22899, 0xb8b29fa0, 0x8400a9b3, 0x00b0b300, 0x0147fe7f, 0xbd05a498,
0xbd54bd24, 0x24779014, 0x00a7603e, 0xbd0c3a98, 0xb002bc94, 0x7cb279a0, 0x00b65e7e, 0xff0f79bf,
0x0bf49fa6, 0x3e643d09, 0x9000a74e, 0x00900155, 0xf404a601, 0x6033d908, 0x11900700, 0x2024bc01,
0xa6033998, 0x0b18f429, 0x04bd0106, 0x00a7513e, 0x1ab24bb2, 0x0016fc7e, 0x0df45aa6, 0x01119006,
0x3d063998, 0xf419a6f4, 0x010f050c, 0xa4bd8f20, 0x00a7963e, 0x49fe020a, 0x28999001, 0xdcd99fbf,
0xbf000005, 0xf4f9a699, 0x317e070b, 0x85fb003a, 0xf030f408, 0x0005dcdf, 0xbf82f900, 0x0149feff,
0xfe309990, 0x9fa00147, 0xb208a998, 0x09b1b0a6, 0x91b0f105, 0xb2843d0a, 0x2c779090, 0xbd036998,
0xa67fa0f4, 0x0708f409, 0x010804bd, 0xa60a90b4, 0x351bf409, 0x32008033, 0x00a8593e, 0xbc0c6a98,
0x7cb24010, 0x5e7e4bb2, 0x79bf00b6, 0x9fa6ff0f, 0x900f1bf4, 0xf1090122, 0x1bf439a6, 0x9043b205,
0x2c3e0111, 0x14bd00a8, 0x24bdf103, 0xa6056998, 0xcb08f419, 0x1e0020b3, 0x18f429a6, 0x0860b50f,
0xa009f0b4, 0xa86a3ef3, 0xa6f10f00, 0x051bf45f, 0x09bc05b2, 0xa7dc3e00, 0x091a0a00, 0xf459a6f1,
0x65b50d0b, 0x0990b408, 0xa4bd95a0, 0x900149fe, 0x9fbf3099, 0x0005dcd9, 0xa699bf00, 0x070bf4f9,
0x003a317e, 0xf41085fb, 0xdcd9f830, 0xf9000005, 0xfe99bf82, 0xff90014f, 0xa0a3b228, 0xb2b4b2f9,
0x00c033d0, 0x3ddab20e, 0x7e140cb4, 0xfe00b78f, 0x14bd0142, 0x08242290, 0x06ff07fe, 0x3efb05fc,
0x9800a939, 0x94bd0c3a, 0xa0b014bc, 0x7e2cb229, 0xbf00b65e, 0xa6f00f29, 0x560df49f, 0x9fa6fd0f,
0xa6110cf4, 0x3018f496, 0x1bf495a6, 0xa9083e45, 0xf498a600, 0x97a62f0b, 0x98371bf4, 0x99900109,
0x0109b501, 0x00a9363e, 0x90040998, 0x09b50199, 0xa9363e04, 0x02099800, 0xb5019990, 0x363e0209,
0x099800a9, 0x01999003, 0x3e0309b5, 0xbf00a936, 0x01999009, 0x119009a0, 0x05399801, 0x08f419a6,
0x0149fe85, 0xbf289990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x0885fb00, 0xdff830f4,
0x000005dc, 0xa1b222f9, 0xb2b2ffbf, 0xbf03aa98, 0x0149fe1b, 0xfe109990, 0x9fa00140, 0xb20c0090,
0xb65e7e0c, 0x980cbf00, 0x2bb2031a, 0x00b6757e, 0x09011b98, 0xf4b9a6ff, 0x1998101b, 0x0212b504,
0x3e0292b5, 0x9800a9b0, 0x2cb2031a, 0x00b6757e, 0xbf031a98, 0x7efd0c1b, 0xfe00b675, 0x99900149,
0xbf12a010, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x0825fb00, 0xdfc830f4, 0x000005dc,
0xffbf82f9, 0xfef830f4, 0x99900149, 0x929fa060, 0xae180499, 0xa0f4bd1c, 0x05a9989f, 0x050aa2b2,
0x330b91b0, 0x021a00e9, 0x980c2b98, 0x4afe092c, 0x90f10001, 0x44fe44aa, 0x01a6b201, 0xb68a7e20,
0xb205b200, 0x304490a3, 0x00aa713e, 0xa6082998, 0x310bf439, 0x3bb22ab2, 0x4db2010c, 0x00a8877e,
0xb3044998, 0x981f0094, 0x94b30349, 0x49981800, 0x0094b302, 0xa649bf3b, 0x0918f491, 0x643e30b2,
0x19b200aa, 0xb20bb0b4, 0x7e6ab291, 0xb200b6a3, 0xf435a6a3, 0x030ab91b, 0x0bf503a6, 0x14b301a3,
0x03b20c00, 0x8e3e743d, 0x03b200aa, 0x38940107, 0xb254bd07, 0xab9a3e86, 0x0c2a9800, 0x53bce4bd,
0x014cfe10, 0x9016e1b0, 0x1bb258cc, 0x00b65e7e, 0xf300adb3, 0x1690b400, 0x9fa6f00f, 0x00d80cf5,
0x2ab294bd, 0x7e1591b0, 0xb200a5e9, 0x00a9b3a4, 0x2abf00d6, 0x804c6bb2, 0x7e4db200, 0xb200b778,
0x00adb3a0, 0x2ab200a7, 0x4cb21bb2, 0x90014dfe, 0xbd7e50dd, 0xa0b200a4, 0x9000adb3, 0x902ab200,
0x010c014b, 0x90014dfe, 0x3f7e54dd, 0xa0b200a6, 0x7800a4b3, 0x9815b0b4, 0x4afe0c2c, 0x30aa9001,
0x00a6277e, 0xa60c90b4, 0x1e1bf491, 0xfe14b0b4, 0xaa90014a, 0xa95c7e30, 0x1590b400, 0xb3059f98,
0x3e2300f4, 0x0e00ab88, 0xf49ea6ef, 0x0300090d, 0x00ab883e, 0x90014afe, 0xa97e30aa, 0x243e00a6,
0xf99800ab, 0x14e0b402, 0x1bf491a6, 0x02feb506, 0x91a6f9bf, 0xa0091bf4, 0xab883efe, 0x01f99800,
0x1bf491a6, 0x01feb506, 0x2ab24bb2, 0x00a60b7e, 0x130004b3, 0x90015590, 0x29988066, 0xf559a605,
0x33fefa08, 0x98460070, 0x8db2042f, 0x2ab2e4bd, 0x0b00f1b0, 0x0070dc02, 0x41fe0000, 0x5c119001,
0x7e0111b0, 0x9800a5e3, 0x2abf042c, 0xfb048bb2, 0x00b74a7e, 0x2c981ebf, 0xbda0b204, 0xb22ab2b4,
0xa5e57e0d, 0x0004b300, 0xbdff0406, 0xac003e04, 0x0c2a9800, 0xb2b003bc, 0x0100904c, 0x00b6757e,
0xa60b90b4, 0xec08f409, 0xbc032f98, 0x29b59039, 0xf49fa609, 0x94bd0808, 0xbd0929b5, 0x0149fea4,
0xbf609990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x0830f400, 0xf43885fb, 0xdcd9cc30,
0xf9000005, 0xf499bf82, 0x4ffef830, 0x5cff9001, 0xe1b0f9a0, 0xb2c8b20b, 0xb3a3b2d6, 0x028400b9,
0x7f00e9b3, 0x2caf1802, 0xbd0141fe, 0x54119094, 0x030019a0, 0x6d00f933, 0xb2c43d02, 0xa63f7e1d,
0xb3a0b200, 0x025e00ad, 0x68bc17bf, 0x017998f0, 0x08f59fa6, 0x7998024d, 0x0194b304, 0x3e05000a,
0xb300aee1, 0x023e0069, 0x09027f98, 0xf5f9a6f0, 0xb2022a0b, 0xa5e97e3a, 0xb3a2b200, 0x021e00a9,
0xb20c3c98, 0x0140fe7b, 0xb2340090, 0xa6277e0a, 0xb50ab200, 0x8bcc0570, 0xa6c07e70, 0xb3a0b200,
0x01e900ad, 0x010d00b4, 0xf501a6f0, 0xf501ce0b, 0x3d01d00c, 0x00804cb4, 0x8f7e2ab2, 0x3abf00b7,
0x4c070b94, 0x2db20080, 0x00b7787e, 0xb30ca1b0, 0x01b600ad, 0x18052918, 0x9476042f, 0xfff4f008,
0x09e59fff, 0xf5e966ff, 0xe401980b, 0xa6ffffe9, 0x8e08f589, 0xbcf4bd01, 0x9918902f, 0x009d3309,
0xff900182, 0x07f4b301, 0xaefb3ef2, 0xf28e3c00, 0x08f59f26, 0xfdc4016d, 0xff94f0ff, 0xa6529dbc,
0x050df456, 0xd99065b2, 0xbce4bd10, 0xa43db029, 0xa63ec43d, 0xd6b100ad, 0x0cf5006f, 0x10b40145,
0x98be3c0b, 0x26f81e3c, 0x170bf4f9, 0x39ff94f0, 0x9ffd0099, 0x00903304, 0x3c010a06, 0x010ce9bf,
0x9001ee90, 0xe5a601dd, 0x33ce08f4, 0x00ed00c9, 0x94f0293f, 0x080bf408, 0xd000a933, 0xb294bd00,
0x1491b03a, 0xb01391b0, 0x91301291, 0x014bfe5b, 0x7e5bbb90, 0xb200a6f8, 0x00adb3a0, 0x903400ef,
0x0090335b, 0x7e3ab211, 0xb200a9d8, 0x00adb3a0, 0x00b400db, 0x1140b40d, 0x90014ffe, 0x2eb250ff,
0xb0070d94, 0x804101f1, 0x0b3ab200, 0xb04cb201, 0xe37e0011, 0x0bb200a5, 0x3ab22cb2, 0x90014dfe,
0xbd7e4cdd, 0xe0b400a4, 0xb2a0b214, 0xbd3ab21c, 0x7e0db2b4, 0xb300a5e5, 0x0091000d, 0xfe13b0b4,
0xaa90014a, 0xa95c7e34, 0x0c3a9800, 0xfe0db0b4, 0xcc90014c, 0xb65e7e48, 0xb3a0b200, 0xb46d00a4,
0xf0011290, 0x1bf491a6, 0x014e9832, 0xb370efcd, 0x0f0600f4, 0x06291870, 0xbcff94f0, 0x9fbb909e,
0x0149b502, 0x00ae983e, 0x3ab20bb2, 0x3e7e2cb2, 0xa0b200a4, 0x3400a4b3, 0xfe0265bb, 0xaa90014a,
0xa6a97e34, 0x0060b300, 0x0b90b420, 0xbc8085bc, 0x91b09095, 0xace43e0b, 0x3e020000, 0x0000aec8,
0xaec83e03, 0x0c00b400, 0x2bb23ab2, 0x00a60b7e, 0x79b594bd, 0xaee13e05, 0x3e030000, 0x0000aee1,
0x0149fe02, 0xbf5c9990, 0x05dcd99f, 0x99bf0000, 0xf9a60ab2, 0x3e170bf4, 0x1800af07, 0x9d330629,
0x3efe4f00, 0x7e00aebf, 0xf4003a31, 0x85fb0830, 0xdc30f434, 0x0005dcdf, 0xbf82f900, 0xf830f4ff,
0x900149fe, 0x9fa04c99, 0xb20bb1b0, 0xb2d4b2c2, 0xb3a5b2e6, 0x011700b9, 0x1200e9b3, 0xfe94bd01,
0xc43d0141, 0xa0481190, 0x7e1db219, 0xb200a63f, 0x00adb3a0, 0x19bf00fb, 0x98f042bc, 0x9fa60199,
0x00ea08f5, 0x03005ab2, 0x00a5e97e, 0xa9b3a3b2, 0xbf00de00, 0x0c5c981b, 0x900140fe, 0x0ab23000,
0x00a6277e, 0x2bcc0ab2, 0xa6c07e70, 0xb3a8b200, 0x00ad00ad, 0xfe7021cd, 0x80420147, 0x44779000,
0x00b0373e, 0xbd0c00b4, 0x0979a094, 0xf409a6f0, 0x0200091b, 0x00b03e3e, 0x09a6f009, 0x00090df4,
0xb03e3e03, 0x0bc0b400, 0xbd0704b6, 0xb20db2e4, 0xb0b4bd5a, 0x71b00021, 0xa5e37e01, 0xb25abf00,
0xb22cb20b, 0xb7787e3d, 0xb27ebf00, 0xb23bb2a0, 0xb22cb25a, 0xa5e57e0d, 0x0004b300, 0xbd3ab245,
0xa4107eb4, 0xb3a0b200, 0x003700a4, 0x0201bb70, 0x0df404a6, 0x9040b205, 0x6ab2101b, 0xb2b03bbc,
0xb7987e0c, 0x014afe00, 0x900240bb, 0x60bc30aa, 0xa6a97e60, 0xb314bd00, 0xff6d004d, 0x5ab280b2,
0x0b7e3bb2, 0x4c3e00a6, 0x020000b0, 0x900149fe, 0x9fbf4c99, 0x0005dcd9, 0xb299bf00, 0xf4f9a60a,
0x317e070b, 0x30f4003a, 0x2485fb08, 0xd9f830f4, 0x000005dc, 0x99bf32f9, 0x90014ffe, 0xa1b214ff,
0x94bdf9a0, 0xc3b2b2b2, 0x4b0140fe, 0x00900320, 0xb209a010, 0xb79e7e0a, 0xb309bf00, 0xb34c0090,
0xa04800a4, 0xb509bf91, 0x0fbf0192, 0xb5100049, 0x0fbf04f9, 0xf9b52009, 0xb509bf05, 0x0fbf0693,
0xf9350109, 0x3509bf1c, 0x0fbf2c9a, 0xf9b5f009, 0x900fbf0a, 0xf9b540f9, 0x900fbf0e, 0xf9b5c0f9,
0x3e0abf0f, 0xbd00b0e9, 0x0149fea4, 0xbf149990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07,
0x0835fb00, 0xdfd030f4, 0x000005dc, 0xffbf82f9, 0x900149fe, 0xa3b25099, 0x02059fa0, 0xfb00a9b3,
0x00b63004, 0x350b9cf0, 0x94bd2ca9, 0x7e0ca9b5, 0xb200a5e9, 0xbd3abfa0, 0x00804cb4, 0x787e0db2,
0xa5b200b7, 0xb100adb3, 0x33093f04, 0x04a24a9d, 0x33010918, 0x049a469d, 0x33020918, 0x0492469d,
0x33030918, 0x048a539d, 0x18040e18, 0x0f180509, 0x070d1806, 0xf0ffe4f0, 0xf4f0ff94, 0x0894b6ff,
0xfd10f4b6, 0xd4b6059e, 0x05f9fd18, 0xf505dffd, 0x05045e0b, 0x03d6b005, 0x045d0cf5, 0xb3013db5,
0x490e01d4, 0x39b55000, 0xb1d73e02, 0x080d1800, 0x18090918, 0x0e180a0f, 0xffd4f00b, 0xf0ff94f0,
0x94b6fff4, 0x10f4b608, 0xb6059dfd, 0xf9fd18e4, 0x05effd05, 0xb2023eb5, 0x7e0bb23a, 0x9800a60b,
0xff09023a, 0x1bf4a9a6, 0x3e04bd09, 0xb600b5ed, 0x3b9007a5, 0x033ab530, 0x00b6d17e, 0xadb3a5b2,
0x9803f500, 0xc009033b, 0x90343a90, 0xb9fd3fbb, 0x03b5b604, 0x00b79e7e, 0xadb3a5b2, 0xfe03d900,
0x48fe0147, 0x40779001, 0x799044bd, 0x3c889001, 0x3e0991b0, 0xbd00b347, 0xb38ea0e4, 0x980f0044,
0xb4bd0c3a, 0x6a3efe0c, 0x3ab200b2, 0x7cb24bb2, 0x00a5787e, 0xadb3a5b2, 0x3f039d00, 0x0194f079,
0x98120bf4, 0x4bb20c3a, 0x757eff0c, 0x443e00b6, 0x7ab200b3, 0x00a32f7e, 0x0f00a0b3, 0xb20c3a98,
0x3efd0c4b, 0x3f00b26a, 0x0294f079, 0x980e1bf4, 0x4bb20c3a, 0x393efd0c, 0xb0b400b3, 0x0c3ab209,
0x7e8db201, 0xb300a63f, 0x3f5d00a0, 0xbd3fb279, 0x0299c724, 0xb0019990, 0xf5980a91, 0x0054b354,
0x09b0b439, 0x0c0022bc, 0x0002bc03, 0xb80304b6, 0x00014001, 0xb21031bc, 0xb7987e1a, 0x0030bc00,
0x014309b8, 0xb5952000, 0xf0b45302, 0x540fb50a, 0x043e81a0, 0x229000b3, 0x18ff9001, 0xbe1424b3,
0x00b6313e, 0x793f8ebf, 0x18027f58, 0xee98077d, 0x0d3a9803, 0xf00299c7, 0xffcc00f3, 0x1f96cb70,
0xe6cb4bb2, 0xcb010cd8, 0xf6ebf0d6, 0xe57e01e0, 0x3a9800a2, 0xb24bb20c, 0xb6757e6c, 0xb3a5b200,
0x02b400ad, 0x98014490, 0x4ba6033b, 0xfeeb08f5, 0xbbbc94bd, 0xb289a0b0, 0xb7b47e8a, 0xb3a5b200,
0x029400ad, 0x84bd37b2, 0xbc547f98, 0x98bc9088, 0x0394b690, 0x014099b8, 0x9039bc00, 0xb30b91b0,
0x025300f9, 0xb4033c98, 0xb43d0fa0, 0xccbc24bd, 0x7e44bdc0, 0xb400b78f, 0x623e0f60, 0x3a9800b4,
0xb02bb20d, 0xf57e0c41, 0xa93300a2, 0x9800b500, 0x4cfe0c3a, 0x902bb201, 0x5e7e38cc, 0xadb300b6,
0xb4020c00, 0x90b40be0, 0x03ef980e, 0xa6d899c7, 0x8e1bf59f, 0x0d3a9800, 0x010c2bb2, 0x00a2ed7e,
0xb2014cfe, 0x902bb23a, 0x937e30cc, 0xa4b300a5, 0x3a981306, 0x0c2bb20c, 0xb6757efd, 0xb45f3e00,
0x00adb300, 0x907401cb, 0x0093f01c, 0xbc9099bc, 0x017f0069, 0xffff19e4, 0x60091bf4, 0xb45f3e02,
0x0c3a9800, 0xe4014cfe, 0x90ffff1b, 0x5e7e34cc, 0xadb300b6, 0x34019800, 0x90343af0, 0xf4f92636,
0x0260100d, 0xffff1be4, 0x3e0c3a98, 0x9800b454, 0x2bb20c3a, 0x757efd0c, 0xadb300b6, 0x90017000,
0x3a980122, 0xf52aa603, 0xb2ff3708, 0x3d6eb264, 0xbdd43db4, 0x3ec4bdf4, 0x7f00b496, 0x009473e9,
0x3e010d0a, 0x3300b490, 0x0b0600d0, 0x01cc9001, 0x9001ff90, 0xfaa602ee, 0xb3e308f4, 0xb50b00c4,
0xd23e547c, 0xb93300b5, 0x9800a600, 0x96b00139, 0x300cf402, 0x6db20309, 0xbd5479b5, 0x3ef4bde4,
0x7f00b4d5, 0x009073d9, 0xe9697c0a, 0x9001ee90, 0xdd9001ff, 0x03399802, 0x08f4f9a6, 0xb54c3ee9,
0x0194bd00, 0x5479b5f1, 0x1bb224bd, 0x00b5263e, 0x09e4407f, 0x0bf4ffff, 0xa6f10f26, 0x0b1bf4bf,
0xffff0be4, 0x00b51e3e, 0xe40c3a98, 0x7effff0c, 0xb300b675, 0x00b900ad, 0xffff0be4, 0x229019b2,
0x02449001, 0x399891b2, 0xf429a603, 0xf109c508, 0x0bf5b9a6, 0x3a9800a0, 0x0a3c980c, 0x00b6757e,
0x8c00adb3, 0x0a31b500, 0x00b5d23e, 0x94bd6f7f, 0xb501c192, 0xf3f05179, 0xb504bd00, 0x8a3e527f,
0x4b7f00b5, 0x98014c58, 0x00900c3a, 0x00b3f001, 0x9000c3f0, 0x757e0244, 0xa4b300b6, 0xe0b45200,
0x01e9980b, 0xb5709990, 0x01a601e9, 0x7cd608f4, 0x3a980860, 0xe4f00c0c, 0x7effff0b, 0xb300b675,
0xfe2d00a4, 0x0be4014c, 0x3ab2ffff, 0x7e40cc90, 0xb300a578, 0x341900a4, 0x7f984690, 0xff94f051,
0xb5f0f9bc, 0xd23e517f, 0x030a00b5, 0xdd3ea5b2, 0x889000b5, 0x18779001, 0x90148db3, 0x0149fefd,
0xbf3c9990, 0xb7487e9a, 0xb5f33e00, 0x3e030500, 0xbd00b5f5, 0xb20bb204, 0xa60b7e3a, 0x0050b300,
0x0c3a981a, 0xc77e04bd, 0x3a9800b6, 0x0c30b50d, 0x00b7487e, 0xfe0d30b5, 0x99900149, 0xd99fbf50,
0x000005dc, 0x5ab299bf, 0x0bf4f9a6, 0xb6373e11, 0x3e010500, 0x7e00b5f3, 0xfb003a31, 0x02f93085,
0xe77ea0b2, 0x0a9800a5, 0xb6c77e0c, 0x0d0a9800, 0x00b7487e, 0x487e0ab2, 0xa4bd00b7, 0xa9bf01fb,
0x020aafb2, 0x18f4b9a6, 0x01b9900d, 0xbd98f9bc, 0xf8c9a0a4, 0xb2a9bf00, 0xa6020aaf, 0x0b18f4b9,
0xbd01b990, 0x99fcbca4, 0xb9bf00f8, 0xcab2afb2, 0x08f4c9a6, 0xf8f10a07, 0x02fbb500, 0xfcb5fca0,
0xbf00f801, 0x02af98a9, 0xa090b9bc, 0xa6fbbfa9, 0x0808f49b, 0xa0029bbb, 0x01a998a9, 0xa9a6aabf,
0x0a051bf4, 0xb300f8f1, 0x7e0800a0, 0xf800b748, 0xf830f400, 0x0005dcdf, 0xbf32f900, 0x0149feff,
0xb2149990, 0xb29fa0a0, 0x00a0b3b3, 0xa6fd0242, 0x3a0cf4a2, 0xfe01ab90, 0xb4b60141, 0x10119002,
0xb47e1ab2, 0xa4b300b7, 0x19bf2700, 0x2cb21db2, 0x90a0e4bd, 0xe990dfbf, 0xbc9eb201, 0x90a699fc,
0xbff408f4, 0x3e3da0dd, 0x0a00b72d, 0x0149fe02, 0xbf149990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6,
0x3a317e07, 0x0835fb00, 0x44da00f8, 0x7e000029, 0x300041c7, 0xacf000a6, 0x01a6f00b, 0xf801aab9,
0x2944da00, 0x427e0000, 0xa6300041, 0x0bacf000, 0xb901a6f0, 0x00f801aa, 0x002944da, 0x42d77e00,
0x00a63000, 0xf00bacf0, 0xaab901a6, 0xf000f801, 0x947effb4, 0x00f8000b, 0x000b7e7e, 0x02f900f8,
0xa43da0b2, 0x00384c7e, 0xf000a6b0, 0x0aa00b9c, 0x01fb9ab2, 0xa0b202f9, 0x2a7ea43d, 0xa6b00038,
0x0b9cf000, 0x9ab20aa0, 0x30f401fb, 0x05dcdfe4, 0x82f90000, 0x49feffbf, 0x0145fe01, 0xfe3c9990,
0x9fa00147, 0x90245590, 0x1cd93477, 0xbf000014, 0x014bfe9a, 0xbb90080c, 0x7eff0d2c, 0x330000c1,
0xb4eb00a4, 0x393f0c30, 0xe20c9433, 0x33043118, 0x330f0010, 0x00b00119, 0x703e043d, 0x3f9800b9,
0x142cd902, 0x31980000, 0x0a345804, 0x9f3f5fa0, 0x90033998, 0x59b51836, 0xa0ff0901, 0x00f43379,
0x32f77e18, 0x33a03200, 0x012900ad, 0x2cdf0109, 0x20000014, 0xf01272f9, 0x14bd0043, 0x00b8b03e,
0xb10241bc, 0xf4010006, 0x0040060d, 0x0b947e01, 0x1424d900, 0x9abf0000, 0xffff2ce4, 0x0db26bb2,
0x001300de, 0xaf117e00, 0xb37aa000, 0x00d400ad, 0x5c985bbf, 0x041d9001, 0x207c0eb2, 0x1010bc20,
0x001300da, 0x21367e00, 0x33a03200, 0x00c500ad, 0x004cb4bd, 0x1300da01, 0x14a60000, 0x3ea408f4,
0x9800b95f, 0x2cd9023f, 0x98000014, 0x32580434, 0x3f5fa00a, 0x0339989f, 0xb5183890, 0xff090159,
0xf43379a0, 0xf77e1600, 0xa0320032, 0x8400ad33, 0x142cdf00, 0xf1200000, 0xffff26e4, 0x503e24bd,
0x62bc00b9, 0x0016b112, 0x060df401, 0x7e010041, 0xbf000b94, 0x015c985b, 0xb2042d90, 0x1300da1e,
0xd07e0000, 0x4ce40020, 0x21bcffff, 0xb2a03220, 0xde1db28b, 0x00001300, 0x3340417c, 0xd93500a4,
0x00001424, 0x3b7e9abf, 0x7aa000ac, 0x1300a4b3, 0x004cb4bd, 0x1300da01, 0x26a60000, 0xbfa608f4,
0x015c985b, 0xd4bd7ab2, 0x367e040e, 0xa0320021, 0xb22db034, 0x0f817e3a, 0x000d3300, 0x0130fe71,
0x30020f3a, 0x331838f1, 0xfe040903, 0x9130014a, 0x3b313039, 0xaa90b4bd, 0x0f717e38, 0xb7ea3e00,
0xd902f900, 0x00002930, 0x9abfa0b2, 0xde7e640b, 0x10090000, 0x6100a433, 0x02a60089, 0xf1009fcf,
0xf61000f5, 0x008a009f, 0x004b02a6, 0x4dc4bd10, 0xe4bd2710, 0x00198b7e, 0x1500a433, 0x002930d9,
0x7e9abf00, 0x0900009b, 0xba153e04, 0x4b0ab200, 0xfc7e03e8, 0x00890016, 0xaab802a4, 0xb6000200,
0xaa920aa5, 0x009af601, 0xb801114f, 0x00020099, 0x3d009ff6, 0xfb9a3294, 0x00000001, 0x00000000,
0xfa95075d, 0x10f99508, 0xa132f032, 0xf9339232, 0x3000d515, 0x0cf415f6, 0x05f93346, 0xf63005fc,
0x1c0cf405, 0x8701f933, 0x301f0a00, 0x08f501f6, 0xf630073a, 0x250cf503, 0x8e283e07, 0x10f93300,
0xf630041b, 0x0e0cf410, 0xf50df630, 0x3e070f08, 0x33009156, 0x070711fd, 0x0091603e, 0x431df933,
0x1df63006, 0x33250cf4, 0x03fb18f9, 0xf418f630, 0xfd330c0c, 0x3e06e817, 0x33009409, 0x01011af9,
0xda1cfd33, 0x94c63e06, 0x21f93300, 0xf6300263, 0x0c0cf421, 0xc61efd33, 0x8ece3e06, 0x24f93300,
0xfd33063a, 0x3e06b825, 0xdf00949a, 0x0000299c, 0x2614f918, 0x0d18f4a9, 0xbcffa9c4, 0x6f3e98f9,
0xbda00093, 0x0094313e, 0x1d33080a, 0x7e069e00, 0x330063f7, 0x490a0300, 0xa9fdff00, 0x3e4aa004,
0x0a009431, 0x09163003, 0x06800cf5, 0x00299cd9, 0x0e99bf00, 0xbc080a01, 0x99e7f4e1, 0x9ffd0133,
0x670bf504, 0x02103306, 0x0410330e, 0x3eea3210, 0xb2008e85, 0x8e7b3eea, 0xfea4bd00, 0xbb90014b,
0x63b47e2c, 0x8a847e00, 0x1fad3300, 0x49fe063f, 0x2c999001, 0xe9959ebf, 0x0190b31f, 0x3ed4bd0a,
0xdd008ea8, 0xff000000, 0x3380e9c4, 0xbd0a0094, 0x8ebf3ef4, 0xb0010f00, 0x1ff400e6, 0x95ff0f05,
0xd9ff08e9, 0x90f9bc95, 0xc83e49a0, 0x9b320094, 0x5db24cb2, 0x0077ca7e, 0x0094c83e, 0x5507a033,
0xf407a630, 0x9cd9120c, 0x30000029, 0x0df402a6, 0x8f253e2b, 0x0ca63000, 0xd9120cf4, 0x0000299c,
0xf409a630, 0x483e5718, 0xa033008f, 0x030a610d, 0xb80e1d33, 0x8f7b3e05, 0x01999800, 0x000000df,
0x8f613e04, 0x01999800, 0x000000df, 0x8f613e08, 0x299cd900, 0x99980000, 0x00008f02, 0x049ffd02,
0x00c61bf5, 0x0090463e, 0x8f029998, 0xfd040000, 0x1bf5049f, 0x463e00c4, 0x99980090, 0x00008f02,
0x049ffd01, 0x3e2f1bf4, 0xd9009046, 0x0000299c, 0x4000008f, 0x3e029998, 0xd9008f88, 0x0000299c,
0xdf029998, 0x00800000, 0xf5049ffd, 0x3e00a91b, 0x33009046, 0x30730710, 0x0cf40716, 0x0210331a,
0x0216304b, 0x33540cf4, 0x33270010, 0x0486011d, 0x008fd83e, 0xf40c1630, 0x16300d0c, 0x6518f409,
0x0090163e, 0xf40e1630, 0x313e6d0d, 0x4ab20094, 0x00789f7e, 0x0094c83e, 0x2b321a32, 0x5db24cb2,
0x007cca7e, 0x0094c83e, 0x2b321a32, 0x5db24cb2, 0x007c3b7e, 0x0094c83e, 0x2b321a32, 0x467e4cb2,
0xc83e007e, 0x2b320094, 0x5db24cb2, 0xa27e070a, 0xc83e007b, 0x080a0094, 0x4cb22b32, 0x037e5db2,
0x1a32007b, 0x3cb22b32, 0x5eb24db2, 0x007ed37e, 0x0094c83e, 0x2b321a32, 0x4db23cb2, 0xa77e5eb2,
0xc83e0078, 0x080a0094, 0x0094c83e, 0x9d33040a, 0xd9047a00, 0x0000299c, 0x0a029998, 0x0094f108,
0x670bf540, 0x0149fe04, 0x900142fe, 0x22902c99, 0xa09da018, 0x0499922d, 0x99929da0, 0x929da004,
0x9da00499, 0xa0049992, 0x0119339d, 0x16300085, 0x0e08f401, 0x1d33030a, 0x3e043202, 0xfe009122,
0x40fe0141, 0x2c119001, 0xb2280090, 0x7e0bb21a, 0xbf007560, 0xfe00bf19, 0x42fe0143, 0x0794f001,
0x90243390, 0x3ab22022, 0xb20141fe, 0x1c11902b, 0xb20704f0, 0x0404b61c, 0x7e0509fd, 0xbf006a5c,
0xbf3fbf29, 0x0141fe1e, 0xf00894b6, 0x94f1fff4, 0xf4b6ffff, 0x18e4b610, 0xfd181190, 0x1ab20509,
0xfd050ffd, 0x497e050e, 0x483e006a, 0x2ab20091, 0x006a397e, 0x20bf2ab2, 0x006a297e, 0x4e3e29bf,
0x41fe0091, 0x18119001, 0x167e1ab2, 0x1ab2006a, 0x037e10bf, 0x19bf006a, 0x04f11ab2, 0x94b6ffff,
0x0590ff10, 0x0069f07e, 0x94f119bf, 0x40a0ffff, 0x313e59a0, 0xfab20094, 0x0095f47e, 0x0094c83e,
0x0d00a033, 0x5c01ad33, 0x91ae3e03, 0x33b0bf00, 0x330c0190, 0x3e2f0294, 0xfe00919e, 0x010a0141,
0xb2181190, 0x94ef7e1b, 0x1fad3300, 0x1fbf033f, 0x09fffe09, 0x049fff95, 0xa23e10a0, 0x04f10091,
0x2a3203ff, 0x0a7e0bb2, 0xc83e0095, 0x9a320094, 0x0094ef7e, 0x0094c83e, 0x237efab2, 0xc83e0095,
0x9cd30094, 0xbf000029, 0x0000df39, 0x080a2000, 0xf5049ffd, 0x0a02f50b, 0x001d3303, 0x40fe02ef,
0x014cfe01, 0x90280090, 0x0bb22ccc, 0x900142fe, 0x2ab22422, 0x0073477e, 0x9670097f, 0x0b9cf003,
0x7e079194, 0x1800010e, 0x087e5830, 0x00330001, 0x1fb20a00, 0x00924d3e, 0xa4732a7f, 0x19b20a00,
0x00924b3e, 0x734019c5, 0x731403a0, 0x731804a0, 0xe51c02a4, 0x3e01009f, 0xe500924d, 0x3e02009f,
0xe500924d, 0x3e03009f, 0xb200924d, 0x0149fe9f, 0x7f2c9990, 0x04997399, 0x96700088, 0x1a0cf404,
0x48019073, 0xf4019670, 0x90733608, 0x9d734c02, 0x3e00e303, 0x730092cf, 0x009b0799, 0xf4079670,
0x9073100c, 0x9d736905, 0x3e00cb06, 0x73009304, 0x009c0899, 0xbd099d73, 0x93393e00, 0x07ff8900,
0x04f9fdfe, 0x0093513e, 0xffc7ff49, 0x95f194f9, 0xc03e2000, 0xff490092, 0x94f9ffc7, 0x180095f1,
0xfe3fff8f, 0xe5049ffd, 0x3e40009f, 0x49009351, 0xf9ffc7ff, 0x0095f194, 0x92c03e10, 0xc7ff4900,
0xf194f9ff, 0x3e080095, 0x490092f5, 0xf9ffc7ff, 0x0095f194, 0x3fff8f10, 0x049ffdfe, 0x80009fe5,
0x0093513e, 0xffc7ff49, 0x95f194f9, 0x1c3e0800, 0xff490093, 0x94f9ffc7, 0x100095f1, 0xfe3fff8f,
0xe5049ffd, 0x3ec0009f, 0x49009351, 0xf9ffc7ff, 0x0095f194, 0x93433e08, 0xc7ff4900, 0xf194f9ff,
0x8f100095, 0xfdfe3fff, 0x008f049f, 0x9fff0100, 0x299cd9f5, 0x99180000, 0x00903350, 0x0000890f,
0x95f9ff02, 0x00936f3e, 0xfdffff89, 0xa094f9ff, 0x94313e49, 0x16a63000, 0x01480cf5, 0xd9ffafc4,
0x000004d0, 0xd9e89fbc, 0x0000299c, 0xefc7080a, 0x989fbc3b, 0xbb96efc7, 0x94f0059f, 0x2b0bf501,
0xff29c401, 0x010defe7, 0x0a029b54, 0xf5bf6604, 0xf0011918, 0xb9e400f3, 0xf9bcffff, 0x04c6b0c2,
0x0c090df4, 0x93cb3e04, 0xe44da000, 0xc4ffffba, 0xebe703e9, 0x94330142, 0xbabc1200, 0x29bcd9b0,
0x4ab20000, 0x0093f43e, 0x000644d9, 0xbc99bf00, 0x4ab2b0ba, 0x7eb09bbc, 0x3e000b7e, 0x32009431,
0x9acb7e9b, 0x94c83e00, 0x00a03300, 0x33080a0f, 0x00b1011d, 0x0094c83e, 0x900140fe, 0x0ab22400,
0x0072fb7e, 0xa54f093f, 0x00943300, 0xa05a0f06, 0x3e1f0a4f, 0xd90094c8, 0x0000299c, 0x33159918,
0x00870099, 0x3802a033, 0xf402a630, 0xa0330f0c, 0xa4331800, 0x703e6e01, 0xa0330094, 0xa4332c03,
0x903e6204, 0x3ab20094, 0x009d827e, 0x0094c83e, 0xcbb2bab2, 0x009ffc7e, 0x0094c83e, 0x0b7e2a32,
0xc83e009d, 0x2a320094, 0x00a2127e, 0x0094c83e, 0xa67e2a32, 0xc83e00a1, 0x9cd90094, 0x18000029,
0x90331599, 0xfbc72400, 0xb22c326c, 0xf05eb24d, 0xac7e0fa4, 0xc83e009e, 0x020a0094, 0x0094c83e,
0xc83e030a, 0x090a0094, 0x900149fe, 0x9fbf3099, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e,
0xf01c55fb, 0xa4b6ffa4, 0x0acaa002, 0x3200f81f, 0x30040aaf, 0x0cf402f6, 0xfff4f012, 0x002a5cd9,
0xf89fbc00, 0xbfa01f0a, 0xaf3200f8, 0xf630040a, 0x100cf402, 0xd9fff4f0, 0x00002a5c, 0x9bbc1f0a,
0xf900f8f9, 0x10af9512, 0xae95b1b2, 0x299cd008, 0xff090000, 0x1bf4e926, 0x4909183d, 0x1bf5f926,
0x091800b2, 0x331c0a4a, 0x00ab0199, 0xf5019630, 0x0a00a108, 0x029d3306, 0x0998009d, 0x0af43d13,
0x18b9a01f, 0x0f354909, 0x0199104a, 0x3e490935, 0x180095f2, 0x0a0a4a09, 0x7a009433, 0x002a5cd9,
0xf099bf00, 0x99c7fff4, 0x0694b6e8, 0xb0f0f9bc, 0x0cf43ff6, 0x33030a5e, 0x905b0ce4, 0x96b104f9,
0x0cf40040, 0x02f9944e, 0x002a68df, 0x909fbc00, 0x9a589f7f, 0x73080d01, 0x981b02f4, 0x290d0409,
0x338094f0, 0x7e0f0090, 0x0900754b, 0x35d43d01, 0x9cdf5009, 0x18000029, 0xd9c449fe, 0x13f9b5ff,
0xf9350209, 0xffe4f04a, 0x1ea01c0a, 0x0095f23e, 0x11fb040a, 0xadb222f9, 0xa0c7b2b2, 0xb0bbbfe8,
0x0cf53f06, 0xbcc400cc, 0xffaec4ff, 0x0d0fe4b3, 0xc6b0050a, 0xbb0cf53f, 0x2a5cd900, 0x99bf0000,
0xc7ff9fc4, 0xf194e899, 0x0694b606, 0x2c0ee0b3, 0x440fe0b3, 0xedb31f0a, 0x7c009a0d, 0x96719009,
0x0cf500ff, 0x9fe4008c, 0x68d9ffff, 0xbc00002a, 0x2fa0f89f, 0x00966e3e, 0x7190017c, 0xf400ff96,
0x9fe46f0c, 0x68d9ffff, 0xbc00002a, 0x1f0af99b, 0x0096d03e, 0x0af0c9bc, 0xf0d9c705, 0x9002fb94,
0x9c940199, 0xe0cbbc02, 0x1000e6b1, 0xbc440cf4, 0x030a9001, 0xbc0294b6, 0xf6b1f0c9, 0x0cf41000,
0xf49ba632, 0x9ea60808, 0xa62008f4, 0x080df4b9, 0x08f4bfa6, 0x2a68df16, 0x9fbc0000, 0xb0bfbca0,
0x000b7e7e, 0x00966e3e, 0xd03e040a, 0x030a0096, 0xc9b221fb, 0x0fffa6b1, 0xbc2b0cf4, 0x96b1909a,
0x0cf41000, 0x2a68de21, 0xaebc0000, 0x00d03390, 0x3e9ab20a, 0xb20096fb, 0x7e9bb2ba, 0x0a000b7e,
0x0a00f81f, 0xf400f804, 0xdcdfe430, 0xf9000005, 0xfeffbf12, 0x99900149, 0xa0a0b220, 0xf0d1b29f,
0xedb2ffb4, 0xb40aa0b4, 0x09c40be0, 0xf49ba607, 0x0fc7751b, 0x0149fe2f, 0xa0089990, 0x029eb59d,
0xbc019ab5, 0x94bdb89f, 0x90014ffe, 0xf9a014ff, 0xb501fcb5, 0x09c702f1, 0xbcbabf23, 0x0fc7c8f9,
0x8a09c785, 0xf0e09f3c, 0x0dc71ff4, 0x05cfbb91, 0xb990d93c, 0xd4f000ee, 0x1fe4f01f, 0xbc0099b9,
0x94f0e0ef, 0xbcff0f1f, 0xf9bc909d, 0x05febb95, 0xfd049dbb, 0x99b904fc, 0x04fdbb00, 0xfd049afd,
0xb9a0059f, 0x900149fe, 0x9fbf2099, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e, 0xf41c15fb,
0xdcd9f430, 0xf9000005, 0xb299bf82, 0x014ffed1, 0xa02cff90, 0x92dd3ff9, 0x1f0003ff, 0xf0351709,
0x02f03501, 0xb6b2f920, 0xa5b2e3b2, 0x1900d433, 0x000530db, 0x7e240c00, 0x09000b7e, 0x200a3209,
0x98823e19, 0x30030a00, 0x0cf409d6, 0x0147fe78, 0xb2ffc4c4, 0x90043df8, 0x793e2477, 0x09c40098,
0x947bb2ff, 0x040c0292, 0x3da026bc, 0x96d27ed4, 0x1fa43300, 0xc47fbf6b, 0x94a607f9, 0xc75e18f4,
0x991223f9, 0x01963001, 0xc7520cf4, 0xe9c42ffe, 0xc8893cff, 0xc78afdc7, 0xd93c85f9, 0xf49c2690,
0xe0333b0c, 0xf9c73803, 0x909d3c91, 0x0cf49c26, 0x9052bc2c, 0xa0010010, 0x26193f9f, 0xa108f409,
0x49fe1f0a, 0x2c999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0xb23e230b, 0x0d0a0098, 0x0fc439bf,
0x0000deff, 0x9efdff00, 0x05f9fd04, 0x823e3fa0, 0x317e0098, 0x85fb003a, 0xa830f40c, 0x0005dcd9,
0xbf82f900, 0xf830f499, 0x4ffea7b2, 0x80ff9001, 0xaabff9a0, 0xb00eb1b0, 0xa6c70dc1, 0x01691268,
0xf5039630, 0xc7013b0c, 0x96306ca9, 0x310cf50a, 0x0141fe01, 0x900140fe, 0x00905711, 0x10a5b650,
0xb4bd1920, 0xe37e0cb2, 0xad330094, 0xbf011d1f, 0x0142fe09, 0x90ff6bc4, 0xb4b65822, 0xbc2ab204,
0x6c32b0b9, 0x7eb21db2, 0x0097bf7e, 0x333fa130, 0x00f51fad, 0x080141fe, 0x40119001, 0x1990243d,
0x0c1e9008, 0x54bd343d, 0xb00c91b0, 0x0e3e0be1, 0x90b4009a, 0x0c1bb214, 0xbcd43d10, 0x4ab24059,
0x0096d27e, 0xc31fad33, 0x9819bf00, 0xffde011f, 0xfde0ffff, 0x1fb5049e, 0x3319a002, 0x3d0a0020,
0x99a83e04, 0x0cb0b400, 0xb20bc0b4, 0x8d3e7e1a, 0x321fbf00, 0xffffdea0, 0x09c4e0ff, 0x04fefd1f,
0xfd1894b6, 0x19a0059f, 0x1bb24ab2, 0x010d100c, 0x0096d27e, 0x731fa433, 0x0a002033, 0x083e0102,
0x0433009a, 0x043d3f1f, 0x0099f53e, 0x98ff09c4, 0x1d98021c, 0x0de0b403, 0x90014ffe, 0xf9bc58ff,
0x0e90b4a8, 0x1001e1b0, 0x3b320100, 0xb20091b0, 0x97077e7e, 0x57903400, 0x08f40926, 0x9a083ed2,
0x3d19bf00, 0x1f929584, 0x90013310, 0x36261055, 0xff4208f5, 0x80331b0a, 0x243e1100, 0x030a009a,
0x009a273e, 0xfe3fa034, 0x99900149, 0xd99fbf80, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xf4003a31,
0x85fb0830, 0xf430f458, 0x0005dcdf, 0xbf12f900, 0x0149feff, 0xfe109990, 0x9fa00141, 0x4a0c1190,
0x040b00b8, 0x307e1cb2, 0xa433008c, 0x40fe2b1f, 0x00b44a01, 0x0b080090, 0x7e0cb204, 0x33008c30,
0xbf161fa4, 0xa60fbf19, 0x0b9cf09f, 0x320196f0, 0x9a973e9a, 0xfea43d00, 0x99900149, 0xd99fbf10,
0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0xa9980c15, 0x90afb204, 0x010b59ac, 0x4a2095f0,
0xf9b50090, 0x8c307e04, 0xf400f800, 0xdcd99030, 0xf9000005, 0xfe99bf52, 0xff90014f, 0xa0030e84,
0x00ad33f9, 0x9cd90105, 0x18000029, 0x99335999, 0x3200f600, 0x014cfeba, 0xcc90b4bd, 0x94e37e20,
0x33ae3200, 0x00e31fad, 0x4a0144fe, 0x449000b8, 0xb2040b1c, 0x8c307e4c, 0x33ae3200, 0x00cb1fad,
0x4a0140fe, 0x009000b4, 0xb2040b18, 0x8c307e0c, 0x33ae3200, 0x00b31fad, 0x4abf09bf, 0x0bf5a9a6,
0xaa9000a6, 0x0140febc, 0x0090010b, 0x7e0cb227, 0x32008c30, 0x1fad33ae, 0x093f0091, 0xb20142fe,
0x28229043, 0x45ff94f0, 0x91541000, 0x9baa3e02, 0xe43abf00, 0xbcffff1b, 0xb9a6925a, 0xb2050df4,
0x90b0729b, 0xb3f0bcaa, 0x7e2cb200, 0xe4008c30, 0x32ffff0f, 0x1fa433ae, 0x7b39bf51, 0x2fbc0210,
0x90f9bc20, 0x0fff94f1, 0x147339a0, 0x49fec700, 0x20999001, 0x99909abf, 0xfe9c3f07, 0x010d014b,
0xf028bb90, 0xc4b6ffc4, 0x96d27e02, 0x33ae3200, 0xb2171fa4, 0x00b84a4c, 0xf07e040b, 0xae32008a,
0x009be63e, 0x49fe090e, 0x84999001, 0xdcd99fbf, 0xbf000005, 0xa6ea3299, 0x070bf4f9, 0x003a317e,
0x987055fb, 0x008f04a9, 0x9ffd3ff0, 0x04a9b505, 0xaeb200f8, 0x0a10bf12, 0x26ee0904, 0x2e0df4f9,
0x0a00c433, 0x2d3eea7f, 0xea58009c, 0x00a07301, 0x26ff0918, 0x140bf4b9, 0xffffa9e4, 0xf0059bbb,
0x1bf40194, 0xf8090a07, 0xf81f0a00, 0xf830f400, 0x0005dcdf, 0xbf32f900, 0x0149feff, 0x900140fe,
0x43fe1499, 0xb29fa001, 0x90b1b2a2, 0x33901300, 0x10ec4a12, 0x0cb2010b, 0x008b707e, 0x741fa433,
0xa6300a3f, 0x690cf401, 0x210020b3, 0x94ffa4f0, 0x240b05a9, 0xb202a4b6, 0xa0a9bc2c, 0x10eeaab8,
0x8b707e00, 0x1fa43300, 0x0010b34b, 0x0b0a3f23, 0xf01cb204, 0xa994ffa4, 0x02a4b605, 0xb8a0a9bc,
0x0010eeaa, 0x008b707e, 0x281fa433, 0x0b10ec4a, 0x7e3cb201, 0x33008b70, 0x3f191fa4, 0x01f6303f,
0x3f0e0cf4, 0xf49f2609, 0xf03e8a1b, 0x050a009c, 0x900149fe, 0x9fbf1499, 0x0005dcd9, 0xa699bf00,
0x070bf4f9, 0x003a317e, 0xf40835fb, 0xdcdfd830, 0xf9000005, 0xfeffbf22, 0x99900149, 0xa0a13230,
0x299cd99f, 0x99980000, 0x0ab2b204, 0x0094f108, 0x360bf440, 0xbd0140fe, 0x0c0090b4, 0x4d7e0ab2,
0xa433009c, 0x0ab2251f, 0x010c1b32, 0x009c127e, 0x171fa433, 0x90ff19c4, 0x99bc0299, 0x9009bc90,
0x92f0997f, 0xfe29a00f, 0x99900149, 0xd99fbf30, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31,
0x30f42825, 0x05dcdfd8, 0x62f90000, 0x49feffbf, 0x40999001, 0x9fa0b2b2, 0x00299cd9, 0x04999800,
0xc3b2a6b2, 0x94f1080b, 0x0bf51000, 0xb4bd00e5, 0x900141fe, 0x1ab21c11, 0x009c4d7e, 0xad33ab32,
0x0b00d11f, 0x0c1ab2ff, 0x9c127e01, 0x33ab3200, 0x00c01fad, 0x1ab2ff0b, 0x127ec43d, 0xab32009c,
0xaf1fad33, 0x01145800, 0x29a094bd, 0x109039a0, 0x72157f04, 0x4da47d4c, 0xe4bd8000, 0x323e0101,
0xc9c4009e, 0x200bf401, 0xfd660f7f, 0xbc0a1df4, 0x273ea41e, 0xfd66009e, 0xbc0d1bf4, 0xa9fd941e,
0x9e273e05, 0x90df7200, 0xc57601ee, 0x02009001, 0xc473fd72, 0x6ebfd000, 0xc400d3f0, 0xffdfffa9,
0xb6ff00ff, 0xeffd1094, 0x00008c04, 0x059efdff, 0xfd049cfd, 0x69a0059d, 0x4ee429bf, 0xafc7ffff,
0x10ed94e8, 0xff0094f1, 0xfd059dfd, 0x2fa005f9, 0xffff59e4, 0xff00eeb9, 0x0bf4a4e9, 0xfd39bf15,
0x9afd049c, 0xbf39a005, 0x0095f129, 0xfe29a001, 0x99900149, 0xd99fbf40, 0x000005dc, 0xba3299bf,
0x0bf4f9a6, 0x3a317e07, 0x2865fb00, 0xdff030f4, 0x000005dc, 0xffbf62f9, 0x900149fe, 0xa1322899,
0xb0329fa0, 0xd5b2c432, 0xb630e6b2, 0x120cf504, 0x299cd901, 0x9e980000, 0xffb9c404, 0xc4119990,
0x080a1f9f, 0xb905efbb, 0x94f00099, 0x909fbc1f, 0xf9bbff0f, 0x34feff05, 0xe9013db3, 0xfe94bd00,
0xff90014f, 0x0142fe20, 0x9001f9b5, 0xf9a01c22, 0x2bb2a4bd, 0x009c4d7e, 0xc91fad33, 0x322ab200,
0x7e1b323c, 0x33009c12, 0x00ba1fad, 0x46020033, 0xf4020630, 0x0033100c, 0x0d331a00, 0x3e00a501,
0x33009f60, 0x33410300, 0x0098040d, 0x009f963e, 0xf1ff19c4, 0xb8012690, 0x0011369e, 0x009f6c3e,
0xf1ff19c4, 0xb8012690, 0x0011469e, 0xa53e100f, 0x19c4009f, 0x2690f1ff, 0xb8040f01, 0x0011569e,
0x009fa53e, 0xf1ff19c4, 0x0f012690, 0x5a9eb802, 0xa53e0011, 0x19c4009f, 0x2690f1ff, 0x01004f01,
0x115c9eb8, 0x03499400, 0x9cc4040a, 0xf4cfa6f8, 0xc9903218, 0xa6080b08, 0x060df49f, 0xbcb2fcbc,
0x40fea0ec, 0x20009001, 0x707e0cb2, 0xa433008b, 0x09bf131f, 0x009859a0, 0x3e60a001, 0x0a009fe1,
0x0149fe03, 0xbf289990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x1065fb00, 0xdfe830f4,
0x000005dc, 0xffbf52f9, 0x900149fe, 0xa3b22c99, 0x9cd99fa0, 0x98000029, 0xb2b20499, 0x94f1080a,
0x0bf52000, 0x40fe00ca, 0x90a4bd01, 0x0bb21800, 0x009c4d7e, 0xb81fad33, 0x0b0ab200, 0x7ec43dff,
0x33009c12, 0x00a91fad, 0x7f0141fe, 0x1c119000, 0x0b10dc4a, 0x7e1cb210, 0x33008b70, 0x00911fad,
0x15b20b72, 0x04bdc4bd, 0xff04e001, 0x00a0e83e, 0xf401b9c4, 0xc6b0690b, 0x350cf407, 0x5c3c3dbf,
0x1f0ec4f8, 0xb9030990, 0xf4f00099, 0x1f94f0ff, 0xbc909ebc, 0x9fff9549, 0x049ebbf4, 0xb904febb,
0x9dfd0099, 0x059ffd04, 0xdc3e39a0, 0x2dbf00a0, 0xc4f85c3c, 0x09921f1e, 0x0099b91d, 0xf0fff4f0,
0x9ebc1f94, 0x9549bc90, 0xbbf49fff, 0xfebb049e, 0x0099b904, 0xfd049dfd, 0x29a0059f, 0x7601cc90,
0x009001b5, 0x04119004, 0x8800b473, 0x900149fe, 0x9fbf2c99, 0x0005dcd9, 0xa699bf00, 0x070bf4f9,
0x003a317e, 0xf41855fb, 0xdcdfd430, 0xf9000005, 0xfeffbf22, 0x99900149, 0xfea23234, 0x9fa00141,
0x4a0c1190, 0x280b2398, 0x707e1cb2, 0xa433008b, 0x10985d1f, 0xbc19bf01, 0x90a6f290, 0xb01008f4,
0x9cf001f6, 0x0196f00b, 0x00a1563e, 0xf9a6e109, 0xf00b9cf0, 0x0b0a0196, 0x33009033, 0x0029b4d9,
0x019c9800, 0x4ffe9bbf, 0x0cff9001, 0x4d90f0bc, 0x9235239c, 0x90240e08, 0x94f00109, 0x04fa901f,
0x7e01f9b5, 0x7e002136, 0xfe008a84, 0x99900149, 0xd99fbf34, 0x000005dc, 0xf9a699bf, 0x7e070bf4,
0xfb003a31, 0x30f42c25, 0x05dcdff8, 0x12f90000, 0x49feffbf, 0x0c999001, 0x9fa0a132, 0x00299cd9,
0x049f9800, 0x0089080a, 0xf9fd0100, 0x2a0bf404, 0xbd0140fe, 0x080090a4, 0x4d7e0bb2, 0xa433009c,
0x0ab2191f, 0xc43d1b32, 0x009c127e, 0x0b1fa433, 0x7e1f1ac4, 0xfe00a107, 0x99900149, 0xd99fbf0c,
0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40815, 0x05dcdff8, 0x12f90000, 0x49feffbf,
0x0c999001, 0x9fa0a132, 0x00299cd9, 0x04999800, 0x94f1080a, 0x90738000, 0x40fe2e00, 0x90a4bd01,
0x0bb20800, 0x009c4d7e, 0x1c1fa433, 0x1b320ab2, 0x127ec43d, 0xa433009c, 0x1ac40e1f, 0x20a5f01f,
0x00a1077e, 0x900149fe, 0x9fbf0c99, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e, 0xf90815fb,
0x06b99552, 0x94b6c4b2, 0xbcd5b203, 0xb0c430a9, 0xa2e03e3f, 0x9831bf00, 0x54b30132, 0x010a1800,
0x0cb2b4bd, 0x0039cd7e, 0xfd052bfd, 0xc83e051a, 0x0cb200a2, 0xb4bd010a, 0x0039cd7e, 0xb900b9b9,
0x29fd00aa, 0x041afd04, 0xb3014492, 0x900b0040, 0x04b30100, 0x31a0c840, 0xbd0132b5, 0x08339004,
0xb50044b3, 0xd4bd51fb, 0x00a27f7e, 0x010d00f8, 0x00a27f7e, 0xbcc400f8, 0x06b5b63f, 0xbc03b4b6,
0xab98a0ab, 0x7eaabf01, 0xf0003979, 0x00f801a4, 0xf4bdaeb2, 0xf0b3a43d, 0xef3c0a08, 0xa0a93c98,
0xb301ff90, 0xf30080fe, 0x3907a2f0, 0x00f801aa, 0xe9c4ae3f, 0x1b0bf401, 0xff0ef4bd, 0x9098af3c,
0x9e2601ff, 0x00c51bf5, 0xf410f4b3, 0x00a40d3e, 0xafbcf4bd, 0x09991890, 0x3301ff90, 0x00ae009d,
0xf207f4b3, 0x0c06ad18, 0xf5dc2680, 0x33009e0c, 0x183800e4, 0x9d3301a9, 0x18009300, 0x9d3302a9,
0x18008b00, 0x9d3303a9, 0x18008300, 0xa91804af, 0xfff4f005, 0xfd089476, 0x9473059f, 0xdc266f00,
0x3e691bf4, 0x1800a402, 0xa91804af, 0xfff4f005, 0xb6ff94f0, 0x9ffd0894, 0x7099cd05, 0x4d009473,
0x1201a918, 0x96304199, 0x400cf419, 0x3102a918, 0xf4004096, 0x9631361d, 0x1cf4005a, 0x03a9182f,
0x00409631, 0x31251df4, 0xf4005a96, 0xd0331e1c, 0xefc41b00, 0x04f9c4ff, 0xc4151bf4, 0x94b30af9,
0xa9180b02, 0x00903307, 0xf8060a08, 0xf8a4bd00, 0x0f12f900, 0xb2b1b202, 0x00a0b3a0, 0xf0a93f22,
0x1bf40894, 0xa3107e17, 0x0010b300, 0x181a2006, 0x060f0809, 0x1bf4a926, 0xb2f4bd05, 0xb211fbfa,
0xb3020aa9, 0xbf1200c0, 0xb6cdb29a, 0x804c07b4, 0xb7627e00, 0xf400f800, 0xdcdff830, 0xf9000005,
0xfeffbf22, 0x99900149, 0xa0a0b210, 0xb3020a9f, 0xbf340000, 0x94943d0a, 0x41fe07b2, 0x902bb201,
0x010c0f11, 0x1db21920, 0x00b7797e, 0x1700a4b3, 0x0abf193f, 0x1db22bb2, 0x0cfd94f0, 0x7e192001,
0xfe00b762, 0x99900149, 0xd99fbf10, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40825,
0x05dcdff8, 0x42f90000, 0x49feffbf, 0x18999001, 0x9fa0a1b2, 0xc0b2b4b2, 0xa0b3d3b2, 0xc0b35600,
0xcf185200, 0xfe94bd07, 0x22900142, 0x01ff1014, 0xcf3529a0, 0x7ecab207, 0xb200a310, 0x080a352b,
0xb27e1ab2, 0xa4b300a7, 0x2bbf2c00, 0x1ab20cb2, 0x00a43f7e, 0x1e00a4b3, 0x4bb21ab2, 0x00a4577e,
0x1200a4b3, 0x0e0030b3, 0x32a022bf, 0x00a5323e, 0x49fe020a, 0x18999001, 0xdcd99fbf, 0xbf000005,
0xf4f9a699, 0x317e070b, 0x45fb003a, 0xb202f908, 0x00a0b3c0, 0x00c0b324, 0xb6aabf20, 0x804c07b4,
0x7e0db200, 0xb300b779, 0xb21000a4, 0xa3307e0a, 0xa5773e00, 0xfb020a00, 0x00a0b301, 0x00c0b317,
0xb2aabf13, 0x07b4b6cd, 0x797e100c, 0x00f800b7, 0x00f8020a, 0xb3b242f9, 0xa2b2c4b2, 0xa0b30200,
0xea7e4200, 0x030000a5, 0xa0b3a1b2, 0x3bb23600, 0x1cb22ab2, 0x00a54d7e, 0xa4b3a0b2, 0x1ab21e00,
0x117eb4bd, 0xa0b200a4, 0x1000a4b3, 0x0c0040b3, 0xf0061918, 0x49a0ff94, 0x1bb22ab2, 0x00a60c7e,
0x41fb0ab2, 0x00f800f8, 0xaeb200f8, 0xb30eaa98, 0xbd0a00a0, 0xa6023ef4, 0x0fea9800, 0x0e00a0b3,
0xff90010f, 0xbc94bd0e, 0x00f8f9e9, 0x1a00b0b3, 0xb30ea998, 0x980d0090, 0x94b30fa9, 0x01090c00,
0xbc0e9990, 0x00f899ab, 0xa002b998, 0xb5ff09a9, 0xb99801a9, 0x04abb502, 0xb503acb5, 0x00f802a9,
0xa0b222f9, 0xd2b2c132, 0xb0b3020a, 0x0cb85e00, 0xbd000140, 0x04c998d4, 0x440090b3, 0x08001433,
0x3c0390b3, 0xb93fcf3f, 0x1bf4f926, 0x01cf1832, 0x2601b918, 0x271bf4f9, 0x1802ce18, 0xddbc02bf,
0x909dbc90, 0xb80394b6, 0x00014099, 0x269009bc, 0x0b1bf4ef, 0xa4bd29a0, 0x00a6a83e, 0x9001dd90,
0xd4b318cc, 0x040ab314, 0xabbf21fb, 0xf009acb2, 0x0bf4b9a6, 0x03aa980d, 0x7e01cbb5, 0xf800b65f,
0xb232f900, 0xbdb2b2a1, 0x3ef00304, 0xbf00a6f0, 0x01009019, 0x93a61ab2, 0x0a090df4, 0xa6f73e03,
0xf493a600, 0x020a091b, 0x00a6f73e, 0x00a6aa7e, 0x08f402a6, 0xfba4bddd, 0xf830f431, 0x0005dcdf,
0xbf82f900, 0x0149feff, 0xb2289990, 0xb29fa0a3, 0x00a9b3b8, 0xb0b30084, 0x47fe7f00, 0x05a49801,
0x54bd24bd, 0x779014bd, 0xa7613e24, 0x0c3a9800, 0x02bc94bd, 0xb279a0b0, 0xb65f7e7c, 0x0f79bf00,
0xf49fa6ff, 0x643d090b, 0x00a74f3e, 0x90015590, 0x04a60100, 0x33d908f4, 0x90070060, 0x24bc0111,
0x03399820, 0x18f429a6, 0xbd01060b, 0xa7523e04, 0xb24bb200, 0x16fc7e1a, 0xf45aa600, 0x1190060d,
0x06399801, 0x19a6f43d, 0x0f050cf4, 0xbd8f2001, 0xa7973ea4, 0xfe020a00, 0x99900149, 0xd99fbf28,
0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40885, 0x05dcdff0, 0x82f90000, 0x49feffbf,
0x30999001, 0xa00147fe, 0x08a9989f, 0xb1b0a6b2, 0xb0f10509, 0x843d0a91, 0x779090b2, 0x0369982c,
0x7fa0f4bd, 0x08f409a6, 0x0804bd07, 0x0a90b401, 0x1bf409a6, 0x00803335, 0xa85a3e32, 0x0c6a9800,
0xb24010bc, 0x7e4bb27c, 0xbf00b65f, 0xa6ff0f79, 0x0f1bf49f, 0x09012290, 0xf439a6f1, 0x43b2051b,
0x3e011190, 0xbd00a82d, 0xbdf10314, 0x05699824, 0x08f419a6, 0x0020b3cb, 0xf429a61e, 0x60b50f18,
0x09f0b408, 0x6b3ef3a0, 0xf10f00a8, 0x1bf45fa6, 0xbc05b205, 0xdd3e0009, 0x1a0a00a7, 0x59a6f109,
0xb50d0bf4, 0x90b40865, 0xbd95a009, 0x0149fea4, 0xbf309990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6,
0x3a317e07, 0x1085fb00, 0xd9f830f4, 0x000005dc, 0x99bf82f9, 0x90014ffe, 0xa3b228ff, 0xb4b2f9a0,
0xc033d0b2, 0xdab20e00, 0x140cb43d, 0x00b7907e, 0xbd0142fe, 0x24229014, 0xff07fe08, 0xfb05fc06,
0x00a93a3e, 0xbd0c3a98, 0xb014bc94, 0x2cb229a0, 0x00b65f7e, 0xf00f29bf, 0x0df49fa6, 0xa6fd0f56,
0x110cf49f, 0x18f496a6, 0xf495a630, 0x093e451b, 0x98a600a9, 0xa62f0bf4, 0x371bf497, 0x90010998,
0x09b50199, 0xa9373e01, 0x04099800, 0xb5019990, 0x373e0409, 0x099800a9, 0x01999002, 0x3e0209b5,
0x9800a937, 0x99900309, 0x0309b501, 0x00a9373e, 0x999009bf, 0x9009a001, 0x39980111, 0xf419a605,
0x49fe8508, 0x28999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x85fb003a, 0xf830f408,
0x0005dcdf, 0xb222f900, 0xb2ffbfa1, 0x03aa98b2, 0x49fe1bbf, 0x10999001, 0xa00140fe, 0x0c00909f,
0x5f7e0cb2, 0x0cbf00b6, 0xb2031a98, 0xb6767e2b, 0x011b9800, 0xb9a6ff09, 0x98101bf4, 0x12b50419,
0x0292b502, 0x00a9b13e, 0xb2031a98, 0xb6767e2c, 0x031a9800, 0xfd0c1bbf, 0x00b6767e, 0x900149fe,
0x12a01099, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x25fb003a, 0xc830f408, 0x0005dcdf,
0xbf82f900, 0xf830f4ff, 0x900149fe, 0x9fa06099, 0x18049992, 0xf4bd1cae, 0xa9989fa0, 0x0aa2b205,
0x0b91b005, 0x1a00e933, 0x0c2b9802, 0xfe092c98, 0xf100014a, 0xfe44aa90, 0xa6b20144, 0x8b7e2001,
0x05b200b6, 0x4490a3b2, 0xaa723e30, 0x08299800, 0x0bf439a6, 0xb22ab231, 0xb2010c3b, 0xa8887e4d,
0x04499800, 0x1f0094b3, 0xb3034998, 0x98180094, 0x94b30249, 0x49bf3b00, 0x18f491a6, 0x3e30b209,
0xb200aa65, 0x0bb0b419, 0x6ab291b2, 0x00b6a47e, 0x35a6a3b2, 0x0ab91bf4, 0xf503a603, 0xb301a30b,
0xb20c0014, 0x3e743d03, 0xb200aa8f, 0x94010703, 0x54bd0738, 0x9b3e86b2, 0x2a9800ab, 0xbce4bd0c,
0x4cfe1053, 0x16e1b001, 0xb258cc90, 0xb65f7e1b, 0x00adb300, 0x90b400f3, 0xa6f00f16, 0xd80cf59f,
0xb294bd00, 0x1591b02a, 0x00a5ea7e, 0xa9b3a4b2, 0xbf00d600, 0x4c6bb22a, 0x4db20080, 0x00b7797e,
0xadb3a0b2, 0xb200a700, 0xb21bb22a, 0x014dfe4c, 0x7e50dd90, 0xb200a4be, 0x00adb3a0, 0x2ab20090,
0x0c014b90, 0x014dfe01, 0x7e54dd90, 0xb200a640, 0x00a4b3a0, 0x15b0b478, 0xfe0c2c98, 0xaa90014a,
0xa6287e30, 0x0c90b400, 0x1bf491a6, 0x14b0b41e, 0x90014afe, 0x5d7e30aa, 0x90b400a9, 0x059f9815,
0x2300f4b3, 0x00ab893e, 0x9ea6ef0e, 0x00090df4, 0xab893e03, 0x014afe00, 0x7e30aa90, 0x3e00a6aa,
0x9800ab25, 0xe0b402f9, 0xf491a614, 0xfeb5061b, 0xa6f9bf02, 0x091bf491, 0x893efea0, 0xf99800ab,
0xf491a601, 0xfeb5061b, 0xb24bb201, 0xa60c7e2a, 0x0004b300, 0x01559013, 0x98806690, 0x59a60529,
0xfefa08f5, 0x46007033, 0xb2042f98, 0xb2e4bd8d, 0x00f1b02a, 0x70dc020b, 0xfe000000, 0x11900141,
0x0111b05c, 0x00a5e47e, 0xbf042c98, 0x048bb22a, 0xb74b7efb, 0x981ebf00, 0xa0b2042c, 0x2ab2b4bd,
0xe67e0db2, 0x04b300a5, 0xff040600, 0x013e04bd, 0x2a9800ac, 0xb003bc0c, 0x00904cb2, 0xb6767e01,
0x0b90b400, 0x08f409a6, 0x032f98ec, 0xb59039bc, 0x9fa60929, 0xbd0808f4, 0x0929b594, 0x49fea4bd,
0x60999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x30f4003a, 0x3885fb08, 0xd9cc30f4,
0x000005dc, 0x99bf82f9, 0xfef830f4, 0xff90014f, 0xb0f9a05c, 0xc8b20be1, 0xa3b2d6b2, 0x8400b9b3,
0x00e9b302, 0xaf18027f, 0x0141fe2c, 0x119094bd, 0x0019a054, 0x00f93303, 0xc43d026d, 0x407e1db2,
0xa0b200a6, 0x5e00adb3, 0xbc17bf02, 0x7998f068, 0xf59fa601, 0x98024d08, 0x94b30479, 0x05000a01,
0x00aee23e, 0x3e0069b3, 0x027f9802, 0xf9a6f009, 0x022a0bf5, 0xea7e3ab2, 0xa2b200a5, 0x1e00a9b3,
0x0c3c9802, 0x40fe7bb2, 0x34009001, 0x287e0ab2, 0x0ab200a6, 0xcc0570b5, 0xc17e708b, 0xa0b200a6,
0xe900adb3, 0x0d00b401, 0x01a6f001, 0x01ce0bf5, 0x01d00cf5, 0x804cb43d, 0x7e2ab200, 0xbf00b790,
0x070b943a, 0xb200804c, 0xb7797e2d, 0x0ca1b000, 0xb600adb3, 0x05291801, 0x76042f18, 0xf4f00894,
0xe59fffff, 0xe966ff09, 0x01980bf5, 0xffffe9e4, 0x08f589a6, 0xf4bd018e, 0x18902fbc, 0x9d330999,
0x90018200, 0xf4b301ff, 0xfc3ef207, 0x8e3c00ae, 0xf59f26f2, 0xc4016d08, 0x94f0fffd, 0x529dbcff,
0x0df456a6, 0x9065b205, 0xe4bd10d9, 0x3db029bc, 0x3ec43da4, 0xb100ada7, 0xf5006fd6, 0xb401450c,
0xbe3c0b10, 0xf81e3c98, 0x0bf4f926, 0xff94f017, 0xfd009939, 0x9033049f, 0x010a0600, 0x0ce9bf3c,
0x01ee9001, 0xa601dd90, 0xce08f4e5, 0xed00c933, 0xf0293f00, 0x0bf40894, 0x00a93308, 0x94bd00d0,
0x91b03ab2, 0x1391b014, 0x301291b0, 0x4bfe5b91, 0x5bbb9001, 0x00a6f97e, 0xadb3a0b2, 0x3400ef00,
0x90335b90, 0x3ab21100, 0x00a9d97e, 0xadb3a0b2, 0xb400db00, 0x40b40d00, 0x014ffe11, 0xb250ff90,
0x070d942e, 0x4101f1b0, 0x3ab20080, 0x4cb2010b, 0x7e0011b0, 0xb200a5e4, 0xb22cb20b, 0x014dfe3a,
0x7e4cdd90, 0xb400a4be, 0xa0b214e0, 0x3ab21cb2, 0x0db2b4bd, 0x00a5e67e, 0x91000db3, 0x13b0b400,
0x90014afe, 0x5d7e34aa, 0x3a9800a9, 0x0db0b40c, 0x90014cfe, 0x5f7e48cc, 0xa0b200b6, 0x6d00a4b3,
0x011290b4, 0xf491a6f0, 0x4e98321b, 0x70efcd01, 0x0600f4b3, 0x2918700f, 0xff94f006, 0xbb909ebc,
0x49b5029f, 0xae993e01, 0xb20bb200, 0x7e2cb23a, 0xb200a43f, 0x00a4b3a0, 0x0265bb34, 0x90014afe,
0xaa7e34aa, 0x60b300a6, 0x90b42000, 0x8085bc0b, 0xb09095bc, 0xe53e0b91, 0x020000ac, 0x00aec93e,
0xc93e0300, 0x00b400ae, 0xb23ab20c, 0xa60c7e2b, 0xb594bd00, 0xe23e0579, 0x030000ae, 0x00aee23e,
0x49fe0200, 0x5c999001, 0xdcd99fbf, 0xbf000005, 0xa60ab299, 0x170bf4f9, 0x00af083e, 0x33062918,
0xfe4f009d, 0x00aec03e, 0x003a317e, 0xfb0830f4, 0x30f43485, 0x05dcdfdc, 0x82f90000, 0x30f4ffbf,
0x0149fef8, 0xa04c9990, 0x0bb1b09f, 0xd4b2c2b2, 0xa5b2e6b2, 0x1700b9b3, 0x00e9b301, 0x94bd0112,
0x3d0141fe, 0x481190c4, 0x1db219a0, 0x00a6407e, 0xadb3a0b2, 0xbf00fb00, 0xf042bc19, 0xa6019998,
0xea08f59f, 0x005ab200, 0xa5ea7e03, 0xb3a3b200, 0x00de00a9, 0x5c981bbf, 0x0140fe0c, 0xb2300090,
0xa6287e0a, 0xcc0ab200, 0xc17e702b, 0xa8b200a6, 0xad00adb3, 0x7021cd00, 0x420147fe, 0x77900080,
0xb0383e44, 0x0c00b400, 0x79a094bd, 0x09a6f009, 0x00091bf4, 0xb03f3e02, 0xa6f00900, 0x090df409,
0x3f3e0300, 0xc0b400b0, 0x0704b60b, 0x0db2e4bd, 0xb4bd5ab2, 0xb00021b0, 0xe47e0171, 0x5abf00a5,
0x2cb20bb2, 0x797e3db2, 0x7ebf00b7, 0x3bb2a0b2, 0x2cb25ab2, 0xe67e0db2, 0x04b300a5, 0x3ab24500,
0x117eb4bd, 0xa0b200a4, 0x3700a4b3, 0x01bb7000, 0xf404a602, 0x40b2050d, 0xb2101b90, 0xb03bbc6a,
0x997e0cb2, 0x4afe00b7, 0x0240bb01, 0xbc30aa90, 0xaa7e6060, 0x14bd00a6, 0x6d004db3, 0xb280b2ff,
0x7e3bb25a, 0x3e00a60c, 0x0000b04d, 0x0149fe02, 0xbf4c9990, 0x05dcd99f, 0x99bf0000, 0xf9a60ab2,
0x7e070bf4, 0xf4003a31, 0x85fb0830, 0xf830f424, 0x0005dcd9, 0xbf32f900, 0x014ffe99, 0xb214ff90,
0xbdf9a0a1, 0xb2b2b294, 0x0140fec3, 0x9003204b, 0x09a01000, 0x9f7e0ab2, 0x09bf00b7, 0x4c0090b3,
0x4800a4b3, 0x09bf91a0, 0xbf0192b5, 0x1000490f, 0xbf04f9b5, 0xb520090f, 0x09bf05f9, 0xbf0693b5,
0x3501090f, 0x09bf1cf9, 0xbf2c9a35, 0xb5f0090f, 0x0fbf0af9, 0xb540f990, 0x0fbf0ef9, 0xb5c0f990,
0x0abf0ff9, 0x00b0ea3e, 0x49fea4bd, 0x14999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b,
0x35fb003a, 0xd030f408, 0x0005dcdf, 0xbf82f900, 0x0149feff, 0xb2509990, 0x059fa0a3, 0x00a9b302,
0xb63004fb, 0x0b9cf000, 0xbd2ca935, 0x0ca9b594, 0x00a5ea7e, 0x3abfa0b2, 0x804cb4bd, 0x7e0db200,
0xb200b779, 0x00adb3a5, 0x093f04b1, 0xa24a9d33, 0x01091804, 0x9a469d33, 0x02091804, 0x92469d33,
0x03091804, 0x8a539d33, 0x040e1804, 0x18050918, 0x0d18060f, 0xffe4f007, 0xf0ff94f0, 0x94b6fff4,
0x10f4b608, 0xb6059efd, 0xf9fd18d4, 0x05dffd05, 0x045e0bf5, 0xd6b00505, 0x5d0cf503, 0x013db504,
0x0e01d4b3, 0xb5500049, 0xd83e0239, 0x0d1800b1, 0x09091808, 0x180a0f18, 0xd4f00b0e, 0xff94f0ff,
0xb6fff4f0, 0xf4b60894, 0x059dfd10, 0xfd18e4b6, 0xeffd05f9, 0x023eb505, 0x0bb23ab2, 0x00a60c7e,
0x09023a98, 0xf4a9a6ff, 0x04bd091b, 0x00b5ee3e, 0x9007a5b6, 0x3ab5303b, 0xb6d27e03, 0xb3a5b200,
0x03f500ad, 0x09033b98, 0x343a90c0, 0xfd3fbb90, 0xb5b604b9, 0xb79f7e03, 0xb3a5b200, 0x03d900ad,
0xfe0147fe, 0x77900148, 0x9044bd40, 0x88900179, 0x0991b03c, 0x00b3483e, 0x8ea0e4bd, 0x0f0044b3,
0xbd0c3a98, 0x3efe0cb4, 0xb200b26b, 0xb24bb23a, 0xa5797e7c, 0xb3a5b200, 0x039d00ad, 0x94f0793f,
0x120bf401, 0xb20c3a98, 0x7eff0c4b, 0x3e00b676, 0xb200b345, 0xa3307e7a, 0x00a0b300, 0x0c3a980f,
0xfd0c4bb2, 0x00b26b3e, 0x94f0793f, 0x0e1bf402, 0xb20c3a98, 0x3efd0c4b, 0xb400b33a, 0x3ab209b0,
0x8db2010c, 0x00a6407e, 0x5d00a0b3, 0x3fb2793f, 0x99c724bd, 0x01999002, 0x980a91b0, 0x54b354f5,
0xb0b43900, 0x0022bc09, 0x02bc030c, 0x0304b600, 0x014001b8, 0x1031bc00, 0x997e1ab2, 0x30bc00b7,
0x4309b800, 0x95200001, 0xb45302b5, 0x0fb50af0, 0x3e81a054, 0x9000b305, 0xff900122, 0x1424b318,
0xb6323ebe, 0x3f8ebf00, 0x027f5879, 0x98077d18, 0x3a9803ee, 0x0299c70d, 0xcc00f3f0, 0x96cb70ff,
0xcb4bb21f, 0x010cd8e6, 0xebf0d6cb, 0x7e01e0f6, 0x9800a2e6, 0x4bb20c3a, 0x767e6cb2, 0xa5b200b6,
0xb400adb3, 0x01449002, 0xa6033b98, 0xeb08f54b, 0xbc94bdfe, 0x89a0b0bb, 0xb57e8ab2, 0xa5b200b7,
0x9400adb3, 0xbd37b202, 0x547f9884, 0xbc9088bc, 0x94b69098, 0x4099b803, 0x39bc0001, 0x0b91b090,
0x5300f9b3, 0x033c9802, 0x3d0fa0b4, 0xbc24bdb4, 0x44bdc0cc, 0x00b7907e, 0x3e0f60b4, 0x9800b463,
0x2bb20d3a, 0x7e0c41b0, 0x3300a2f6, 0x00b500a9, 0xfe0c3a98, 0x2bb2014c, 0x7e38cc90, 0xb300b65f,
0x020c00ad, 0xb40be0b4, 0xef980e90, 0xd899c703, 0x1bf59fa6, 0x3a98008e, 0x0c2bb20d, 0xa2ee7e01,
0x014cfe00, 0x2bb23ab2, 0x7e30cc90, 0xb300a594, 0x981306a4, 0x2bb20c3a, 0x767efd0c, 0x603e00b6,
0xadb300b4, 0x7401cb00, 0x93f01c90, 0x9099bc00, 0x7f0069bc, 0xff19e401, 0x091bf4ff, 0x603e0260,
0x3a9800b4, 0x014cfe0c, 0xffff1be4, 0x7e34cc90, 0xb300b65f, 0x019800ad, 0x343af034, 0xf9263690,
0x60100df4, 0xff1be402, 0x0c3a98ff, 0x00b4553e, 0xb20c3a98, 0x7efd0c2b, 0xb300b676, 0x017000ad,
0x98012290, 0x2aa6033a, 0xff3708f5, 0x6eb264b2, 0xd43db43d, 0xc4bdf4bd, 0x00b4973e, 0x9473e97f,
0x010d0a00, 0x00b4913e, 0x0600d033, 0xcc90010b, 0x01ff9001, 0xa602ee90, 0xe308f4fa, 0x0b00c4b3,
0x3e547cb5, 0x3300b5d3, 0x00a600b9, 0xb0013998, 0x0cf40296, 0xb2030930, 0x5479b56d, 0xf4bde4bd,
0x00b4d63e, 0x9073d97f, 0x697c0a00, 0x01ee90e9, 0x9001ff90, 0x399802dd, 0xf4f9a603, 0x4d3ee908,
0x94bd00b5, 0x79b5f101, 0xb224bd54, 0xb5273e1b, 0xe4407f00, 0xf4ffff09, 0xf10f260b, 0x1bf4bfa6,
0xff0be40b, 0xb51f3eff, 0x0c3a9800, 0xffff0ce4, 0x00b6767e, 0xb900adb3, 0xff0be400, 0x9019b2ff,
0x44900122, 0x9891b202, 0x29a60339, 0x09c508f4, 0xf5b9a6f1, 0x9800a00b, 0x3c980c3a, 0xb6767e0a,
0x00adb300, 0x31b5008c, 0xb5d33e0a, 0xbd6f7f00, 0x01c19294, 0xf05179b5, 0x04bd00f3, 0x3e527fb5,
0x7f00b58b, 0x014c584b, 0x900c3a98, 0xb3f00100, 0x00c3f000, 0x7e024490, 0xb300b676, 0xb45200a4,
0xe9980be0, 0x70999001, 0xa601e9b5, 0xd608f401, 0x9808607c, 0xf00c0c3a, 0xffff0be4, 0x00b6767e,
0x2d00a4b3, 0xe4014cfe, 0xb2ffff0b, 0x40cc903a, 0x00a5797e, 0x1900a4b3, 0x98469034, 0x94f0517f,
0xf0f9bcff, 0x3e517fb5, 0x0a00b5d3, 0x3ea5b203, 0x9000b5de, 0x77900188, 0x148db318, 0x49fefd90,
0x3c999001, 0x497e9abf, 0xf43e00b7, 0x030500b5, 0x00b5f63e, 0x0bb204bd, 0x0c7e3ab2, 0x50b300a6,
0x3a981a00, 0x7e04bd0c, 0x9800b6c8, 0x30b50d3a, 0xb7497e0c, 0x0d30b500, 0x900149fe, 0x9fbf5099,
0x0005dcd9, 0xb299bf00, 0xf4f9a65a, 0x383e110b, 0x010500b6, 0x00b5f43e, 0x003a317e, 0xf93085fb,
0x7ea0b202, 0x9800a5e8, 0xc87e0c0a, 0x0a9800b6, 0xb7497e0d, 0x7e0ab200, 0xbd00b749, 0xbf01fba4,
0x0aafb2a9, 0xf4b9a602, 0xb9900d18, 0x98f9bc01, 0xc9a0a4bd, 0xa9bf00f8, 0x020aafb2, 0x18f4b9a6,
0x01b9900b, 0xfcbca4bd, 0xbf00f899, 0xb2afb2b9, 0xf4c9a6ca, 0xf10a0708, 0xfbb500f8, 0xb5fca002,
0x00f801fc, 0xaf98a9bf, 0x90b9bc02, 0xfbbfa9a0, 0x08f49ba6, 0x029bbb08, 0xa998a9a0, 0xa6aabf01,
0x051bf4a9, 0x00f8f10a, 0x0800a0b3, 0x00b7497e, 0x30f400f8, 0x05dcdff8, 0x32f90000, 0x49feffbf,
0x14999001, 0x9fa0a0b2, 0xa0b3b3b2, 0xfd024200, 0x0cf4a2a6, 0x01ab903a, 0xb60141fe, 0x119002b4,
0x7e1ab210, 0xb300b7b5, 0xbf2700a4, 0xb21db219, 0xa0e4bd2c, 0x90dfbf90, 0x9eb201e9, 0xa699fcbc,
0xf408f490, 0x3da0ddbf, 0x00b72e3e, 0x49fe020a, 0x14999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699,
0x317e070b, 0x35fb003a, 0xda00f808, 0x00002944, 0x0041c77e, 0xf000a630, 0xa6f00bac, 0x01aab901,
0x44da00f8, 0x7e000029, 0x30004142, 0xacf000a6, 0x01a6f00b, 0xf801aab9, 0x2944da00, 0xd77e0000,
0xa6300042, 0x0bacf000, 0xb901a6f0, 0x00f801aa, 0x7effb4f0, 0xf8000b94, 0x0b7e7e00, 0xf900f800,
0x3da0b202, 0x384c7ea4, 0x00a6b000, 0xa00b9cf0, 0xfb9ab20a, 0xb202f901, 0x7ea43da0, 0xb000382a,
0x9cf000a6, 0xb20aa00b, 0xf401fb9a, 0xdcdfe430, 0xf9000005, 0xfeffbf82, 0x45fe0149, 0x3c999001,
0xa00147fe, 0x2455909f, 0xd9347790, 0x0000141c, 0x4bfe9abf, 0x90080c01, 0xff0d2cbb, 0x0000c17e,
0xeb00a433, 0x3f0c30b4, 0x0c943339, 0x043118e2, 0x0f001033, 0xb0011933, 0x3e043d00, 0x9800b971,
0x2cd9023f, 0x98000014, 0x34580431, 0x3f5fa00a, 0x0339989f, 0xb5183690, 0xff090159, 0xf43379a0,
0xf77e1800, 0xa0320032, 0x2900ad33, 0xdf010901, 0x0000142c, 0x1272f920, 0xbd0043f0, 0xb8b13e14,
0x0241bc00, 0x010006b1, 0x40060df4, 0x947e0100, 0x24d9000b, 0xbf000014, 0xff2ce49a, 0xb26bb2ff,
0x1300de0d, 0x127e0000, 0x7aa000af, 0xd400adb3, 0x985bbf00, 0x1d90015c, 0x7c0eb204, 0x10bc2020,
0x1300da10, 0x367e0000, 0xa0320021, 0xc500ad33, 0x4cb4bd00, 0x00da0100, 0xa6000013, 0xa408f414,
0x00b9603e, 0xd9023f98, 0x0000142c, 0x58043498, 0x5fa00a32, 0x39989f3f, 0x18389003, 0x090159b5,
0x3379a0ff, 0x7e1600f4, 0x320032f7, 0x00ad33a0, 0x2cdf0084, 0x20000014, 0xff26e4f1, 0x3e24bdff,
0xbc00b951, 0x16b11262, 0x0df40100, 0x01004106, 0x000b947e, 0x5c985bbf, 0x042d9001, 0x00da1eb2,
0x7e000013, 0xe40020d0, 0xbcffff4c, 0xa0322021, 0x1db28bb2, 0x001300de, 0x40417c00, 0x3500a433,
0x001424d9, 0x7e9abf00, 0xa000ac3c, 0x00a4b37a, 0x4cb4bd13, 0x00da0100, 0xa6000013, 0xa608f426,
0x5c985bbf, 0xbd7ab201, 0x7e040ed4, 0x32002136, 0x2db034a0, 0x817e3ab2, 0x0d33000f, 0x30fe7100,
0x020f3a01, 0x1838f130, 0x04090333, 0x30014afe, 0x31303991, 0x90b4bd3b, 0x717e38aa, 0xeb3e000f,
0x02f900b7, 0x002930d9, 0xbfa0b200, 0x7e640b9a, 0x090000de, 0x00a43310, 0xa6008961, 0x009fcf02,
0x1000f5f1, 0x8a009ff6, 0x4b02a600, 0xc4bd1000, 0xbd27104d, 0x198b7ee4, 0x00a43300, 0x2930d915,
0x9abf0000, 0x00009b7e, 0x163e0409, 0x0ab200ba, 0x7e03e84b, 0x890016fc, 0xb802a400, 0x000200aa,
0x920aa5b6, 0x9af601aa, 0x01114f00, 0x020099b8, 0x009ff600, 0x9a32943d, 0x000001fb, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -1570,11 +1570,11 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x00000000, 0x00000001, 0x0000000e, 0x00000000, 0x08000000, 0x08400000, 0x08800000, 0x08c300a7,
0x09000000, 0x09400000, 0x09800000, 0x09c00000, 0x0a01c000, 0x0a404038, 0x0a804040, 0x0ac04048,
0x0b004050, 0x0b420058, 0x0b8201ab, 0x11800000, 0x11c00000, 0x12000000, 0x12400000, 0x12800000,
0x12c00000, 0x00000001, 0x00001c08, 0x00101c09, 0x00201c0a, 0x0000bd08, 0x00209d09, 0x00309d0a,
0x00011f08, 0x00113e09, 0x00311e0a, 0x00010309, 0x00000000, 0x0000ffff, 0x00003b00, 0x46020f1f,
0x43010f1f, 0x44020f1f, 0x45020f1f, 0x601207ef, 0x601307ef, 0x601407ef, 0x601507ef, 0x801607ef,
0x253207c2, 0x25330fc2, 0x25340fc2, 0x25350fc2, 0x1152079d, 0x1253079d, 0x7014079d, 0x7015079d,
0x601203c8, 0x601307c8, 0x601407c8, 0xbb150720, 0x02172701, 0x00000000, 0x00000000, 0x00000000,
0x12c00000, 0x00000000, 0x00000000, 0x00000001, 0x00001c08, 0x00101c09, 0x00201c0a, 0x0000bd08,
0x00209d09, 0x00309d0a, 0x00011f08, 0x00113e09, 0x00311e0a, 0x00010309, 0x00000000, 0x0000ffff,
0x00003b00, 0x46020f1f, 0x43010f1f, 0x44020f1f, 0x45020f1f, 0x601207ef, 0x601307ef, 0x601407ef,
0x601507ef, 0x801607ef, 0x253207c2, 0x25330fc2, 0x25340fc2, 0x25350fc2, 0x1152079d, 0x1253079d,
0x7014079d, 0x7015079d, 0x601203c8, 0x601307c8, 0x601407c8, 0xbb150720, 0x02172701, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -2269,8 +2269,8 @@ const NvU32 soe_ucode_data_lr10_dbg[] = {
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xb32dc4cc, 0x58018cca, 0x7c52cad0, 0x4a5277fe, 0x1289f13d, 0xdc6acca2, 0x50be285c, 0xd086f67e,
0x705ea2e7, 0x0577e70f, 0xcf75f41f, 0xfe6e071a, 0xc901a2e3, 0xd0a96e16, 0x4a0da134, 0xc2405c59,
0xf0cc97fc, 0xc5e27e17, 0x63cc4ffc, 0xc48564fa, 0x979b9cb7, 0x7359186e, 0x8b211603, 0x878da8fe,
0x956b7a40, 0x90bcaaf7, 0xdea25edb, 0x9aaef423, 0x269562e0, 0x626d8a06, 0xc3df044b, 0x11ecee8e,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,

View File

@@ -116,8 +116,8 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x99bf000f, 0xf70fa3b2, 0x550094b3, 0x4b00a0b3, 0x0005987e, 0x000f9881, 0x000f8c82, 0x2abf10bf,
0x900030bc, 0x517e10aa, 0x29bf000c, 0xbf0490b5, 0xf409a619, 0x78890b18, 0x423e0010, 0x7c89000a,
0x9abf0010, 0xbb902bbf, 0x0c0f7e10, 0x092e7e00, 0xb3010f00, 0x7e0a00a4, 0x0f00000e, 0xfbfab201,
0x00a0b331, 0x03a99811, 0x99b9afbf, 0xf0f9a600, 0x00f80bac, 0xf41032f4, 0x548f1132, 0xf9bf0005,
0xa0019990, 0xf800f8f9, 0x10107e00, 0x7e00f800, 0xf8001842, 0x184a7e00, 0x8f00f800, 0xbf000554,
0x00a0b331, 0x03a99811, 0x99b9afbf, 0xf0f9a600, 0x00f80bac, 0xf41032f4, 0x5c8f1132, 0xf9bf0005,
0xa0019990, 0xf800f8f9, 0x10107e00, 0x7e00f800, 0xf8001842, 0x184a7e00, 0x8f00f800, 0xbf00055c,
0x0094b3f9, 0x1032f41a, 0xbd1132f4, 0x7eee0ba4, 0xf4000a95, 0x31f41031, 0xbf00f811, 0x019992f9,
0xf9bff9a0, 0x0a0094b3, 0xf41031f4, 0x00f81131, 0x0038a77e, 0xc9fe00f8, 0x1495b601, 0x3c089033,
0xf4089630, 0x9033130c, 0x90332002, 0x90333403, 0x1c3e1800, 0x9033000b, 0x9033280f, 0x94331810,
@@ -179,7 +179,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x0a747eb1, 0xfe0ab200, 0x00900140, 0x7e0bb208, 0xbf000012, 0x18f43d00, 0x163e1d0d, 0xe9180012,
0x01ff1020, 0x2620ee90, 0x0d1bf491, 0x0100943d, 0x233ee920, 0xf9c40012, 0xe009bcff, 0x08f4fd26,
0x7e043de0, 0x32000a9b, 0x0415fb0a, 0x0011d87e, 0x0600a433, 0x00f802f8, 0xa4f082f9, 0x31008fff,
0x31188e00, 0x58fa7c00, 0xb298ea3c, 0xbdc632b7, 0xff94f034, 0x00055888, 0x8120597c, 0x3e001104,
0x31188e00, 0x58fa7c00, 0xb298ea3c, 0xbdc632b7, 0xff94f034, 0x00056088, 0x8120597c, 0x3e001104,
0x52001354, 0x29e40122, 0x9494ffff, 0x034ffe08, 0xb31ff995, 0xd0100190, 0x03000000, 0xf594f0ff,
0xbf00d51b, 0x01008e89, 0x089f9500, 0xfffff9e4, 0x18f59ea6, 0x99900010, 0x0894b601, 0x473e89a0,
0x1f580013, 0x02195801, 0x1bf4f966, 0x000b4945, 0x000093f1, 0x0031248f, 0x18909fbc, 0x19180190,
@@ -208,7 +208,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x0c004d81, 0xcf0b004c, 0xcecf00df, 0x00d9cf00, 0x1bf4f9a6, 0xb5aea0f5, 0x00f801af, 0xcf0b0049,
0xaabf0099, 0xf8a29abc, 0xb242f900, 0xb2b3b2a0, 0x00c0b3c1, 0x0b004929, 0xb20092cf, 0x0000b394,
0xf93ab212, 0x00a03305, 0x3e010a0a, 0xcf0015e8, 0x92bb0049, 0xf491a602, 0x04b3e608, 0xa43d0a00,
0x0015e83e, 0x05f93ab2, 0x000041fb, 0xd24e0041, 0x00000554, 0x90fc00f8, 0x0015ea7e, 0xf90188fe,
0x0015e83e, 0x05f93ab2, 0x000041fb, 0xd24e0041, 0x0000055c, 0x90fc00f8, 0x0015ea7e, 0xf90188fe,
0x00289880, 0x8cd880f9, 0x9800000f, 0x47fe0088, 0xbd87a001, 0x0387b570, 0xfe0010f7, 0xb7b600a4,
0x1fb9f002, 0xf9001bf7, 0x7e00f890, 0x3e0015ea, 0xf9001647, 0x3550daf2, 0x50db0000, 0x7e000033,
0x7e0015f6, 0xf7000b68, 0x8cd80010, 0x9800000f, 0x87980088, 0x0074fe00, 0xb6028798, 0x79f00277,
@@ -349,7 +349,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0xf9cf01c0, 0x4c99c700, 0x220090b3, 0xf60190b3, 0x223e02f8, 0xf9cf0027, 0x4c99c700, 0x390090b3,
0xf60190b3, 0x363e02f8, 0xa48f0027, 0x008901ad, 0x9ff601c1, 0xb8f4bd00, 0x00010099, 0xdf009ff6,
0x800000f2, 0x020099b8, 0x009ff602, 0xb2009fcf, 0x27363e9f, 0xe400f800, 0xc7ff00bf, 0xaeb2f0b9,
0xdfd59fff, 0x0000055c, 0x0027ab3e, 0x1bf49b26, 0x01f9581a, 0x1bf49d66, 0x3df97f12, 0x08e975a4,
0xdfd59fff, 0x00000564, 0x0027ab3e, 0x1bf49b26, 0x01f9581a, 0x1bf49d66, 0x3df97f12, 0x08e975a4,
0x7501ff58, 0x00f809ef, 0x3f04ff90, 0x009433f9, 0xf8010adf, 0x0aa9b200, 0x00b0b302, 0x3db92008,
0xf900f8a4, 0xb3a0b202, 0x986500a0, 0x90b305a9, 0x0cd95e00, 0xbf000014, 0xe8aab89a, 0x277e0004,
0xa9e7001a, 0x9ab30168, 0xb34c0fff, 0xb6470090, 0xaab314a5, 0xb3400fff, 0x983b00a0, 0x94b6050e,
@@ -443,19 +443,19 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x0032b13e, 0xb53e3505, 0x02050032, 0x0032b53e, 0x003a317e, 0xf42885fb, 0xdcdff430, 0xf9000005,
0xfeffbf22, 0x99900149, 0x0142fe14, 0x94bd9fa0, 0xa00c2290, 0x3da37e29, 0x00a03300, 0xda040b56,
0x00002944, 0x2db2bcb2, 0x0042d77e, 0xa433a032, 0x41fe4300, 0x10119001, 0x8e7e1ab2, 0xa0320033,
0x3100a433, 0x2bbf1cbf, 0x24d1a4bd, 0x7e000014, 0xa000b06c, 0x00a0b31a, 0x7eb43d1a, 0xb300b104,
0xbf1200a0, 0x7eff001a, 0x3e00b63e, 0x00003371, 0x0149feff, 0xbf149990, 0x05dcd99f, 0x99bf0000,
0x3100a433, 0x2bbf1cbf, 0x24d1a4bd, 0x7e000014, 0xa000b06d, 0x00a0b31a, 0x7eb43d1a, 0xb300b105,
0xbf1200a0, 0x7eff001a, 0x3e00b63f, 0x00003371, 0x0149feff, 0xbf149990, 0x05dcd99f, 0x99bf0000,
0xf9a60a32, 0x7e070bf4, 0xfb003a31, 0x0e090c25, 0xa43da9a0, 0x30f400f8, 0x05dcdfd8, 0x62f90000,
0x30f4ffbf, 0x0149fef4, 0xa04c9990, 0xb2a93f9f, 0x01a398a6, 0x0d019033, 0x60489d33, 0x35a33e03,
0x04301800, 0x1b010d33, 0x03329801, 0x3d043198, 0x10dc4ba4, 0xd501004c, 0x00000644, 0x0038327e,
0xa4b35aa0, 0x02f80c00, 0x1a3e0501, 0x49fe0037, 0x28999001, 0x00299cd4, 0xb51cb200, 0x91b50741,
0x352bb201, 0x42b51540, 0xbd92a006, 0x10dc4ed4, 0x0020d07e, 0xad33a132, 0xbf015900, 0x33993f59,
0x980d0090, 0x95f00149, 0x0149b508, 0x000644d9, 0x1899bf00, 0x90336999, 0x9cdf1300, 0x98000029,
0x95f101f9, 0xf9b54000, 0x299cda01, 0x027e0000, 0x3098009c, 0x01027e02, 0x8aa3d900, 0xacb20000,
0x95f101f9, 0xf9b54000, 0x299cda01, 0x037e0000, 0x3098009c, 0x01027e02, 0x8aa3d900, 0xacb20000,
0xb20091b0, 0xbdb4bd0d, 0x2e70da04, 0x01b00000, 0x08013001, 0xc87e010e, 0x9cd90013, 0xdf000029,
0x1e000000, 0xfe509035, 0x99900149, 0x0142fe34, 0x22909fa0, 0xb2010a38, 0x94ee7e2b, 0x1fa43300,
0xc42bbf1b, 0x1bf401b9, 0x01b5f014, 0x2ba0010a, 0x0095097e, 0x061fa033, 0xb4bd09f8, 0x097e020a,
0x9cda0095, 0x7e000029, 0xfe009ab1, 0xb4bd014a, 0x010dc4bd, 0x7e34aa90, 0x3e0075b0, 0x33003574,
0x1e000000, 0xfe509035, 0x99900149, 0x0142fe34, 0x22909fa0, 0xb2010a38, 0x94ef7e2b, 0x1fa43300,
0xc42bbf1b, 0x1bf401b9, 0x01b5f014, 0x2ba0010a, 0x00950a7e, 0x061fa033, 0xb4bd09f8, 0x0a7e020a,
0x9cda0095, 0x7e000029, 0xfe009ab2, 0xb4bd014a, 0x010dc4bd, 0x7e34aa90, 0x3e0075b0, 0x33003574,
0xd9320204, 0x00000644, 0xa0b39abf, 0xb4d97f00, 0x98000029, 0x9bbf019c, 0x9cd9f43d, 0xbd000029,
0x159f35d4, 0x7e10dc4e, 0x320020d0, 0x356f3ea1, 0x030d3300, 0x0e7e0207, 0x39180001, 0x00903308,
0x033e9824, 0x002a3cd9, 0x2a44df00, 0x9ea00000, 0xb5043e98, 0x3998019e, 0x98f9a005, 0xfeb5063e,
@@ -463,8 +463,8 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0xf9b5059d, 0x01087e2e, 0x3e143d00, 0x33003574, 0x01ab001d, 0xb2016b18, 0x0f817e3a, 0xfe020900,
0xff90014f, 0x3df92048, 0x02f93594, 0x09033318, 0xb2b4bd04, 0x03f335fa, 0x7e01f935, 0x3e000f71,
0xfe00371a, 0x41fe0140, 0x44009001, 0xfe401190, 0x0ab20142, 0xb23c2290, 0x3d2cb21b, 0x75b07ed4,
0x02399800, 0x010a0fbf, 0x1bf4f9a6, 0x0524de3c, 0xe93f0000, 0x0e009033, 0x1e0a943d, 0x063ee920,
0xffd90036, 0xff200000, 0x94b394f9, 0x0ab2121c, 0x2cb21bb2, 0x0098b87e, 0x0036063e, 0x1bb20ab2,
0x02399800, 0x010a0fbf, 0x1bf4f9a6, 0x052cde3c, 0xe93f0000, 0x0e009033, 0x1e0a943d, 0x063ee920,
0xffd90036, 0xff200000, 0x94b394f9, 0x0ab2121c, 0x2cb21bb2, 0x0098b97e, 0x0036063e, 0x1bb20ab2,
0x3e7e2cb2, 0x4bfe008d, 0x44bb9001, 0xa9c4bebf, 0xffffdf1f, 0x94b6e0ff, 0x04effd18, 0xa0e59eff,
0x0000d9be, 0xe9ff4000, 0x6b0bf494, 0x681fa433, 0x900149fe, 0x9dbf4099, 0xbf049992, 0x1ee4339c,
0x0003df42, 0xff89ff00, 0xefff3fff, 0x94d9fff4, 0xff0294b6, 0xc0b3e5f9, 0xe9c50b00, 0x36703e03,
@@ -569,7 +569,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x328908f4, 0xfbfa324f, 0xbf02f971, 0xbcb0b2b9, 0xb9a6b0c9, 0xe41708f4, 0xbcffffd9, 0xfba6f09b,
0x980b08f4, 0xf9a60109, 0xf8050df4, 0xb2dc7202, 0x28d77eed, 0xb201fb00, 0x05ab98b9, 0xdeb2cfb2,
0xfd729cb2, 0x0042a97e, 0xf0fc00f8, 0xf9fc30f4, 0xbf62f9f0, 0x08e1b0b9, 0xd4b2a5b2, 0xa630c9bc,
0x1d08f439, 0xa6f0d3bc, 0x1508f4f3, 0xa601b998, 0x0d0cf4f9, 0x24bd0101, 0x763efc06, 0x02f80043,
0x1d08f439, 0xa6f0d3bc, 0x1508f4f3, 0xa601b998, 0x0d0cf4f9, 0x010124bd, 0x763efc06, 0x02f80043,
0x853e0101, 0x42bc0043, 0x0096b192, 0x060df401, 0x90010049, 0x96ff0399, 0x0b947e04, 0xb23bb200,
0xdd0c725a, 0x00001200, 0x7e3030bc, 0x320028d7, 0x00a433a1, 0x08b0b434, 0xb209c0b4, 0x1200da2d,
0x20bc0000, 0x01004e20, 0x0021367e, 0x0a00a033, 0x853e02f8, 0x00da0043, 0xbd000012, 0x01004cb4,
@@ -646,7 +646,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x01b024a1, 0x08113001, 0x300c1130, 0x050d1c01, 0xda00c04e, 0x000005d0, 0x005d0a7e, 0x001404da,
0x0c040b00, 0x59377e08, 0x00ad3300, 0x4d4c00f6, 0x00c3f171, 0x00d8db00, 0xa1300000, 0x00a13028,
0x3010a130, 0xa13014a1, 0x20a13018, 0xb024a130, 0x11300101, 0x0c113008, 0x0d1c0130, 0x00804e09,
0x0005d4da, 0x5d0a7e00, 0x1428da00, 0x040b0000, 0x377e080c, 0xad330059, 0x4c00a900, 0xc3f1b7ca,
0x0005d4da, 0x5d0a7e00, 0x1428da00, 0x040b0000, 0x377e080c, 0xad330059, 0x4c00a900, 0xc3f1b7cb,
0xb4db0000, 0x30000000, 0xa13028a1, 0x10a13000, 0x3014a130, 0xa13018a1, 0x24a13020, 0x300c1130,
0x01b01c01, 0x08113001, 0xc04e0a0d, 0x05d8da00, 0x0a7e0000, 0x1cda005d, 0x0b000014, 0x7e080c04,
0x33005937, 0x7e5c00a4, 0x7e005c97, 0x7e004db4, 0x7e005931, 0x7e000a74, 0x7e003cf7, 0x7e005249,
@@ -662,7 +662,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x3d071bf4, 0xc700f8a4, 0x96b024f9, 0x0b9cf002, 0x00f89a32, 0x0089050f, 0x9ff60180, 0xb8060f00,
0x00010099, 0xf8009ff6, 0x02008900, 0x0099cf01, 0x1000008f, 0xf4049ffd, 0x34da181b, 0x7e008204,
0xf0001a27, 0x1bf401a4, 0x0a02f809, 0x3d00f824, 0xd900f8a4, 0x00001430, 0x34da99bf, 0x98000014,
0x95f90e99, 0x1e0a00f8, 0x00b9a17e, 0x0600a033, 0x00f802f8, 0x0100008f, 0xf6590049, 0x00f8009f,
0x95f90e99, 0x1e0a00f8, 0x00b9a27e, 0x0600a033, 0x00f802f8, 0x0100008f, 0xf6590049, 0x00f8009f,
0x00900089, 0xf00099ce, 0x0bf40194, 0xf1008e20, 0x00e9ce00, 0x9ffdef0f, 0x00e9f704, 0x5200eeb8,
0x00e9ce02, 0xf7049ffd, 0x00f800e9, 0x7e0a004a, 0xe7001a27, 0xb30114aa, 0x4f1e06a4, 0xf9cf4f00,
0xe899c700, 0x110f94b3, 0xf000f9cf, 0x9cf0ff94, 0xf89a320b, 0xf8a43d00, 0x8902f900, 0xce009000,
@@ -751,7 +751,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x00f0b305, 0x0a09584a, 0x90014afe, 0xafb508aa, 0x010f9801, 0xb60093f0, 0xa9b50294, 0x02afb503,
0xb2100918, 0x18a9351b, 0xb5020f98, 0x099804af, 0x05a9b503, 0xa0a000bf, 0x005b0b7e, 0xf001a6b0,
0x9a120b9c, 0x59ab3e01, 0xfb020a00, 0xe27e1c15, 0x943d0059, 0xf001a6b0, 0xa6f00bac, 0xa29a3c01,
0x4c8900f8, 0x9ebf0005, 0xb5019f98, 0x9ea0019f, 0x005a267e, 0x0801a4b3, 0x00f8a43d, 0xff0a09f8,
0x548900f8, 0x9ebf0005, 0xb5019f98, 0x9ea0019f, 0x005a267e, 0x0801a4b3, 0x00f8a43d, 0xff0a09f8,
0x12f900f8, 0x000f8c89, 0xf20a99bf, 0x380090b3, 0x000fa881, 0xf10a10bf, 0x2c0004b3, 0x000a747e,
0x19a00109, 0x000f9889, 0x948990a0, 0xff0f0010, 0x90899fa0, 0x90a0000f, 0x000f9489, 0x587e9fa0,
0x10a00037, 0x12f911fb, 0x000f8c89, 0xb4bd04bd, 0xb44c90a0, 0x0fac8a00, 0x0b947e00, 0x0cb4bd00,
@@ -859,7 +859,7 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x4c99c700, 0x6a0090b3, 0xf60190b3, 0xde3e02f8, 0xf9cf0066, 0x4c99c700, 0x3a0090b3, 0xf60190b3,
0xf23e02f8, 0x00d90066, 0xbf000014, 0x014bfe9a, 0xbb90080c, 0x006e7e14, 0x0149fe00, 0xbf1c9990,
0x05dcd99f, 0x99bf0000, 0x0bf5f9a6, 0xe03e00ba, 0x00890067, 0x99cf01c2, 0x0608de00, 0x9fc70000,
0x1899c710, 0x3515ef35, 0x063e14e9, 0xff900067, 0xc1008960, 0x009ff601, 0x0000f1df, 0x0099b880,
0x1899c710, 0x3516ef35, 0x063e15e9, 0xff900067, 0xc1008960, 0x009ff601, 0x0000f1df, 0x0099b880,
0x9ff70201, 0x009fcf00, 0xf23e9fb2, 0x00890066, 0x99cf01c2, 0x009fe400, 0xff94f120, 0x00fdb33f,
0xc13eff40, 0x448f0066, 0x0089066f, 0x9ff601c1, 0x00f1df00, 0x99b88000, 0xf7020100, 0x9fcf009f,
0x3e9fb200, 0x890066a8, 0xcf01c200, 0x9fe40099, 0x94f12000, 0xfdb33fff, 0x3efec700, 0x8f006681,
@@ -1157,371 +1157,371 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x0a3299bf, 0x0bf4f9a6, 0x3a317e07, 0x2875fb00, 0x00299cd9, 0x15991800, 0xbeb2adb2, 0x0a009033,
0x008b707e, 0x44d900f8, 0xbf000006, 0xb2cab29b, 0xb0bdbcec, 0x000b7e7e, 0x00f81f0a, 0xdff430f4,
0x000005dc, 0xffbf32f9, 0x900149fe, 0xa2b21899, 0xa9bf9fa0, 0xb39899c7, 0x00aa1d99, 0x00299cd9,
0x02999800, 0xb34299c7, 0x009a0099, 0x0a0140fe, 0x14009001, 0xee7e0bb2, 0xa4330094, 0x4bfe551f,
0x90020a01, 0xee7e10bb, 0xa4330094, 0x09bf451f, 0x04bd0103, 0xbc1493ff, 0x94f09530, 0x121bf401,
0x0f0204b3, 0x009a447e, 0x0700a033, 0x900415f0, 0x04b30100, 0x49fee509, 0x14999001, 0x19a699bf,
0x0a150bf4, 0x7e1bb201, 0x33009509, 0xf80a1fa0, 0x8d233e09, 0xfe2ebf00, 0x99900149, 0xdf99bf10,
0x02999800, 0xb34299c7, 0x009a0099, 0x0a0140fe, 0x14009001, 0xef7e0bb2, 0xa4330094, 0x4bfe551f,
0x90020a01, 0xef7e10bb, 0xa4330094, 0x09bf451f, 0x04bd0103, 0xbc1493ff, 0x94f09530, 0x121bf401,
0x0f0204b3, 0x009a457e, 0x0700a033, 0x900415f0, 0x04b30100, 0x49fee50a, 0x14999001, 0x19a699bf,
0x0a150bf4, 0x7e1bb201, 0x3300950a, 0xf80a1fa0, 0x8d233e09, 0xfe2ebf00, 0x99900149, 0xdf99bf10,
0xbfffffff, 0xeffd1f0a, 0x0099b904, 0xf09419ff, 0x96f00b9c, 0x1e94b601, 0xa0059efd, 0x8d233e29,
0xfe1f0a00, 0x99900149, 0xd99fbf18, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40c35,
0x05dcdfe4, 0x52f90000, 0x49feffbf, 0x30999001, 0x9fa0a3b2, 0xc5b2afbf, 0xfdc7b4b2, 0x00ddb31d,
0xfa95075c, 0x10f99508, 0xa132f032, 0xf9339232, 0x3000d515, 0x0cf415f6, 0x05f93346, 0xf63005fb,
0x1c0cf405, 0x8701f933, 0x301f0a00, 0x08f501f6, 0xf6300739, 0x240cf503, 0x8e283e07, 0x10f93300,
0xf630041a, 0x0e0cf410, 0xf50df630, 0x3e070e08, 0x33009155, 0x070611fd, 0x00915f3e, 0x421df933,
0x1df63006, 0x33250cf4, 0x03fa18f9, 0xf418f630, 0xfd330c0c, 0x3e06e717, 0x33009408, 0x01001af9,
0xd91cfd33, 0x94c53e06, 0x21f93300, 0xf6300262, 0x0c0cf421, 0xc51efd33, 0x8ecd3e06, 0x24f93300,
0xfd330639, 0x3e06b725, 0xdf009499, 0x0000299c, 0x2614f918, 0x0d18f4a9, 0xbcffa9c4, 0x6e3e98f9,
0xbda00093, 0x0094303e, 0x1d33080a, 0x7e069d00, 0x330063f7, 0x490a0300, 0xa9fdff00, 0x3e4aa004,
0x0a009430, 0x04163003, 0x067f0cf5, 0x00299cd9, 0x0e99bf00, 0xbc080a01, 0x99c7f4e1, 0x049ffd98,
0x06670bf5, 0x0e021033, 0x10041033, 0x843eea32, 0xeab2008e, 0x008e7a3e, 0x4bfea4bd, 0x2cbb9001,
0x0063b47e, 0x008a847e, 0x3f1fad33, 0x0149fe06, 0xbf2c9990, 0x1fe9959e, 0x0a0190b3, 0xa73ed4bd,
0x00dd008e, 0xc4ff0000, 0x943380e9, 0xf4bd0a00, 0x008ebe3e, 0xe6b0010f, 0x051ff400, 0xe995ff0f,
0x95d9ff08, 0xa090f9bc, 0x94c73e49, 0xb29b3200, 0x7e5db24c, 0x3e0077ca, 0x330094c7, 0x305507a0,
0x0cf407a6, 0x299cd912, 0xa6300000, 0x2b0df402, 0x008f243e, 0xf40ca630, 0x9cd9120c, 0x30000029,
0x18f409a6, 0x8f473e57, 0x0da03300, 0x33030a61, 0x05b80e1d, 0x008f7a3e, 0xdf019998, 0x04000000,
0x008f603e, 0xdf019998, 0x08000000, 0x008f603e, 0x00299cd9, 0x02999800, 0x0200008f, 0xf5049ffd,
0x3e00c61b, 0x98009045, 0x008f0299, 0x9ffd0400, 0xc41bf504, 0x90453e00, 0x02999800, 0x0100008f,
0xf4049ffd, 0x453e2f1b, 0x9cd90090, 0x8f000029, 0x98400000, 0x873e0299, 0x9cd9008f, 0x98000029,
0x00df0299, 0xfd008000, 0x1bf5049f, 0x453e00a9, 0x10330090, 0x16307307, 0x1a0cf407, 0x4b021033,
0xf4021630, 0x1033540c, 0x1d332700, 0x3e048601, 0x30008fd7, 0x0cf40c16, 0x0916300d, 0x3e6518f4,
0x30009015, 0x0df40e16, 0x94303e6d, 0x7e4ab200, 0x3e00789f, 0x320094c7, 0xb22b321a, 0x7e5db24c,
0x3e007cca, 0x320094c7, 0xb22b321a, 0x7e5db24c, 0x3e007c3b, 0x320094c7, 0xb22b321a, 0x7e467e4c,
0x94c73e00, 0xb22b3200, 0x0a5db24c, 0x7ba27e07, 0x94c73e00, 0x32080a00, 0xb24cb22b, 0x7b037e5d,
0x321a3200, 0xb23cb22b, 0x7e5eb24d, 0x3e007ed3, 0x320094c7, 0xb22b321a, 0xb24db23c, 0x78a77e5e,
0x94c73e00, 0x3e080a00, 0x0a0094c7, 0x009d3304, 0x9cd9047a, 0x98000029, 0x080a0299, 0x400094f1,
0x04670bf5, 0xfe0149fe, 0x99900142, 0x1822902c, 0x2da09da0, 0xa0049992, 0x0499929d, 0x99929da0,
0x929da004, 0x9da00499, 0x85011933, 0x01163000, 0x0a0e08f4, 0x021d3303, 0x213e0432, 0x41fe0091,
0x0140fe01, 0x902c1190, 0x1ab22800, 0x607e0bb2, 0x19bf0075, 0x43fe00bf, 0x0142fe01, 0x900794f0,
0x22902433, 0xfe3ab220, 0x2bb20141, 0xf01c1190, 0x1cb20704, 0xfd0404b6, 0x5c7e0509, 0x29bf006a,
0x1ebf3fbf, 0xb60141fe, 0xf4f00894, 0xff94f1ff, 0x10f4b6ff, 0x9018e4b6, 0x09fd1811, 0xfd1ab205,
0x0efd050f, 0x6a497e05, 0x91473e00, 0x7e2ab200, 0xb2006a39, 0x7e20bf2a, 0xbf006a29, 0x914d3e29,
0x0141fe00, 0xb2181190, 0x6a167e1a, 0xbf1ab200, 0x6a037e10, 0xb219bf00, 0xff04f11a, 0x1094b6ff,
0x7e0590ff, 0xbf0069f0, 0xff94f119, 0xa040a0ff, 0x94303e59, 0x7efab200, 0x3e0095f3, 0x330094c7,
0x330d00a0, 0x035c01ad, 0x0091ad3e, 0x9033b0bf, 0x94330c01, 0x9d3e2f02, 0x41fe0091, 0x90010a01,
0x1bb21811, 0x0094ee7e, 0x3f1fad33, 0x091fbf03, 0x9509fffe, 0xa0049fff, 0x91a13e10, 0xff04f100,
0xb22a3201, 0x95097e0b, 0x94c73e00, 0x7e9a3200, 0x3e0094ee, 0xb20094c7, 0x95227efa, 0x94c73e00,
0x299cd300, 0x39bf0000, 0x000000df, 0xfd080a20, 0x0bf5049f, 0x030a02f5, 0xef001d33, 0x0140fe02,
0x90014cfe, 0xcc902800, 0xfe0bb22c, 0x22900142, 0x7e2ab224, 0x7f007347, 0x03967009, 0x940b9cf0,
0x0e7e0791, 0x30180001, 0x01087e58, 0x00003300, 0x3e1fb20a, 0x7f00924c, 0x00a4732a, 0x3e19b20a,
0xc500924a, 0xa0734019, 0xa0731403, 0xa4731804, 0x9fe51c02, 0x4c3e0100, 0x9fe50092, 0x4c3e0200,
0x9fe50092, 0x4c3e0300, 0x9fb20092, 0x900149fe, 0x997f2c99, 0x88049973, 0x04967000, 0x731a0cf4,
0x70480190, 0x08f40196, 0x02907336, 0x039d734c, 0xce3e00e3, 0x99730092, 0x70009b07, 0x0cf40796,
0x05907310, 0x069d7369, 0x033e00cb, 0x99730093, 0x73009c08, 0x00bd099d, 0x0093383e, 0xfe07ff89,
0x3e04f9fd, 0x49009350, 0xf9ffc7ff, 0x0095f194, 0x92bf3e20, 0xc7ff4900, 0xf194f9ff, 0x8f180095,
0xfdfe3fff, 0x9fe5049f, 0x503e4000, 0xff490093, 0x94f9ffc7, 0x100095f1, 0x0092bf3e, 0xffc7ff49,
0x95f194f9, 0xf43e0800, 0xff490092, 0x94f9ffc7, 0x100095f1, 0xfe3fff8f, 0xe5049ffd, 0x3e80009f,
0x49009350, 0xf9ffc7ff, 0x0095f194, 0x931b3e08, 0xc7ff4900, 0xf194f9ff, 0x8f100095, 0xfdfe3fff,
0x9fe5049f, 0x503ec000, 0xff490093, 0x94f9ffc7, 0x080095f1, 0x0093423e, 0xffc7ff49, 0x95f194f9,
0xff8f1000, 0x9ffdfe3f, 0x00008f04, 0xf59fff01, 0x00299cd9, 0x50991800, 0x0f009033, 0x02000089,
0x3e95f9ff, 0x8900936e, 0xfffdffff, 0x49a094f9, 0x0094303e, 0xf514a630, 0xc401480c, 0xd0d9ffaf,
0xbc000004, 0x9cd9e89f, 0x0a000029, 0x3befc708, 0xc7989fbc, 0x9fbb96ef, 0x0194f005, 0x012b0bf5,
0xe7ff29c4, 0x54010def, 0x040a029b, 0x18f5bf66, 0xf3f00119, 0xffb9e400, 0xc2f9bcff, 0xf404c6b0,
0x040c090d, 0x0093ca3e, 0xbae44da0, 0xe9c4ffff, 0x42ebe703, 0x00943301, 0xb0babc12, 0x0029bcd9,
0x3e4ab200, 0xd90093f3, 0x00000644, 0xbabc99bf, 0xbc4ab2b0, 0x7e7eb09b, 0x303e000b, 0x9b320094,
0x009aca7e, 0x0094c73e, 0x0f00a033, 0x1d33080a, 0x3e00b101, 0xfe0094c7, 0x00900140, 0x7e0ab224,
0x3f0072fb, 0x00a54f09, 0x06009433, 0x4fa05a0f, 0xc73e1f0a, 0x9cd90094, 0x18000029, 0x99331599,
0x33008700, 0x303802a0, 0x0cf402a6, 0x00a0330f, 0x01a43318, 0x946f3e6e, 0x03a03300, 0x04a4332c,
0x948f3e62, 0x7e3ab200, 0x3e009d81, 0xb20094c7, 0x7ecbb2ba, 0x3e009ffb, 0x320094c7, 0x9d0a7e2a,
0x94c73e00, 0x7e2a3200, 0x3e00a211, 0x320094c7, 0xa1a57e2a, 0x94c73e00, 0x299cd900, 0x99180000,
0x00903315, 0x6cfbc724, 0x4db22c32, 0xa4f05eb2, 0x9eab7e0f, 0x94c73e00, 0x3e020a00, 0x0a0094c7,
0x94c73e03, 0xfe090a00, 0x99900149, 0xd99fbf30, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31,
0xa4f01c55, 0x02a4b6ff, 0x1f0acaa0, 0xaf3200f8, 0xf630040a, 0x120cf402, 0xd9fff4f0, 0x00002a5c,
0x0af89fbc, 0xf8bfa01f, 0x0aaf3200, 0x02f63004, 0xf0100cf4, 0x5cd9fff4, 0x0a00002a, 0xf99bbc1f,
0x12f900f8, 0xb210af95, 0x08ae95b1, 0x00299cd0, 0x26ff0900, 0x3d1bf4e9, 0x26490918, 0xb21bf5f9,
0x4a091800, 0x99331c0a, 0x3000ab01, 0x08f50196, 0x060a00a1, 0x9d029d33, 0x13099800, 0x1f0af43d,
0x0918b9a0, 0x4a0f3549, 0x35019910, 0xf13e4909, 0x09180095, 0x330a0a4a, 0xd97a0094, 0x00002a5c,
0xf4f099bf, 0xe899c7ff, 0xbc0694b6, 0xf6b0f0f9, 0x5e0cf43f, 0xe433030a, 0xf9905b0c, 0x4096b104,
0x4e0cf400, 0xdf02f994, 0x00002a68, 0x7f909fbc, 0x019a589f, 0xf473080d, 0x09981b02, 0xf0290d04,
0x90338094, 0x4b7e0f00, 0x01090075, 0x0935d43d, 0x299cdf50, 0xfe180000, 0xffd9c449, 0x0913f9b5,
0x4af93502, 0x0affe4f0, 0x3e1ea01c, 0x0a0095f1, 0xf911fb04, 0xb2adb222, 0xe8a0c7b2, 0x06b0bbbf,
0xcc0cf53f, 0xffbcc400, 0xb3ffaec4, 0x0a0d0fe4, 0x3fc6b005, 0x00bb0cf5, 0x002a5cd9, 0xc499bf00,
0x99c7ff9f, 0x06f194e8, 0xb30694b6, 0xb32c0ee0, 0x0a440fe0, 0x0dedb31f, 0x097c009a, 0xff967190,
0x8c0cf500, 0xff9fe400, 0x2a68d9ff, 0x9fbc0000, 0x3e2fa0f8, 0x7c00966d, 0x96719001, 0x0cf400ff,
0xff9fe46f, 0x2a68d9ff, 0x9bbc0000, 0x3e1f0af9, 0xbc0096cf, 0x050af0c9, 0x94f0d9c7, 0x999002fb,
0x029c9401, 0xb1e0cbbc, 0xf41000e6, 0x01bc440c, 0xb6030a90, 0xc9bc0294, 0x00f6b1f0, 0x320cf410,
0x08f49ba6, 0xf49ea608, 0xb9a62008, 0xa6080df4, 0x1608f4bf, 0x002a68df, 0xa09fbc00, 0x7eb0bfbc,
0x3e000b7e, 0x0a00966d, 0x96cf3e04, 0xfb030a00, 0xb1c9b221, 0xf40fffa6, 0x9abc2b0c, 0x0096b190,
0x210cf410, 0x002a68de, 0x90aebc00, 0x0a00d033, 0xfa3e9ab2, 0xbab20096, 0x7e7e9bb2, 0x1f0a000b,
0x040a00f8, 0x30f400f8, 0x05dcdfe4, 0x12f90000, 0x49feffbf, 0x20999001, 0x9fa0a0b2, 0xb4f0d1b2,
0xb4edb2ff, 0xe0b40aa0, 0x0709c40b, 0x1bf49ba6, 0x2f0fc775, 0x900149fe, 0x9da00899, 0xb5029eb5,
0x9fbc019a, 0xfe94bdb8, 0xff90014f, 0xb5f9a014, 0xf1b501fc, 0x2309c702, 0xf9bcbabf, 0x850fc7c8,
0x3c8a09c7, 0xf4f0e09f, 0x910dc71f, 0x3c05cfbb, 0xeeb990d9, 0x1fd4f000, 0xb91fe4f0, 0xefbc0099,
0x1f94f0e0, 0x9dbcff0f, 0x95f9bc90, 0xbb05febb, 0xfcfd049d, 0x0099b904, 0xfd04fdbb, 0x9ffd049a,
0xfeb9a005, 0x99900149, 0xd99fbf20, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f41c15,
0x05dcd9f4, 0x82f90000, 0xd1b299bf, 0x90014ffe, 0xf9a02cff, 0xff92dd3f, 0x091f0003, 0x01f03517,
0x2002f035, 0xb2b6b2f9, 0x33a5b2e3, 0xdb1900d4, 0x00000528, 0x7e7e240c, 0x0909000b, 0x19200a32,
0x0098813e, 0xd630030a, 0x780cf409, 0xc40147fe, 0xf8b2ffc4, 0x7790043d, 0x98783e24, 0xff09c400,
0x92947bb2, 0xbc040c02, 0xd43da026, 0x0096d17e, 0x6b1fa433, 0xf9c47fbf, 0xf494a607, 0xf9c75e18,
0x01991223, 0xf4019630, 0xfec7520c, 0xffe9c42f, 0xc7c8893c, 0xf9c78afd, 0x90d93c85, 0x0cf49c26,
0x03e0333b, 0x91f9c738, 0x26909d3c, 0x2c0cf49c, 0x109052bc, 0x9fa00100, 0x0926193f, 0x0aa108f4,
0x0149fe1f, 0xbf2c9990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x98b13e23, 0xbf0d0a00, 0xff0fc439,
0x000000de, 0x049efdff, 0xa005f9fd, 0x98813e3f, 0x3a317e00, 0x0c85fb00, 0xd9a830f4, 0x000005dc,
0x99bf82f9, 0xb2f830f4, 0x014ffea7, 0xa080ff90, 0xb0aabff9, 0xc1b00eb1, 0x68a6c70d, 0x30016912,
0x0cf50396, 0xa9c7013b, 0x0a96306c, 0x01310cf5, 0xfe0141fe, 0x11900140, 0x50009057, 0x2010a5b6,
0xb2b4bd19, 0x94e27e0c, 0x1fad3300, 0x09bf011d, 0xc40142fe, 0x2290ff6b, 0x04b4b658, 0xb9bc2ab2,
0xb26c32b0, 0x7e7eb21d, 0x300097be, 0xad333fa1, 0xfe00f51f, 0x01080141, 0x3d401190, 0x08199024,
0x3d0c1e90, 0xb054bd34, 0xe1b00c91, 0x9a0d3e0b, 0x1490b400, 0x100c1bb2, 0x59bcd43d, 0x7e4ab240,
0x330096d1, 0x00c31fad, 0x1f9819bf, 0xffffde01, 0x9efde0ff, 0x021fb504, 0x203319a0, 0x043d0a00,
0x0099a73e, 0xb40cb0b4, 0x1ab20bc0, 0x008d3e7e, 0xa0321fbf, 0xffffffde, 0x1f09c4e0, 0xb604fefd,
0x9ffd1894, 0xb219a005, 0x0c1bb24a, 0x7e010d10, 0x330096d1, 0x33731fa4, 0x020a0020, 0x9a073e01,
0x1f043300, 0x3e043d3f, 0xc40099f4, 0x1c98ff09, 0x031d9802, 0xfe0de0b4, 0xff90014f, 0xa8f9bc58,
0xb00e90b4, 0x001001e1, 0xb03b3201, 0x7eb20091, 0x0097067e, 0x26579034, 0xd208f409, 0x009a073e,
0x843d19bf, 0x101f9295, 0x55900133, 0xf5362610, 0x0aff4208, 0x0080331b, 0x9a233e11, 0x3e030a00,
0x34009a26, 0x49fe3fa0, 0x80999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x30f4003a,
0x5885fb08, 0xdff430f4, 0x000005dc, 0xffbf12f9, 0x900149fe, 0x41fe1099, 0x909fa001, 0xb84a0c11,
0xb2040b00, 0x8c307e1c, 0x1fa43300, 0x0140fe2b, 0x9000b44a, 0x040b0800, 0x307e0cb2, 0xa433008c,
0x19bf161f, 0x9fa60fbf, 0xf00b9cf0, 0x9a320196, 0x009a963e, 0x49fea43d, 0x10999001, 0xdcd99fbf,
0xbf000005, 0xf4f9a699, 0x317e070b, 0x15fb003a, 0x04a9980c, 0xac90afb2, 0xf0010b59, 0x904a2095,
0x04f9b500, 0x008c307e, 0x30f400f8, 0x05dcd990, 0x52f90000, 0x4ffe99bf, 0x84ff9001, 0xf9a0030e,
0x0500ad33, 0x299cd901, 0x99180000, 0x00993359, 0xba3200f6, 0xbd014cfe, 0x20cc90b4, 0x0094e27e,
0xad33ae32, 0xfe00e31f, 0xb84a0144, 0x1c449000, 0x4cb2040b, 0x008c307e, 0xad33ae32, 0xfe00cb1f,
0xb44a0140, 0x18009000, 0x0cb2040b, 0x008c307e, 0xad33ae32, 0xbf00b31f, 0xa64abf09, 0xa60bf5a9,
0xbcaa9000, 0x0b0140fe, 0x27009001, 0x307e0cb2, 0xae32008c, 0x911fad33, 0xfe093f00, 0x43b20142,
0xf0282290, 0x0045ff94, 0x02915410, 0x009ba93e, 0x1be43abf, 0x5abcffff, 0xf4b9a692, 0x9bb2050d,
0xaa90b072, 0x00b3f0bc, 0x307e2cb2, 0x0fe4008c, 0xae32ffff, 0x511fa433, 0x107b39bf, 0x202fbc02,
0xf190f9bc, 0xa00fff94, 0x00147339, 0x0149fec7, 0xbf209990, 0x0799909a, 0x4bfe9c3f, 0x90010d01,
0xc4f028bb, 0x02c4b6ff, 0x0096d17e, 0xa433ae32, 0x4cb2171f, 0x0b00b84a, 0x8af07e04, 0x3eae3200,
0x0e009be5, 0x0149fe09, 0xbf849990, 0x05dcd99f, 0x99bf0000, 0xf9a6ea32, 0x7e070bf4, 0xfb003a31,
0xa9987055, 0xf0008f04, 0x059ffd3f, 0xf804a9b5, 0x12aeb200, 0x040a10bf, 0xf926ee09, 0x332e0df4,
0x7f0a00c4, 0x9c2c3eea, 0x01ea5800, 0x1800a073, 0xb926ff09, 0xe4140bf4, 0xbbffffa9, 0x94f0059b,
0x071bf401, 0x00f8090a, 0x00f81f0a, 0xdff830f4, 0x000005dc, 0xffbf32f9, 0xfe0149fe, 0x99900140,
0x0143fe14, 0xa2b29fa0, 0x0090b1b2, 0x12339013, 0x0b10ec4a, 0x7e0cb201, 0x33008b70, 0x3f741fa4,
0x01a6300a, 0xb3690cf4, 0xf0210020, 0xa994ffa4, 0xb6240b05, 0x2cb202a4, 0xb8a0a9bc, 0x0010eeaa,
0x008b707e, 0x4b1fa433, 0x230010b3, 0x040b0a3f, 0xa4f01cb2, 0x05a994ff, 0xbc02a4b6, 0xaab8a0a9,
0x7e0010ee, 0x33008b70, 0x4a281fa4, 0x010b10ec, 0x707e3cb2, 0xa433008b, 0x3f3f191f, 0xf401f630,
0x093f0e0c, 0x1bf49f26, 0x9cef3e8a, 0xfe050a00, 0x99900149, 0xd99fbf14, 0x000005dc, 0xf9a699bf,
0x7e070bf4, 0xfb003a31, 0x30f40835, 0x05dcdfd8, 0x22f90000, 0x49feffbf, 0x30999001, 0x9fa0a132,
0x00299cd9, 0x04999800, 0x080ab2b2, 0x400094f1, 0xfe360bf4, 0xb4bd0140, 0xb20c0090, 0x9c4c7e0a,
0x1fa43300, 0x320ab225, 0x7e010c1b, 0x33009c11, 0xc4171fa4, 0x9990ff19, 0x9099bc02, 0x7f9009bc,
0x0f92f099, 0x49fe29a0, 0x30999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x25fb003a,
0xd830f428, 0x0005dcdf, 0xbf62f900, 0x0149feff, 0xb2409990, 0xd99fa0b2, 0x0000299c, 0xb2049998,
0x0bc3b2a6, 0x0094f108, 0xe50bf510, 0xfeb4bd00, 0x11900141, 0x7e1ab21c, 0x32009c4c, 0x1fad33ab,
0xff0b00d1, 0x010c1ab2, 0x009c117e, 0xad33ab32, 0x0b00c01f, 0x3d1ab2ff, 0x9c117ec4, 0x33ab3200,
0x00af1fad, 0xbd011458, 0xa029a094, 0x04109039, 0x4c72157f, 0x004da47d, 0x01e4bd80, 0x9e313e01,
0x01c9c400, 0x7f200bf4, 0xf4fd660f, 0x1ebc0a1d, 0x9e263ea4, 0xf4fd6600, 0x1ebc0d1b, 0x05a9fd94,
0x009e263e, 0xee90df72, 0x01c57601, 0x72020090, 0x00c473fd, 0xf06ebfd0, 0xa9c400d3, 0xffffdfff,
0x94b6ff00, 0x04effd10, 0xff00008c, 0xfd059efd, 0x9dfd049c, 0xbf69a005, 0xff4ee429, 0xe8afc7ff,
0xf110ed94, 0xfdff0094, 0xf9fd059d, 0xe42fa005, 0xb9ffff59, 0xe9ff00ee, 0x150bf4a4, 0x9cfd39bf,
0x059afd04, 0x29bf39a0, 0x010095f1, 0x49fe29a0, 0x40999001, 0xdcd99fbf, 0xbf000005, 0xa6ba3299,
0x070bf4f9, 0x003a317e, 0xf42865fb, 0xdcdff030, 0xf9000005, 0xfeffbf62, 0x99900149, 0xa0a13228,
0x32b0329f, 0xb2d5b2c4, 0x04b630e6, 0x01120cf5, 0x00299cd9, 0x049e9800, 0x90ffb9c4, 0x9fc41199,
0xbb080a1f, 0x99b905ef, 0x1f94f000, 0x0f909fbc, 0x05f9bbff, 0xb334feff, 0x00e9013d, 0x4ffe94bd,
0x20ff9001, 0xb50142fe, 0x229001f9, 0xbdf9a01c, 0x7e2bb2a4, 0x33009c4c, 0x00c91fad, 0x3c322ab2,
0x117e1b32, 0xad33009c, 0x3300ba1f, 0x30460200, 0x0cf40206, 0x00003310, 0x010d331a, 0x5f3e00a5,
0x0033009f, 0x0d334103, 0x3e009804, 0xc4009f95, 0x90f1ff19, 0x9eb80126, 0x3e001136, 0xc4009f6b,
0x90f1ff19, 0x9eb80126, 0x0f001146, 0x9fa43e10, 0xff19c400, 0x012690f1, 0x9eb8040f, 0x3e001156,
0xc4009fa4, 0x90f1ff19, 0x020f0126, 0x115a9eb8, 0x9fa43e00, 0xff19c400, 0x012690f1, 0xb801004f,
0x00115c9e, 0x0a034994, 0xf89cc404, 0x18f4cfa6, 0x08c99032, 0x9fa6080b, 0xbc060df4, 0xecbcb2fc,
0x0140fea0, 0xb2200090, 0x8b707e0c, 0x1fa43300, 0xa009bf13, 0x01009859, 0xe03e60a0, 0x030a009f,
0x900149fe, 0x9fbf2899, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e, 0xf41065fb, 0xdcdfe830,
0xf9000005, 0xfeffbf52, 0x99900149, 0xa0a3b22c, 0x299cd99f, 0x99980000, 0x0ab2b204, 0x0094f108,
0xca0bf520, 0x0140fe00, 0x0090a4bd, 0x7e0bb218, 0x33009c4c, 0x00b81fad, 0xff0b0ab2, 0x117ec43d,
0xad33009c, 0xfe00a91f, 0x007f0141, 0x4a1c1190, 0x100b10dc, 0x707e1cb2, 0xad33008b, 0x7200911f,
0xbd15b20b, 0x0104bdc4, 0x3eff04e0, 0xc400a0e7, 0x0bf401b9, 0x07c6b069, 0xbf350cf4, 0xf85c3c3d,
0x901f0ec4, 0x99b90309, 0xfff4f000, 0xbc1f94f0, 0x49bc909e, 0xf49fff95, 0xbb049ebb, 0x99b904fe,
0x049dfd00, 0xa0059ffd, 0xa0db3e39, 0x3c2dbf00, 0x1ec4f85c, 0x1d09921f, 0xf00099b9, 0x94f0fff4,
0x909ebc1f, 0xff9549bc, 0x9ebbf49f, 0x04febb04, 0xfd0099b9, 0x9ffd049d, 0x9029a005, 0xb57601cc,
0x04009001, 0x73041190, 0xfe8800b4, 0x99900149, 0xd99fbf2c, 0x000005dc, 0xf9a699bf, 0x7e070bf4,
0xfb003a31, 0x30f41855, 0x05dcdfd4, 0x22f90000, 0x49feffbf, 0x34999001, 0x41fea232, 0x909fa001,
0x984a0c11, 0xb2280b23, 0x8b707e1c, 0x1fa43300, 0x0110985d, 0x90bc19bf, 0xf490a6f2, 0xf6b01008,
0x0b9cf001, 0x3e0196f0, 0x0900a155, 0xf0f9a6e1, 0x96f00b9c, 0x330b0a01, 0xd9330090, 0x000029b4,
0xbf019c98, 0x014ffe9b, 0xbc0cff90, 0x9c4d90f0, 0x08923523, 0x0990240e, 0x1f94f001, 0xb504fa90,
0x367e01f9, 0x847e0021, 0x49fe008a, 0x34999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b,
0x25fb003a, 0xf830f42c, 0x0005dcdf, 0xbf12f900, 0x0149feff, 0x320c9990, 0xd99fa0a1, 0x0000299c,
0x0a049f98, 0x00008908, 0x04f9fd01, 0xfe2a0bf4, 0xa4bd0140, 0xb2080090, 0x9c4c7e0b, 0x1fa43300,
0x320ab219, 0x7ec43d1b, 0x33009c11, 0xc40b1fa4, 0x067e1f1a, 0x49fe00a1, 0x0c999001, 0xdcd99fbf,
0xbf000005, 0xf4f9a699, 0x317e070b, 0x15fb003a, 0xf830f408, 0x0005dcdf, 0xbf12f900, 0x0149feff,
0x320c9990, 0xd99fa0a1, 0x0000299c, 0x0a049998, 0x0094f108, 0x00907380, 0x0140fe2e, 0x0090a4bd,
0x7e0bb208, 0x33009c4c, 0xb21c1fa4, 0x3d1b320a, 0x9c117ec4, 0x1fa43300, 0x1f1ac40e, 0x7e20a5f0,
0xfe00a106, 0x99900149, 0xd99fbf0c, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x52f90815,
0xb206b995, 0x0394b6c4, 0xa9bcd5b2, 0x3fb0c430, 0x00a2df3e, 0x329831bf, 0x0054b301, 0xbd010a18,
0x7e0cb2b4, 0xfd0039cd, 0x1afd052b, 0xa2c73e05, 0x0a0cb200, 0x7eb4bd01, 0xb90039cd, 0xaab900b9,
0x0429fd00, 0x92041afd, 0x40b30144, 0x00900b00, 0x4004b301, 0xb531a0c8, 0x04bd0132, 0xb3083390,
0xfbb50044, 0x7ed4bd51, 0xf800a27e, 0x7e010d00, 0xf800a27e, 0x3fbcc400, 0xb606b5b6, 0xabbc03b4,
0x01ab98a0, 0x797eaabf, 0xa4f00039, 0xb200f801, 0x3df4bdae, 0x08f0b3a4, 0x98ef3c0a, 0x90a0a93c,
0xfeb301ff, 0xf0f30080, 0xaa3907a2, 0x3f00f801, 0x01e9c4ae, 0xbd1b0bf4, 0x3cff0ef4, 0xff9098af,
0xf59e2601, 0xb300c51b, 0x3ef410f4, 0xbd00a40c, 0x90afbcf4, 0x90099918, 0x9d3301ff, 0xb300ae00,
0x18f207f4, 0x800c06ad, 0x0cf5dc26, 0xe433009e, 0xa9183800, 0x009d3301, 0xa9180093, 0x009d3302,
0xa918008b, 0x009d3303, 0xaf180083, 0x05a91804, 0x76fff4f0, 0x9ffd0894, 0x00947305, 0xf4dc266f,
0x013e691b, 0xaf1800a4, 0x05a91804, 0xf0fff4f0, 0x94b6ff94, 0x059ffd08, 0x737099cd, 0x184d0094,
0x991201a9, 0x19963041, 0x18400cf4, 0x963102a9, 0x1df40040, 0x5a963136, 0x2f1cf400, 0x3103a918,
0xf4004096, 0x9631251d, 0x1cf4005a, 0x00d0331e, 0xffefc41b, 0xf404f9c4, 0xf9c4151b, 0x0294b30a,
0x07a9180b, 0x08009033, 0x00f8060a, 0x00f8a4bd, 0x020f12f9, 0xa0b2b1b2, 0x2200a0b3, 0x94f0a93f,
0x171bf408, 0x00a30f7e, 0x060010b3, 0x09181a20, 0x26060f08, 0x051bf4a9, 0xfab2f4bd, 0xa9b211fb,
0xc0b3020a, 0x9abf1200, 0xb4b6cdb2, 0x00804c07, 0x00b7617e, 0x30f400f8, 0x05dcdff8, 0x22f90000,
0x49feffbf, 0x10999001, 0x9fa0a0b2, 0x00b3020a, 0x0abf3400, 0xb294943d, 0x0141fe07, 0x11902bb2,
0x20010c0f, 0x7e1db219, 0xb300b778, 0x3f1700a4, 0xb20abf19, 0xf01db22b, 0x010cfd94, 0x617e1920,
0x49fe00b7, 0x10999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x25fb003a, 0xf830f408,
0x0005dcdf, 0xbf42f900, 0x0149feff, 0xb2189990, 0xb29fa0a1, 0xb2c0b2b4, 0x00a0b3d3, 0x00c0b356,
0x07cf1852, 0x42fe94bd, 0x14229001, 0xa001ff10, 0x07cf3529, 0x0f7ecab2, 0x2bb200a3, 0xb2080a35,
0xa7b17e1a, 0x00a4b300, 0xb22bbf2c, 0x7e1ab20c, 0xb300a43e, 0xb21e00a4, 0x7e4bb21a, 0xb300a456,
0xb31200a4, 0xbf0e0030, 0x3e32a022, 0x0a00a531, 0x0149fe02, 0xbf189990, 0x05dcd99f, 0x99bf0000,
0x0bf4f9a6, 0x3a317e07, 0x0845fb00, 0xc0b202f9, 0x2400a0b3, 0x2000c0b3, 0xb4b6aabf, 0x00804c07,
0x787e0db2, 0xa4b300b7, 0x0ab21000, 0x00a32f7e, 0x00a5763e, 0x01fb020a, 0x1700a0b3, 0x1300c0b3,
0xcdb2aabf, 0x0c07b4b6, 0xb7787e10, 0x0a00f800, 0xf900f802, 0xb2b3b242, 0x00a2b2c4, 0x00a0b302,
0xa5e97e42, 0xb2030000, 0x00a0b3a1, 0xb23bb236, 0x7e1cb22a, 0xb200a54c, 0x00a4b3a0, 0xbd1ab21e,
0xa4107eb4, 0xb3a0b200, 0xb31000a4, 0x180c0040, 0x94f00619, 0xb249a0ff, 0x7e1bb22a, 0xb200a60b,
0xf841fb0a, 0xf800f800, 0x98aeb200, 0xa0b30eaa, 0xf4bd0a00, 0x00a6013e, 0xb30fea98, 0x0f0e00a0,
0x0eff9001, 0xe9bc94bd, 0xb300f8f9, 0x981a00b0, 0x90b30ea9, 0xa9980d00, 0x0094b30f, 0x9001090c,
0xabbc0e99, 0x9800f899, 0xa9a002b9, 0xa9b5ff09, 0x02b99801, 0xb504abb5, 0xa9b503ac, 0xf900f802,
0x32a0b222, 0x0ad2b2c1, 0x00b0b302, 0x400cb85e, 0xd4bd0001, 0xb304c998, 0x33440090, 0xb3080014,
0x3f3c0390, 0x26b93fcf, 0x321bf4f9, 0x1801cf18, 0xf92601b9, 0x18271bf4, 0xbf1802ce, 0x90ddbc02,
0xb6909dbc, 0x99b80394, 0xbc000140, 0xef269009, 0xa00b1bf4, 0x3ea4bd29, 0x9000a6a7, 0xcc9001dd,
0x14d4b318, 0xfb040ab3, 0xb2abbf21, 0xa6f009ac, 0x0d0bf4b9, 0xb503aa98, 0x5e7e01cb, 0x00f800b6,
0xa1b232f9, 0x04bdb2b2, 0xef3ef003, 0x19bf00a6, 0xb2010090, 0xf493a61a, 0x030a090d, 0x00a6f63e,
0x1bf493a6, 0x3e020a09, 0x7e00a6f6, 0xa600a6a9, 0xdd08f402, 0x31fba4bd, 0xdff830f4, 0x000005dc,
0xffbf82f9, 0x900149fe, 0xa3b22899, 0xb8b29fa0, 0x8400a9b3, 0x00b0b300, 0x0147fe7f, 0xbd05a498,
0xbd54bd24, 0x24779014, 0x00a7603e, 0xbd0c3a98, 0xb002bc94, 0x7cb279a0, 0x00b65e7e, 0xff0f79bf,
0x0bf49fa6, 0x3e643d09, 0x9000a74e, 0x00900155, 0xf404a601, 0x6033d908, 0x11900700, 0x2024bc01,
0xa6033998, 0x0b18f429, 0x04bd0106, 0x00a7513e, 0x1ab24bb2, 0x0016fc7e, 0x0df45aa6, 0x01119006,
0x3d063998, 0xf419a6f4, 0x010f050c, 0xa4bd8f20, 0x00a7963e, 0x49fe020a, 0x28999001, 0xdcd99fbf,
0xbf000005, 0xf4f9a699, 0x317e070b, 0x85fb003a, 0xf030f408, 0x0005dcdf, 0xbf82f900, 0x0149feff,
0xfe309990, 0x9fa00147, 0xb208a998, 0x09b1b0a6, 0x91b0f105, 0xb2843d0a, 0x2c779090, 0xbd036998,
0xa67fa0f4, 0x0708f409, 0x010804bd, 0xa60a90b4, 0x351bf409, 0x32008033, 0x00a8593e, 0xbc0c6a98,
0x7cb24010, 0x5e7e4bb2, 0x79bf00b6, 0x9fa6ff0f, 0x900f1bf4, 0xf1090122, 0x1bf439a6, 0x9043b205,
0x2c3e0111, 0x14bd00a8, 0x24bdf103, 0xa6056998, 0xcb08f419, 0x1e0020b3, 0x18f429a6, 0x0860b50f,
0xa009f0b4, 0xa86a3ef3, 0xa6f10f00, 0x051bf45f, 0x09bc05b2, 0xa7dc3e00, 0x091a0a00, 0xf459a6f1,
0x65b50d0b, 0x0990b408, 0xa4bd95a0, 0x900149fe, 0x9fbf3099, 0x0005dcd9, 0xa699bf00, 0x070bf4f9,
0x003a317e, 0xf41085fb, 0xdcd9f830, 0xf9000005, 0xfe99bf82, 0xff90014f, 0xa0a3b228, 0xb2b4b2f9,
0x00c033d0, 0x3ddab20e, 0x7e140cb4, 0xfe00b78f, 0x14bd0142, 0x08242290, 0x06ff07fe, 0x3efb05fc,
0x9800a939, 0x94bd0c3a, 0xa0b014bc, 0x7e2cb229, 0xbf00b65e, 0xa6f00f29, 0x560df49f, 0x9fa6fd0f,
0xa6110cf4, 0x3018f496, 0x1bf495a6, 0xa9083e45, 0xf498a600, 0x97a62f0b, 0x98371bf4, 0x99900109,
0x0109b501, 0x00a9363e, 0x90040998, 0x09b50199, 0xa9363e04, 0x02099800, 0xb5019990, 0x363e0209,
0x099800a9, 0x01999003, 0x3e0309b5, 0xbf00a936, 0x01999009, 0x119009a0, 0x05399801, 0x08f419a6,
0x0149fe85, 0xbf289990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x0885fb00, 0xdff830f4,
0x000005dc, 0xa1b222f9, 0xb2b2ffbf, 0xbf03aa98, 0x0149fe1b, 0xfe109990, 0x9fa00140, 0xb20c0090,
0xb65e7e0c, 0x980cbf00, 0x2bb2031a, 0x00b6757e, 0x09011b98, 0xf4b9a6ff, 0x1998101b, 0x0212b504,
0x3e0292b5, 0x9800a9b0, 0x2cb2031a, 0x00b6757e, 0xbf031a98, 0x7efd0c1b, 0xfe00b675, 0x99900149,
0xbf12a010, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x0825fb00, 0xdfc830f4, 0x000005dc,
0xffbf82f9, 0xfef830f4, 0x99900149, 0x929fa060, 0xae180499, 0xa0f4bd1c, 0x05a9989f, 0x050aa2b2,
0x330b91b0, 0x021a00e9, 0x980c2b98, 0x4afe092c, 0x90f10001, 0x44fe44aa, 0x01a6b201, 0xb68a7e20,
0xb205b200, 0x304490a3, 0x00aa713e, 0xa6082998, 0x310bf439, 0x3bb22ab2, 0x4db2010c, 0x00a8877e,
0xb3044998, 0x981f0094, 0x94b30349, 0x49981800, 0x0094b302, 0xa649bf3b, 0x0918f491, 0x643e30b2,
0x19b200aa, 0xb20bb0b4, 0x7e6ab291, 0xb200b6a3, 0xf435a6a3, 0x030ab91b, 0x0bf503a6, 0x14b301a3,
0x03b20c00, 0x8e3e743d, 0x03b200aa, 0x38940107, 0xb254bd07, 0xab9a3e86, 0x0c2a9800, 0x53bce4bd,
0x014cfe10, 0x9016e1b0, 0x1bb258cc, 0x00b65e7e, 0xf300adb3, 0x1690b400, 0x9fa6f00f, 0x00d80cf5,
0x2ab294bd, 0x7e1591b0, 0xb200a5e9, 0x00a9b3a4, 0x2abf00d6, 0x804c6bb2, 0x7e4db200, 0xb200b778,
0x00adb3a0, 0x2ab200a7, 0x4cb21bb2, 0x90014dfe, 0xbd7e50dd, 0xa0b200a4, 0x9000adb3, 0x902ab200,
0x010c014b, 0x90014dfe, 0x3f7e54dd, 0xa0b200a6, 0x7800a4b3, 0x9815b0b4, 0x4afe0c2c, 0x30aa9001,
0x00a6277e, 0xa60c90b4, 0x1e1bf491, 0xfe14b0b4, 0xaa90014a, 0xa95c7e30, 0x1590b400, 0xb3059f98,
0x3e2300f4, 0x0e00ab88, 0xf49ea6ef, 0x0300090d, 0x00ab883e, 0x90014afe, 0xa97e30aa, 0x243e00a6,
0xf99800ab, 0x14e0b402, 0x1bf491a6, 0x02feb506, 0x91a6f9bf, 0xa0091bf4, 0xab883efe, 0x01f99800,
0x1bf491a6, 0x01feb506, 0x2ab24bb2, 0x00a60b7e, 0x130004b3, 0x90015590, 0x29988066, 0xf559a605,
0x33fefa08, 0x98460070, 0x8db2042f, 0x2ab2e4bd, 0x0b00f1b0, 0x0070dc02, 0x41fe0000, 0x5c119001,
0x7e0111b0, 0x9800a5e3, 0x2abf042c, 0xfb048bb2, 0x00b74a7e, 0x2c981ebf, 0xbda0b204, 0xb22ab2b4,
0xa5e57e0d, 0x0004b300, 0xbdff0406, 0xac003e04, 0x0c2a9800, 0xb2b003bc, 0x0100904c, 0x00b6757e,
0xa60b90b4, 0xec08f409, 0xbc032f98, 0x29b59039, 0xf49fa609, 0x94bd0808, 0xbd0929b5, 0x0149fea4,
0xbf609990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x0830f400, 0xf43885fb, 0xdcd9cc30,
0xf9000005, 0xf499bf82, 0x4ffef830, 0x5cff9001, 0xe1b0f9a0, 0xb2c8b20b, 0xb3a3b2d6, 0x028400b9,
0x7f00e9b3, 0x2caf1802, 0xbd0141fe, 0x54119094, 0x030019a0, 0x6d00f933, 0xb2c43d02, 0xa63f7e1d,
0xb3a0b200, 0x025e00ad, 0x68bc17bf, 0x017998f0, 0x08f59fa6, 0x7998024d, 0x0194b304, 0x3e05000a,
0xb300aee1, 0x023e0069, 0x09027f98, 0xf5f9a6f0, 0xb2022a0b, 0xa5e97e3a, 0xb3a2b200, 0x021e00a9,
0xb20c3c98, 0x0140fe7b, 0xb2340090, 0xa6277e0a, 0xb50ab200, 0x8bcc0570, 0xa6c07e70, 0xb3a0b200,
0x01e900ad, 0x010d00b4, 0xf501a6f0, 0xf501ce0b, 0x3d01d00c, 0x00804cb4, 0x8f7e2ab2, 0x3abf00b7,
0x4c070b94, 0x2db20080, 0x00b7787e, 0xb30ca1b0, 0x01b600ad, 0x18052918, 0x9476042f, 0xfff4f008,
0x09e59fff, 0xf5e966ff, 0xe401980b, 0xa6ffffe9, 0x8e08f589, 0xbcf4bd01, 0x9918902f, 0x009d3309,
0xff900182, 0x07f4b301, 0xaefb3ef2, 0xf28e3c00, 0x08f59f26, 0xfdc4016d, 0xff94f0ff, 0xa6529dbc,
0x050df456, 0xd99065b2, 0xbce4bd10, 0xa43db029, 0xa63ec43d, 0xd6b100ad, 0x0cf5006f, 0x10b40145,
0x98be3c0b, 0x26f81e3c, 0x170bf4f9, 0x39ff94f0, 0x9ffd0099, 0x00903304, 0x3c010a06, 0x010ce9bf,
0x9001ee90, 0xe5a601dd, 0x33ce08f4, 0x00ed00c9, 0x94f0293f, 0x080bf408, 0xd000a933, 0xb294bd00,
0x1491b03a, 0xb01391b0, 0x91301291, 0x014bfe5b, 0x7e5bbb90, 0xb200a6f8, 0x00adb3a0, 0x903400ef,
0x0090335b, 0x7e3ab211, 0xb200a9d8, 0x00adb3a0, 0x00b400db, 0x1140b40d, 0x90014ffe, 0x2eb250ff,
0xb0070d94, 0x804101f1, 0x0b3ab200, 0xb04cb201, 0xe37e0011, 0x0bb200a5, 0x3ab22cb2, 0x90014dfe,
0xbd7e4cdd, 0xe0b400a4, 0xb2a0b214, 0xbd3ab21c, 0x7e0db2b4, 0xb300a5e5, 0x0091000d, 0xfe13b0b4,
0xaa90014a, 0xa95c7e34, 0x0c3a9800, 0xfe0db0b4, 0xcc90014c, 0xb65e7e48, 0xb3a0b200, 0xb46d00a4,
0xf0011290, 0x1bf491a6, 0x014e9832, 0xb370efcd, 0x0f0600f4, 0x06291870, 0xbcff94f0, 0x9fbb909e,
0x0149b502, 0x00ae983e, 0x3ab20bb2, 0x3e7e2cb2, 0xa0b200a4, 0x3400a4b3, 0xfe0265bb, 0xaa90014a,
0xa6a97e34, 0x0060b300, 0x0b90b420, 0xbc8085bc, 0x91b09095, 0xace43e0b, 0x3e020000, 0x0000aec8,
0xaec83e03, 0x0c00b400, 0x2bb23ab2, 0x00a60b7e, 0x79b594bd, 0xaee13e05, 0x3e030000, 0x0000aee1,
0x0149fe02, 0xbf5c9990, 0x05dcd99f, 0x99bf0000, 0xf9a60ab2, 0x3e170bf4, 0x1800af07, 0x9d330629,
0x3efe4f00, 0x7e00aebf, 0xf4003a31, 0x85fb0830, 0xdc30f434, 0x0005dcdf, 0xbf82f900, 0xf830f4ff,
0x900149fe, 0x9fa04c99, 0xb20bb1b0, 0xb2d4b2c2, 0xb3a5b2e6, 0x011700b9, 0x1200e9b3, 0xfe94bd01,
0xc43d0141, 0xa0481190, 0x7e1db219, 0xb200a63f, 0x00adb3a0, 0x19bf00fb, 0x98f042bc, 0x9fa60199,
0x00ea08f5, 0x03005ab2, 0x00a5e97e, 0xa9b3a3b2, 0xbf00de00, 0x0c5c981b, 0x900140fe, 0x0ab23000,
0x00a6277e, 0x2bcc0ab2, 0xa6c07e70, 0xb3a8b200, 0x00ad00ad, 0xfe7021cd, 0x80420147, 0x44779000,
0x00b0373e, 0xbd0c00b4, 0x0979a094, 0xf409a6f0, 0x0200091b, 0x00b03e3e, 0x09a6f009, 0x00090df4,
0xb03e3e03, 0x0bc0b400, 0xbd0704b6, 0xb20db2e4, 0xb0b4bd5a, 0x71b00021, 0xa5e37e01, 0xb25abf00,
0xb22cb20b, 0xb7787e3d, 0xb27ebf00, 0xb23bb2a0, 0xb22cb25a, 0xa5e57e0d, 0x0004b300, 0xbd3ab245,
0xa4107eb4, 0xb3a0b200, 0x003700a4, 0x0201bb70, 0x0df404a6, 0x9040b205, 0x6ab2101b, 0xb2b03bbc,
0xb7987e0c, 0x014afe00, 0x900240bb, 0x60bc30aa, 0xa6a97e60, 0xb314bd00, 0xff6d004d, 0x5ab280b2,
0x0b7e3bb2, 0x4c3e00a6, 0x020000b0, 0x900149fe, 0x9fbf4c99, 0x0005dcd9, 0xb299bf00, 0xf4f9a60a,
0x317e070b, 0x30f4003a, 0x2485fb08, 0xd9f830f4, 0x000005dc, 0x99bf32f9, 0x90014ffe, 0xa1b214ff,
0x94bdf9a0, 0xc3b2b2b2, 0x4b0140fe, 0x00900320, 0xb209a010, 0xb79e7e0a, 0xb309bf00, 0xb34c0090,
0xa04800a4, 0xb509bf91, 0x0fbf0192, 0xb5100049, 0x0fbf04f9, 0xf9b52009, 0xb509bf05, 0x0fbf0693,
0xf9350109, 0x3509bf1c, 0x0fbf2c9a, 0xf9b5f009, 0x900fbf0a, 0xf9b540f9, 0x900fbf0e, 0xf9b5c0f9,
0x3e0abf0f, 0xbd00b0e9, 0x0149fea4, 0xbf149990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07,
0x0835fb00, 0xdfd030f4, 0x000005dc, 0xffbf82f9, 0x900149fe, 0xa3b25099, 0x02059fa0, 0xfb00a9b3,
0x00b63004, 0x350b9cf0, 0x94bd2ca9, 0x7e0ca9b5, 0xb200a5e9, 0xbd3abfa0, 0x00804cb4, 0x787e0db2,
0xa5b200b7, 0xb100adb3, 0x33093f04, 0x04a24a9d, 0x33010918, 0x049a469d, 0x33020918, 0x0492469d,
0x33030918, 0x048a539d, 0x18040e18, 0x0f180509, 0x070d1806, 0xf0ffe4f0, 0xf4f0ff94, 0x0894b6ff,
0xfd10f4b6, 0xd4b6059e, 0x05f9fd18, 0xf505dffd, 0x05045e0b, 0x03d6b005, 0x045d0cf5, 0xb3013db5,
0x490e01d4, 0x39b55000, 0xb1d73e02, 0x080d1800, 0x18090918, 0x0e180a0f, 0xffd4f00b, 0xf0ff94f0,
0x94b6fff4, 0x10f4b608, 0xb6059dfd, 0xf9fd18e4, 0x05effd05, 0xb2023eb5, 0x7e0bb23a, 0x9800a60b,
0xff09023a, 0x1bf4a9a6, 0x3e04bd09, 0xb600b5ed, 0x3b9007a5, 0x033ab530, 0x00b6d17e, 0xadb3a5b2,
0x9803f500, 0xc009033b, 0x90343a90, 0xb9fd3fbb, 0x03b5b604, 0x00b79e7e, 0xadb3a5b2, 0xfe03d900,
0x48fe0147, 0x40779001, 0x799044bd, 0x3c889001, 0x3e0991b0, 0xbd00b347, 0xb38ea0e4, 0x980f0044,
0xb4bd0c3a, 0x6a3efe0c, 0x3ab200b2, 0x7cb24bb2, 0x00a5787e, 0xadb3a5b2, 0x3f039d00, 0x0194f079,
0x98120bf4, 0x4bb20c3a, 0x757eff0c, 0x443e00b6, 0x7ab200b3, 0x00a32f7e, 0x0f00a0b3, 0xb20c3a98,
0x3efd0c4b, 0x3f00b26a, 0x0294f079, 0x980e1bf4, 0x4bb20c3a, 0x393efd0c, 0xb0b400b3, 0x0c3ab209,
0x7e8db201, 0xb300a63f, 0x3f5d00a0, 0xbd3fb279, 0x0299c724, 0xb0019990, 0xf5980a91, 0x0054b354,
0x09b0b439, 0x0c0022bc, 0x0002bc03, 0xb80304b6, 0x00014001, 0xb21031bc, 0xb7987e1a, 0x0030bc00,
0x014309b8, 0xb5952000, 0xf0b45302, 0x540fb50a, 0x043e81a0, 0x229000b3, 0x18ff9001, 0xbe1424b3,
0x00b6313e, 0x793f8ebf, 0x18027f58, 0xee98077d, 0x0d3a9803, 0xf00299c7, 0xffcc00f3, 0x1f96cb70,
0xe6cb4bb2, 0xcb010cd8, 0xf6ebf0d6, 0xe57e01e0, 0x3a9800a2, 0xb24bb20c, 0xb6757e6c, 0xb3a5b200,
0x02b400ad, 0x98014490, 0x4ba6033b, 0xfeeb08f5, 0xbbbc94bd, 0xb289a0b0, 0xb7b47e8a, 0xb3a5b200,
0x029400ad, 0x84bd37b2, 0xbc547f98, 0x98bc9088, 0x0394b690, 0x014099b8, 0x9039bc00, 0xb30b91b0,
0x025300f9, 0xb4033c98, 0xb43d0fa0, 0xccbc24bd, 0x7e44bdc0, 0xb400b78f, 0x623e0f60, 0x3a9800b4,
0xb02bb20d, 0xf57e0c41, 0xa93300a2, 0x9800b500, 0x4cfe0c3a, 0x902bb201, 0x5e7e38cc, 0xadb300b6,
0xb4020c00, 0x90b40be0, 0x03ef980e, 0xa6d899c7, 0x8e1bf59f, 0x0d3a9800, 0x010c2bb2, 0x00a2ed7e,
0xb2014cfe, 0x902bb23a, 0x937e30cc, 0xa4b300a5, 0x3a981306, 0x0c2bb20c, 0xb6757efd, 0xb45f3e00,
0x00adb300, 0x907401cb, 0x0093f01c, 0xbc9099bc, 0x017f0069, 0xffff19e4, 0x60091bf4, 0xb45f3e02,
0x0c3a9800, 0xe4014cfe, 0x90ffff1b, 0x5e7e34cc, 0xadb300b6, 0x34019800, 0x90343af0, 0xf4f92636,
0x0260100d, 0xffff1be4, 0x3e0c3a98, 0x9800b454, 0x2bb20c3a, 0x757efd0c, 0xadb300b6, 0x90017000,
0x3a980122, 0xf52aa603, 0xb2ff3708, 0x3d6eb264, 0xbdd43db4, 0x3ec4bdf4, 0x7f00b496, 0x009473e9,
0x3e010d0a, 0x3300b490, 0x0b0600d0, 0x01cc9001, 0x9001ff90, 0xfaa602ee, 0xb3e308f4, 0xb50b00c4,
0xd23e547c, 0xb93300b5, 0x9800a600, 0x96b00139, 0x300cf402, 0x6db20309, 0xbd5479b5, 0x3ef4bde4,
0x7f00b4d5, 0x009073d9, 0xe9697c0a, 0x9001ee90, 0xdd9001ff, 0x03399802, 0x08f4f9a6, 0xb54c3ee9,
0x0194bd00, 0x5479b5f1, 0x1bb224bd, 0x00b5263e, 0x09e4407f, 0x0bf4ffff, 0xa6f10f26, 0x0b1bf4bf,
0xffff0be4, 0x00b51e3e, 0xe40c3a98, 0x7effff0c, 0xb300b675, 0x00b900ad, 0xffff0be4, 0x229019b2,
0x02449001, 0x399891b2, 0xf429a603, 0xf109c508, 0x0bf5b9a6, 0x3a9800a0, 0x0a3c980c, 0x00b6757e,
0x8c00adb3, 0x0a31b500, 0x00b5d23e, 0x94bd6f7f, 0xb501c192, 0xf3f05179, 0xb504bd00, 0x8a3e527f,
0x4b7f00b5, 0x98014c58, 0x00900c3a, 0x00b3f001, 0x9000c3f0, 0x757e0244, 0xa4b300b6, 0xe0b45200,
0x01e9980b, 0xb5709990, 0x01a601e9, 0x7cd608f4, 0x3a980860, 0xe4f00c0c, 0x7effff0b, 0xb300b675,
0xfe2d00a4, 0x0be4014c, 0x3ab2ffff, 0x7e40cc90, 0xb300a578, 0x341900a4, 0x7f984690, 0xff94f051,
0xb5f0f9bc, 0xd23e517f, 0x030a00b5, 0xdd3ea5b2, 0x889000b5, 0x18779001, 0x90148db3, 0x0149fefd,
0xbf3c9990, 0xb7487e9a, 0xb5f33e00, 0x3e030500, 0xbd00b5f5, 0xb20bb204, 0xa60b7e3a, 0x0050b300,
0x0c3a981a, 0xc77e04bd, 0x3a9800b6, 0x0c30b50d, 0x00b7487e, 0xfe0d30b5, 0x99900149, 0xd99fbf50,
0x000005dc, 0x5ab299bf, 0x0bf4f9a6, 0xb6373e11, 0x3e010500, 0x7e00b5f3, 0xfb003a31, 0x02f93085,
0xe77ea0b2, 0x0a9800a5, 0xb6c77e0c, 0x0d0a9800, 0x00b7487e, 0x487e0ab2, 0xa4bd00b7, 0xa9bf01fb,
0x020aafb2, 0x18f4b9a6, 0x01b9900d, 0xbd98f9bc, 0xf8c9a0a4, 0xb2a9bf00, 0xa6020aaf, 0x0b18f4b9,
0xbd01b990, 0x99fcbca4, 0xb9bf00f8, 0xcab2afb2, 0x08f4c9a6, 0xf8f10a07, 0x02fbb500, 0xfcb5fca0,
0xbf00f801, 0x02af98a9, 0xa090b9bc, 0xa6fbbfa9, 0x0808f49b, 0xa0029bbb, 0x01a998a9, 0xa9a6aabf,
0x0a051bf4, 0xb300f8f1, 0x7e0800a0, 0xf800b748, 0xf830f400, 0x0005dcdf, 0xbf32f900, 0x0149feff,
0xb2149990, 0xb29fa0a0, 0x00a0b3b3, 0xa6fd0242, 0x3a0cf4a2, 0xfe01ab90, 0xb4b60141, 0x10119002,
0xb47e1ab2, 0xa4b300b7, 0x19bf2700, 0x2cb21db2, 0x90a0e4bd, 0xe990dfbf, 0xbc9eb201, 0x90a699fc,
0xbff408f4, 0x3e3da0dd, 0x0a00b72d, 0x0149fe02, 0xbf149990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6,
0x3a317e07, 0x0835fb00, 0x44da00f8, 0x7e000029, 0x300041c7, 0xacf000a6, 0x01a6f00b, 0xf801aab9,
0x2944da00, 0x427e0000, 0xa6300041, 0x0bacf000, 0xb901a6f0, 0x00f801aa, 0x002944da, 0x42d77e00,
0x00a63000, 0xf00bacf0, 0xaab901a6, 0xf000f801, 0x947effb4, 0x00f8000b, 0x000b7e7e, 0x02f900f8,
0xa43da0b2, 0x00384c7e, 0xf000a6b0, 0x0aa00b9c, 0x01fb9ab2, 0xa0b202f9, 0x2a7ea43d, 0xa6b00038,
0x0b9cf000, 0x9ab20aa0, 0x30f401fb, 0x05dcdfe4, 0x82f90000, 0x49feffbf, 0x0145fe01, 0xfe3c9990,
0x9fa00147, 0x90245590, 0x1cd93477, 0xbf000014, 0x014bfe9a, 0xbb90080c, 0x7eff0d2c, 0x330000c1,
0xb4eb00a4, 0x393f0c30, 0xe20c9433, 0x33043118, 0x330f0010, 0x00b00119, 0x703e043d, 0x3f9800b9,
0x142cd902, 0x31980000, 0x0a345804, 0x9f3f5fa0, 0x90033998, 0x59b51836, 0xa0ff0901, 0x00f43379,
0x32f77e18, 0x33a03200, 0x012900ad, 0x2cdf0109, 0x20000014, 0xf01272f9, 0x14bd0043, 0x00b8b03e,
0xb10241bc, 0xf4010006, 0x0040060d, 0x0b947e01, 0x1424d900, 0x9abf0000, 0xffff2ce4, 0x0db26bb2,
0x001300de, 0xaf117e00, 0xb37aa000, 0x00d400ad, 0x5c985bbf, 0x041d9001, 0x207c0eb2, 0x1010bc20,
0x001300da, 0x21367e00, 0x33a03200, 0x00c500ad, 0x004cb4bd, 0x1300da01, 0x14a60000, 0x3ea408f4,
0x9800b95f, 0x2cd9023f, 0x98000014, 0x32580434, 0x3f5fa00a, 0x0339989f, 0xb5183890, 0xff090159,
0xf43379a0, 0xf77e1600, 0xa0320032, 0x8400ad33, 0x142cdf00, 0xf1200000, 0xffff26e4, 0x503e24bd,
0x62bc00b9, 0x0016b112, 0x060df401, 0x7e010041, 0xbf000b94, 0x015c985b, 0xb2042d90, 0x1300da1e,
0xd07e0000, 0x4ce40020, 0x21bcffff, 0xb2a03220, 0xde1db28b, 0x00001300, 0x3340417c, 0xd93500a4,
0x00001424, 0x3b7e9abf, 0x7aa000ac, 0x1300a4b3, 0x004cb4bd, 0x1300da01, 0x26a60000, 0xbfa608f4,
0x015c985b, 0xd4bd7ab2, 0x367e040e, 0xa0320021, 0xb22db034, 0x0f817e3a, 0x000d3300, 0x0130fe71,
0x30020f3a, 0x331838f1, 0xfe040903, 0x9130014a, 0x3b313039, 0xaa90b4bd, 0x0f717e38, 0xb7ea3e00,
0xd902f900, 0x00002930, 0x9abfa0b2, 0xde7e640b, 0x10090000, 0x6100a433, 0x02a60089, 0xf1009fcf,
0xf61000f5, 0x008a009f, 0x004b02a6, 0x4dc4bd10, 0xe4bd2710, 0x00198b7e, 0x1500a433, 0x002930d9,
0x7e9abf00, 0x0900009b, 0xba153e04, 0x4b0ab200, 0xfc7e03e8, 0x00890016, 0xaab802a4, 0xb6000200,
0xaa920aa5, 0x009af601, 0xb801114f, 0x00020099, 0x3d009ff6, 0xfb9a3294, 0x00000001, 0x00000000,
0xfa95075d, 0x10f99508, 0xa132f032, 0xf9339232, 0x3000d515, 0x0cf415f6, 0x05f93346, 0xf63005fc,
0x1c0cf405, 0x8701f933, 0x301f0a00, 0x08f501f6, 0xf630073a, 0x250cf503, 0x8e283e07, 0x10f93300,
0xf630041b, 0x0e0cf410, 0xf50df630, 0x3e070f08, 0x33009156, 0x070711fd, 0x0091603e, 0x431df933,
0x1df63006, 0x33250cf4, 0x03fb18f9, 0xf418f630, 0xfd330c0c, 0x3e06e817, 0x33009409, 0x01011af9,
0xda1cfd33, 0x94c63e06, 0x21f93300, 0xf6300263, 0x0c0cf421, 0xc61efd33, 0x8ece3e06, 0x24f93300,
0xfd33063a, 0x3e06b825, 0xdf00949a, 0x0000299c, 0x2614f918, 0x0d18f4a9, 0xbcffa9c4, 0x6f3e98f9,
0xbda00093, 0x0094313e, 0x1d33080a, 0x7e069e00, 0x330063f7, 0x490a0300, 0xa9fdff00, 0x3e4aa004,
0x0a009431, 0x09163003, 0x06800cf5, 0x00299cd9, 0x0e99bf00, 0xbc080a01, 0x99e7f4e1, 0x9ffd0133,
0x670bf504, 0x02103306, 0x0410330e, 0x3eea3210, 0xb2008e85, 0x8e7b3eea, 0xfea4bd00, 0xbb90014b,
0x63b47e2c, 0x8a847e00, 0x1fad3300, 0x49fe063f, 0x2c999001, 0xe9959ebf, 0x0190b31f, 0x3ed4bd0a,
0xdd008ea8, 0xff000000, 0x3380e9c4, 0xbd0a0094, 0x8ebf3ef4, 0xb0010f00, 0x1ff400e6, 0x95ff0f05,
0xd9ff08e9, 0x90f9bc95, 0xc83e49a0, 0x9b320094, 0x5db24cb2, 0x0077ca7e, 0x0094c83e, 0x5507a033,
0xf407a630, 0x9cd9120c, 0x30000029, 0x0df402a6, 0x8f253e2b, 0x0ca63000, 0xd9120cf4, 0x0000299c,
0xf409a630, 0x483e5718, 0xa033008f, 0x030a610d, 0xb80e1d33, 0x8f7b3e05, 0x01999800, 0x000000df,
0x8f613e04, 0x01999800, 0x000000df, 0x8f613e08, 0x299cd900, 0x99980000, 0x00008f02, 0x049ffd02,
0x00c61bf5, 0x0090463e, 0x8f029998, 0xfd040000, 0x1bf5049f, 0x463e00c4, 0x99980090, 0x00008f02,
0x049ffd01, 0x3e2f1bf4, 0xd9009046, 0x0000299c, 0x4000008f, 0x3e029998, 0xd9008f88, 0x0000299c,
0xdf029998, 0x00800000, 0xf5049ffd, 0x3e00a91b, 0x33009046, 0x30730710, 0x0cf40716, 0x0210331a,
0x0216304b, 0x33540cf4, 0x33270010, 0x0486011d, 0x008fd83e, 0xf40c1630, 0x16300d0c, 0x6518f409,
0x0090163e, 0xf40e1630, 0x313e6d0d, 0x4ab20094, 0x00789f7e, 0x0094c83e, 0x2b321a32, 0x5db24cb2,
0x007cca7e, 0x0094c83e, 0x2b321a32, 0x5db24cb2, 0x007c3b7e, 0x0094c83e, 0x2b321a32, 0x467e4cb2,
0xc83e007e, 0x2b320094, 0x5db24cb2, 0xa27e070a, 0xc83e007b, 0x080a0094, 0x4cb22b32, 0x037e5db2,
0x1a32007b, 0x3cb22b32, 0x5eb24db2, 0x007ed37e, 0x0094c83e, 0x2b321a32, 0x4db23cb2, 0xa77e5eb2,
0xc83e0078, 0x080a0094, 0x0094c83e, 0x9d33040a, 0xd9047a00, 0x0000299c, 0x0a029998, 0x0094f108,
0x670bf540, 0x0149fe04, 0x900142fe, 0x22902c99, 0xa09da018, 0x0499922d, 0x99929da0, 0x929da004,
0x9da00499, 0xa0049992, 0x0119339d, 0x16300085, 0x0e08f401, 0x1d33030a, 0x3e043202, 0xfe009122,
0x40fe0141, 0x2c119001, 0xb2280090, 0x7e0bb21a, 0xbf007560, 0xfe00bf19, 0x42fe0143, 0x0794f001,
0x90243390, 0x3ab22022, 0xb20141fe, 0x1c11902b, 0xb20704f0, 0x0404b61c, 0x7e0509fd, 0xbf006a5c,
0xbf3fbf29, 0x0141fe1e, 0xf00894b6, 0x94f1fff4, 0xf4b6ffff, 0x18e4b610, 0xfd181190, 0x1ab20509,
0xfd050ffd, 0x497e050e, 0x483e006a, 0x2ab20091, 0x006a397e, 0x20bf2ab2, 0x006a297e, 0x4e3e29bf,
0x41fe0091, 0x18119001, 0x167e1ab2, 0x1ab2006a, 0x037e10bf, 0x19bf006a, 0x04f11ab2, 0x94b6ffff,
0x0590ff10, 0x0069f07e, 0x94f119bf, 0x40a0ffff, 0x313e59a0, 0xfab20094, 0x0095f47e, 0x0094c83e,
0x0d00a033, 0x5c01ad33, 0x91ae3e03, 0x33b0bf00, 0x330c0190, 0x3e2f0294, 0xfe00919e, 0x010a0141,
0xb2181190, 0x94ef7e1b, 0x1fad3300, 0x1fbf033f, 0x09fffe09, 0x049fff95, 0xa23e10a0, 0x04f10091,
0x2a3203ff, 0x0a7e0bb2, 0xc83e0095, 0x9a320094, 0x0094ef7e, 0x0094c83e, 0x237efab2, 0xc83e0095,
0x9cd30094, 0xbf000029, 0x0000df39, 0x080a2000, 0xf5049ffd, 0x0a02f50b, 0x001d3303, 0x40fe02ef,
0x014cfe01, 0x90280090, 0x0bb22ccc, 0x900142fe, 0x2ab22422, 0x0073477e, 0x9670097f, 0x0b9cf003,
0x7e079194, 0x1800010e, 0x087e5830, 0x00330001, 0x1fb20a00, 0x00924d3e, 0xa4732a7f, 0x19b20a00,
0x00924b3e, 0x734019c5, 0x731403a0, 0x731804a0, 0xe51c02a4, 0x3e01009f, 0xe500924d, 0x3e02009f,
0xe500924d, 0x3e03009f, 0xb200924d, 0x0149fe9f, 0x7f2c9990, 0x04997399, 0x96700088, 0x1a0cf404,
0x48019073, 0xf4019670, 0x90733608, 0x9d734c02, 0x3e00e303, 0x730092cf, 0x009b0799, 0xf4079670,
0x9073100c, 0x9d736905, 0x3e00cb06, 0x73009304, 0x009c0899, 0xbd099d73, 0x93393e00, 0x07ff8900,
0x04f9fdfe, 0x0093513e, 0xffc7ff49, 0x95f194f9, 0xc03e2000, 0xff490092, 0x94f9ffc7, 0x180095f1,
0xfe3fff8f, 0xe5049ffd, 0x3e40009f, 0x49009351, 0xf9ffc7ff, 0x0095f194, 0x92c03e10, 0xc7ff4900,
0xf194f9ff, 0x3e080095, 0x490092f5, 0xf9ffc7ff, 0x0095f194, 0x3fff8f10, 0x049ffdfe, 0x80009fe5,
0x0093513e, 0xffc7ff49, 0x95f194f9, 0x1c3e0800, 0xff490093, 0x94f9ffc7, 0x100095f1, 0xfe3fff8f,
0xe5049ffd, 0x3ec0009f, 0x49009351, 0xf9ffc7ff, 0x0095f194, 0x93433e08, 0xc7ff4900, 0xf194f9ff,
0x8f100095, 0xfdfe3fff, 0x008f049f, 0x9fff0100, 0x299cd9f5, 0x99180000, 0x00903350, 0x0000890f,
0x95f9ff02, 0x00936f3e, 0xfdffff89, 0xa094f9ff, 0x94313e49, 0x16a63000, 0x01480cf5, 0xd9ffafc4,
0x000004d0, 0xd9e89fbc, 0x0000299c, 0xefc7080a, 0x989fbc3b, 0xbb96efc7, 0x94f0059f, 0x2b0bf501,
0xff29c401, 0x010defe7, 0x0a029b54, 0xf5bf6604, 0xf0011918, 0xb9e400f3, 0xf9bcffff, 0x04c6b0c2,
0x0c090df4, 0x93cb3e04, 0xe44da000, 0xc4ffffba, 0xebe703e9, 0x94330142, 0xbabc1200, 0x29bcd9b0,
0x4ab20000, 0x0093f43e, 0x000644d9, 0xbc99bf00, 0x4ab2b0ba, 0x7eb09bbc, 0x3e000b7e, 0x32009431,
0x9acb7e9b, 0x94c83e00, 0x00a03300, 0x33080a0f, 0x00b1011d, 0x0094c83e, 0x900140fe, 0x0ab22400,
0x0072fb7e, 0xa54f093f, 0x00943300, 0xa05a0f06, 0x3e1f0a4f, 0xd90094c8, 0x0000299c, 0x33159918,
0x00870099, 0x3802a033, 0xf402a630, 0xa0330f0c, 0xa4331800, 0x703e6e01, 0xa0330094, 0xa4332c03,
0x903e6204, 0x3ab20094, 0x009d827e, 0x0094c83e, 0xcbb2bab2, 0x009ffc7e, 0x0094c83e, 0x0b7e2a32,
0xc83e009d, 0x2a320094, 0x00a2127e, 0x0094c83e, 0xa67e2a32, 0xc83e00a1, 0x9cd90094, 0x18000029,
0x90331599, 0xfbc72400, 0xb22c326c, 0xf05eb24d, 0xac7e0fa4, 0xc83e009e, 0x020a0094, 0x0094c83e,
0xc83e030a, 0x090a0094, 0x900149fe, 0x9fbf3099, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e,
0xf01c55fb, 0xa4b6ffa4, 0x0acaa002, 0x3200f81f, 0x30040aaf, 0x0cf402f6, 0xfff4f012, 0x002a5cd9,
0xf89fbc00, 0xbfa01f0a, 0xaf3200f8, 0xf630040a, 0x100cf402, 0xd9fff4f0, 0x00002a5c, 0x9bbc1f0a,
0xf900f8f9, 0x10af9512, 0xae95b1b2, 0x299cd008, 0xff090000, 0x1bf4e926, 0x4909183d, 0x1bf5f926,
0x091800b2, 0x331c0a4a, 0x00ab0199, 0xf5019630, 0x0a00a108, 0x029d3306, 0x0998009d, 0x0af43d13,
0x18b9a01f, 0x0f354909, 0x0199104a, 0x3e490935, 0x180095f2, 0x0a0a4a09, 0x7a009433, 0x002a5cd9,
0xf099bf00, 0x99c7fff4, 0x0694b6e8, 0xb0f0f9bc, 0x0cf43ff6, 0x33030a5e, 0x905b0ce4, 0x96b104f9,
0x0cf40040, 0x02f9944e, 0x002a68df, 0x909fbc00, 0x9a589f7f, 0x73080d01, 0x981b02f4, 0x290d0409,
0x338094f0, 0x7e0f0090, 0x0900754b, 0x35d43d01, 0x9cdf5009, 0x18000029, 0xd9c449fe, 0x13f9b5ff,
0xf9350209, 0xffe4f04a, 0x1ea01c0a, 0x0095f23e, 0x11fb040a, 0xadb222f9, 0xa0c7b2b2, 0xb0bbbfe8,
0x0cf53f06, 0xbcc400cc, 0xffaec4ff, 0x0d0fe4b3, 0xc6b0050a, 0xbb0cf53f, 0x2a5cd900, 0x99bf0000,
0xc7ff9fc4, 0xf194e899, 0x0694b606, 0x2c0ee0b3, 0x440fe0b3, 0xedb31f0a, 0x7c009a0d, 0x96719009,
0x0cf500ff, 0x9fe4008c, 0x68d9ffff, 0xbc00002a, 0x2fa0f89f, 0x00966e3e, 0x7190017c, 0xf400ff96,
0x9fe46f0c, 0x68d9ffff, 0xbc00002a, 0x1f0af99b, 0x0096d03e, 0x0af0c9bc, 0xf0d9c705, 0x9002fb94,
0x9c940199, 0xe0cbbc02, 0x1000e6b1, 0xbc440cf4, 0x030a9001, 0xbc0294b6, 0xf6b1f0c9, 0x0cf41000,
0xf49ba632, 0x9ea60808, 0xa62008f4, 0x080df4b9, 0x08f4bfa6, 0x2a68df16, 0x9fbc0000, 0xb0bfbca0,
0x000b7e7e, 0x00966e3e, 0xd03e040a, 0x030a0096, 0xc9b221fb, 0x0fffa6b1, 0xbc2b0cf4, 0x96b1909a,
0x0cf41000, 0x2a68de21, 0xaebc0000, 0x00d03390, 0x3e9ab20a, 0xb20096fb, 0x7e9bb2ba, 0x0a000b7e,
0x0a00f81f, 0xf400f804, 0xdcdfe430, 0xf9000005, 0xfeffbf12, 0x99900149, 0xa0a0b220, 0xf0d1b29f,
0xedb2ffb4, 0xb40aa0b4, 0x09c40be0, 0xf49ba607, 0x0fc7751b, 0x0149fe2f, 0xa0089990, 0x029eb59d,
0xbc019ab5, 0x94bdb89f, 0x90014ffe, 0xf9a014ff, 0xb501fcb5, 0x09c702f1, 0xbcbabf23, 0x0fc7c8f9,
0x8a09c785, 0xf0e09f3c, 0x0dc71ff4, 0x05cfbb91, 0xb990d93c, 0xd4f000ee, 0x1fe4f01f, 0xbc0099b9,
0x94f0e0ef, 0xbcff0f1f, 0xf9bc909d, 0x05febb95, 0xfd049dbb, 0x99b904fc, 0x04fdbb00, 0xfd049afd,
0xb9a0059f, 0x900149fe, 0x9fbf2099, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e, 0xf41c15fb,
0xdcd9f430, 0xf9000005, 0xb299bf82, 0x014ffed1, 0xa02cff90, 0x92dd3ff9, 0x1f0003ff, 0xf0351709,
0x02f03501, 0xb6b2f920, 0xa5b2e3b2, 0x1900d433, 0x000530db, 0x7e240c00, 0x09000b7e, 0x200a3209,
0x98823e19, 0x30030a00, 0x0cf409d6, 0x0147fe78, 0xb2ffc4c4, 0x90043df8, 0x793e2477, 0x09c40098,
0x947bb2ff, 0x040c0292, 0x3da026bc, 0x96d27ed4, 0x1fa43300, 0xc47fbf6b, 0x94a607f9, 0xc75e18f4,
0x991223f9, 0x01963001, 0xc7520cf4, 0xe9c42ffe, 0xc8893cff, 0xc78afdc7, 0xd93c85f9, 0xf49c2690,
0xe0333b0c, 0xf9c73803, 0x909d3c91, 0x0cf49c26, 0x9052bc2c, 0xa0010010, 0x26193f9f, 0xa108f409,
0x49fe1f0a, 0x2c999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0xb23e230b, 0x0d0a0098, 0x0fc439bf,
0x0000deff, 0x9efdff00, 0x05f9fd04, 0x823e3fa0, 0x317e0098, 0x85fb003a, 0xa830f40c, 0x0005dcd9,
0xbf82f900, 0xf830f499, 0x4ffea7b2, 0x80ff9001, 0xaabff9a0, 0xb00eb1b0, 0xa6c70dc1, 0x01691268,
0xf5039630, 0xc7013b0c, 0x96306ca9, 0x310cf50a, 0x0141fe01, 0x900140fe, 0x00905711, 0x10a5b650,
0xb4bd1920, 0xe37e0cb2, 0xad330094, 0xbf011d1f, 0x0142fe09, 0x90ff6bc4, 0xb4b65822, 0xbc2ab204,
0x6c32b0b9, 0x7eb21db2, 0x0097bf7e, 0x333fa130, 0x00f51fad, 0x080141fe, 0x40119001, 0x1990243d,
0x0c1e9008, 0x54bd343d, 0xb00c91b0, 0x0e3e0be1, 0x90b4009a, 0x0c1bb214, 0xbcd43d10, 0x4ab24059,
0x0096d27e, 0xc31fad33, 0x9819bf00, 0xffde011f, 0xfde0ffff, 0x1fb5049e, 0x3319a002, 0x3d0a0020,
0x99a83e04, 0x0cb0b400, 0xb20bc0b4, 0x8d3e7e1a, 0x321fbf00, 0xffffdea0, 0x09c4e0ff, 0x04fefd1f,
0xfd1894b6, 0x19a0059f, 0x1bb24ab2, 0x010d100c, 0x0096d27e, 0x731fa433, 0x0a002033, 0x083e0102,
0x0433009a, 0x043d3f1f, 0x0099f53e, 0x98ff09c4, 0x1d98021c, 0x0de0b403, 0x90014ffe, 0xf9bc58ff,
0x0e90b4a8, 0x1001e1b0, 0x3b320100, 0xb20091b0, 0x97077e7e, 0x57903400, 0x08f40926, 0x9a083ed2,
0x3d19bf00, 0x1f929584, 0x90013310, 0x36261055, 0xff4208f5, 0x80331b0a, 0x243e1100, 0x030a009a,
0x009a273e, 0xfe3fa034, 0x99900149, 0xd99fbf80, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xf4003a31,
0x85fb0830, 0xf430f458, 0x0005dcdf, 0xbf12f900, 0x0149feff, 0xfe109990, 0x9fa00141, 0x4a0c1190,
0x040b00b8, 0x307e1cb2, 0xa433008c, 0x40fe2b1f, 0x00b44a01, 0x0b080090, 0x7e0cb204, 0x33008c30,
0xbf161fa4, 0xa60fbf19, 0x0b9cf09f, 0x320196f0, 0x9a973e9a, 0xfea43d00, 0x99900149, 0xd99fbf10,
0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0xa9980c15, 0x90afb204, 0x010b59ac, 0x4a2095f0,
0xf9b50090, 0x8c307e04, 0xf400f800, 0xdcd99030, 0xf9000005, 0xfe99bf52, 0xff90014f, 0xa0030e84,
0x00ad33f9, 0x9cd90105, 0x18000029, 0x99335999, 0x3200f600, 0x014cfeba, 0xcc90b4bd, 0x94e37e20,
0x33ae3200, 0x00e31fad, 0x4a0144fe, 0x449000b8, 0xb2040b1c, 0x8c307e4c, 0x33ae3200, 0x00cb1fad,
0x4a0140fe, 0x009000b4, 0xb2040b18, 0x8c307e0c, 0x33ae3200, 0x00b31fad, 0x4abf09bf, 0x0bf5a9a6,
0xaa9000a6, 0x0140febc, 0x0090010b, 0x7e0cb227, 0x32008c30, 0x1fad33ae, 0x093f0091, 0xb20142fe,
0x28229043, 0x45ff94f0, 0x91541000, 0x9baa3e02, 0xe43abf00, 0xbcffff1b, 0xb9a6925a, 0xb2050df4,
0x90b0729b, 0xb3f0bcaa, 0x7e2cb200, 0xe4008c30, 0x32ffff0f, 0x1fa433ae, 0x7b39bf51, 0x2fbc0210,
0x90f9bc20, 0x0fff94f1, 0x147339a0, 0x49fec700, 0x20999001, 0x99909abf, 0xfe9c3f07, 0x010d014b,
0xf028bb90, 0xc4b6ffc4, 0x96d27e02, 0x33ae3200, 0xb2171fa4, 0x00b84a4c, 0xf07e040b, 0xae32008a,
0x009be63e, 0x49fe090e, 0x84999001, 0xdcd99fbf, 0xbf000005, 0xa6ea3299, 0x070bf4f9, 0x003a317e,
0x987055fb, 0x008f04a9, 0x9ffd3ff0, 0x04a9b505, 0xaeb200f8, 0x0a10bf12, 0x26ee0904, 0x2e0df4f9,
0x0a00c433, 0x2d3eea7f, 0xea58009c, 0x00a07301, 0x26ff0918, 0x140bf4b9, 0xffffa9e4, 0xf0059bbb,
0x1bf40194, 0xf8090a07, 0xf81f0a00, 0xf830f400, 0x0005dcdf, 0xbf32f900, 0x0149feff, 0x900140fe,
0x43fe1499, 0xb29fa001, 0x90b1b2a2, 0x33901300, 0x10ec4a12, 0x0cb2010b, 0x008b707e, 0x741fa433,
0xa6300a3f, 0x690cf401, 0x210020b3, 0x94ffa4f0, 0x240b05a9, 0xb202a4b6, 0xa0a9bc2c, 0x10eeaab8,
0x8b707e00, 0x1fa43300, 0x0010b34b, 0x0b0a3f23, 0xf01cb204, 0xa994ffa4, 0x02a4b605, 0xb8a0a9bc,
0x0010eeaa, 0x008b707e, 0x281fa433, 0x0b10ec4a, 0x7e3cb201, 0x33008b70, 0x3f191fa4, 0x01f6303f,
0x3f0e0cf4, 0xf49f2609, 0xf03e8a1b, 0x050a009c, 0x900149fe, 0x9fbf1499, 0x0005dcd9, 0xa699bf00,
0x070bf4f9, 0x003a317e, 0xf40835fb, 0xdcdfd830, 0xf9000005, 0xfeffbf22, 0x99900149, 0xa0a13230,
0x299cd99f, 0x99980000, 0x0ab2b204, 0x0094f108, 0x360bf440, 0xbd0140fe, 0x0c0090b4, 0x4d7e0ab2,
0xa433009c, 0x0ab2251f, 0x010c1b32, 0x009c127e, 0x171fa433, 0x90ff19c4, 0x99bc0299, 0x9009bc90,
0x92f0997f, 0xfe29a00f, 0x99900149, 0xd99fbf30, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31,
0x30f42825, 0x05dcdfd8, 0x62f90000, 0x49feffbf, 0x40999001, 0x9fa0b2b2, 0x00299cd9, 0x04999800,
0xc3b2a6b2, 0x94f1080b, 0x0bf51000, 0xb4bd00e5, 0x900141fe, 0x1ab21c11, 0x009c4d7e, 0xad33ab32,
0x0b00d11f, 0x0c1ab2ff, 0x9c127e01, 0x33ab3200, 0x00c01fad, 0x1ab2ff0b, 0x127ec43d, 0xab32009c,
0xaf1fad33, 0x01145800, 0x29a094bd, 0x109039a0, 0x72157f04, 0x4da47d4c, 0xe4bd8000, 0x323e0101,
0xc9c4009e, 0x200bf401, 0xfd660f7f, 0xbc0a1df4, 0x273ea41e, 0xfd66009e, 0xbc0d1bf4, 0xa9fd941e,
0x9e273e05, 0x90df7200, 0xc57601ee, 0x02009001, 0xc473fd72, 0x6ebfd000, 0xc400d3f0, 0xffdfffa9,
0xb6ff00ff, 0xeffd1094, 0x00008c04, 0x059efdff, 0xfd049cfd, 0x69a0059d, 0x4ee429bf, 0xafc7ffff,
0x10ed94e8, 0xff0094f1, 0xfd059dfd, 0x2fa005f9, 0xffff59e4, 0xff00eeb9, 0x0bf4a4e9, 0xfd39bf15,
0x9afd049c, 0xbf39a005, 0x0095f129, 0xfe29a001, 0x99900149, 0xd99fbf40, 0x000005dc, 0xba3299bf,
0x0bf4f9a6, 0x3a317e07, 0x2865fb00, 0xdff030f4, 0x000005dc, 0xffbf62f9, 0x900149fe, 0xa1322899,
0xb0329fa0, 0xd5b2c432, 0xb630e6b2, 0x120cf504, 0x299cd901, 0x9e980000, 0xffb9c404, 0xc4119990,
0x080a1f9f, 0xb905efbb, 0x94f00099, 0x909fbc1f, 0xf9bbff0f, 0x34feff05, 0xe9013db3, 0xfe94bd00,
0xff90014f, 0x0142fe20, 0x9001f9b5, 0xf9a01c22, 0x2bb2a4bd, 0x009c4d7e, 0xc91fad33, 0x322ab200,
0x7e1b323c, 0x33009c12, 0x00ba1fad, 0x46020033, 0xf4020630, 0x0033100c, 0x0d331a00, 0x3e00a501,
0x33009f60, 0x33410300, 0x0098040d, 0x009f963e, 0xf1ff19c4, 0xb8012690, 0x0011369e, 0x009f6c3e,
0xf1ff19c4, 0xb8012690, 0x0011469e, 0xa53e100f, 0x19c4009f, 0x2690f1ff, 0xb8040f01, 0x0011569e,
0x009fa53e, 0xf1ff19c4, 0x0f012690, 0x5a9eb802, 0xa53e0011, 0x19c4009f, 0x2690f1ff, 0x01004f01,
0x115c9eb8, 0x03499400, 0x9cc4040a, 0xf4cfa6f8, 0xc9903218, 0xa6080b08, 0x060df49f, 0xbcb2fcbc,
0x40fea0ec, 0x20009001, 0x707e0cb2, 0xa433008b, 0x09bf131f, 0x009859a0, 0x3e60a001, 0x0a009fe1,
0x0149fe03, 0xbf289990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6, 0x3a317e07, 0x1065fb00, 0xdfe830f4,
0x000005dc, 0xffbf52f9, 0x900149fe, 0xa3b22c99, 0x9cd99fa0, 0x98000029, 0xb2b20499, 0x94f1080a,
0x0bf52000, 0x40fe00ca, 0x90a4bd01, 0x0bb21800, 0x009c4d7e, 0xb81fad33, 0x0b0ab200, 0x7ec43dff,
0x33009c12, 0x00a91fad, 0x7f0141fe, 0x1c119000, 0x0b10dc4a, 0x7e1cb210, 0x33008b70, 0x00911fad,
0x15b20b72, 0x04bdc4bd, 0xff04e001, 0x00a0e83e, 0xf401b9c4, 0xc6b0690b, 0x350cf407, 0x5c3c3dbf,
0x1f0ec4f8, 0xb9030990, 0xf4f00099, 0x1f94f0ff, 0xbc909ebc, 0x9fff9549, 0x049ebbf4, 0xb904febb,
0x9dfd0099, 0x059ffd04, 0xdc3e39a0, 0x2dbf00a0, 0xc4f85c3c, 0x09921f1e, 0x0099b91d, 0xf0fff4f0,
0x9ebc1f94, 0x9549bc90, 0xbbf49fff, 0xfebb049e, 0x0099b904, 0xfd049dfd, 0x29a0059f, 0x7601cc90,
0x009001b5, 0x04119004, 0x8800b473, 0x900149fe, 0x9fbf2c99, 0x0005dcd9, 0xa699bf00, 0x070bf4f9,
0x003a317e, 0xf41855fb, 0xdcdfd430, 0xf9000005, 0xfeffbf22, 0x99900149, 0xfea23234, 0x9fa00141,
0x4a0c1190, 0x280b2398, 0x707e1cb2, 0xa433008b, 0x10985d1f, 0xbc19bf01, 0x90a6f290, 0xb01008f4,
0x9cf001f6, 0x0196f00b, 0x00a1563e, 0xf9a6e109, 0xf00b9cf0, 0x0b0a0196, 0x33009033, 0x0029b4d9,
0x019c9800, 0x4ffe9bbf, 0x0cff9001, 0x4d90f0bc, 0x9235239c, 0x90240e08, 0x94f00109, 0x04fa901f,
0x7e01f9b5, 0x7e002136, 0xfe008a84, 0x99900149, 0xd99fbf34, 0x000005dc, 0xf9a699bf, 0x7e070bf4,
0xfb003a31, 0x30f42c25, 0x05dcdff8, 0x12f90000, 0x49feffbf, 0x0c999001, 0x9fa0a132, 0x00299cd9,
0x049f9800, 0x0089080a, 0xf9fd0100, 0x2a0bf404, 0xbd0140fe, 0x080090a4, 0x4d7e0bb2, 0xa433009c,
0x0ab2191f, 0xc43d1b32, 0x009c127e, 0x0b1fa433, 0x7e1f1ac4, 0xfe00a107, 0x99900149, 0xd99fbf0c,
0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40815, 0x05dcdff8, 0x12f90000, 0x49feffbf,
0x0c999001, 0x9fa0a132, 0x00299cd9, 0x04999800, 0x94f1080a, 0x90738000, 0x40fe2e00, 0x90a4bd01,
0x0bb20800, 0x009c4d7e, 0x1c1fa433, 0x1b320ab2, 0x127ec43d, 0xa433009c, 0x1ac40e1f, 0x20a5f01f,
0x00a1077e, 0x900149fe, 0x9fbf0c99, 0x0005dcd9, 0xa699bf00, 0x070bf4f9, 0x003a317e, 0xf90815fb,
0x06b99552, 0x94b6c4b2, 0xbcd5b203, 0xb0c430a9, 0xa2e03e3f, 0x9831bf00, 0x54b30132, 0x010a1800,
0x0cb2b4bd, 0x0039cd7e, 0xfd052bfd, 0xc83e051a, 0x0cb200a2, 0xb4bd010a, 0x0039cd7e, 0xb900b9b9,
0x29fd00aa, 0x041afd04, 0xb3014492, 0x900b0040, 0x04b30100, 0x31a0c840, 0xbd0132b5, 0x08339004,
0xb50044b3, 0xd4bd51fb, 0x00a27f7e, 0x010d00f8, 0x00a27f7e, 0xbcc400f8, 0x06b5b63f, 0xbc03b4b6,
0xab98a0ab, 0x7eaabf01, 0xf0003979, 0x00f801a4, 0xf4bdaeb2, 0xf0b3a43d, 0xef3c0a08, 0xa0a93c98,
0xb301ff90, 0xf30080fe, 0x3907a2f0, 0x00f801aa, 0xe9c4ae3f, 0x1b0bf401, 0xff0ef4bd, 0x9098af3c,
0x9e2601ff, 0x00c51bf5, 0xf410f4b3, 0x00a40d3e, 0xafbcf4bd, 0x09991890, 0x3301ff90, 0x00ae009d,
0xf207f4b3, 0x0c06ad18, 0xf5dc2680, 0x33009e0c, 0x183800e4, 0x9d3301a9, 0x18009300, 0x9d3302a9,
0x18008b00, 0x9d3303a9, 0x18008300, 0xa91804af, 0xfff4f005, 0xfd089476, 0x9473059f, 0xdc266f00,
0x3e691bf4, 0x1800a402, 0xa91804af, 0xfff4f005, 0xb6ff94f0, 0x9ffd0894, 0x7099cd05, 0x4d009473,
0x1201a918, 0x96304199, 0x400cf419, 0x3102a918, 0xf4004096, 0x9631361d, 0x1cf4005a, 0x03a9182f,
0x00409631, 0x31251df4, 0xf4005a96, 0xd0331e1c, 0xefc41b00, 0x04f9c4ff, 0xc4151bf4, 0x94b30af9,
0xa9180b02, 0x00903307, 0xf8060a08, 0xf8a4bd00, 0x0f12f900, 0xb2b1b202, 0x00a0b3a0, 0xf0a93f22,
0x1bf40894, 0xa3107e17, 0x0010b300, 0x181a2006, 0x060f0809, 0x1bf4a926, 0xb2f4bd05, 0xb211fbfa,
0xb3020aa9, 0xbf1200c0, 0xb6cdb29a, 0x804c07b4, 0xb7627e00, 0xf400f800, 0xdcdff830, 0xf9000005,
0xfeffbf22, 0x99900149, 0xa0a0b210, 0xb3020a9f, 0xbf340000, 0x94943d0a, 0x41fe07b2, 0x902bb201,
0x010c0f11, 0x1db21920, 0x00b7797e, 0x1700a4b3, 0x0abf193f, 0x1db22bb2, 0x0cfd94f0, 0x7e192001,
0xfe00b762, 0x99900149, 0xd99fbf10, 0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40825,
0x05dcdff8, 0x42f90000, 0x49feffbf, 0x18999001, 0x9fa0a1b2, 0xc0b2b4b2, 0xa0b3d3b2, 0xc0b35600,
0xcf185200, 0xfe94bd07, 0x22900142, 0x01ff1014, 0xcf3529a0, 0x7ecab207, 0xb200a310, 0x080a352b,
0xb27e1ab2, 0xa4b300a7, 0x2bbf2c00, 0x1ab20cb2, 0x00a43f7e, 0x1e00a4b3, 0x4bb21ab2, 0x00a4577e,
0x1200a4b3, 0x0e0030b3, 0x32a022bf, 0x00a5323e, 0x49fe020a, 0x18999001, 0xdcd99fbf, 0xbf000005,
0xf4f9a699, 0x317e070b, 0x45fb003a, 0xb202f908, 0x00a0b3c0, 0x00c0b324, 0xb6aabf20, 0x804c07b4,
0x7e0db200, 0xb300b779, 0xb21000a4, 0xa3307e0a, 0xa5773e00, 0xfb020a00, 0x00a0b301, 0x00c0b317,
0xb2aabf13, 0x07b4b6cd, 0x797e100c, 0x00f800b7, 0x00f8020a, 0xb3b242f9, 0xa2b2c4b2, 0xa0b30200,
0xea7e4200, 0x030000a5, 0xa0b3a1b2, 0x3bb23600, 0x1cb22ab2, 0x00a54d7e, 0xa4b3a0b2, 0x1ab21e00,
0x117eb4bd, 0xa0b200a4, 0x1000a4b3, 0x0c0040b3, 0xf0061918, 0x49a0ff94, 0x1bb22ab2, 0x00a60c7e,
0x41fb0ab2, 0x00f800f8, 0xaeb200f8, 0xb30eaa98, 0xbd0a00a0, 0xa6023ef4, 0x0fea9800, 0x0e00a0b3,
0xff90010f, 0xbc94bd0e, 0x00f8f9e9, 0x1a00b0b3, 0xb30ea998, 0x980d0090, 0x94b30fa9, 0x01090c00,
0xbc0e9990, 0x00f899ab, 0xa002b998, 0xb5ff09a9, 0xb99801a9, 0x04abb502, 0xb503acb5, 0x00f802a9,
0xa0b222f9, 0xd2b2c132, 0xb0b3020a, 0x0cb85e00, 0xbd000140, 0x04c998d4, 0x440090b3, 0x08001433,
0x3c0390b3, 0xb93fcf3f, 0x1bf4f926, 0x01cf1832, 0x2601b918, 0x271bf4f9, 0x1802ce18, 0xddbc02bf,
0x909dbc90, 0xb80394b6, 0x00014099, 0x269009bc, 0x0b1bf4ef, 0xa4bd29a0, 0x00a6a83e, 0x9001dd90,
0xd4b318cc, 0x040ab314, 0xabbf21fb, 0xf009acb2, 0x0bf4b9a6, 0x03aa980d, 0x7e01cbb5, 0xf800b65f,
0xb232f900, 0xbdb2b2a1, 0x3ef00304, 0xbf00a6f0, 0x01009019, 0x93a61ab2, 0x0a090df4, 0xa6f73e03,
0xf493a600, 0x020a091b, 0x00a6f73e, 0x00a6aa7e, 0x08f402a6, 0xfba4bddd, 0xf830f431, 0x0005dcdf,
0xbf82f900, 0x0149feff, 0xb2289990, 0xb29fa0a3, 0x00a9b3b8, 0xb0b30084, 0x47fe7f00, 0x05a49801,
0x54bd24bd, 0x779014bd, 0xa7613e24, 0x0c3a9800, 0x02bc94bd, 0xb279a0b0, 0xb65f7e7c, 0x0f79bf00,
0xf49fa6ff, 0x643d090b, 0x00a74f3e, 0x90015590, 0x04a60100, 0x33d908f4, 0x90070060, 0x24bc0111,
0x03399820, 0x18f429a6, 0xbd01060b, 0xa7523e04, 0xb24bb200, 0x16fc7e1a, 0xf45aa600, 0x1190060d,
0x06399801, 0x19a6f43d, 0x0f050cf4, 0xbd8f2001, 0xa7973ea4, 0xfe020a00, 0x99900149, 0xd99fbf28,
0x000005dc, 0xf9a699bf, 0x7e070bf4, 0xfb003a31, 0x30f40885, 0x05dcdff0, 0x82f90000, 0x49feffbf,
0x30999001, 0xa00147fe, 0x08a9989f, 0xb1b0a6b2, 0xb0f10509, 0x843d0a91, 0x779090b2, 0x0369982c,
0x7fa0f4bd, 0x08f409a6, 0x0804bd07, 0x0a90b401, 0x1bf409a6, 0x00803335, 0xa85a3e32, 0x0c6a9800,
0xb24010bc, 0x7e4bb27c, 0xbf00b65f, 0xa6ff0f79, 0x0f1bf49f, 0x09012290, 0xf439a6f1, 0x43b2051b,
0x3e011190, 0xbd00a82d, 0xbdf10314, 0x05699824, 0x08f419a6, 0x0020b3cb, 0xf429a61e, 0x60b50f18,
0x09f0b408, 0x6b3ef3a0, 0xf10f00a8, 0x1bf45fa6, 0xbc05b205, 0xdd3e0009, 0x1a0a00a7, 0x59a6f109,
0xb50d0bf4, 0x90b40865, 0xbd95a009, 0x0149fea4, 0xbf309990, 0x05dcd99f, 0x99bf0000, 0x0bf4f9a6,
0x3a317e07, 0x1085fb00, 0xd9f830f4, 0x000005dc, 0x99bf82f9, 0x90014ffe, 0xa3b228ff, 0xb4b2f9a0,
0xc033d0b2, 0xdab20e00, 0x140cb43d, 0x00b7907e, 0xbd0142fe, 0x24229014, 0xff07fe08, 0xfb05fc06,
0x00a93a3e, 0xbd0c3a98, 0xb014bc94, 0x2cb229a0, 0x00b65f7e, 0xf00f29bf, 0x0df49fa6, 0xa6fd0f56,
0x110cf49f, 0x18f496a6, 0xf495a630, 0x093e451b, 0x98a600a9, 0xa62f0bf4, 0x371bf497, 0x90010998,
0x09b50199, 0xa9373e01, 0x04099800, 0xb5019990, 0x373e0409, 0x099800a9, 0x01999002, 0x3e0209b5,
0x9800a937, 0x99900309, 0x0309b501, 0x00a9373e, 0x999009bf, 0x9009a001, 0x39980111, 0xf419a605,
0x49fe8508, 0x28999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x85fb003a, 0xf830f408,
0x0005dcdf, 0xb222f900, 0xb2ffbfa1, 0x03aa98b2, 0x49fe1bbf, 0x10999001, 0xa00140fe, 0x0c00909f,
0x5f7e0cb2, 0x0cbf00b6, 0xb2031a98, 0xb6767e2b, 0x011b9800, 0xb9a6ff09, 0x98101bf4, 0x12b50419,
0x0292b502, 0x00a9b13e, 0xb2031a98, 0xb6767e2c, 0x031a9800, 0xfd0c1bbf, 0x00b6767e, 0x900149fe,
0x12a01099, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x25fb003a, 0xc830f408, 0x0005dcdf,
0xbf82f900, 0xf830f4ff, 0x900149fe, 0x9fa06099, 0x18049992, 0xf4bd1cae, 0xa9989fa0, 0x0aa2b205,
0x0b91b005, 0x1a00e933, 0x0c2b9802, 0xfe092c98, 0xf100014a, 0xfe44aa90, 0xa6b20144, 0x8b7e2001,
0x05b200b6, 0x4490a3b2, 0xaa723e30, 0x08299800, 0x0bf439a6, 0xb22ab231, 0xb2010c3b, 0xa8887e4d,
0x04499800, 0x1f0094b3, 0xb3034998, 0x98180094, 0x94b30249, 0x49bf3b00, 0x18f491a6, 0x3e30b209,
0xb200aa65, 0x0bb0b419, 0x6ab291b2, 0x00b6a47e, 0x35a6a3b2, 0x0ab91bf4, 0xf503a603, 0xb301a30b,
0xb20c0014, 0x3e743d03, 0xb200aa8f, 0x94010703, 0x54bd0738, 0x9b3e86b2, 0x2a9800ab, 0xbce4bd0c,
0x4cfe1053, 0x16e1b001, 0xb258cc90, 0xb65f7e1b, 0x00adb300, 0x90b400f3, 0xa6f00f16, 0xd80cf59f,
0xb294bd00, 0x1591b02a, 0x00a5ea7e, 0xa9b3a4b2, 0xbf00d600, 0x4c6bb22a, 0x4db20080, 0x00b7797e,
0xadb3a0b2, 0xb200a700, 0xb21bb22a, 0x014dfe4c, 0x7e50dd90, 0xb200a4be, 0x00adb3a0, 0x2ab20090,
0x0c014b90, 0x014dfe01, 0x7e54dd90, 0xb200a640, 0x00a4b3a0, 0x15b0b478, 0xfe0c2c98, 0xaa90014a,
0xa6287e30, 0x0c90b400, 0x1bf491a6, 0x14b0b41e, 0x90014afe, 0x5d7e30aa, 0x90b400a9, 0x059f9815,
0x2300f4b3, 0x00ab893e, 0x9ea6ef0e, 0x00090df4, 0xab893e03, 0x014afe00, 0x7e30aa90, 0x3e00a6aa,
0x9800ab25, 0xe0b402f9, 0xf491a614, 0xfeb5061b, 0xa6f9bf02, 0x091bf491, 0x893efea0, 0xf99800ab,
0xf491a601, 0xfeb5061b, 0xb24bb201, 0xa60c7e2a, 0x0004b300, 0x01559013, 0x98806690, 0x59a60529,
0xfefa08f5, 0x46007033, 0xb2042f98, 0xb2e4bd8d, 0x00f1b02a, 0x70dc020b, 0xfe000000, 0x11900141,
0x0111b05c, 0x00a5e47e, 0xbf042c98, 0x048bb22a, 0xb74b7efb, 0x981ebf00, 0xa0b2042c, 0x2ab2b4bd,
0xe67e0db2, 0x04b300a5, 0xff040600, 0x013e04bd, 0x2a9800ac, 0xb003bc0c, 0x00904cb2, 0xb6767e01,
0x0b90b400, 0x08f409a6, 0x032f98ec, 0xb59039bc, 0x9fa60929, 0xbd0808f4, 0x0929b594, 0x49fea4bd,
0x60999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b, 0x30f4003a, 0x3885fb08, 0xd9cc30f4,
0x000005dc, 0x99bf82f9, 0xfef830f4, 0xff90014f, 0xb0f9a05c, 0xc8b20be1, 0xa3b2d6b2, 0x8400b9b3,
0x00e9b302, 0xaf18027f, 0x0141fe2c, 0x119094bd, 0x0019a054, 0x00f93303, 0xc43d026d, 0x407e1db2,
0xa0b200a6, 0x5e00adb3, 0xbc17bf02, 0x7998f068, 0xf59fa601, 0x98024d08, 0x94b30479, 0x05000a01,
0x00aee23e, 0x3e0069b3, 0x027f9802, 0xf9a6f009, 0x022a0bf5, 0xea7e3ab2, 0xa2b200a5, 0x1e00a9b3,
0x0c3c9802, 0x40fe7bb2, 0x34009001, 0x287e0ab2, 0x0ab200a6, 0xcc0570b5, 0xc17e708b, 0xa0b200a6,
0xe900adb3, 0x0d00b401, 0x01a6f001, 0x01ce0bf5, 0x01d00cf5, 0x804cb43d, 0x7e2ab200, 0xbf00b790,
0x070b943a, 0xb200804c, 0xb7797e2d, 0x0ca1b000, 0xb600adb3, 0x05291801, 0x76042f18, 0xf4f00894,
0xe59fffff, 0xe966ff09, 0x01980bf5, 0xffffe9e4, 0x08f589a6, 0xf4bd018e, 0x18902fbc, 0x9d330999,
0x90018200, 0xf4b301ff, 0xfc3ef207, 0x8e3c00ae, 0xf59f26f2, 0xc4016d08, 0x94f0fffd, 0x529dbcff,
0x0df456a6, 0x9065b205, 0xe4bd10d9, 0x3db029bc, 0x3ec43da4, 0xb100ada7, 0xf5006fd6, 0xb401450c,
0xbe3c0b10, 0xf81e3c98, 0x0bf4f926, 0xff94f017, 0xfd009939, 0x9033049f, 0x010a0600, 0x0ce9bf3c,
0x01ee9001, 0xa601dd90, 0xce08f4e5, 0xed00c933, 0xf0293f00, 0x0bf40894, 0x00a93308, 0x94bd00d0,
0x91b03ab2, 0x1391b014, 0x301291b0, 0x4bfe5b91, 0x5bbb9001, 0x00a6f97e, 0xadb3a0b2, 0x3400ef00,
0x90335b90, 0x3ab21100, 0x00a9d97e, 0xadb3a0b2, 0xb400db00, 0x40b40d00, 0x014ffe11, 0xb250ff90,
0x070d942e, 0x4101f1b0, 0x3ab20080, 0x4cb2010b, 0x7e0011b0, 0xb200a5e4, 0xb22cb20b, 0x014dfe3a,
0x7e4cdd90, 0xb400a4be, 0xa0b214e0, 0x3ab21cb2, 0x0db2b4bd, 0x00a5e67e, 0x91000db3, 0x13b0b400,
0x90014afe, 0x5d7e34aa, 0x3a9800a9, 0x0db0b40c, 0x90014cfe, 0x5f7e48cc, 0xa0b200b6, 0x6d00a4b3,
0x011290b4, 0xf491a6f0, 0x4e98321b, 0x70efcd01, 0x0600f4b3, 0x2918700f, 0xff94f006, 0xbb909ebc,
0x49b5029f, 0xae993e01, 0xb20bb200, 0x7e2cb23a, 0xb200a43f, 0x00a4b3a0, 0x0265bb34, 0x90014afe,
0xaa7e34aa, 0x60b300a6, 0x90b42000, 0x8085bc0b, 0xb09095bc, 0xe53e0b91, 0x020000ac, 0x00aec93e,
0xc93e0300, 0x00b400ae, 0xb23ab20c, 0xa60c7e2b, 0xb594bd00, 0xe23e0579, 0x030000ae, 0x00aee23e,
0x49fe0200, 0x5c999001, 0xdcd99fbf, 0xbf000005, 0xa60ab299, 0x170bf4f9, 0x00af083e, 0x33062918,
0xfe4f009d, 0x00aec03e, 0x003a317e, 0xfb0830f4, 0x30f43485, 0x05dcdfdc, 0x82f90000, 0x30f4ffbf,
0x0149fef8, 0xa04c9990, 0x0bb1b09f, 0xd4b2c2b2, 0xa5b2e6b2, 0x1700b9b3, 0x00e9b301, 0x94bd0112,
0x3d0141fe, 0x481190c4, 0x1db219a0, 0x00a6407e, 0xadb3a0b2, 0xbf00fb00, 0xf042bc19, 0xa6019998,
0xea08f59f, 0x005ab200, 0xa5ea7e03, 0xb3a3b200, 0x00de00a9, 0x5c981bbf, 0x0140fe0c, 0xb2300090,
0xa6287e0a, 0xcc0ab200, 0xc17e702b, 0xa8b200a6, 0xad00adb3, 0x7021cd00, 0x420147fe, 0x77900080,
0xb0383e44, 0x0c00b400, 0x79a094bd, 0x09a6f009, 0x00091bf4, 0xb03f3e02, 0xa6f00900, 0x090df409,
0x3f3e0300, 0xc0b400b0, 0x0704b60b, 0x0db2e4bd, 0xb4bd5ab2, 0xb00021b0, 0xe47e0171, 0x5abf00a5,
0x2cb20bb2, 0x797e3db2, 0x7ebf00b7, 0x3bb2a0b2, 0x2cb25ab2, 0xe67e0db2, 0x04b300a5, 0x3ab24500,
0x117eb4bd, 0xa0b200a4, 0x3700a4b3, 0x01bb7000, 0xf404a602, 0x40b2050d, 0xb2101b90, 0xb03bbc6a,
0x997e0cb2, 0x4afe00b7, 0x0240bb01, 0xbc30aa90, 0xaa7e6060, 0x14bd00a6, 0x6d004db3, 0xb280b2ff,
0x7e3bb25a, 0x3e00a60c, 0x0000b04d, 0x0149fe02, 0xbf4c9990, 0x05dcd99f, 0x99bf0000, 0xf9a60ab2,
0x7e070bf4, 0xf4003a31, 0x85fb0830, 0xf830f424, 0x0005dcd9, 0xbf32f900, 0x014ffe99, 0xb214ff90,
0xbdf9a0a1, 0xb2b2b294, 0x0140fec3, 0x9003204b, 0x09a01000, 0x9f7e0ab2, 0x09bf00b7, 0x4c0090b3,
0x4800a4b3, 0x09bf91a0, 0xbf0192b5, 0x1000490f, 0xbf04f9b5, 0xb520090f, 0x09bf05f9, 0xbf0693b5,
0x3501090f, 0x09bf1cf9, 0xbf2c9a35, 0xb5f0090f, 0x0fbf0af9, 0xb540f990, 0x0fbf0ef9, 0xb5c0f990,
0x0abf0ff9, 0x00b0ea3e, 0x49fea4bd, 0x14999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699, 0x317e070b,
0x35fb003a, 0xd030f408, 0x0005dcdf, 0xbf82f900, 0x0149feff, 0xb2509990, 0x059fa0a3, 0x00a9b302,
0xb63004fb, 0x0b9cf000, 0xbd2ca935, 0x0ca9b594, 0x00a5ea7e, 0x3abfa0b2, 0x804cb4bd, 0x7e0db200,
0xb200b779, 0x00adb3a5, 0x093f04b1, 0xa24a9d33, 0x01091804, 0x9a469d33, 0x02091804, 0x92469d33,
0x03091804, 0x8a539d33, 0x040e1804, 0x18050918, 0x0d18060f, 0xffe4f007, 0xf0ff94f0, 0x94b6fff4,
0x10f4b608, 0xb6059efd, 0xf9fd18d4, 0x05dffd05, 0x045e0bf5, 0xd6b00505, 0x5d0cf503, 0x013db504,
0x0e01d4b3, 0xb5500049, 0xd83e0239, 0x0d1800b1, 0x09091808, 0x180a0f18, 0xd4f00b0e, 0xff94f0ff,
0xb6fff4f0, 0xf4b60894, 0x059dfd10, 0xfd18e4b6, 0xeffd05f9, 0x023eb505, 0x0bb23ab2, 0x00a60c7e,
0x09023a98, 0xf4a9a6ff, 0x04bd091b, 0x00b5ee3e, 0x9007a5b6, 0x3ab5303b, 0xb6d27e03, 0xb3a5b200,
0x03f500ad, 0x09033b98, 0x343a90c0, 0xfd3fbb90, 0xb5b604b9, 0xb79f7e03, 0xb3a5b200, 0x03d900ad,
0xfe0147fe, 0x77900148, 0x9044bd40, 0x88900179, 0x0991b03c, 0x00b3483e, 0x8ea0e4bd, 0x0f0044b3,
0xbd0c3a98, 0x3efe0cb4, 0xb200b26b, 0xb24bb23a, 0xa5797e7c, 0xb3a5b200, 0x039d00ad, 0x94f0793f,
0x120bf401, 0xb20c3a98, 0x7eff0c4b, 0x3e00b676, 0xb200b345, 0xa3307e7a, 0x00a0b300, 0x0c3a980f,
0xfd0c4bb2, 0x00b26b3e, 0x94f0793f, 0x0e1bf402, 0xb20c3a98, 0x3efd0c4b, 0xb400b33a, 0x3ab209b0,
0x8db2010c, 0x00a6407e, 0x5d00a0b3, 0x3fb2793f, 0x99c724bd, 0x01999002, 0x980a91b0, 0x54b354f5,
0xb0b43900, 0x0022bc09, 0x02bc030c, 0x0304b600, 0x014001b8, 0x1031bc00, 0x997e1ab2, 0x30bc00b7,
0x4309b800, 0x95200001, 0xb45302b5, 0x0fb50af0, 0x3e81a054, 0x9000b305, 0xff900122, 0x1424b318,
0xb6323ebe, 0x3f8ebf00, 0x027f5879, 0x98077d18, 0x3a9803ee, 0x0299c70d, 0xcc00f3f0, 0x96cb70ff,
0xcb4bb21f, 0x010cd8e6, 0xebf0d6cb, 0x7e01e0f6, 0x9800a2e6, 0x4bb20c3a, 0x767e6cb2, 0xa5b200b6,
0xb400adb3, 0x01449002, 0xa6033b98, 0xeb08f54b, 0xbc94bdfe, 0x89a0b0bb, 0xb57e8ab2, 0xa5b200b7,
0x9400adb3, 0xbd37b202, 0x547f9884, 0xbc9088bc, 0x94b69098, 0x4099b803, 0x39bc0001, 0x0b91b090,
0x5300f9b3, 0x033c9802, 0x3d0fa0b4, 0xbc24bdb4, 0x44bdc0cc, 0x00b7907e, 0x3e0f60b4, 0x9800b463,
0x2bb20d3a, 0x7e0c41b0, 0x3300a2f6, 0x00b500a9, 0xfe0c3a98, 0x2bb2014c, 0x7e38cc90, 0xb300b65f,
0x020c00ad, 0xb40be0b4, 0xef980e90, 0xd899c703, 0x1bf59fa6, 0x3a98008e, 0x0c2bb20d, 0xa2ee7e01,
0x014cfe00, 0x2bb23ab2, 0x7e30cc90, 0xb300a594, 0x981306a4, 0x2bb20c3a, 0x767efd0c, 0x603e00b6,
0xadb300b4, 0x7401cb00, 0x93f01c90, 0x9099bc00, 0x7f0069bc, 0xff19e401, 0x091bf4ff, 0x603e0260,
0x3a9800b4, 0x014cfe0c, 0xffff1be4, 0x7e34cc90, 0xb300b65f, 0x019800ad, 0x343af034, 0xf9263690,
0x60100df4, 0xff1be402, 0x0c3a98ff, 0x00b4553e, 0xb20c3a98, 0x7efd0c2b, 0xb300b676, 0x017000ad,
0x98012290, 0x2aa6033a, 0xff3708f5, 0x6eb264b2, 0xd43db43d, 0xc4bdf4bd, 0x00b4973e, 0x9473e97f,
0x010d0a00, 0x00b4913e, 0x0600d033, 0xcc90010b, 0x01ff9001, 0xa602ee90, 0xe308f4fa, 0x0b00c4b3,
0x3e547cb5, 0x3300b5d3, 0x00a600b9, 0xb0013998, 0x0cf40296, 0xb2030930, 0x5479b56d, 0xf4bde4bd,
0x00b4d63e, 0x9073d97f, 0x697c0a00, 0x01ee90e9, 0x9001ff90, 0x399802dd, 0xf4f9a603, 0x4d3ee908,
0x94bd00b5, 0x79b5f101, 0xb224bd54, 0xb5273e1b, 0xe4407f00, 0xf4ffff09, 0xf10f260b, 0x1bf4bfa6,
0xff0be40b, 0xb51f3eff, 0x0c3a9800, 0xffff0ce4, 0x00b6767e, 0xb900adb3, 0xff0be400, 0x9019b2ff,
0x44900122, 0x9891b202, 0x29a60339, 0x09c508f4, 0xf5b9a6f1, 0x9800a00b, 0x3c980c3a, 0xb6767e0a,
0x00adb300, 0x31b5008c, 0xb5d33e0a, 0xbd6f7f00, 0x01c19294, 0xf05179b5, 0x04bd00f3, 0x3e527fb5,
0x7f00b58b, 0x014c584b, 0x900c3a98, 0xb3f00100, 0x00c3f000, 0x7e024490, 0xb300b676, 0xb45200a4,
0xe9980be0, 0x70999001, 0xa601e9b5, 0xd608f401, 0x9808607c, 0xf00c0c3a, 0xffff0be4, 0x00b6767e,
0x2d00a4b3, 0xe4014cfe, 0xb2ffff0b, 0x40cc903a, 0x00a5797e, 0x1900a4b3, 0x98469034, 0x94f0517f,
0xf0f9bcff, 0x3e517fb5, 0x0a00b5d3, 0x3ea5b203, 0x9000b5de, 0x77900188, 0x148db318, 0x49fefd90,
0x3c999001, 0x497e9abf, 0xf43e00b7, 0x030500b5, 0x00b5f63e, 0x0bb204bd, 0x0c7e3ab2, 0x50b300a6,
0x3a981a00, 0x7e04bd0c, 0x9800b6c8, 0x30b50d3a, 0xb7497e0c, 0x0d30b500, 0x900149fe, 0x9fbf5099,
0x0005dcd9, 0xb299bf00, 0xf4f9a65a, 0x383e110b, 0x010500b6, 0x00b5f43e, 0x003a317e, 0xf93085fb,
0x7ea0b202, 0x9800a5e8, 0xc87e0c0a, 0x0a9800b6, 0xb7497e0d, 0x7e0ab200, 0xbd00b749, 0xbf01fba4,
0x0aafb2a9, 0xf4b9a602, 0xb9900d18, 0x98f9bc01, 0xc9a0a4bd, 0xa9bf00f8, 0x020aafb2, 0x18f4b9a6,
0x01b9900b, 0xfcbca4bd, 0xbf00f899, 0xb2afb2b9, 0xf4c9a6ca, 0xf10a0708, 0xfbb500f8, 0xb5fca002,
0x00f801fc, 0xaf98a9bf, 0x90b9bc02, 0xfbbfa9a0, 0x08f49ba6, 0x029bbb08, 0xa998a9a0, 0xa6aabf01,
0x051bf4a9, 0x00f8f10a, 0x0800a0b3, 0x00b7497e, 0x30f400f8, 0x05dcdff8, 0x32f90000, 0x49feffbf,
0x14999001, 0x9fa0a0b2, 0xa0b3b3b2, 0xfd024200, 0x0cf4a2a6, 0x01ab903a, 0xb60141fe, 0x119002b4,
0x7e1ab210, 0xb300b7b5, 0xbf2700a4, 0xb21db219, 0xa0e4bd2c, 0x90dfbf90, 0x9eb201e9, 0xa699fcbc,
0xf408f490, 0x3da0ddbf, 0x00b72e3e, 0x49fe020a, 0x14999001, 0xdcd99fbf, 0xbf000005, 0xf4f9a699,
0x317e070b, 0x35fb003a, 0xda00f808, 0x00002944, 0x0041c77e, 0xf000a630, 0xa6f00bac, 0x01aab901,
0x44da00f8, 0x7e000029, 0x30004142, 0xacf000a6, 0x01a6f00b, 0xf801aab9, 0x2944da00, 0xd77e0000,
0xa6300042, 0x0bacf000, 0xb901a6f0, 0x00f801aa, 0x7effb4f0, 0xf8000b94, 0x0b7e7e00, 0xf900f800,
0x3da0b202, 0x384c7ea4, 0x00a6b000, 0xa00b9cf0, 0xfb9ab20a, 0xb202f901, 0x7ea43da0, 0xb000382a,
0x9cf000a6, 0xb20aa00b, 0xf401fb9a, 0xdcdfe430, 0xf9000005, 0xfeffbf82, 0x45fe0149, 0x3c999001,
0xa00147fe, 0x2455909f, 0xd9347790, 0x0000141c, 0x4bfe9abf, 0x90080c01, 0xff0d2cbb, 0x0000c17e,
0xeb00a433, 0x3f0c30b4, 0x0c943339, 0x043118e2, 0x0f001033, 0xb0011933, 0x3e043d00, 0x9800b971,
0x2cd9023f, 0x98000014, 0x34580431, 0x3f5fa00a, 0x0339989f, 0xb5183690, 0xff090159, 0xf43379a0,
0xf77e1800, 0xa0320032, 0x2900ad33, 0xdf010901, 0x0000142c, 0x1272f920, 0xbd0043f0, 0xb8b13e14,
0x0241bc00, 0x010006b1, 0x40060df4, 0x947e0100, 0x24d9000b, 0xbf000014, 0xff2ce49a, 0xb26bb2ff,
0x1300de0d, 0x127e0000, 0x7aa000af, 0xd400adb3, 0x985bbf00, 0x1d90015c, 0x7c0eb204, 0x10bc2020,
0x1300da10, 0x367e0000, 0xa0320021, 0xc500ad33, 0x4cb4bd00, 0x00da0100, 0xa6000013, 0xa408f414,
0x00b9603e, 0xd9023f98, 0x0000142c, 0x58043498, 0x5fa00a32, 0x39989f3f, 0x18389003, 0x090159b5,
0x3379a0ff, 0x7e1600f4, 0x320032f7, 0x00ad33a0, 0x2cdf0084, 0x20000014, 0xff26e4f1, 0x3e24bdff,
0xbc00b951, 0x16b11262, 0x0df40100, 0x01004106, 0x000b947e, 0x5c985bbf, 0x042d9001, 0x00da1eb2,
0x7e000013, 0xe40020d0, 0xbcffff4c, 0xa0322021, 0x1db28bb2, 0x001300de, 0x40417c00, 0x3500a433,
0x001424d9, 0x7e9abf00, 0xa000ac3c, 0x00a4b37a, 0x4cb4bd13, 0x00da0100, 0xa6000013, 0xa608f426,
0x5c985bbf, 0xbd7ab201, 0x7e040ed4, 0x32002136, 0x2db034a0, 0x817e3ab2, 0x0d33000f, 0x30fe7100,
0x020f3a01, 0x1838f130, 0x04090333, 0x30014afe, 0x31303991, 0x90b4bd3b, 0x717e38aa, 0xeb3e000f,
0x02f900b7, 0x002930d9, 0xbfa0b200, 0x7e640b9a, 0x090000de, 0x00a43310, 0xa6008961, 0x009fcf02,
0x1000f5f1, 0x8a009ff6, 0x4b02a600, 0xc4bd1000, 0xbd27104d, 0x198b7ee4, 0x00a43300, 0x2930d915,
0x9abf0000, 0x00009b7e, 0x163e0409, 0x0ab200ba, 0x7e03e84b, 0x890016fc, 0xb802a400, 0x000200aa,
0x920aa5b6, 0x9af601aa, 0x01114f00, 0x020099b8, 0x009ff600, 0x9a32943d, 0x000001fb, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -1570,11 +1570,11 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x00000000, 0x00000001, 0x0000000e, 0x00000000, 0x08000000, 0x08400000, 0x08800000, 0x08c300a7,
0x09000000, 0x09400000, 0x09800000, 0x09c00000, 0x0a01c000, 0x0a404038, 0x0a804040, 0x0ac04048,
0x0b004050, 0x0b420058, 0x0b8201ab, 0x11800000, 0x11c00000, 0x12000000, 0x12400000, 0x12800000,
0x12c00000, 0x00000001, 0x00001c08, 0x00101c09, 0x00201c0a, 0x0000bd08, 0x00209d09, 0x00309d0a,
0x00011f08, 0x00113e09, 0x00311e0a, 0x00010309, 0x00000000, 0x0000ffff, 0x00003b00, 0x46020f1f,
0x43010f1f, 0x44020f1f, 0x45020f1f, 0x601207ef, 0x601307ef, 0x601407ef, 0x601507ef, 0x801607ef,
0x253207c2, 0x25330fc2, 0x25340fc2, 0x25350fc2, 0x1152079d, 0x1253079d, 0x7014079d, 0x7015079d,
0x601203c8, 0x601307c8, 0x601407c8, 0xbb150720, 0x02172701, 0x00000000, 0x00000000, 0x00000000,
0x12c00000, 0x00000000, 0x00000000, 0x00000001, 0x00001c08, 0x00101c09, 0x00201c0a, 0x0000bd08,
0x00209d09, 0x00309d0a, 0x00011f08, 0x00113e09, 0x00311e0a, 0x00010309, 0x00000000, 0x0000ffff,
0x00003b00, 0x46020f1f, 0x43010f1f, 0x44020f1f, 0x45020f1f, 0x601207ef, 0x601307ef, 0x601407ef,
0x601507ef, 0x801607ef, 0x253207c2, 0x25330fc2, 0x25340fc2, 0x25350fc2, 0x1152079d, 0x1253079d,
0x7014079d, 0x7015079d, 0x601203c8, 0x601307c8, 0x601407c8, 0xbb150720, 0x02172701, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -2269,8 +2269,8 @@ const NvU32 soe_ucode_data_lr10_prd[] = {
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xb32dc4cc, 0x58018cca, 0x7c52cad0, 0x4a5277fe, 0x1289f13d, 0xdc6acca2, 0x50be285c, 0xd086f67e,
0x705ea2e7, 0x0577e70f, 0xcf75f41f, 0xfe6e071a, 0xc901a2e3, 0xd0a96e16, 0x4a0da134, 0xc2405c59,
0xf0cc97fc, 0xc5e27e17, 0x63cc4ffc, 0xc48564fa, 0x979b9cb7, 0x7359186e, 0x8b211603, 0x878da8fe,
0x956b7a40, 0x90bcaaf7, 0xdea25edb, 0x9aaef423, 0x269562e0, 0x626d8a06, 0xc3df044b, 0x11ecee8e,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,

View File

@@ -1,5 +1,5 @@
/*
* SPDX-FileCopyrightText: Copyright (c) 2018-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* SPDX-FileCopyrightText: Copyright (c) 2018-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* SPDX-License-Identifier: MIT
*
* Permission is hereby granted, free of charge, to any person obtaining a

View File

@@ -28,6 +28,7 @@
#include "regkey_nvswitch.h"
#include "lr10/lr10.h"
#include "lr10/minion_lr10.h"
#include "lr10/pmgr_lr10.h"
#include "nvswitch/lr10/dev_nvldl_ip.h"
#include "nvswitch/lr10/dev_nvldl_ip_addendum.h"
@@ -42,6 +43,45 @@
#include "nvswitch/lr10/dev_nvlipt_ip.h"
#include "nvswitch/lr10/dev_nport_ip.h"
#define NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK 8 // This must be incremented if any entries are added to the array below
lr10_links_connected_to_disabled_remote_end nvswitchDisconnetedRemoteLinkMasks[] =
{
{
0x8, // switchPhysicalId
0x56A000500 //linkMask
},
{
0x9, // switchPhysicalId
0x509009900 //linkMask
},
{
0xb, // switchPhysicalId
0x56A000600 //linkMask
},
{
0xc, // switchPhysicalId
0x4A9009400 //linkMask
},
{
0x18, // switchPhysicalId
0x56A000500 //linkMask
},
{
0x19, // switchPhysicalId
0x509009900 //linkMask
},
{
0x1b, // switchPhysicalId
0x56A000600 //linkMask
},
{
0x1c, // switchPhysicalId
0x4A9009400 //linkMask
},
};
ct_assert(sizeof(nvswitchDisconnetedRemoteLinkMasks)/sizeof(lr10_links_connected_to_disabled_remote_end) == NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK);
void
nvswitch_setup_link_loopback_mode_lr10
(
@@ -799,6 +839,23 @@ nvswitch_corelib_set_dl_link_mode_lr10
return -NVL_UNBOUND_DEVICE;
}
if (nvswitch_does_link_need_termination_enabled(device, link))
{
if (mode == NVLINK_LINKSTATE_INITPHASE1)
{
status = nvswitch_link_termination_setup(device, link);
if (status != NVL_SUCCESS)
{
NVSWITCH_PRINT(device, ERROR,
"%s: Failed to enable termination on link #%d\n", __FUNCTION__, link->linkNumber);
}
}
// return SUCCESS to avoid errors being propogated
return NVL_SUCCESS;
}
switch (mode)
{
case NVLINK_LINKSTATE_SAFE:
@@ -872,7 +929,7 @@ nvswitch_corelib_set_dl_link_mode_lr10
NVSWITCH_PRINT(device, ERROR,
"%s: link #%d is still in reset, cannot change link state\n",
__FUNCTION__, link->linkNumber);
return NVL_ERR_INVALID_STATE;
return -NVL_ERR_INVALID_STATE;
}
val = NVSWITCH_LINK_RD32_LR10(device, link->linkNumber, NVLDL, _NVLDL_TOP, _LINK_STATE);
@@ -1233,6 +1290,15 @@ nvswitch_corelib_set_tl_link_mode_lr10
return -NVL_UNBOUND_DEVICE;
}
if (nvswitch_does_link_need_termination_enabled(device, link))
{
NVSWITCH_PRINT(device, INFO,
"%s: link #% is connected to a disabled remote end. Skipping TL link mode request!\n", __FUNCTION__, link->linkNumber);
// return SUCCESS to avoid errors being propogated
return NVL_SUCCESS;
}
switch (mode)
{
case NVLINK_LINKSTATE_RESET:
@@ -1351,6 +1417,15 @@ nvswitch_corelib_set_tx_mode_lr10
return -NVL_UNBOUND_DEVICE;
}
if (nvswitch_does_link_need_termination_enabled(device, link))
{
NVSWITCH_PRINT(device, INFO,
"%s: link #% is connected to a disabled remote end. Skipping TX mode request!\n", __FUNCTION__, link->linkNumber);
// return SUCCESS to avoid errors being propogated
return NVL_SUCCESS;
}
// check if link is in reset
if (nvswitch_is_link_in_reset(device, link))
{
@@ -1614,6 +1689,15 @@ nvswitch_corelib_set_rx_mode_lr10
return -NVL_UNBOUND_DEVICE;
}
if (nvswitch_does_link_need_termination_enabled(device, link))
{
NVSWITCH_PRINT(device, INFO,
"%s: link #% is connected to a disabled remote end. Skipping RX mode request!\n", __FUNCTION__, link->linkNumber);
// return SUCCESS to avoid errors being propogated
return NVL_SUCCESS;
}
// check if link is in reset
if (nvswitch_is_link_in_reset(device, link))
{
@@ -1824,6 +1908,15 @@ nvswitch_corelib_set_rx_detect_lr10
NvlStatus status;
nvswitch_device *device = link->dev->pDevInfo;
if (nvswitch_does_link_need_termination_enabled(device, link))
{
NVSWITCH_PRINT(device, INFO,
"%s: link #% is connected to a disabled remote end. Skipping RxDet request!\n", __FUNCTION__, link->linkNumber);
// return SUCCESS to avoid errors being propogated
return NVL_SUCCESS;
}
status = nvswitch_minion_send_command(device, link->linkNumber,
NV_MINION_NVLINK_DL_CMD_COMMAND_TURING_RXDET, 0);
@@ -2081,6 +2174,7 @@ nvswitch_setup_link_system_registers_lr10
NvU32 lineRate = 0;
NVLINK_CONFIG_DATA_LINKENTRY *vbios_link_entry = NULL;
NVSWITCH_BIOS_NVLINK_CONFIG *bios_config;
NvU32 base_entry;
bios_config = nvswitch_get_bios_nvlink_config(device);
if ((bios_config == NULL) || (bios_config->bit_address == 0))
@@ -2101,14 +2195,17 @@ nvswitch_setup_link_system_registers_lr10
}
else
{
vbios_link_entry = &bios_config->link_vbios_entry[bios_config->link_base_entry_assigned][link->linkNumber];
base_entry = bios_config->link_base_entry_assigned;
vbios_link_entry = &bios_config->link_vbios_entry[base_entry][link->linkNumber];
}
regval = NVSWITCH_LINK_RD32_LR10(device, link->linkNumber, NVLIPT_LNK,
_NVLIPT_LNK_CTRL_SYSTEM_LINK, _CLK_CTRL);
// LINE_RATE SYSTEM register
if (device->regkeys.nvlink_speed_control != NV_SWITCH_REGKEY_SPEED_CONTROL_SPEED_DEFAULT)
{
regval = NVSWITCH_LINK_RD32_LR10(device, link->linkNumber, NVLIPT_LNK,
_NVLIPT_LNK_CTRL_SYSTEM_LINK, _CLK_CTRL);
lineRate = _nvswitch_get_nvlink_linerate_lr10(device, device->regkeys.nvlink_speed_control);
regval = FLD_SET_DRF_NUM(_NVLIPT_LNK_CTRL_SYSTEM_LINK, _CLK_CTRL,
_LINE_RATE, lineRate, regval);
@@ -2379,3 +2476,109 @@ nvswitch_reset_and_train_link_lr10
{
return NVL_ERR_NOT_IMPLEMENTED;
}
NvBool
nvswitch_does_link_need_termination_enabled_lr10
(
nvswitch_device *device,
nvlink_link *link
)
{
#if defined(INCLUDE_NVLINK_LIB)
NvU32 i;
NvU32 physicalId;
lr10_device *chip_device;
physicalId = nvswitch_read_physical_id(device);
chip_device = NVSWITCH_GET_CHIP_DEVICE_LR10(device);
if (chip_device == NULL)
{
NVSWITCH_PRINT(device, ERROR,
"%s: Failed to get lr10 chip device!\n", __FUNCTION__);
return NV_FALSE;
}
//
// If disabledRemoteEndLinkMask has not been cached then
// using the switch's physicalId search nvswitchDisconnetedRemoteLinkMasks
// til a match is found then copy out the linkMask to the chip_device
// Only run this operation if there is a registed device with a reduced
// nvlink config
//
if (chip_device->bDisabledRemoteEndLinkMaskCached == NV_FALSE)
{
chip_device->disabledRemoteEndLinkMask = 0;
if (nvlink_lib_is_registerd_device_with_reduced_config())
{
for (i = 0; i < NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK; ++i)
{
if (nvswitchDisconnetedRemoteLinkMasks[i].switchPhysicalId == physicalId)
{
chip_device->disabledRemoteEndLinkMask =
nvswitchDisconnetedRemoteLinkMasks[i].linkMask;
break;
}
}
}
chip_device->bDisabledRemoteEndLinkMaskCached = NV_TRUE;
}
// return NV_TRUE if the link is inside of disabledRemoteEndLinkMask
return ((BIT64(link->linkNumber) & chip_device->disabledRemoteEndLinkMask) != 0);
#else
return NV_FALSE;
#endif //defined(INCLUDE_NVLINK_LIB)
}
NvlStatus
nvswitch_link_termination_setup_lr10
(
nvswitch_device *device,
nvlink_link* link
)
{
NvlStatus status;
NvU32 linkId = link->linkNumber;
// Sanity check
if ((link == NULL) ||
(linkId >= NVSWITCH_NVLINK_MAX_LINKS) ||
!NVSWITCH_IS_LINK_ENG_VALID_LR10(device, NVLDL, linkId))
{
NVSWITCH_PRINT(device, ERROR, "%s: Link %d is invalid!\n", __FUNCTION__, linkId);
return NVL_BAD_ARGS;
}
// Sanity check nvlink version
if (link->version != NVLINK_DEVICE_VERSION_30)
{
NVSWITCH_PRINT(device, ERROR, "%s: Link %d: only nvlink version 3.0 can run the termination setup\n",
__FUNCTION__, linkId);
return NVL_BAD_ARGS;
}
// Send INITPHASE1 to the link
status = nvswitch_minion_send_command_lr10(device, link->linkNumber,
NV_MINION_NVLINK_DL_CMD_COMMAND_INITPHASE1, 0);
if (status != NVL_SUCCESS)
{
NVSWITCH_PRINT(device, ERROR, "%s: Failed to send initphase1 to link %d", __FUNCTION__, linkId);
return NVL_ERR_INVALID_STATE;
}
// Send INITRXTXTERM to the link
nvswitch_minion_send_command_lr10(device, link->linkNumber,
NV_MINION_NVLINK_DL_CMD_COMMAND_INITRXTXTERM, 0);
if (status != NVL_SUCCESS)
{
NVSWITCH_PRINT(device, ERROR, "%s: Failed to send INITRXTXTERM to link %d", __FUNCTION__, linkId);
}
NVSWITCH_PRINT(device, INFO,
"%s: enabled termination for switchPhysicalId %d link# %d\n",
__FUNCTION__, nvswitch_read_physical_id(device), linkId);
return NVL_SUCCESS;
}

View File

@@ -22,6 +22,7 @@
*/
#include "common_nvswitch.h"
#include "bios_nvswitch.h"
#include "error_nvswitch.h"
#include "regkey_nvswitch.h"
#include "haldef_nvswitch.h"
@@ -3855,7 +3856,7 @@ nvswitch_initialize_device_state_lr10
}
else
{
NVSWITCH_PRINT(device, ERROR,
NVSWITCH_PRINT(device, WARN,
"%s: Skipping SPI init.\n",
__FUNCTION__);
}
@@ -3874,7 +3875,7 @@ nvswitch_initialize_device_state_lr10
}
else
{
NVSWITCH_PRINT(device, ERROR,
NVSWITCH_PRINT(device, WARN,
"%s: Skipping SMBPBI init.\n",
__FUNCTION__);
}
@@ -3981,7 +3982,7 @@ nvswitch_link_lane_reversed_lr10
nvlink_link *link;
link = nvswitch_get_link(device, linkId);
if (nvswitch_is_link_in_reset(device, link))
if ((link == NULL) || nvswitch_is_link_in_reset(device, link))
{
return NV_FALSE;
}
@@ -4579,26 +4580,6 @@ _nvswitch_get_info_revision_minor_ext
return (DRF_VAL(_PSMC, _BOOT_42, _MINOR_EXTENDED_REVISION, val));
}
static NvU32
_nvswitch_get_info_voltage
(
nvswitch_device *device
)
{
NvU32 voltage = 0;
return voltage;
}
static NvBool
_nvswitch_inforom_nvl_supported
(
nvswitch_device *device
)
{
return NV_FALSE;
}
static NvBool
_nvswitch_inforom_bbx_supported
(
@@ -4769,7 +4750,7 @@ nvswitch_ctrl_get_info_lr10
p->info[i] = device->switch_pll.vco_freq_khz;
break;
case NVSWITCH_GET_INFO_INDEX_VOLTAGE_MVOLT:
p->info[i] = _nvswitch_get_info_voltage(device);
retval = -NVL_ERR_NOT_SUPPORTED;
break;
case NVSWITCH_GET_INFO_INDEX_PHYSICAL_ID:
p->info[i] = nvswitch_read_physical_id(device);
@@ -6323,7 +6304,6 @@ nvswitch_get_nvlink_ecc_errors_lr10
NvU32 sublinkWidth;
link = nvswitch_get_link(device, i);
sublinkWidth = device->hal.nvswitch_get_sublink_width(device, i);
if ((link == NULL) ||
!NVSWITCH_IS_LINK_ENG_VALID_LR10(device, NVLDL, link->linkNumber) ||
@@ -6332,6 +6312,8 @@ nvswitch_get_nvlink_ecc_errors_lr10
return -NVL_BAD_ARGS;
}
sublinkWidth = device->hal.nvswitch_get_sublink_width(device, i);
minion_enabled = nvswitch_is_minion_initialized(device,
NVSWITCH_GET_LINK_ENG_INST(device, link->linkNumber, MINION));
@@ -6412,8 +6394,15 @@ nvswitch_ctrl_get_fom_values_lr10
{
NvlStatus status;
NvU32 statData;
nvlink_link *link;
NVSWITCH_ASSERT(p->linkId < nvswitch_get_num_links(device));
link = nvswitch_get_link(device, p->linkId);
if (link == NULL)
{
NVSWITCH_PRINT(device, ERROR, "%s: link #%d invalid\n",
__FUNCTION__, p->linkId);
return -NVL_BAD_ARGS;
}
status = nvswitch_minion_get_dl_status(device, p->linkId,
NV_NVLSTAT_TR16, 0, &statData);
@@ -6728,6 +6717,25 @@ nvswitch_is_spi_supported_lr10
return NV_TRUE;
}
NvBool
nvswitch_is_bios_supported_lr10
(
nvswitch_device *device
)
{
return nvswitch_is_spi_supported(device);
}
NvlStatus
nvswitch_get_bios_size_lr10
(
nvswitch_device *device,
NvU32 *pSize
)
{
return nvswitch_bios_read_size(device, pSize);
}
NvBool
nvswitch_is_smbpbi_supported_lr10
(
@@ -7599,10 +7607,10 @@ nvswitch_parse_bios_image_lr10
NV_STATUS status = NV_OK;
// check if spi is supported
if (!nvswitch_is_spi_supported(device))
if (!nvswitch_is_bios_supported(device))
{
NVSWITCH_PRINT(device, ERROR,
"%s: SPI is not supported\n",
"%s: BIOS is not supported\n",
__FUNCTION__);
return -NVL_ERR_NOT_SUPPORTED;
}
@@ -7659,7 +7667,7 @@ nvswitch_ctrl_get_sw_info_lr10
switch (p->index[i])
{
case NVSWITCH_GET_SW_INFO_INDEX_INFOROM_NVL_SUPPORTED:
p->info[i] = (NvU32)_nvswitch_inforom_nvl_supported(device);
p->info[i] = NV_TRUE;
break;
case NVSWITCH_GET_SW_INFO_INDEX_INFOROM_BBX_SUPPORTED:
p->info[i] = (NvU32)_nvswitch_inforom_bbx_supported(device);

View File

@@ -314,3 +314,13 @@ nvswitch_ctrl_therm_read_voltage_lr10
return -NVL_ERR_NOT_SUPPORTED;
}
NvlStatus
nvswitch_ctrl_therm_read_power_lr10
(
nvswitch_device *device,
NVSWITCH_GET_POWER_PARAMS *info
)
{
return -NVL_ERR_NOT_SUPPORTED;
}

File diff suppressed because it is too large Load Diff

View File

@@ -121,8 +121,13 @@ nvswitch_init_lpwr_regs_ls10
// IC Enter Threshold
if (device->regkeys.lp_threshold == NV_SWITCH_REGKEY_SET_LP_THRESHOLD_DEFAULT)
{
//
// TODO: get from bios. Refer Bug 3626523 for more info.
lpEntryThreshold = 100;
//
// The threshold is measured in 100us unit. So lpEntryThreshold = 1
// means the threshold is set to 100us in the register.
//
lpEntryThreshold = 1;
}
else
{
@@ -505,7 +510,7 @@ nvswitch_reset_persistent_link_hw_state_ls10
NvU32 clocksMask = NVSWITCH_PER_LINK_CLOCK_SET(RXCLK)|NVSWITCH_PER_LINK_CLOCK_SET(TXCLK)|
NVSWITCH_PER_LINK_CLOCK_SET(NCISOCCLK);
nvlink_link *link = nvswitch_get_link(device, linkNumber);
if (nvswitch_is_link_in_reset(device, link))
if ((link == NULL) || nvswitch_is_link_in_reset(device, link))
{
return;
}
@@ -1225,11 +1230,13 @@ nvswitch_configure_error_rate_threshold_interrupt_ls10
if (bEnable)
{
link->errorThreshold.bInterruptTrigerred = NV_FALSE;
intrRegVal |= DRF_DEF(_NVLDL_TOP, _INTR_NONSTALL_EN, _RX_SHORT_ERROR_RATE, _ENABLE);
intrRegVal = FLD_SET_DRF_NUM(_NVLDL_TOP, _INTR_NONSTALL_EN, _RX_SHORT_ERROR_RATE, 1,
intrRegVal);
}
else
{
intrRegVal |= DRF_DEF(_NVLDL_TOP, _INTR_NONSTALL_EN, _RX_SHORT_ERROR_RATE, _DISABLE);
intrRegVal = FLD_SET_DRF_NUM(_NVLDL_TOP, _INTR_NONSTALL_EN, _RX_SHORT_ERROR_RATE, 0,
intrRegVal);
}
NVSWITCH_LINK_WR32_LS10(device, linkNumber, NVLDL,
@@ -1249,12 +1256,29 @@ nvswitch_init_dlpl_interrupts_ls10
NVSWITCH_LINK_WR32_LS10(device, linkNumber, NVLDL, _NVLDL_TOP, _INTR, 0xffffffff);
NVSWITCH_LINK_WR32_LS10(device, linkNumber, NVLDL, _NVLDL_TOP, _INTR_SW2, 0xffffffff);
// Set the interrupt bits
nvswitch_set_dlpl_interrupts_ls10(link);
// Setup error rate thresholds
nvswitch_set_error_rate_threshold_ls10(link, NV_TRUE);
nvswitch_configure_error_rate_threshold_interrupt_ls10(link, NV_TRUE);
}
void
nvswitch_set_dlpl_interrupts_ls10
(
nvlink_link *link
)
{
nvswitch_device *device = link->dev->pDevInfo;
NvU32 linkNumber = link->linkNumber;
// Stall tree routes to INTR_A which is connected to NVLIPT fatal tree
NVSWITCH_LINK_WR32_LS10(device, linkNumber, NVLDL, _NVLDL_TOP, _INTR_STALL_EN,
DRF_DEF(_NVLDL_TOP, _INTR_STALL_EN, _TX_REPLAY, _DISABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_STALL_EN, _TX_RECOVERY_SHORT, _DISABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_STALL_EN, _LTSSM_FAULT_UP, _ENABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_STALL_EN, _LTSSM_FAULT_DOWN, _ENABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_STALL_EN, _TX_FAULT_RAM, _ENABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_STALL_EN, _TX_FAULT_INTERFACE, _ENABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_STALL_EN, _TX_FAULT_SUBLINK_CHANGE, _DISABLE) |
@@ -1281,9 +1305,6 @@ nvswitch_init_dlpl_interrupts_ls10
DRF_DEF(_NVLDL_TOP, _INTR_NONSTALL_EN, _RX_CRC_COUNTER, _ENABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_NONSTALL_EN, _LTSSM_PROTOCOL, _DISABLE) |
DRF_DEF(_NVLDL_TOP, _INTR_NONSTALL_EN, _MINION_REQUEST, _DISABLE));
nvswitch_set_error_rate_threshold_ls10(link, NV_TRUE);
nvswitch_configure_error_rate_threshold_interrupt_ls10(link, NV_TRUE);
}
static NvU32
@@ -1433,7 +1454,7 @@ nvswitch_execute_unilateral_link_shutdown_ls10
NvU32 link_state_request;
NvU32 link_state;
NvU32 stat_data = 0;
NvU32 link_intr_subcode;
NvU32 link_intr_subcode = MINION_OK;
if (!NVSWITCH_IS_LINK_ENG_VALID_LS10(device, NVLDL, link->linkNumber))
{
@@ -1470,7 +1491,6 @@ nvswitch_execute_unilateral_link_shutdown_ls10
NV_NVLSTAT_MN00, 0, &stat_data) == NVL_SUCCESS)
{
link_intr_subcode = DRF_VAL(_NVLSTAT, _MN00, _LINK_INTR_SUBCODE, stat_data);
}
if ((link_state == NV_NVLIPT_LNK_CTRL_LINK_STATE_REQUEST_STATUS_MINION_REQUEST_FAIL) &&
(link_intr_subcode == MINION_ALARM_BUSY))
@@ -1488,6 +1508,13 @@ nvswitch_execute_unilateral_link_shutdown_ls10
{
break;
}
}
else
{
// Querying MINION for link_intr_subcode failed so retry
retry_count--;
}
} while (retry_count);
@@ -1510,7 +1537,7 @@ nvswitch_reset_and_train_link_ls10
NvU32 link_state_request;
NvU32 link_state;
NvU32 stat_data;
NvU32 link_intr_subcode;
NvU32 link_intr_subcode = MINION_OK;
nvswitch_execute_unilateral_link_shutdown_ls10(link);
nvswitch_corelib_clear_link_state_ls10(link);
@@ -1537,7 +1564,6 @@ nvswitch_reset_and_train_link_ls10
NV_NVLSTAT_MN00, 0, &stat_data) == NVL_SUCCESS)
{
link_intr_subcode = DRF_VAL(_NVLSTAT, _MN00, _LINK_INTR_SUBCODE, stat_data);
}
if ((link_state == NV_NVLIPT_LNK_CTRL_LINK_STATE_REQUEST_STATUS_MINION_REQUEST_FAIL) &&
(link_intr_subcode == MINION_ALARM_BUSY))
@@ -1557,6 +1583,12 @@ nvswitch_reset_and_train_link_ls10
break;
}
}
else
{
// failed to query minion for the link_intr_subcode so retry
retry_count--;
}
}
} while(retry_count);
if (status != NVL_SUCCESS)
@@ -1625,3 +1657,24 @@ nvswitch_are_link_clocks_on_ls10
return NV_TRUE;
}
NvBool
nvswitch_does_link_need_termination_enabled_ls10
(
nvswitch_device *device,
nvlink_link *link
)
{
// Not defined for LS10
return NV_FALSE;
}
NvlStatus
nvswitch_link_termination_setup_ls10
(
nvswitch_device *device,
nvlink_link* link
)
{
// Not supported for LS10
return -NVL_ERR_NOT_SUPPORTED;
}

View File

@@ -27,6 +27,7 @@
#include "regkey_nvswitch.h"
#include "haldef_nvswitch.h"
#include "nvlink_inband_msg.h"
#include "rmsoecmdif.h"
#include "ls10/ls10.h"
#include "lr10/lr10.h"
@@ -63,9 +64,11 @@
#include "nvswitch/ls10/dev_multicasttstate_ip.h"
#include "nvswitch/ls10/dev_reductiontstate_ip.h"
#include "ls10/minion_nvlink_defines_public_ls10.h"
#include "nvswitch/ls10/dev_pmgr.h"
#include "nvswitch/ls10/dev_timer_ip.h"
#define NVSWITCH_IFR_MIN_BIOS_VER_LS10 0x9610170000ull
#define NVSWITCH_SMBPBI_MIN_BIOS_VER_LS10 0x9610170000ull
#define NVSWITCH_SMBPBI_MIN_BIOS_VER_LS10 0x9610220000ull
void *
nvswitch_alloc_chipdevice_ls10
@@ -113,7 +116,7 @@ nvswitch_pri_ring_init_ls10
{
keepPolling = (nvswitch_timeout_check(&timeout)) ? NV_FALSE : NV_TRUE;
command = NVSWITCH_REG_RD32(device, _GFW_GLOBAL, _BOOT_PARTITION_PROGRESS);
command = NVSWITCH_REG_RD32(device, _GFW_GLOBAL, _BOOT_PARTITION_PROGRESS);
if (FLD_TEST_DRF(_GFW_GLOBAL, _BOOT_PARTITION_PROGRESS, _VALUE, _SUCCESS, command))
{
break;
@@ -914,7 +917,7 @@ nvswitch_ctrl_get_sw_info_ls10
switch (p->index[i])
{
case NVSWITCH_GET_SW_INFO_INDEX_INFOROM_NVL_SUPPORTED:
p->info[i] = NV_FALSE; //TODO: Enable once NVL support is present (CTK-4163)
p->info[i] = NV_TRUE;
break;
case NVSWITCH_GET_SW_INFO_INDEX_INFOROM_BBX_SUPPORTED:
p->info[i] = NV_TRUE;
@@ -1103,10 +1106,17 @@ nvswitch_link_disable_interrupts_ls10
instance = link / NVSWITCH_LINKS_PER_NVLIPT_LS10;
localLinkIdx = link % NVSWITCH_LINKS_PER_NVLIPT_LS10;
NVSWITCH_NPORT_WR32_LS10(device, link, _NPORT, _ERR_CONTROL_COMMON_NPORT,
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _CORRECTABLEENABLE, 0x0) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _FATALENABLE, 0x0) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _NONFATALENABLE, 0x0));
if (nvswitch_is_soe_supported(device))
{
nvswitch_soe_set_nport_interrupts_ls10(device, link, NV_FALSE);
}
else
{
NVSWITCH_NPORT_WR32_LS10(device, link, _NPORT, _ERR_CONTROL_COMMON_NPORT,
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _CORRECTABLEENABLE, 0x0) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _FATALENABLE, 0x0) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _NONFATALENABLE, 0x0));
}
NVSWITCH_ENG_WR32(device, NVLW, , instance, _NVLW, _LINK_INTR_0_MASK(localLinkIdx),
DRF_NUM(_NVLW, _LINK_INTR_0_MASK, _FATAL, 0x0) |
@@ -1138,31 +1148,38 @@ _nvswitch_link_reset_interrupts_ls10
NvU32 eng_instance = link / NVSWITCH_LINKS_PER_NVLIPT_LS10;
NvU32 localLinkNum = link % NVSWITCH_LINKS_PER_NVLIPT_LS10;
NVSWITCH_NPORT_WR32_LS10(device, link, _NPORT, _ERR_CONTROL_COMMON_NPORT,
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _CORRECTABLEENABLE, 0x1) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _FATALENABLE, 0x1) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _NONFATALENABLE, 0x1));
if (nvswitch_is_soe_supported(device))
{
nvswitch_soe_set_nport_interrupts_ls10(device, link, NV_TRUE);
}
else
{
NVSWITCH_NPORT_WR32_LS10(device, link, _NPORT, _ERR_CONTROL_COMMON_NPORT,
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _CORRECTABLEENABLE, 0x1) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _FATALENABLE, 0x1) |
DRF_NUM(_NPORT, _ERR_CONTROL_COMMON_NPORT, _NONFATALENABLE, 0x1));
}
NVSWITCH_ENG_WR32(device, NVLW, , eng_instance, _NVLW, _LINK_INTR_0_MASK(localLinkNum),
DRF_NUM(_NVLW, _LINK_INTR_0_MASK, _FATAL, 0x1) |
DRF_NUM(_NVLW, _LINK_INTR_0_MASK, _NONFATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_0_MASK, _CORRECTABLE, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR0, 0x1) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR1, 0x0));
NVSWITCH_ENG_WR32(device, NVLW, , eng_instance, _NVLW, _LINK_INTR_0_MASK(localLinkNum),
DRF_NUM(_NVLW, _LINK_INTR_0_MASK, _FATAL, 0x1) |
DRF_NUM(_NVLW, _LINK_INTR_0_MASK, _NONFATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_0_MASK, _CORRECTABLE, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR0, 0x1) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR1, 0x0));
NVSWITCH_ENG_WR32(device, NVLW, , eng_instance, _NVLW, _LINK_INTR_1_MASK(localLinkNum),
DRF_NUM(_NVLW, _LINK_INTR_1_MASK, _FATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_1_MASK, _NONFATAL, 0x1) |
DRF_NUM(_NVLW, _LINK_INTR_1_MASK, _CORRECTABLE, 0x1) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR0, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR1, 0x1));
NVSWITCH_ENG_WR32(device, NVLW, , eng_instance, _NVLW, _LINK_INTR_1_MASK(localLinkNum),
DRF_NUM(_NVLW, _LINK_INTR_1_MASK, _FATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_1_MASK, _NONFATAL, 0x1) |
DRF_NUM(_NVLW, _LINK_INTR_1_MASK, _CORRECTABLE, 0x1) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR0, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_0_MASK, _INTR1, 0x1));
NVSWITCH_ENG_WR32(device, NVLW, , eng_instance, _NVLW, _LINK_INTR_2_MASK(localLinkNum),
DRF_NUM(_NVLW, _LINK_INTR_2_MASK, _FATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_2_MASK, _NONFATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_2_MASK, _CORRECTABLE, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_2_MASK, _INTR0, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_2_MASK, _INTR1, 0x0));
NVSWITCH_ENG_WR32(device, NVLW, , eng_instance, _NVLW, _LINK_INTR_2_MASK(localLinkNum),
DRF_NUM(_NVLW, _LINK_INTR_2_MASK, _FATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_2_MASK, _NONFATAL, 0x0) |
DRF_NUM(_NVLW, _LINK_INTR_2_MASK, _CORRECTABLE, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_2_MASK, _INTR0, 0x0) |
DRF_NUM(_NVLW_LINK, _INTR_2_MASK, _INTR1, 0x0));
// NVLIPT_LNK
regval = NVSWITCH_LINK_RD32_LS10(device, link, NVLIPT_LNK, _NVLIPT_LNK, _INTR_CONTROL_LINK);
@@ -1353,10 +1370,15 @@ nvswitch_reset_and_drain_links_ls10
NvU32 link;
NvU32 data32;
NvU32 retry_count = 3;
NvU32 link_state_request;
NvU32 link_state;
NvU32 stat_data;
NvU32 link_intr_subcode;
NvU32 link_state_request;
NvU32 link_state;
NvU32 stat_data;
NvU32 link_intr_subcode;
NvBool bKeepPolling;
NvBool bIsLinkInEmergencyShutdown;
NvBool bAreDlClocksOn;
NVSWITCH_TIMEOUT timeout;
if (link_mask == 0)
{
@@ -1425,10 +1447,9 @@ nvswitch_reset_and_drain_links_ls10
if (status != NVL_SUCCESS)
{
nvswitch_destroy_link(link_info);
return status;
}
return -NVL_ERR_INVALID_STATE;
continue;
}
//
@@ -1438,10 +1459,42 @@ nvswitch_reset_and_drain_links_ls10
//
// Step 3.0 :
// Prior to starting port reset, perform unilateral shutdown on the
// LS10 side of the link, in case the links are not shutdown.
// Prior to starting port reset, ensure the links is in emergency shutdown
//
nvswitch_execute_unilateral_link_shutdown_ls10(link_info);
bIsLinkInEmergencyShutdown = NV_FALSE;
nvswitch_timeout_create(10 * NVSWITCH_INTERVAL_1MSEC_IN_NS, &timeout);
do
{
bKeepPolling = (nvswitch_timeout_check(&timeout)) ? NV_FALSE : NV_TRUE;
status = nvswitch_minion_get_dl_status(device, link_info->linkNumber,
NV_NVLSTAT_UC01, 0, &stat_data);
if (status != NVL_SUCCESS)
{
continue;
}
link_state = DRF_VAL(_NVLSTAT, _UC01, _LINK_STATE, stat_data);
bIsLinkInEmergencyShutdown = (link_state == LINKSTATUS_EMERGENCY_SHUTDOWN) ?
NV_TRUE:NV_FALSE;
if (bIsLinkInEmergencyShutdown == NV_TRUE)
{
break;
}
}
while(bKeepPolling);
if (bIsLinkInEmergencyShutdown == NV_FALSE)
{
NVSWITCH_PRINT(device, ERROR,
"%s: link %d failed to enter emergency shutdown\n",
__FUNCTION__, link);
continue;
}
nvswitch_corelib_clear_link_state_ls10(link_info);
//
@@ -1483,6 +1536,10 @@ nvswitch_reset_and_drain_links_ls10
{
link_intr_subcode = DRF_VAL(_NVLSTAT, _MN00, _LINK_INTR_SUBCODE, stat_data);
}
else
{
continue;
}
if ((link_state == NV_NVLIPT_LNK_CTRL_LINK_STATE_REQUEST_STATUS_MINION_REQUEST_FAIL) &&
(link_intr_subcode == MINION_ALARM_BUSY))
@@ -1515,9 +1572,8 @@ nvswitch_reset_and_drain_links_ls10
if (status != NVL_SUCCESS)
{
nvswitch_destroy_link(link_info);
return status;
}
return status;
continue;
}
//
@@ -1538,12 +1594,15 @@ nvswitch_reset_and_drain_links_ls10
status = nvlink_lib_register_link(device->nvlink_device, link_info);
if (status != NVL_SUCCESS)
{
NVSWITCH_PRINT(device, ERROR,
"%s: Failed to register link: 0x%x with the corelib\n",
__FUNCTION__, link);
nvswitch_destroy_link(link_info);
return status;
continue;
}
//
// Launch ALI training to re-initialize and train the links
// Step 9.0: Launch ALI training to re-initialize and train the links
// nvswitch_launch_ALI_link_training(device, link_info);
//
// Request active, but don't block. FM will come back and check
@@ -1558,7 +1617,44 @@ nvswitch_reset_and_drain_links_ls10
NVSWITCH_PRINT(device, ERROR,
"%s: TL link state request to active for ALI failed for link: 0x%x\n",
__FUNCTION__, link);
continue;
}
bAreDlClocksOn = NV_FALSE;
nvswitch_timeout_create(NVSWITCH_INTERVAL_1MSEC_IN_NS, &timeout);
do
{
bKeepPolling = (nvswitch_timeout_check(&timeout)) ? NV_FALSE : NV_TRUE;
status = nvswitch_minion_get_dl_status(device, link_info->linkNumber,
NV_NVLSTAT_UC01, 0, &stat_data);
if (status != NVL_SUCCESS)
{
continue;
}
link_state = DRF_VAL(_NVLSTAT, _UC01, _LINK_STATE, stat_data);
bAreDlClocksOn = (link_state != LINKSTATUS_INITPHASE1) ?
NV_TRUE:NV_FALSE;
if (bAreDlClocksOn == NV_TRUE)
{
break;
}
}
while(bKeepPolling);
if (!bAreDlClocksOn)
{
NVSWITCH_PRINT(device, ERROR,
"%s: link: 0x%x doesn't have the TX/RX clocks on, skipping setting DL interrupts!\n",
__FUNCTION__, link);
continue;
}
nvswitch_set_dlpl_interrupts_ls10(link_info);
}
FOR_EACH_INDEX_IN_MASK_END;
@@ -1575,6 +1671,7 @@ nvswitch_set_nport_port_config_ls10
)
{
NvU32 val;
NvlStatus status = NVL_SUCCESS;
if (p->requesterLinkID >= NVBIT(
DRF_SIZE(NV_NPORT_REQLINKID_REQROUTINGID) +
@@ -1624,156 +1721,162 @@ nvswitch_set_nport_port_config_ls10
if (p->type == CONNECT_TRUNK_SWITCH)
{
if (IS_RTLSIM(device) || IS_EMULATION(device) || IS_FMODEL(device))
if (!nvswitch_is_soe_supported(device))
{
// Set trunk specific settings (TPROD) on PRE-SILION
// NPORT
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _NPORT, _CTRL);
val = FLD_SET_DRF(_NPORT, _CTRL, _EGDRAINENB, _DISABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _ENEGRESSDBI, _ENABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _ENROUTEDBI, _ENABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _RTDRAINENB, _DISABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _SPARE, _INIT, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _TRUNKLINKENB, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _NPORT, _CTRL, val);
// NPORT
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _NPORT, _CTRL);
val = FLD_SET_DRF(_NPORT, _CTRL, _EGDRAINENB, _DISABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _ENEGRESSDBI, _ENABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _ENROUTEDBI, _ENABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _RTDRAINENB, _DISABLE, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _SPARE, _INIT, val);
val = FLD_SET_DRF(_NPORT, _CTRL, _TRUNKLINKENB, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _NPORT, _CTRL, val);
// EGRESS
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _CTRL);
val = FLD_SET_DRF(_EGRESS, _CTRL, _CTO_ENB, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _CTRL, val);
// EGRESS
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _CTRL);
val = FLD_SET_DRF(_EGRESS, _CTRL, _CTO_ENB, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _CTRL, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_CONTAIN_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _CREDIT_TIME_OUT_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _HWRSPERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _INVALIDVCSET_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _REQTGTIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _RSPREQIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _URRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_CONTAIN_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_CONTAIN_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _CREDIT_TIME_OUT_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _HWRSPERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _INVALIDVCSET_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _REQTGTIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _RSPREQIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_CONTAIN_EN_0, _URRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_CONTAIN_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _CREDIT_TIME_OUT_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _HWRSPERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _INVALIDVCSET_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _REQTGTIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _RSPREQIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _URRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _CREDIT_TIME_OUT_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _HWRSPERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _INVALIDVCSET_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _REQTGTIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _RSPREQIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_FATAL_REPORT_EN_0, _URRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_LOG_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _CREDIT_TIME_OUT_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _HWRSPERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _INVALIDVCSET_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _REQTGTIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _RSPREQIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _URRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_LOG_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_LOG_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _CREDIT_TIME_OUT_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _HWRSPERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _INVALIDVCSET_ERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _REQTGTIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _RSPREQIDMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_EGRESS, _ERR_LOG_EN_0, _URRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_LOG_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_NON_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_NON_FATAL_REPORT_EN_0, _PRIVRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_NON_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _EGRESS, _ERR_NON_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_EGRESS, _ERR_NON_FATAL_REPORT_EN_0, _PRIVRSPERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _EGRESS, _ERR_NON_FATAL_REPORT_EN_0, val);
// INGRESS
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_CONTAIN_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _EXTAREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _EXTBREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _INVALIDVCSET, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _MCREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _REMAPTAB_ECC_DBE_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_CONTAIN_EN_0, val);
// INGRESS
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_CONTAIN_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _EXTAREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _EXTBREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _INVALIDVCSET, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _MCREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_CONTAIN_EN_0, _REMAPTAB_ECC_DBE_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_CONTAIN_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _EXTAREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _EXTBREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _INVALIDVCSET, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _MCREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _REMAPTAB_ECC_DBE_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _EXTAREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _EXTBREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _INVALIDVCSET, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _MCREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_FATAL_REPORT_EN_0, _REMAPTAB_ECC_DBE_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _EXTAREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _EXTBREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _INVALIDVCSET, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _MCREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _REMAPTAB_ECC_DBE_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _EXTAREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _EXTBREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _INVALIDVCSET, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _MCREMAPTAB_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_0, _REMAPTAB_ECC_DBE_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_1);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTAREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTAREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTBREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTBREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _MCCMDTOUCADDRERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _MCREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _MCREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _READMCREFLECTMEMERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_1, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_1);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTAREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTAREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTBREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _EXTBREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _MCCMDTOUCADDRERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _MCREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _MCREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_LOG_EN_1, _READMCREFLECTMEMERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_LOG_EN_1, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_INDEX_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_REQCONTEXTMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_INDEX_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_REQCONTEXTMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_INDEX_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_REQCONTEXTMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _REMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _REQCONTEXTMISMATCHERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_INDEX_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTAREMAPTAB_REQCONTEXTMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_INDEX_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _EXTBREMAPTAB_REQCONTEXTMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_ACLFAIL, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_ADDRBOUNDSERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_INDEX_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _MCREMAPTAB_REQCONTEXTMISMATCHERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _REMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_0, _REQCONTEXTMISMATCHERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_1);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTAREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTAREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTBREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTBREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _MCCMDTOUCADDRERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _MCREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _MCREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _READMCREFLECTMEMERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_1, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_1);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTAREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTAREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTBREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _EXTBREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _MCCMDTOUCADDRERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _MCREMAPTAB_ADDRTYPEERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _MCREMAPTAB_ECC_LIMIT_ERR, __TPROD, val);
val = FLD_SET_DRF(_INGRESS, _ERR_NON_FATAL_REPORT_EN_1, _READMCREFLECTMEMERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _INGRESS, _ERR_NON_FATAL_REPORT_EN_1, val);
// SOURCETRACK
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_CONTAIN_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _DUP_CREQ_TCEN0_TAG_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _INVALID_TCEN0_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _INVALID_TCEN1_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _SOURCETRACK_TIME_OUT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_CONTAIN_EN_0, val);
// SOURCETRACK
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_CONTAIN_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _DUP_CREQ_TCEN0_TAG_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _INVALID_TCEN0_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _INVALID_TCEN1_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_CONTAIN_EN_0, _SOURCETRACK_TIME_OUT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_CONTAIN_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _DUP_CREQ_TCEN0_TAG_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _INVALID_TCEN0_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _INVALID_TCEN1_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _SOURCETRACK_TIME_OUT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _DUP_CREQ_TCEN0_TAG_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _INVALID_TCEN0_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _INVALID_TCEN1_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_FATAL_REPORT_EN_0, _SOURCETRACK_TIME_OUT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_FATAL_REPORT_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_LOG_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _DUP_CREQ_TCEN0_TAG_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _INVALID_TCEN0_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _INVALID_TCEN1_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _SOURCETRACK_TIME_OUT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_LOG_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_LOG_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_DBE_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _DUP_CREQ_TCEN0_TAG_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _INVALID_TCEN0_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _INVALID_TCEN1_RSP_ERR, __TPROD, val);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_LOG_EN_0, _SOURCETRACK_TIME_OUT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_LOG_EN_0, val);
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_NON_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_NON_FATAL_REPORT_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_LIMIT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_NON_FATAL_REPORT_EN_0, val);
}
else
{
val = NVSWITCH_LINK_RD32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_NON_FATAL_REPORT_EN_0);
val = FLD_SET_DRF(_SOURCETRACK, _ERR_NON_FATAL_REPORT_EN_0, _CREQ_TCEN0_CRUMBSTORE_ECC_LIMIT_ERR, __TPROD, val);
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _SOURCETRACK, _ERR_NON_FATAL_REPORT_EN_0, val);
}
else
{
// Set trunk specific settings (TPROD) in SOE
// nvswitch_set_nport_tprod_state_ls10(device, p->portNum);
status = nvswitch_set_nport_tprod_state_ls10(device, p->portNum);
if (status != NVL_SUCCESS)
{
NVSWITCH_PRINT(device, ERROR,
"%s: Failed to set NPORT TPROD state\n",
__FUNCTION__);
}
}
}
else
@@ -1784,7 +1887,7 @@ nvswitch_set_nport_port_config_ls10
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _NPORT, _SRC_PORT_TYPE0, NvU64_LO32(p->trunkSrcMask));
NVSWITCH_LINK_WR32(device, p->portNum, NPORT, _NPORT, _SRC_PORT_TYPE1, NvU64_HI32(p->trunkSrcMask));
return NVL_SUCCESS;
return status;
}
/*
@@ -2567,7 +2670,6 @@ nvswitch_get_nvlink_ecc_errors_ls10
NvU32 sublinkWidth;
link = nvswitch_get_link(device, i);
sublinkWidth = device->hal.nvswitch_get_sublink_width(device, i);
if ((link == NULL) ||
!NVSWITCH_IS_LINK_ENG_VALID_LS10(device, NVLDL, link->linkNumber) ||
@@ -2576,6 +2678,8 @@ nvswitch_get_nvlink_ecc_errors_ls10
return -NVL_BAD_ARGS;
}
sublinkWidth = device->hal.nvswitch_get_sublink_width(device, i);
minion_enabled = nvswitch_is_minion_initialized(device,
NVSWITCH_GET_LINK_ENG_INST(device, link->linkNumber, MINION));
@@ -2649,6 +2753,48 @@ nvswitch_get_num_links_per_nvlipt_ls10
return NVSWITCH_LINKS_PER_NVLIPT_LS10;
}
NvlStatus
nvswitch_ctrl_get_fom_values_ls10
(
nvswitch_device *device,
NVSWITCH_GET_FOM_VALUES_PARAMS *p
)
{
NvlStatus status;
NvU32 statData;
nvlink_link *link;
link = nvswitch_get_link(device, p->linkId);
if (link == NULL)
{
NVSWITCH_PRINT(device, ERROR, "%s: link #%d invalid\n",
__FUNCTION__, p->linkId);
return -NVL_BAD_ARGS;
}
if (nvswitch_is_link_in_reset(device, link))
{
NVSWITCH_PRINT(device, ERROR, "%s: link #%d is in reset\n",
__FUNCTION__, p->linkId);
return -NVL_ERR_INVALID_STATE;
}
status = nvswitch_minion_get_dl_status(device, p->linkId,
NV_NVLSTAT_TR16, 0, &statData);
p->figureOfMeritValues[0] = (NvU16) (statData & 0xFFFF);
p->figureOfMeritValues[1] = (NvU16) ((statData >> 16) & 0xFFFF);
status = nvswitch_minion_get_dl_status(device, p->linkId,
NV_NVLSTAT_TR17, 0, &statData);
p->figureOfMeritValues[2] = (NvU16) (statData & 0xFFFF);
p->figureOfMeritValues[3] = (NvU16) ((statData >> 16) & 0xFFFF);
p->numLanes = nvswitch_get_sublink_width(device, p->linkId);
return status;
}
void
nvswitch_set_fatal_error_ls10
(
@@ -2798,7 +2944,7 @@ nvswitch_is_inforom_supported_ls10
{
NVSWITCH_PRINT(device, INFO,
"INFOROM is not supported since SOE is not supported\n");
return NV_FALSE;
return NV_FALSE;
}
status = _nvswitch_get_bios_version(device, &version);
@@ -2806,8 +2952,8 @@ nvswitch_is_inforom_supported_ls10
{
NVSWITCH_PRINT(device, ERROR, "%s: Error getting BIOS version\n",
__FUNCTION__);
return NV_FALSE;
}
return NV_FALSE;
}
if (version >= NVSWITCH_IFR_MIN_BIOS_VER_LS10)
{
@@ -2839,6 +2985,41 @@ nvswitch_is_spi_supported_ls10
return NV_FALSE;
}
NvBool
nvswitch_is_bios_supported_ls10
(
nvswitch_device *device
)
{
if (IS_RTLSIM(device) || IS_EMULATION(device) || IS_FMODEL(device))
{
NVSWITCH_PRINT(device, INFO,
"BIOS is not supported on non-silicon platforms\n");
return NV_FALSE;
}
if (!nvswitch_is_soe_supported(device))
{
NVSWITCH_PRINT(device, INFO,
"BIOS is not supported since SOE is not supported\n");
return NV_FALSE;
}
return NV_TRUE;
}
NvlStatus
nvswitch_get_bios_size_ls10
(
nvswitch_device *device,
NvU32 *pSize
)
{
*pSize = SOE_CORE_BIOS_SIZE_LS10;
return NVL_SUCCESS;
}
/*
* @Brief : Check if SMBPBI is supported
*
@@ -2849,21 +3030,14 @@ nvswitch_is_smbpbi_supported_ls10
nvswitch_device *device
)
{
NvU64 version;
NvlStatus status;
if (!nvswitch_is_smbpbi_supported_lr10(device))
{
return NV_FALSE;
}
//
// Temporary driver WAR to disable SMBPBI on the LS10 NVSwitch driver.
// This should be removed once 3875091 is resolved.
//
return NV_FALSE;
#if 0
NvU64 version;
NvlStatus status;
status = _nvswitch_get_bios_version(device, &version);
if (status != NVL_SUCCESS)
{
@@ -2882,7 +3056,6 @@ nvswitch_is_smbpbi_supported_ls10
"SMBPBI is not supported on NVSwitch BIOS version %llx.\n", version);
return NV_FALSE;
}
#endif
}
/*
@@ -4938,7 +5111,7 @@ nvswitch_launch_ALI_ls10
}
nvswitch_launch_ALI_link_training(device, link, NV_FALSE);
}
}
FOR_EACH_INDEX_IN_MASK_END;
return NVL_SUCCESS;
@@ -5065,29 +5238,29 @@ nvswitch_set_training_mode_ls10
{
regVal = NVSWITCH_LINK_RD32_LS10(device, link->linkNumber, NVLIPT_LNK, _NVLIPT_LNK,
_CTRL_CAP_LOCAL_LINK_CHANNEL);
_CTRL_CAP_LOCAL_LINK_CHANNEL);
if (!FLD_TEST_DRF(_NVLIPT_LNK, _CTRL_CAP_LOCAL_LINK_CHANNEL, _ALI_SUPPORT, _SUPPORTED, regVal))
{
NVSWITCH_PRINT(device, ERROR,
"%s: ALI training not supported! Non-ALI will be used as the default.\n",__FUNCTION__);
if (!FLD_TEST_DRF(_NVLIPT_LNK, _CTRL_CAP_LOCAL_LINK_CHANNEL, _ALI_SUPPORT, _SUPPORTED, regVal))
{
NVSWITCH_PRINT(device, ERROR,
"%s: ALI training not supported! Non-ALI will be used as the default.\n",__FUNCTION__);
#ifdef INCLUDE_NVLINK_LIB
device->nvlink_device->enableALI = NV_FALSE;
#endif
return NVL_SUCCESS;
}
return NVL_SUCCESS;
}
#ifdef INCLUDE_NVLINK_LIB
device->nvlink_device->enableALI = NV_TRUE;
#endif
}
}
else
{
NVSWITCH_PRINT(device, ERROR,
NVSWITCH_PRINT(device, ERROR,
"%s: ALI training not enabled! Non-ALI will be used as the default.\n",__FUNCTION__);
#ifdef INCLUDE_NVLINK_LIB
device->nvlink_device->enableALI = NV_FALSE;
device->nvlink_device->enableALI = NV_FALSE;
#endif
return NVL_SUCCESS;
return NVL_SUCCESS;
}
}
FOR_EACH_INDEX_IN_MASK_END;
@@ -5356,7 +5529,7 @@ nvswitch_ctrl_get_board_part_number_ls10
if (!pInforom->OBD.bValid)
{
NVSWITCH_PRINT(device, ERROR, "OBD data is not available\n");
return -NVL_ERR_GENERIC;
return -NVL_ERR_NOT_SUPPORTED;
}
pOBDObj = &pInforom->OBD.object.v2;

View File

@@ -954,14 +954,15 @@ nvswitch_minion_get_ali_debug_registers_ls10
)
{
NvU32 localLinkNumber = link->linkNumber % NVSWITCH_LINKS_PER_MINION_LS10;
if (!nvswitch_minion_get_dl_status(device, link->linkNumber,
NV_NVLSTAT_MN00, 0, &(params->dlstatMn00)) == NVL_SUCCESS)
if (nvswitch_minion_get_dl_status(device, link->linkNumber,
NV_NVLSTAT_MN00, 0, &(params->dlstatMn00)) != NVL_SUCCESS)
{
NVSWITCH_PRINT(device, INFO,"%s : Failed to poll DLSTAT _MN00 register for (%s):(%d)\n",
__FUNCTION__, device->name, link->linkNumber);
}
if (!nvswitch_minion_get_dl_status(device, link->linkNumber, NV_NVLSTAT_UC01, 0, &(params->dlstatUc01)))
if (nvswitch_minion_get_dl_status(device, link->linkNumber,
NV_NVLSTAT_UC01, 0, &(params->dlstatUc01)) != NVL_SUCCESS)
{
NVSWITCH_PRINT(device, INFO,"%s : Failed to poll DLSTAT UC01 register for (%s):(%d)\n",
__FUNCTION__, device->name, link->linkNumber);

View File

@@ -301,7 +301,12 @@ nvswitch_ctrl_i2c_indexed_ls10
}
return nvswitch_ctrl_i2c_indexed_lr10(device, pParams);
}
if (pParams->port == NVSWITCH_I2C_PORT_I2CA)
{
pParams->flags = FLD_SET_DRF(SWITCH_CTRL, _I2C_FLAGS, _SPEED_MODE, _100KHZ, pParams->flags);
}
if (pI2c->soeI2CSupported)
{
return soeI2CAccess_HAL(device, pParams);

View File

@@ -31,7 +31,6 @@
#include "common_nvswitch.h"
#include "ls10/ls10.h"
#include "ls10/soe_ls10.h"
#include "lr10/soe_lr10.h"
#include "nvswitch/ls10/dev_soe_ip.h"
#include "nvswitch/ls10/dev_soe_ip_addendum.h"
@@ -344,10 +343,17 @@ nvswitch_set_nport_tprod_state_ls10
NVSWITCH_TIMEOUT timeout;
RM_SOE_CORE_CMD_NPORT_TPROD_STATE *nportTprodState;
if (!NVSWITCH_ENG_IS_VALID(device, NPORT, nport))
{
NVSWITCH_PRINT(device, ERROR, "%s: NPORT #%d invalid\n",
__FUNCTION__, nport);
return -NVL_BAD_ARGS;
}
nvswitch_os_memset(&cmd, 0, sizeof(cmd));
cmd.hdr.unitId = RM_SOE_UNIT_CORE;
cmd.hdr.size = sizeof(cmd);
cmd.hdr.size = RM_SOE_CMD_SIZE(CORE, NPORT_TPROD_STATE);
nportTprodState = &cmd.cmd.core.nportTprodState;
nportTprodState->nport = nport;
@@ -401,7 +407,7 @@ nvswitch_soe_init_l2_state_ls10
nvswitch_os_memset(&cmd, 0, sizeof(cmd));
cmd.hdr.unitId = RM_SOE_UNIT_CORE;
cmd.hdr.size = sizeof(cmd);
cmd.hdr.size = RM_SOE_CMD_SIZE(CORE, L2_STATE);
pL2State = &cmd.cmd.core.l2State;
pL2State->cmdType = RM_SOE_CORE_CMD_INIT_L2_STATE;
@@ -421,6 +427,136 @@ nvswitch_soe_init_l2_state_ls10
}
}
/*
* @Brief : Enable/Disable NPORT interrupts
*
* @param[in] device
* @param[in] nport
*/
NvlStatus
nvswitch_soe_set_nport_interrupts_ls10
(
nvswitch_device *device,
NvU32 nport,
NvBool bEnable
)
{
FLCN *pFlcn;
NvU32 cmdSeqDesc = 0;
NV_STATUS status;
RM_FLCN_CMD_SOE cmd;
NVSWITCH_TIMEOUT timeout;
RM_SOE_CORE_CMD_NPORT_INTRS *pNportIntrs;
if (!nvswitch_is_soe_supported(device))
{
NVSWITCH_PRINT(device, ERROR,
"%s: SOE is not supported\n",
__FUNCTION__);
return -NVL_ERR_INVALID_STATE;
}
pFlcn = device->pSoe->pFlcn;
nvswitch_os_memset(&cmd, 0, sizeof(cmd));
cmd.hdr.unitId = RM_SOE_UNIT_CORE;
cmd.hdr.size = RM_SOE_CMD_SIZE(CORE, NPORT_INTRS);
pNportIntrs = &cmd.cmd.core.nportIntrs;
pNportIntrs->cmdType = RM_SOE_CORE_CMD_SET_NPORT_INTRS;
pNportIntrs->nport = nport;
pNportIntrs->bEnable = bEnable;
nvswitch_timeout_create(NVSWITCH_INTERVAL_5MSEC_IN_NS, &timeout);
status = flcnQueueCmdPostBlocking(device, pFlcn,
(PRM_FLCN_CMD)&cmd,
NULL, // pMsg
NULL, // pPayload
SOE_RM_CMDQ_LOG_ID,
&cmdSeqDesc,
&timeout);
if (status != NV_OK)
{
NVSWITCH_PRINT(device, ERROR,
"%s: Failed to send SET_NPORT_INTRS command to SOE, status 0x%x\n",
__FUNCTION__, status);
return -NVL_ERR_GENERIC;
}
return NVL_SUCCESS;
}
/*
* @Brief : Disable NPORT Fatal Interrupt in SOE
*
* @param[in] device
* @param[in] nport
* @param[in] nportIntrEnable
* @param[in] nportIntrType
*/
void
nvswitch_soe_disable_nport_fatal_interrupts_ls10
(
nvswitch_device *device,
NvU32 nport,
NvU32 nportIntrEnable,
NvU8 nportIntrType
)
{
FLCN *pFlcn;
NvU32 cmdSeqDesc = 0;
NV_STATUS status;
RM_FLCN_CMD_SOE cmd;
NVSWITCH_TIMEOUT timeout;
RM_SOE_CORE_CMD_NPORT_FATAL_INTR *pNportIntrDisable;
NVSWITCH_GET_BIOS_INFO_PARAMS p = { 0 };
NvlStatus stat;
stat = device->hal.nvswitch_ctrl_get_bios_info(device, &p);
if ((stat != NVL_SUCCESS) || ((p.version & SOE_VBIOS_VERSION_MASK) <
SOE_VBIOS_REVLOCK_DISABLE_NPORT_FATAL_INTR))
{
NVSWITCH_PRINT(device, ERROR,
"%s: Skipping DISABLE_NPORT_FATAL_INTR command to SOE. Update firmware "
"from .%02X to .%02X\n",
__FUNCTION__, (NvU32)((p.version & SOE_VBIOS_VERSION_MASK) >> 16),
SOE_VBIOS_REVLOCK_DISABLE_NPORT_FATAL_INTR);
return;
}
if (!nvswitch_is_soe_supported(device))
{
NVSWITCH_PRINT(device, INFO, "%s: SOE is not supported\n",
__FUNCTION__);
return;
}
pFlcn = device->pSoe->pFlcn;
nvswitch_os_memset(&cmd, 0, sizeof(cmd));
cmd.hdr.unitId = RM_SOE_UNIT_CORE;
cmd.hdr.size = RM_SOE_CMD_SIZE(CORE, NPORT_FATAL_INTR);
pNportIntrDisable = &cmd.cmd.core.nportDisableIntr;
pNportIntrDisable->cmdType = RM_SOE_CORE_CMD_DISABLE_NPORT_FATAL_INTR;
pNportIntrDisable->nport = nport;
pNportIntrDisable->nportIntrEnable = nportIntrEnable;
pNportIntrDisable->nportIntrType = nportIntrType;
nvswitch_timeout_create(NVSWITCH_INTERVAL_5MSEC_IN_NS, &timeout);
status = flcnQueueCmdPostBlocking(device, pFlcn,
(PRM_FLCN_CMD)&cmd,
NULL, // pMsg
NULL, // pPayload
SOE_RM_CMDQ_LOG_ID,
&cmdSeqDesc,
&timeout);
if (status != NV_OK)
{
NVSWITCH_PRINT(device, ERROR, "%s: Failed to send DISABLE_NPORT_FATAL_INTR command to SOE, status 0x%x\n",
__FUNCTION__, status);
}
}
/*
* @Brief : Init sequence for SOE FSP RISCV image
@@ -482,14 +618,6 @@ nvswitch_init_soe_ls10
return status;
}
//
// Set TRACEPC to stack mode for better ucode trace
// In Vulcan CR firmware, this is set to reduced mode in the SOE's manifest
//
data = flcnRiscvRegRead_HAL(device, pFlcn, NV_PRISCV_RISCV_TRACECTL);
data = FLD_SET_DRF(_PRISCV, _RISCV_TRACECTL, _MODE, _STACK, data);
flcnRiscvRegWrite_HAL(device, pFlcn, NV_PRISCV_RISCV_TRACECTL, data);
// Sanity the command and message queues as a final check
if (_nvswitch_soe_send_test_cmd(device) != NV_OK)
{
@@ -555,7 +683,7 @@ nvswitch_soe_register_event_callbacks_ls10
device, pFlcn,
RM_SOE_UNIT_THERM,
NULL,
nvswitch_therm_soe_callback_lr10,
nvswitch_therm_soe_callback_ls10,
NULL,
&pSoe->thermEvtDesc);
if (status != NV_OK)

View File

@@ -361,6 +361,103 @@ nvswitch_monitor_thermal_alert_ls10
return;
}
/*
* @brief Callback function to recieve thermal messages from SOE.
*/
void
nvswitch_therm_soe_callback_ls10
(
nvswitch_device *device,
RM_FLCN_MSG *pGenMsg,
void *pParams,
NvU32 seqDesc,
NV_STATUS status
)
{
RM_SOE_THERM_MSG_SLOWDOWN_STATUS slowdown_status;
RM_SOE_THERM_MSG_SHUTDOWN_STATUS shutdown_status;
RM_FLCN_MSG_SOE *pMsg = (RM_FLCN_MSG_SOE *)pGenMsg;
NvU32 temperature;
NvU32 threshold;
switch (pMsg->msg.soeTherm.msgType)
{
case RM_SOE_THERM_MSG_ID_SLOWDOWN_STATUS:
{
slowdown_status = pMsg->msg.soeTherm.slowdown;
if (slowdown_status.bSlowdown)
{
if (slowdown_status.source.bTsense) // TSENSE_THERM_ALERT
{
temperature = RM_SOE_NV_TEMP_TO_CELSIUS_TRUNCED(slowdown_status.maxTemperature);
threshold = RM_SOE_NV_TEMP_TO_CELSIUS_TRUNCED(slowdown_status.warnThreshold);
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_START,
"NVSWITCH Temperature %dC | TSENSE WARN Threshold %dC\n",
temperature, threshold);
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_START,
"Thermal Slowdown Engaged | Temp higher than WARN Threshold\n");
}
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_START,
"Thermal Slowdown Engaged | Links Thermal Mode %s\n", (slowdown_status.bLinksL1Status ? "ON" : "OFF"));
if (slowdown_status.source.bPmgr) // PMGR_THERM_ALERT
{
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_START,
"Thermal Slowdown Engaged | PMGR WARN Threshold reached\n");
}
}
else // REVERT_SLOWDOWN
{
temperature = RM_SOE_NV_TEMP_TO_CELSIUS_TRUNCED(slowdown_status.maxTemperature);
threshold = RM_SOE_NV_TEMP_TO_CELSIUS_TRUNCED(slowdown_status.warnThreshold);
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_END,
"NVSWITCH Temperature %dC | TSENSE WARN Threshold %dC\n",
temperature, threshold);
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_END,
"Thermal Slowdown Disengaged | Links Thermal Mode %s\n", (slowdown_status.bLinksL1Status ? "ON" : "OFF"));
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_END,
"Thermal slowdown Disengaged\n");
}
break;
}
case RM_SOE_THERM_MSG_ID_SHUTDOWN_STATUS:
{
shutdown_status = pMsg->msg.soeTherm.shutdown;
if (shutdown_status.source.bTsense) // TSENSE_THERM_SHUTDOWN
{
temperature = RM_SOE_NV_TEMP_TO_CELSIUS_TRUNCED(shutdown_status.maxTemperature);
threshold = RM_SOE_NV_TEMP_TO_CELSIUS_TRUNCED(shutdown_status.overtThreshold);
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_SHUTDOWN,
"NVSWITCH Temperature %dC | OVERT Threshold %dC\n",
temperature, threshold);
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_SHUTDOWN,
"TSENSE OVERT Threshold reached. Shutting Down\n");
}
if (shutdown_status.source.bPmgr) // PMGR_THERM_SHUTDOWN
{
NVSWITCH_PRINT_SXID(device, NVSWITCH_ERR_HW_HOST_THERMAL_EVENT_START,
"PMGR OVERT Threshold reached. Shutting Down\n");
}
break;
}
default:
{
NVSWITCH_PRINT(device, ERROR, "%s Unknown message Id\n", __FUNCTION__);
NVSWITCH_ASSERT(0);
}
}
}
//
// nvswitch_therm_read_voltage
//
@@ -445,3 +542,86 @@ nvswitch_ctrl_therm_read_voltage_ls10
return NVL_SUCCESS;
}
//
// nvswitch_therm_read_power
//
// Power is only available on SKUs which have thermal and
// voltage sensors.
//
NvlStatus
nvswitch_ctrl_therm_read_power_ls10
(
nvswitch_device *device,
NVSWITCH_GET_POWER_PARAMS *pParams
)
{
FLCN *pFlcn;
NvU32 cmdSeqDesc;
NV_STATUS status;
NvU8 flcnStatus;
RM_FLCN_CMD_SOE cmd;
RM_FLCN_MSG_SOE msg;
RM_SOE_CORE_CMD_GET_POWER *pGetPowerCmd;
NVSWITCH_TIMEOUT timeout;
if (!nvswitch_is_soe_supported(device))
{
return -NVL_ERR_NOT_SUPPORTED;
}
if (pParams == NULL)
{
return -NVL_BAD_ARGS;
}
pFlcn = device->pSoe->pFlcn;
nvswitch_os_memset(pParams, 0, sizeof(NVSWITCH_GET_POWER_PARAMS));
nvswitch_os_memset(&cmd, 0, sizeof(RM_FLCN_CMD_SOE));
nvswitch_os_memset(&msg, 0, sizeof(RM_FLCN_MSG_SOE));
cmd.hdr.unitId = RM_SOE_UNIT_CORE;
cmd.hdr.size = RM_SOE_CMD_SIZE(CORE, GET_POWER);
msg.hdr.unitId = RM_SOE_UNIT_CORE;
msg.hdr.size = RM_SOE_MSG_SIZE(CORE, GET_POWER);
pGetPowerCmd = &cmd.cmd.core.getPower;
pGetPowerCmd->cmdType = RM_SOE_CORE_CMD_GET_POWER_VALUES;
cmdSeqDesc = 0;
nvswitch_timeout_create(NVSWITCH_INTERVAL_1SEC_IN_NS * 5, &timeout);
status = flcnQueueCmdPostBlocking(device, pFlcn,
(PRM_FLCN_CMD)&cmd,
(PRM_FLCN_MSG)&msg, // pMsg
NULL, // pPayload
SOE_RM_CMDQ_LOG_ID,
&cmdSeqDesc,
&timeout);
if (status != NV_OK)
{
NVSWITCH_PRINT(device, ERROR, "%s: Failed to read power 0x%x\n",
__FUNCTION__, status);
return -NVL_ERR_INVALID_STATE;
}
flcnStatus = msg.msg.core.getPower.flcnStatus;
if (flcnStatus != FLCN_OK)
{
if (flcnStatus == FLCN_ERR_MORE_PROCESSING_REQUIRED)
{
return -NVL_MORE_PROCESSING_REQUIRED;
}
else
{
return -NVL_ERR_GENERIC;
}
}
pParams->vdd_w = msg.msg.core.getPower.vdd_w;
pParams->dvdd_w = msg.msg.core.getPower.dvdd_w;
pParams->hvdd_w = msg.msg.core.getPower.hvdd_w;
return NVL_SUCCESS;
}

View File

@@ -703,6 +703,15 @@ nvswitch_is_spi_supported
return device->hal.nvswitch_is_spi_supported(device);
}
NvBool
nvswitch_is_bios_supported
(
nvswitch_device *device
)
{
return device->hal.nvswitch_is_bios_supported(device);
}
NvBool
nvswitch_is_smbpbi_supported
(
@@ -1626,7 +1635,7 @@ nvswitch_lib_post_init_device
return retval;
}
if (nvswitch_is_spi_supported(device))
if (nvswitch_is_bios_supported(device))
{
retval = nvswitch_bios_get_image(device);
if (retval != NVL_SUCCESS)
@@ -1643,7 +1652,7 @@ nvswitch_lib_post_init_device
else
{
NVSWITCH_PRINT(device, ERROR,
"%s: Skipping BIOS parsing since SPI is unsupported.\n",
"%s: Skipping BIOS parsing since BIOS is unsupported.\n",
__FUNCTION__);
}
@@ -3363,6 +3372,26 @@ _nvswitch_ctrl_i2c_smbus_command
cmdType, addr, port, cmd, msgLen, pData);
}
NvBool
nvswitch_does_link_need_termination_enabled
(
nvswitch_device *device,
nvlink_link *link
)
{
return device->hal.nvswitch_does_link_need_termination_enabled(device, link);
}
NvlStatus
nvswitch_link_termination_setup
(
nvswitch_device *device,
nvlink_link* link
)
{
return device->hal.nvswitch_link_termination_setup(device, link);
}
static NvlStatus
_nvswitch_ctrl_get_inforom_nvlink_max_correctable_error_rate
(
@@ -4745,6 +4774,16 @@ _nvswitch_ctrl_therm_read_voltage
return device->hal.nvswitch_ctrl_therm_read_voltage(device, info);
}
static NvlStatus
_nvswitch_ctrl_therm_read_power
(
nvswitch_device *device,
NVSWITCH_GET_POWER_PARAMS *info
)
{
return device->hal.nvswitch_ctrl_therm_read_power(device, info);
}
NvlStatus
nvswitch_lib_ctrl
(
@@ -4980,6 +5019,8 @@ nvswitch_lib_ctrl
CTRL_NVSWITCH_RESERVED_9);
NVSWITCH_DEV_CMD_DISPATCH_RESERVED(
CTRL_NVSWITCH_RESERVED_10);
NVSWITCH_DEV_CMD_DISPATCH_RESERVED(
CTRL_NVSWITCH_RESERVED_11);
NVSWITCH_DEV_CMD_DISPATCH(
CTRL_NVSWITCH_GET_TEMPERATURE_LIMIT,
_nvswitch_ctrl_therm_get_temperature_limit,
@@ -5084,6 +5125,9 @@ nvswitch_lib_ctrl
NVSWITCH_DEV_CMD_DISPATCH(CTRL_NVSWITCH_GET_VOLTAGE,
_nvswitch_ctrl_therm_read_voltage,
NVSWITCH_CTRL_GET_VOLTAGE_PARAMS);
NVSWITCH_DEV_CMD_DISPATCH(CTRL_NVSWITCH_GET_POWER,
_nvswitch_ctrl_therm_read_power,
NVSWITCH_GET_POWER_PARAMS);
default:
nvswitch_os_print(NVSWITCH_DBG_LEVEL_INFO, "unknown ioctl %x\n", cmd);

View File

@@ -90,8 +90,10 @@ nvswitch_smbpbi_post_init
if (status == NVL_SUCCESS)
{
#if defined(DEBUG) || defined(DEVELOP) || defined(NV_MODS)
nvswitch_lib_smbpbi_log_sxid(device, NVSWITCH_ERR_NO_ERROR,
"NVSWITCH SMBPBI server is online.");
#endif // defined(DEBUG) || defined(DEVELOP) || defined(NV_MODS)
NVSWITCH_PRINT(device, INFO, "%s: SMBPBI POST INIT completed\n", __FUNCTION__);
}