瑞发科Norelsys NS6601 linux驱动开发

soc平台:RK3588

设备树:

// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2023 Rockchip Electronics Co., Ltd.
 *
 */
#include <dt-bindings/display/media-bus-format.h>

/ {
	ns6601_dphy0_osc0: ns6601-dphy0-oscillator@0 {
		compatible = "fixed-clock";
		#clock-cells = <1>;
		clock-frequency = <25000000>;
		clock-output-names = "ns6601-dphy0-osc0";
	};

	ns6601_dcphy1_osc0: ns6601-dcphy1-oscillator@0 {
		compatible = "fixed-clock";
		#clock-cells = <1>;
		clock-frequency = <25000000>;
		clock-output-names = "ns6601-dcphy1-osc0";
	};
};

/**
 * ============================================================================
 * Inno DPHY0: full mode
 * ============================================================================
 */
&csi2_dphy0_hw {
	status = "okay";
};

&csi2_dphy0 {
	status = "okay";

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <0>;

			mipi_dphy0_in_ns6601: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&ns6601_dphy0_out>;
				data-lanes = <1 2>;
			};
		};
		port@1 {
			reg = <1>;
			#address-cells = <1>;
			#size-cells = <0>;

			csidphy0_out: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&mipi2_csi2_input>;
			};
		};
	};
};

&mipi2_csi2 {
	status = "okay";

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <0>;

			mipi2_csi2_input: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&csidphy0_out>;
			};
		};

		port@1 {
			reg = <1>;
			#address-cells = <1>;
			#size-cells = <0>;

			mipi2_csi2_output: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&cif_mipi2_in>;
			};
		};
	};
};

&rkcif_mipi_lvds2 {
	status = "okay";
	/* parameters for do cif reset detecting:
	 * index0: monitor mode,
		   0 for idle,
		   1 for continue,
		   2 for trigger,
		   3 for hotplug (for nextchip)
	 * index1: the frame id to start timer,
		   min is 2
	 * index2: frame num of monitoring cycle
	 * index3: err time for keep monitoring
		   after finding out err (ms)
	 * index4: csi2 err reference val for resetting
	 */
	rockchip,cif-monitor = <3 2 1 1000 5>;

	port {
		cif_mipi2_in: endpoint {
			remote-endpoint = <&mipi2_csi2_output>;
		};
	};
};

/**
 * ============================================================================
 * Samsung DCPHY1: full mode
 * ============================================================================
 */
&csi2_dphy1_hw {
	status = "okay";
};

&csi2_dcphy1 {
	status = "okay";

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <0>;

			mipi_dcphy1_in_ns6601: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&ns6601_dcphy1_out>;
				data-lanes = <1 2>;
			};
		};
		port@1 {
			reg = <1>;
			#address-cells = <1>;
			#size-cells = <0>;

			csidcphy1_out: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&mipi1_csi2_input>;
			};
		};
	};
};

&mipi1_csi2 {
	status = "okay";

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			reg = <0>;
			#address-cells = <1>;
			#size-cells = <0>;

			mipi1_csi2_input: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&csidcphy1_out>;
			};
		};

		port@1 {
			reg = <1>;
			#address-cells = <1>;
			#size-cells = <0>;

			mipi1_csi2_output: endpoint@0 {
				reg = <0>;
				remote-endpoint = <&cif_mipi1_in>;
			};
		};
	};
};

&rkcif_mipi_lvds1 {
	status = "okay";
	/* parameters for do cif reset detecting:
	 * index0: monitor mode,
		   0 for idle,
		   1 for continue,
		   2 for trigger,
		   3 for hotplug (for nextchip)
	 * index1: the frame id to start timer,
		   min is 2
	 * index2: frame num of monitoring cycle
	 * index3: err time for keep monitoring
		   after finding out err (ms)
	 * index4: csi2 err reference val for resetting
	 */
	rockchip,cif-monitor = <3 2 1 1000 5>;

	port {
		cif_mipi1_in: endpoint {
			remote-endpoint = <&mipi1_csi2_output>;
		};
	};
};

/**
 * =============================================================================
 * Common
 * =============================================================================
 */
&rkcif {
	status = "okay";
	rockchip,android-usb-camerahal-enable;
};

&rkcif_mmu {
	status = "okay";
};

&i2c2 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&i2c2m4_xfer>;
	clock-frequency = <400000>;

	// AVM Camera x4
	ns6601_dphy0: ns6601@29 {
		compatible = "norelsys,ns6601";
		status = "disabled";
		reg = <0x29>;
		clock-names = "xvclk";
		clocks = <&ns6601_dphy0_osc0 0>;
		pinctrl-names = "default";
		pinctrl-0 = <&ns6601_dphy0_pwdn>, <&ns6601_dphy0_errb>, <&ns6601_dphy0_lock>;
		power-domains = <&power RK3588_PD_VI>;
		rockchip,grf = <&sys_grf>;
		pwdn-gpios = <&gpio1 RK_PC4 GPIO_ACTIVE_HIGH>;
		lock-gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_HIGH>;

		rockchip,camera-module-index = <0>;
		rockchip,camera-module-facing = "back";
		rockchip,camera-module-name = "ns6601";
		rockchip,camera-module-lens-name = "ns6601";

		port {
			ns6601_dphy0_out: endpoint {
				remote-endpoint = <&mipi_dphy0_in_ns6601>;
				data-lanes = <1 2>;
			};
		};
		
		/* support mode config start */
		support-mode-config {
			status = "okay";

			bus-format = <MEDIA_BUS_FMT_UYVY8_2X8>;
			sensor-width = <1600>;
			sensor-height = <1080>;
			max-fps-numerator = <10000>;
			max-fps-denominator = <300000>;
			bpp = <16>;
			link-freq-idx = <15>;
			vc-array = <0x10 0x20 0x40 0x80>; // VC0~3: bit4~7
		};
	};

	// DMS Camera x1 + OMS Camera x3
	ns6601_dcphy1: ns6601@6b {
		compatible = "norelsys,ns6601";
		status = "okay";
		reg = <0x6b>;
		clock-names = "xvclk";
		clocks = <&ns6601_dcphy1_osc0 0>;
		pinctrl-names = "default";
		pinctrl-0 =  <&ns6601_dcphy1_pwdn>, <&ns6601_dcphy1_errb>, <&ns6601_dcphy1_lock>;
		power-domains = <&power RK3588_PD_VI>;
		rockchip,grf = <&sys_grf>;
		pwdn-gpios = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>;
		lock-gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>;

		rockchip,camera-module-index = <0>;
		rockchip,camera-module-facing = "back";
		rockchip,camera-module-name = "ns6601";
		rockchip,camera-module-lens-name = "ns6601";

		port {
			ns6601_dcphy1_out: endpoint {
				remote-endpoint = <&mipi_dcphy1_in_ns6601>;
				data-lanes = <1 2>;
			};
		};
		
		/* support mode config start */
		support-mode-config {
			status = "okay";

			bus-format = <MEDIA_BUS_FMT_UYVY8_2X8>;
			sensor-width = <1600>;
			sensor-height = <1080>;
			max-fps-numerator = <10000>;
			max-fps-denominator = <300000>;
			bpp = <16>;
			link-freq-idx = <15>;
			vc-array = <0x10 0x20 0x40 0x80>; // VC0~3: bit4~7
		};
	};
};

&pinctrl {
	norelsys-cameras {
		ns6601_dphy0_pwdn: ns6601-dphy0-pwdn {
			rockchip,pins = <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;
		};

		ns6601_dphy0_errb: ns6601-dphy0-errb {
			rockchip,pins = <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
		};

		ns6601_dphy0_lock: ns6601-dphy0-lock {
			rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
		};
		
		ns6601_dcphy1_pwdn: ns6601-dcphy1-pwdn {
			rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>;
		};

		ns6601_dcphy1_errb: ns6601-dcphy1-errb {
			rockchip,pins = <1 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>;
		};

		ns6601_dcphy1_lock: ns6601-dcphy1-lock {
			rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_up>;
		};
	};
};

ns6601.c文件

// SPDX-License-Identifier: GPL-2.0
/*
 * ns6601 HSMT to CSI-2 Deserializer driver
 *
 * Copyright (C) 2024 Rockchip Electronics Co., Ltd.
 *
 * V0.0X01.0X00 first version.
 * V1.0X00.0X00 Support New Driver Framework.
 * V1.0X01.0X00 serdes read /write api depend on i2c id index.
 *
 */

#include <linux/clk.h>
#include <linux/device.h>
#include <linux/delay.h>
#include <linux/iopoll.h>
#include <linux/gpio/consumer.h>
#include <linux/pinctrl/consumer.h>
#include <linux/i2c.h>
#include <linux/regmap.h>
#include <linux/module.h>
#include <linux/pm_runtime.h>
#include <linux/regulator/consumer.h>
#include <linux/sysfs.h>
#include <linux/slab.h>
#include <linux/version.h>
#include <linux/compat.h>
#include <linux/rk-camera-module.h>
#include <linux/of_graph.h>
#include <media/media-entity.h>
#include <media/v4l2-async.h>
#include <media/v4l2-ctrls.h>
#include <media/v4l2-subdev.h>
#include <media/v4l2-ctrls.h>
#include <media/v4l2-fwnode.h>
#include <media/v4l2-subdev.h>

#include "ns6601_config.h"

#define DRIVER_VERSION			KERNEL_VERSION(1, 0x01, 0x00)

#ifndef V4L2_CID_DIGITAL_GAIN
#define V4L2_CID_DIGITAL_GAIN		V4L2_CID_GAIN
#endif

#define NS6601_LINK_FREQ_MHZ(x)	((x) * 1000000UL)
#define NS6601_XVCLK_FREQ		25000000

#define NS6601_NAME			"ns6601"

struct ns6601_mode {
	u32 width;
	u32 height;
	struct v4l2_fract max_fps;
	u32 hts_def;
	u32 vts_def;
	u32 exp_def;
	u32 link_freq_idx;
	u32 bus_fmt;
	u32 bpp;
	u32 vc[PAD_MAX];
};

struct ns6601 {
	struct i2c_client *client;
	u16 i2c_addr;
	struct clk *xvclk;
	struct gpio_desc *power_gpio;
	struct gpio_desc *reset_gpio;
	struct gpio_desc *pwdn_gpio;
	struct gpio_desc *pocen_gpio;
	struct gpio_desc *lock_gpio;
	struct gpio_desc *errb_gpio;

	struct pinctrl *pinctrl;
	struct pinctrl_state *pins_default;
	struct pinctrl_state *pins_sleep;

	struct v4l2_subdev subdev;
	struct media_pad pad;
	struct v4l2_ctrl_handler ctrl_handler;
	struct v4l2_ctrl *exposure;
	struct v4l2_ctrl *anal_gain;
	struct v4l2_ctrl *digi_gain;
	struct v4l2_ctrl *hblank;
	struct v4l2_ctrl *vblank;
	struct v4l2_ctrl *pixel_rate;
	struct v4l2_ctrl *link_freq;
	struct v4l2_ctrl *test_pattern;
	struct v4l2_fwnode_endpoint bus_cfg;

	struct mutex mutex;
	bool streaming;
	bool power_on;
	bool hot_plug;
	u8 is_reset;
	int hot_plug_irq;
	u32 link_mask;
	struct ns6601_mode supported_modes;
	const struct ns6601_mode *cur_mode;
	u32 cfg_modes_num;
	u32 module_index;
	u32 auto_init_deskew_mask;
	u32 frame_sync_period;
	const char *module_facing;
	const char *module_name;
	const char *len_name;
	struct regmap *regmap;
};

static const struct regmap_config ns6601_regmap_config = {
	.reg_bits = 8,
	.val_bits = 8,
	.max_register = 0x1FFF,
};

static struct rkmodule_csi_dphy_param rk3588_dcphy_param = {
	.vendor = PHY_VENDOR_SAMSUNG,
	.lp_vol_ref = 3,
	.lp_hys_sw = {3, 0, 0, 0},
	.lp_escclk_pol_sel = {1, 0, 0, 0},
	.skew_data_cal_clk = {0, 0, 0, 0},
	.clk_hs_term_sel = 2,
	.data_hs_term_sel = {2, 2, 2, 2},
	.reserved = {0},
};
static const struct ns6601_mode ns6601_def_mode[] = {
	{
		.width = 1600,
		.height = 1080,
		.max_fps = {
			.numerator = 10000,
			.denominator = 300000,
		},
		.link_freq_idx = 15,// to do 750M
		.bus_fmt = MEDIA_BUS_FMT_UYVY8_2X8,
		.bpp = 16,
		.vc[PAD0] = V4L2_MBUS_CSI2_CHANNEL_0,
		.vc[PAD1] = V4L2_MBUS_CSI2_CHANNEL_1,
		.vc[PAD2] = V4L2_MBUS_CSI2_CHANNEL_2,
		.vc[PAD3] = V4L2_MBUS_CSI2_CHANNEL_3,
	},
};

/* link freq = index * NS6601_LINK_FREQ_MHZ(50) */
static const s64 link_freq_items[] = {
	NS6601_LINK_FREQ_MHZ(0),
	NS6601_LINK_FREQ_MHZ(50),
	NS6601_LINK_FREQ_MHZ(100),
	NS6601_LINK_FREQ_MHZ(150),
	NS6601_LINK_FREQ_MHZ(200),
	NS6601_LINK_FREQ_MHZ(250),
	NS6601_LINK_FREQ_MHZ(300),
	NS6601_LINK_FREQ_MHZ(350),
	NS6601_LINK_FREQ_MHZ(400),
	NS6601_LINK_FREQ_MHZ(450),
	NS6601_LINK_FREQ_MHZ(500),
	NS6601_LINK_FREQ_MHZ(550),
	NS6601_LINK_FREQ_MHZ(600),
	NS6601_LINK_FREQ_MHZ(650),
	NS6601_LINK_FREQ_MHZ(700),
	NS6601_LINK_FREQ_MHZ(750),
	NS6601_LINK_FREQ_MHZ(800),
	NS6601_LINK_FREQ_MHZ(850),
	NS6601_LINK_FREQ_MHZ(900),
	NS6601_LINK_FREQ_MHZ(950),
	NS6601_LINK_FREQ_MHZ(1000),
	NS6601_LINK_FREQ_MHZ(1050),
	NS6601_LINK_FREQ_MHZ(1100),
	NS6601_LINK_FREQ_MHZ(1150),
	NS6601_LINK_FREQ_MHZ(1200),
	NS6601_LINK_FREQ_MHZ(1250),
};

static int ns6601_write_reg(struct ns6601 *ns6601,u16 val_len, u8* val)
{
	struct i2c_client *client = ns6601->client;
	u16 client_addr = ns6601->i2c_addr;

	dev_dbg(&client->dev, "addr(0x%02x) write reg(0x%04x, %d, 0x%02x)\n",
		client_addr, val[0], val_len, val[1]);

	client->addr = client_addr;

	if (i2c_master_send(client, val, val_len) != val_len) {
		dev_err(&client->dev,
			"%s: writing register 0x%04x from 0x%02x failed\n",
			__func__, val[0], client->addr);
		return -EIO;
	}

	return 0;
}

static int ns6601_read_reg(struct ns6601 *ns6601,u16 val_len, u8 *val)
{
	struct i2c_client *client = ns6601->client;
	u16 client_addr = ns6601->i2c_addr;
	struct i2c_msg msgs[1];
	int ret;
	
	client->addr = client_addr;

	/* Read data from register */
	msgs[0].addr = client->addr;
	msgs[0].flags = I2C_M_RD;
	msgs[0].len = val_len;
	msgs[0].buf = val;

	ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs));
	if (ret != ARRAY_SIZE(msgs)) {
		dev_err(&client->dev,
			"%s: reading register from 0x%x failed\n",
			__func__, client->addr);
		return -EIO;
	}

#if 0
	dev_info(&client->dev, "addr(0x%02x) read reg(0x%04x, %d, 0x%02x)\n",
		client_addr, reg, reg_len, *val);
#endif

	return 0;
}


static int ns6601_mipi_enable(struct ns6601 *ns6601, bool enable)
{
	int ret = 0;
	u8 mipi1_enable[] = {0x74, 0x88, 0x9e, 0x00, 0xff, 0xff, 0x00, 0x18, 0x5b, 0x82};
	u8 mipi2_enable[] = {0x74, 0x88, 0x8e, 0x00, 0xff, 0xff, 0x00, 0x18, 0x19, 0x32};
	u8 buf_enable[] = {0x74, 0x48, 0x1d, 0x00, 0xe0, 0x01, 0xe0, 0x01, 0x9a, 0xe8};
	if (enable) {
		ns6601_write_reg(ns6601,sizeof(mipi1_enable),mipi1_enable);
		ns6601_write_reg(ns6601,sizeof(mipi2_enable),mipi2_enable);
		ns6601_write_reg(ns6601,sizeof(buf_enable),buf_enable);
	}else{

	}

	return ret;
}

static int ns6601_set_fmt(struct v4l2_subdev *sd,
			    struct v4l2_subdev_pad_config *cfg,
			    struct v4l2_subdev_format *fmt)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	const struct ns6601_mode *mode;
	u64 pixel_rate = 0;
	u8 data_lanes;

	mutex_lock(&ns6601->mutex);

	mode = &ns6601->supported_modes;

	fmt->format.code = mode->bus_fmt;
	fmt->format.width = mode->width;
	fmt->format.height = mode->height;
	fmt->format.field = V4L2_FIELD_NONE;
	if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) {
#ifdef CONFIG_VIDEO_V4L2_SUBDEV_API
		*v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
#else
		mutex_unlock(&ns6601->mutex);
		return -ENOTTY;
#endif
	} else {
		if (ns6601->streaming) {
			mutex_unlock(&ns6601->mutex);
			return -EBUSY;
		}

		ns6601->cur_mode = mode;

		__v4l2_ctrl_s_ctrl(ns6601->link_freq, mode->link_freq_idx);
		/* pixel rate = link frequency * 2 * lanes / BITS_PER_SAMPLE */
		data_lanes = ns6601->bus_cfg.bus.mipi_csi2.num_data_lanes;
		pixel_rate = (u32)link_freq_items[mode->link_freq_idx] / mode->bpp * 2 * data_lanes;
		__v4l2_ctrl_s_ctrl_int64(ns6601->pixel_rate, pixel_rate);

		dev_info(&ns6601->client->dev, "mipi_freq_idx = %d, mipi_link_freq = %lld\n",
				mode->link_freq_idx, link_freq_items[mode->link_freq_idx]);
		dev_info(&ns6601->client->dev, "pixel_rate = %lld, bpp = %d\n",
				pixel_rate, mode->bpp);
	}

	mutex_unlock(&ns6601->mutex);

	return 0;
}

static int ns6601_get_fmt(struct v4l2_subdev *sd,
			    struct v4l2_subdev_pad_config *cfg,
			    struct v4l2_subdev_format *fmt)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	const struct ns6601_mode *mode = ns6601->cur_mode;

	mutex_lock(&ns6601->mutex);
	if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) {
#ifdef CONFIG_VIDEO_V4L2_SUBDEV_API
		fmt->format = *v4l2_subdev_get_try_format(sd, cfg, fmt->pad);
#else
		mutex_unlock(&ns6601->mutex);
		return -ENOTTY;
#endif
	} else {
		fmt->format.width = mode->width;
		fmt->format.height = mode->height;
		fmt->format.code = mode->bus_fmt;
		fmt->format.field = V4L2_FIELD_NONE;
		if (fmt->pad < PAD_MAX && fmt->pad >= PAD0)
			fmt->reserved[0] = mode->vc[fmt->pad];
		else
			fmt->reserved[0] = mode->vc[PAD0];
	}
	mutex_unlock(&ns6601->mutex);

	return 0;
}

static int ns6601_enum_mbus_code(struct v4l2_subdev *sd,
				   struct v4l2_subdev_pad_config *cfg,
				   struct v4l2_subdev_mbus_code_enum *code)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	const struct ns6601_mode *mode = ns6601->cur_mode;

	if (code->index != 0)
		return -EINVAL;
	code->code = mode->bus_fmt;

	return 0;
}

static int ns6601_enum_frame_sizes(struct v4l2_subdev *sd,
				     struct v4l2_subdev_pad_config *cfg,
				     struct v4l2_subdev_frame_size_enum *fse)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);

	if (fse->index >= ns6601->cfg_modes_num)
		return -EINVAL;

	if (fse->code != ns6601->supported_modes.bus_fmt)
		return -EINVAL;

	fse->min_width  = ns6601->supported_modes.width;
	fse->max_width  = ns6601->supported_modes.width;
	fse->max_height = ns6601->supported_modes.height;
	fse->min_height = ns6601->supported_modes.height;

	return 0;
}

static int ns6601_g_frame_interval(struct v4l2_subdev *sd,
				     struct v4l2_subdev_frame_interval *fi)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	const struct ns6601_mode *mode = ns6601->cur_mode;

	mutex_lock(&ns6601->mutex);
	fi->interval = mode->max_fps;
	mutex_unlock(&ns6601->mutex);

	return 0;
}

static void ns6601_get_module_inf(struct ns6601 *ns6601,
				    struct rkmodule_inf *inf)
{
	memset(inf, 0, sizeof(*inf));
	strscpy(inf->base.sensor, NS6601_NAME, sizeof(inf->base.sensor));
	strscpy(inf->base.module, ns6601->module_name,
		sizeof(inf->base.module));
	strscpy(inf->base.lens, ns6601->len_name, sizeof(inf->base.lens));
}

static void
ns6601_get_vicap_rst_inf(struct ns6601 *ns6601,
			   struct rkmodule_vicap_reset_info *rst_info)
{
	struct i2c_client *client = ns6601->client;

	rst_info->is_reset = ns6601->hot_plug;
	ns6601->hot_plug = false;
	rst_info->src = RKCIF_RESET_SRC_ERR_HOTPLUG;
	dev_info(&client->dev, "%s: rst_info->is_reset:%d.\n", __func__,
		 rst_info->is_reset);
}

static void
ns6601_set_vicap_rst_inf(struct ns6601 *ns6601,
			   struct rkmodule_vicap_reset_info rst_info)
{
	ns6601->is_reset = rst_info.is_reset;
}

static long ns6601_ioctl(struct v4l2_subdev *sd, unsigned int cmd, void *arg)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	struct rkmodule_csi_dphy_param *dphy_param;
	long ret = 0;
	u32 stream = 0;

	switch (cmd) {
	case RKMODULE_GET_MODULE_INFO:
		ns6601_get_module_inf(ns6601, (struct rkmodule_inf *)arg);
		break;
	case RKMODULE_SET_QUICK_STREAM:
		stream = *((u32 *)arg);

		if (stream)
			ret = ns6601_mipi_enable(ns6601, true);
		else
			ret = ns6601_mipi_enable(ns6601, false);
		break;
	case RKMODULE_GET_VICAP_RST_INFO:
		ns6601_get_vicap_rst_inf(
			ns6601, (struct rkmodule_vicap_reset_info *)arg);
		break;
	case RKMODULE_SET_VICAP_RST_INFO:
		ns6601_set_vicap_rst_inf(
			ns6601, *(struct rkmodule_vicap_reset_info *)arg);
		break;
	case RKMODULE_GET_START_STREAM_SEQ:
		break;
	case RKMODULE_SET_CSI_DPHY_PARAM:
		dphy_param = (struct rkmodule_csi_dphy_param *)arg;
		if (dphy_param->vendor == rk3588_dcphy_param.vendor)
			rk3588_dcphy_param = *dphy_param;
		dev_dbg(&ns6601->client->dev, "sensor set dphy param\n");
		break;
	case RKMODULE_GET_CSI_DPHY_PARAM:
		dphy_param = (struct rkmodule_csi_dphy_param *)arg;
		if (dphy_param->vendor == rk3588_dcphy_param.vendor)
			*dphy_param = rk3588_dcphy_param;
		dev_dbg(&ns6601->client->dev, "sensor get dphy param\n");
		break;
	default:
		ret = -ENOIOCTLCMD;
		break;
	}

	return ret;
}

#ifdef CONFIG_COMPAT
static long ns6601_compat_ioctl32(struct v4l2_subdev *sd, unsigned int cmd,
				    unsigned long arg)
{
	void __user *up = compat_ptr(arg);
	struct rkmodule_inf *inf;
	struct rkmodule_awb_cfg *cfg;
	struct rkmodule_vicap_reset_info *vicap_rst_inf;
	struct rkmodule_csi_dphy_param *dphy_param;
	long ret = 0;
	int *seq;
	u32 stream = 0;

	switch (cmd) {
	case RKMODULE_GET_MODULE_INFO:
		inf = kzalloc(sizeof(*inf), GFP_KERNEL);
		if (!inf) {
			ret = -ENOMEM;
			return ret;
		}

		ret = ns6601_ioctl(sd, cmd, inf);
		if (!ret) {
			ret = copy_to_user(up, inf, sizeof(*inf));
			if (ret)
				ret = -EFAULT;
		}
		kfree(inf);
		break;
	case RKMODULE_AWB_CFG:
		cfg = kzalloc(sizeof(*cfg), GFP_KERNEL);
		if (!cfg) {
			ret = -ENOMEM;
			return ret;
		}

		ret = copy_from_user(cfg, up, sizeof(*cfg));
		if (!ret)
			ret = ns6601_ioctl(sd, cmd, cfg);
		else
			ret = -EFAULT;
		kfree(cfg);
		break;
	case RKMODULE_GET_VICAP_RST_INFO:
		vicap_rst_inf = kzalloc(sizeof(*vicap_rst_inf), GFP_KERNEL);
		if (!vicap_rst_inf) {
			ret = -ENOMEM;
			return ret;
		}

		ret = ns6601_ioctl(sd, cmd, vicap_rst_inf);
		if (!ret) {
			ret = copy_to_user(up, vicap_rst_inf,
					   sizeof(*vicap_rst_inf));
			if (ret)
				ret = -EFAULT;
		}
		kfree(vicap_rst_inf);
		break;
	case RKMODULE_SET_VICAP_RST_INFO:
		vicap_rst_inf = kzalloc(sizeof(*vicap_rst_inf), GFP_KERNEL);
		if (!vicap_rst_inf) {
			ret = -ENOMEM;
			return ret;
		}

		ret = copy_from_user(vicap_rst_inf, up, sizeof(*vicap_rst_inf));
		if (!ret)
			ret = ns6601_ioctl(sd, cmd, vicap_rst_inf);
		else
			ret = -EFAULT;
		kfree(vicap_rst_inf);
		break;
	case RKMODULE_GET_START_STREAM_SEQ:
		seq = kzalloc(sizeof(*seq), GFP_KERNEL);
		if (!seq) {
			ret = -ENOMEM;
			return ret;
		}

		ret = ns6601_ioctl(sd, cmd, seq);
		if (!ret) {
			ret = copy_to_user(up, seq, sizeof(*seq));
			if (ret)
				ret = -EFAULT;
		}
		kfree(seq);
		break;
	case RKMODULE_SET_QUICK_STREAM:
		ret = copy_from_user(&stream, up, sizeof(u32));
		if (!ret)
			ret = ns6601_ioctl(sd, cmd, &stream);
		else
			ret = -EFAULT;
		break;
	case RKMODULE_SET_CSI_DPHY_PARAM:
		dphy_param = kzalloc(sizeof(*dphy_param), GFP_KERNEL);
		if (!dphy_param) {
			ret = -ENOMEM;
			return ret;
		}

		ret = copy_from_user(dphy_param, up, sizeof(*dphy_param));
		if (!ret)
			ret = ns6601_ioctl(sd, cmd, dphy_param);
		else
			ret = -EFAULT;
		kfree(dphy_param);
		break;
	case RKMODULE_GET_CSI_DPHY_PARAM:
		dphy_param = kzalloc(sizeof(*dphy_param), GFP_KERNEL);
		if (!dphy_param) {
			ret = -ENOMEM;
			return ret;
		}

		ret = ns6601_ioctl(sd, cmd, dphy_param);
		if (!ret) {
			ret = copy_to_user(up, dphy_param, sizeof(*dphy_param));
			if (ret)
				ret = -EFAULT;
		}
		kfree(dphy_param);
		break;
	default:
		ret = -ENOIOCTLCMD;
		break;
	}

	return ret;
}
#endif

static int __ns6601_tx_ready_check(struct ns6601 *ns6601)
{
	int ret = -1,retry = 0;
	u8 checkCmd[] = {0x33, 0x00, 0x03, 0x20, 0x61, 0x74};
	u8 status[10] = {0};
	
	while( retry < 6 ){
		ret = ns6601_write_reg(ns6601,sizeof(checkCmd),checkCmd);
		ret = ns6601_read_reg(ns6601,3,status);

		retry++;
		if( (status[0] == 0xe5) && ( status[1] == 0x22 ) && ( status[2] == 0x03 ) ){
			dev_info(&ns6601->client->dev, "tx ready check status(0x%02x 0x%02x 0x%02x )\n",status[0], status[1], status[2]);
			ret = 0;
			break;
		}
		usleep_range(50000, 60000);
	}

	return ret;
}

static int __ns6601_tx_reinit_check(struct ns6601 *ns6601)
{
	int ret = 0;
	u8 status[10] = {0};
	u8 retry = 0;
	u8 tx0_reinit_check1[] = {0x1c, 0x01, 0x08, 0x58, 0x1c, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x18, 0x1e, 0x00, 0x01, 0x00, 0x18, 0x04, 0x11, 0x32, 0x3f, 0xe0};
	u8 tx0_reinit_check2[] = {0x50, 0x00, 0x58, 0x04, 0x10, 0x00, 0x8e, 0x2f};
	//u8 tx0_reinit[] = {0x54, 0x00, 0x18, 0x1e, 0x01, 0x01, 0xe3, 0x1b};

check_retry:
	ret = ns6601_write_reg(ns6601,sizeof(tx0_reinit_check1),tx0_reinit_check1);
	ret = ns6601_read_reg(ns6601,3,status);
	if(ret)
		goto err;
	ret = ns6601_write_reg(ns6601,sizeof(tx0_reinit_check2),tx0_reinit_check2);
	ret = ns6601_read_reg(ns6601,3,status);
	if(ret)
		goto err;

	dev_info(&ns6601->client->dev, "__ns6601_tx_reinit_check read data(0x%02x)\n",status[0]);
	if( status[0] == 0xea ){
		ret = 0;
	}else{
		ret = -1;
		//ret = ns6601_write_reg(ns6601,sizeof(tx0_reinit),tx0_reinit);
		//ret = ns6601_read_reg(ns6601,3,status);
		//dev_info(&ns6601->client->dev, "__ns6601_tx_reinit status data(0x%02x)\n",status[0]);
	}
	return ret;
err:
	if(ret){
		usleep_range(620000, 625000);
		ns6601_read_reg(ns6601,3,status);
		retry++;
		if( retry <= 3 )
			goto check_retry;
		else
			return ret;
	}
	return ret;
}

static int __ns6601_des_config(struct ns6601 *ns6601)
{
	int ret;
	int dataSize = 0,pCmdIndex = 0,txSize = 0,i =0;
	u8 status[10] = {0};
	u8 rewriteCnt = 0,recfgCnt = 0;
	
	dataSize = sizeof(dms_des_cfg);
config_retry:
	pCmdIndex = 0;
	i = 0;
	while( pCmdIndex < dataSize ){
		txSize = (dms_des_cfg[pCmdIndex] << 8) | (dms_des_cfg[pCmdIndex+1]);
		pCmdIndex += 2;
		i++;
	rewrite:
		ret = ns6601_write_reg(ns6601,txSize,&dms_des_cfg[pCmdIndex]);
		ret = ns6601_read_reg(ns6601,3,status);
		
		if( ret ){
			usleep_range(620000, 625000);
			ns6601_read_reg(ns6601,3,status);
			break;
		}else if( status[0] == 0xe5 ){
			usleep_range(10000, 15000);
			rewriteCnt++;
			dev_info(&ns6601->client->dev, "__ns6601_des_config data%d(0x%02x) failed,will go to retry!\n",i,status[0]);
			if( rewriteCnt <= 3 )
				goto rewrite;
		}
		pCmdIndex += txSize;
		rewriteCnt = 0;		
	}

	if( ret && ( recfgCnt < 3 ) ){
		recfgCnt++;
		goto config_retry;
	}

	return ret;
}

static int __ns6601_ser_config(struct ns6601 *ns6601)
{
	int ret;
	int dataSize = 0,pCmdIndex = 0,txSize = 0,i =0;
	u8 status[10] = {0};
	u8 rewriteCnt = 0,recfgCnt = 0;

	dataSize = sizeof(dms_ser_cfg);
config_retry:
	pCmdIndex = 0;
	i = 0;
	ret = __ns6601_tx_ready_check(ns6601);
	if( ret == 0 ){
		if(__ns6601_tx_reinit_check(ns6601) == 0){
			while( pCmdIndex < dataSize ){
				txSize = (dms_ser_cfg[pCmdIndex] << 8) | (dms_ser_cfg[pCmdIndex+1]);
				pCmdIndex += 2;
				i++;
			rewrite:
				ret = ns6601_write_reg(ns6601,txSize,&dms_ser_cfg[pCmdIndex]);
				ret = ns6601_read_reg(ns6601,3,status);
				if( ret ){
					usleep_range(620000, 625000);
					ns6601_read_reg(ns6601,3,status);
					break;
				}else if( status[0] == 0xe5 ){
					usleep_range(10000, 15000);
					dev_info(&ns6601->client->dev, "__ns6601_ser_config data%d(0x%02x) failed,will go to retry!\n",i,status[0]);
					rewriteCnt++;
					if( rewriteCnt <= 3 )
						goto rewrite;
				}
				pCmdIndex += txSize;
				rewriteCnt = 0;		
			}
		}
	}

	if( ret && ( recfgCnt < 3 ) ){
		recfgCnt++;
		goto config_retry;
	}
	
	return ret;
}

static int __ns6601_start_stream(struct ns6601 *ns6601)
{
	int ret;

	if (!IS_ERR(ns6601->power_gpio)) {
		gpiod_set_value_cansleep(ns6601->power_gpio, 1);
		usleep_range(15000, 20000);
	}

	ret = __ns6601_des_config(ns6601);
	if (ret)
		return ret;

	ret = __ns6601_ser_config(ns6601);
	if (ret)
		return ret;

	/* In case these controls are set before streaming */
	mutex_unlock(&ns6601->mutex);
	ret = v4l2_ctrl_handler_setup(&ns6601->ctrl_handler);
	mutex_lock(&ns6601->mutex);
	if (ret)
		return ret;

	ret = ns6601_mipi_enable(ns6601, true);

	return ret;

}

static int __ns6601_stop_stream(struct ns6601 *ns6601)
{
	if (ns6601->hot_plug_irq > 0)
		disable_irq(ns6601->hot_plug_irq);

	return ns6601_mipi_enable(ns6601, false);
}

static int ns6601_s_stream(struct v4l2_subdev *sd, int on)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	struct i2c_client *client = ns6601->client;
	int ret = 0;

	dev_info(&client->dev, "%s: on: %d, %dx%d@%d\n", __func__, on,
		ns6601->cur_mode->width, ns6601->cur_mode->height,
		DIV_ROUND_CLOSEST(ns6601->cur_mode->max_fps.denominator,
				ns6601->cur_mode->max_fps.numerator));

	mutex_lock(&ns6601->mutex);
	on = !!on;
	if (on == ns6601->streaming)
		goto unlock_and_return;

	if (on) {
		ret = pm_runtime_get_sync(&client->dev);
		if (ret < 0) {
			pm_runtime_put_noidle(&client->dev);
			goto unlock_and_return;
		}

		ret = __ns6601_start_stream(ns6601);
		if (ret) {
			v4l2_err(sd, "start stream failed while write regs\n");
			pm_runtime_put(&client->dev);
			goto unlock_and_return;
		}
	} else {
		__ns6601_stop_stream(ns6601);
		pm_runtime_put(&client->dev);
	}

	ns6601->streaming = on;

unlock_and_return:
	mutex_unlock(&ns6601->mutex);

	return ret;
}

static int ns6601_s_power(struct v4l2_subdev *sd, int on)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	struct i2c_client *client = ns6601->client;
	int ret = 0;

	mutex_lock(&ns6601->mutex);

	/* If the power state is not modified - no work to do. */
	if (ns6601->power_on == !!on)
		goto unlock_and_return;

	if (on) {
		ret = pm_runtime_get_sync(&client->dev);
		if (ret < 0) {
			pm_runtime_put_noidle(&client->dev);
			goto unlock_and_return;
		}

		ns6601->power_on = true;
	} else {
		pm_runtime_put(&client->dev);
		ns6601->power_on = false;
	}

unlock_and_return:
	mutex_unlock(&ns6601->mutex);

	return ret;
}

static int ns6601_local_device_power_on(struct ns6601 *ns6601)
{
	struct device *dev = &ns6601->client->dev;

	if (!IS_ERR(ns6601->pwdn_gpio)) {
		dev_info(dev, "local device pwdn gpio on\n");

		gpiod_set_value_cansleep(ns6601->pwdn_gpio, 1);

		usleep_range(10000, 11000);
	}

	return 0;
}

static int __ns6601_power_on(struct ns6601 *ns6601)
{
	int ret;

	struct device *dev = &ns6601->client->dev;

	if (!IS_ERR(ns6601->power_gpio)) {
		gpiod_set_value_cansleep(ns6601->power_gpio, 1);
		usleep_range(5000, 10000);
	}

	if (!IS_ERR(ns6601->pocen_gpio)) {
		gpiod_set_value_cansleep(ns6601->pocen_gpio, 1);
		usleep_range(5000, 10000);
	}

	if (!IS_ERR_OR_NULL(ns6601->pins_default)) {
		ret = pinctrl_select_state(ns6601->pinctrl,
					ns6601->pins_default);
		if (ret < 0)
			dev_err(dev, "could not set pins\n");
	}

	if (!IS_ERR(ns6601->reset_gpio))
		gpiod_set_value_cansleep(ns6601->reset_gpio, 0);

	if (!IS_ERR(ns6601->reset_gpio)) {
		gpiod_set_value_cansleep(ns6601->reset_gpio, 1);
		usleep_range(500, 1000);
	}

	if (!IS_ERR(ns6601->pwdn_gpio))
		gpiod_set_value_cansleep(ns6601->pwdn_gpio, 1);

	return 0;

	return ret;
}

static void __ns6601_power_off(struct ns6601 *ns6601)
{
	int ret;
	struct device *dev = &ns6601->client->dev;
	
	if (!IS_ERR(ns6601->pwdn_gpio))
		gpiod_set_value_cansleep(ns6601->pwdn_gpio, 0);
	clk_disable_unprepare(ns6601->xvclk);

	if (!IS_ERR(ns6601->reset_gpio))
		gpiod_set_value_cansleep(ns6601->reset_gpio, 0);

	if (!IS_ERR_OR_NULL(ns6601->pins_sleep)) {
		ret = pinctrl_select_state(ns6601->pinctrl,
					   ns6601->pins_sleep);
		if (ret < 0)
			dev_dbg(dev, "could not set pins\n");
	}

	if (!IS_ERR(ns6601->pocen_gpio))
		gpiod_set_value_cansleep(ns6601->pocen_gpio, 0);

	if (!IS_ERR(ns6601->power_gpio))
		gpiod_set_value_cansleep(ns6601->power_gpio, 0);
}

static int ns6601_runtime_resume(struct device *dev)
{
	struct i2c_client *client = to_i2c_client(dev);
	struct v4l2_subdev *sd = i2c_get_clientdata(client);
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);

	return __ns6601_power_on(ns6601);
}

static int ns6601_runtime_suspend(struct device *dev)
{
	struct i2c_client *client = to_i2c_client(dev);
	struct v4l2_subdev *sd = i2c_get_clientdata(client);
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);

	__ns6601_power_off(ns6601);

	return 0;
}

#ifdef CONFIG_VIDEO_V4L2_SUBDEV_API
static int ns6601_open(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	struct v4l2_mbus_framefmt *try_fmt =
		v4l2_subdev_get_try_format(sd, fh->pad, 0);
	const struct ns6601_mode *def_mode = &ns6601->supported_modes;

	mutex_lock(&ns6601->mutex);
	/* Initialize try_fmt */
	try_fmt->width = def_mode->width;
	try_fmt->height = def_mode->height;
	try_fmt->code = def_mode->bus_fmt;
	try_fmt->field = V4L2_FIELD_NONE;

	mutex_unlock(&ns6601->mutex);
	/* No crop or compose */

	return 0;
}
#endif

static int
ns6601_enum_frame_interval(struct v4l2_subdev *sd,
			     struct v4l2_subdev_pad_config *cfg,
			     struct v4l2_subdev_frame_interval_enum *fie)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);

	if (fie->index >= ns6601->cfg_modes_num)
		return -EINVAL;

	fie->code = ns6601->supported_modes.bus_fmt;
	fie->width = ns6601->supported_modes.width;
	fie->height = ns6601->supported_modes.height;
	fie->interval = ns6601->supported_modes.max_fps;

	return 0;
}

static int ns6601_g_mbus_config(struct v4l2_subdev *sd, unsigned int pad,
				  struct v4l2_mbus_config *config)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);
	u32 val = 0;
	u8 data_lanes = ns6601->bus_cfg.bus.mipi_csi2.num_data_lanes;

	val |= V4L2_MBUS_CSI2_CONTINUOUS_CLOCK;
	val |= (1 << (data_lanes - 1));
	switch (data_lanes) {
	case 4:
		val |= V4L2_MBUS_CSI2_CHANNEL_3;
		fallthrough;
	case 3:
		val |= V4L2_MBUS_CSI2_CHANNEL_2;
		fallthrough;
	case 2:
		val |= V4L2_MBUS_CSI2_CHANNEL_1;
		fallthrough;
	case 1:
	default:
		val |= V4L2_MBUS_CSI2_CHANNEL_0;
		break;
	}

	config->type = V4L2_MBUS_CSI2_DPHY;
	config->flags = val;

	return 0;
}

static int ns6601_get_selection(struct v4l2_subdev *sd,
				  struct v4l2_subdev_pad_config *cfg,
				  struct v4l2_subdev_selection *sel)
{
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);

	if (sel->target == V4L2_SEL_TGT_CROP_BOUNDS) {
		sel->r.left = 0;
		sel->r.width = ns6601->cur_mode->width;
		sel->r.top = 0;
		sel->r.height = ns6601->cur_mode->height;
		return 0;
	}

	return -EINVAL;
}

static const struct dev_pm_ops ns6601_pm_ops = { SET_RUNTIME_PM_OPS(
	ns6601_runtime_suspend, ns6601_runtime_resume, NULL) };

#ifdef CONFIG_VIDEO_V4L2_SUBDEV_API
static const struct v4l2_subdev_internal_ops ns6601_internal_ops = {
	.open = ns6601_open,
};
#endif

static const struct v4l2_subdev_core_ops ns6601_core_ops = {
	.s_power = ns6601_s_power,
	.ioctl = ns6601_ioctl,
#ifdef CONFIG_COMPAT
	.compat_ioctl32 = ns6601_compat_ioctl32,
#endif
};

static const struct v4l2_subdev_video_ops ns6601_video_ops = {
	.s_stream = ns6601_s_stream,
	.g_frame_interval = ns6601_g_frame_interval,
};

static const struct v4l2_subdev_pad_ops ns6601_pad_ops = {
	.enum_mbus_code = ns6601_enum_mbus_code,
	.enum_frame_size = ns6601_enum_frame_sizes,
	.enum_frame_interval = ns6601_enum_frame_interval,
	.get_fmt = ns6601_get_fmt,
	.set_fmt = ns6601_set_fmt,
	.get_selection = ns6601_get_selection,
	.get_mbus_config = ns6601_g_mbus_config,
};

static const struct v4l2_subdev_ops ns6601_subdev_ops = {
	.core = &ns6601_core_ops,
	.video = &ns6601_video_ops,
	.pad = &ns6601_pad_ops,
};

static int ns6601_initialize_controls(struct ns6601 *ns6601)
{
	const struct ns6601_mode *mode;
	struct v4l2_ctrl_handler *handler;
	u64 pixel_rate;
	u8 data_lanes;
	int ret;

	handler = &ns6601->ctrl_handler;

	mode = ns6601->cur_mode;
	ret = v4l2_ctrl_handler_init(handler, 2);
	if (ret)
		return ret;
	handler->lock = &ns6601->mutex;

	ns6601->link_freq = v4l2_ctrl_new_int_menu(handler, NULL,
				V4L2_CID_LINK_FREQ,
				ARRAY_SIZE(link_freq_items) - 1, 0,
				link_freq_items);
	__v4l2_ctrl_s_ctrl(ns6601->link_freq, mode->link_freq_idx);
	dev_info(&ns6601->client->dev, "mipi_freq_idx = %d, mipi_link_freq = %lld\n",
			mode->link_freq_idx, link_freq_items[mode->link_freq_idx]);

	/* pixel rate = link frequency * 2 * lanes / BITS_PER_SAMPLE */
	data_lanes = ns6601->bus_cfg.bus.mipi_csi2.num_data_lanes;
	pixel_rate = (u32)link_freq_items[mode->link_freq_idx] / mode->bpp * 2 * data_lanes;
	ns6601->pixel_rate =
		v4l2_ctrl_new_std(handler, NULL, V4L2_CID_PIXEL_RATE, 0,
				  pixel_rate, 1, pixel_rate);
	dev_info(&ns6601->client->dev, "pixel_rate = %lld, bpp = %d\n",
			pixel_rate, mode->bpp);

	if (handler->error) {
		ret = handler->error;
		dev_err(&ns6601->client->dev, "Failed to init controls(%d)\n", ret);
		goto err_free_handler;
	}

	ns6601->subdev.ctrl_handler = handler;

	return 0;

err_free_handler:
	v4l2_ctrl_handler_free(handler);

	return ret;
}

static int ns6601_support_mode_init(struct ns6601 *ns6601)
{
	struct device *dev = &ns6601->client->dev;
	struct device_node *node = NULL;
	struct ns6601_mode *mode = NULL;
	u32 value = 0, vc_array[PAD_MAX];
	int ret = 0, i = 0, array_size = 0;

	dev_info(dev, "=== ns6601 support mode init ===\n");

	ns6601->cfg_modes_num = 1;
	ns6601->cur_mode = &ns6601->supported_modes;
	mode = &ns6601->supported_modes;

	// init using def mode
	memcpy(mode, ns6601_def_mode, sizeof(struct ns6601_mode));

	node = of_get_child_by_name(dev->of_node, "support-mode-config");
	if (IS_ERR_OR_NULL(node)) {
		dev_info(dev, "no mode config node, using default config.\n");
		return 0;
	}

	if (!of_device_is_available(node)) {
		dev_info(dev, "%pOF is disabled, using default config.\n", node);
		of_node_put(node);
		return 0;
	}

	ret = of_property_read_u32(node, "sensor-width", &value);
	if (ret == 0) {
		mode->width = value;
	}
	dev_info(dev, "support mode: width = %d\n", mode->width);

	ret = of_property_read_u32(node, "sensor-height", &value);
	if (ret == 0) {
		mode->height = value;
	}
	dev_info(dev, "support mode: height = %d\n", mode->height);

	ret = of_property_read_u32(node, "bus-format", &value);
	if (ret == 0) {
		mode->bus_fmt = value;
	}
	dev_info(dev, "support mode: bus_fmt = 0x%x\n", mode->bus_fmt);

	ret = of_property_read_u32(node, "bpp", &value);
	if (ret == 0) {
		mode->bpp = value;
	}
	dev_info(dev, "support mode: bpp = %d\n", mode->bpp);

	ret = of_property_read_u32(node, "max-fps-numerator", &value);
	if (ret == 0) {
		mode->max_fps.numerator = value;
	}
	dev_info(dev, "support mode: numerator = %d\n", mode->max_fps.numerator);

	ret = of_property_read_u32(node, "max-fps-denominator", &value);
	if (ret == 0) {
		mode->max_fps.denominator = value;
	}
	dev_info(dev, "support mode: denominator = %d\n", mode->max_fps.denominator);

	ret = of_property_read_u32(node, "link-freq-idx", &value);
	if (ret == 0) {
		mode->link_freq_idx = value;
	}
	dev_info(dev, "support mode: link_freq_idx = %d\n", mode->link_freq_idx);

	ret = of_property_read_u32(node, "hts-def", &value);
	if (ret == 0) {
		mode->hts_def = value;
	}
	dev_info(dev, "support mode: hts_def = %d\n", mode->hts_def);

	ret = of_property_read_u32(node, "vts-def", &value);
	if (ret == 0) {
		mode->vts_def = value;
	}
	dev_info(dev, "support mode: vts_def = %d\n", mode->vts_def);

	ret = of_property_read_u32(node, "exp-def", &value);
	if (ret == 0) {
		mode->exp_def = value;
	}
	dev_info(dev, "support mode: exp_def = %d\n", mode->exp_def);

	array_size = of_property_read_variable_u32_array(node,
				"vc-array", vc_array, 1, PAD_MAX);
	if (array_size > 0) {
		if (array_size > PAD_MAX)
			array_size = PAD_MAX;

		for (i = 0; i < array_size; i++) {
			dev_info(dev, "vc-array[%d] property: 0x%x\n", i, vc_array[i]);
			mode->vc[i] = vc_array[i];
		}
	}
	for (i = 0; i < PAD_MAX; i++)
		dev_info(dev, "support mode: vc[%d] = 0x%x\n", i, mode->vc[i]);

	of_node_put(node);

	return 0;
}

static int ns6601_probe(struct i2c_client *client,
			  const struct i2c_device_id *id)
{
	struct device *dev = &client->dev;
	struct device_node *node = dev->of_node;
	struct ns6601 *ns6601;
	struct v4l2_subdev *sd;
	struct device_node *endpoint;
	char facing[2];
	u8 mipi_data_lanes;
	int ret;

	dev_info(dev, "driver version: %02x.%02x.%02x", DRIVER_VERSION >> 16,
		 (DRIVER_VERSION & 0xff00) >> 8, DRIVER_VERSION & 0x00ff);

	ns6601 = devm_kzalloc(dev, sizeof(*ns6601), GFP_KERNEL);
	if (!ns6601)
		return -ENOMEM;

	ret = of_property_read_u32(node, RKMODULE_CAMERA_MODULE_INDEX,
					&ns6601->module_index);
	ret |= of_property_read_string(node, RKMODULE_CAMERA_MODULE_FACING,
					&ns6601->module_facing);
	ret |= of_property_read_string(node, RKMODULE_CAMERA_MODULE_NAME,
					&ns6601->module_name);
	ret |= of_property_read_string(node, RKMODULE_CAMERA_LENS_NAME,
					&ns6601->len_name);
	if (ret) {
		dev_err(dev, "could not get module information!\n");
		return -EINVAL;
	}

	ns6601->regmap = devm_regmap_init_i2c(client, &ns6601_regmap_config);
	if (IS_ERR(ns6601->regmap)) {
		dev_err(dev, "Failed to regmap initialize I2C\n");
		return PTR_ERR(ns6601->regmap);
	}

	ns6601->client = client;
	i2c_set_clientdata(client, ns6601);

	/* i2c default address init */
	ns6601->i2c_addr = client->addr;

	ns6601->pwdn_gpio = devm_gpiod_get(dev, "pwdn", GPIOD_OUT_LOW);
	if (IS_ERR(ns6601->pwdn_gpio))
		dev_warn(dev, "Failed to get pwdn-gpios\n");

	ns6601->lock_gpio = devm_gpiod_get(dev, "lock", GPIOD_IN);
	if (IS_ERR(ns6601->lock_gpio))
		dev_warn(dev, "Failed to get lock-gpios\n");

	ns6601->errb_gpio = devm_gpiod_get(dev, "errb", GPIOD_IN);
	if (IS_ERR(ns6601->errb_gpio))
		dev_warn(dev, "Failed to get errb-gpios\n");


	mutex_init(&ns6601->mutex);

	/* Local device power on */
	ns6601_local_device_power_on(ns6601);

	/* Source : ns6601 --> remote endpoint */
	endpoint = of_graph_get_next_endpoint(dev->of_node, NULL);
	if (!endpoint) {
		dev_err(dev, "Failed to get endpoint\n");
		return -EINVAL;
	}
	
	ret = v4l2_fwnode_endpoint_parse(of_fwnode_handle(endpoint),
				&ns6601->bus_cfg);
	if (ret) {
		dev_err(dev, "Failed to get bus config\n");
		return -EINVAL;
	}
	mipi_data_lanes = ns6601->bus_cfg.bus.mipi_csi2.num_data_lanes;
	dev_info(dev, "mipi csi2 phy data lanes %d\n", mipi_data_lanes);

	ns6601_support_mode_init(ns6601);

	/* norelsys ns6601 subdev init */
	sd = &ns6601->subdev;
	v4l2_i2c_subdev_init(sd, client, &ns6601_subdev_ops);
	ret = ns6601_initialize_controls(ns6601);
	if (ret)
		goto err_destroy_mutex;
	dev_info(dev, "zgp ns6601_initialize_controls end\n");

#ifdef CONFIG_VIDEO_V4L2_SUBDEV_API
	sd->internal_ops = &ns6601_internal_ops;
	sd->flags |= V4L2_SUBDEV_FL_HAS_DEVNODE;
#endif
#if defined(CONFIG_MEDIA_CONTROLLER)
	ns6601->pad.flags = MEDIA_PAD_FL_SOURCE;
	sd->entity.function = MEDIA_ENT_F_CAM_SENSOR;
	ret = media_entity_pads_init(&sd->entity, 1, &ns6601->pad);
	if (ret < 0)
		goto err_power_off;
#endif

	memset(facing, 0, sizeof(facing));
	if (strcmp(ns6601->module_facing, "back") == 0)
		facing[0] = 'b';
	else
		facing[0] = 'f';

	v4l2_set_subdevdata(sd, ns6601);

	snprintf(sd->name, sizeof(sd->name), "m%02d_%s_%s %s",
		ns6601->module_index, facing, NS6601_NAME,
		dev_name(sd->dev));
	ret = v4l2_async_register_subdev_sensor_common(sd);
	if (ret) {
		dev_err(dev, "v4l2 async register subdev failed\n");
		goto err_clean_entity;
	}

	pm_runtime_set_active(dev);
	pm_runtime_enable(dev);
	pm_runtime_idle(dev);

	return 0;

err_clean_entity:
#if defined(CONFIG_MEDIA_CONTROLLER)
	media_entity_cleanup(&sd->entity);
#endif
err_power_off:
	__ns6601_power_off(ns6601);
	v4l2_ctrl_handler_free(&ns6601->ctrl_handler);
err_destroy_mutex:
	mutex_destroy(&ns6601->mutex);

	return ret;
}

static int ns6601_remove(struct i2c_client *client)
{
	struct v4l2_subdev *sd = i2c_get_clientdata(client);
	struct ns6601 *ns6601 = v4l2_get_subdevdata(sd);

	v4l2_async_unregister_subdev(sd);
#if defined(CONFIG_MEDIA_CONTROLLER)
	media_entity_cleanup(&sd->entity);
#endif
	v4l2_ctrl_handler_free(&ns6601->ctrl_handler);
	mutex_destroy(&ns6601->mutex);

	pm_runtime_disable(&client->dev);
	if (!pm_runtime_status_suspended(&client->dev))
		__ns6601_power_off(ns6601);
	pm_runtime_set_suspended(&client->dev);

	return 0;
}

#if IS_ENABLED(CONFIG_OF)
static const struct of_device_id ns6601_of_match[] = {
	{ .compatible = "norelsys,ns6601" },
	{},
};
MODULE_DEVICE_TABLE(of, ns6601_of_match);
#endif

static const struct i2c_device_id ns6601_match_id[] = {
	{ "norelsys,ns6601", 0 },
	{},
};

static struct i2c_driver ns6601_i2c_driver = {
	.driver = {
		.name = NS6601_NAME,
		.pm = &ns6601_pm_ops,
		.of_match_table = of_match_ptr(ns6601_of_match),
	},
	.probe		= &ns6601_probe,
	.remove		= &ns6601_remove,
	.id_table	= ns6601_match_id,
};

static int __init ns6601_mod_init(void)
{
	return i2c_add_driver(&ns6601_i2c_driver);
}

static void __exit ns6601_mod_exit(void)
{
	i2c_del_driver(&ns6601_i2c_driver);
}

module_init(ns6601_mod_init);
module_exit(ns6601_mod_exit);

MODULE_DESCRIPTION("Norelsys ns6601 deserializer driver");
MODULE_LICENSE("GPL");

配置头文件

ns6601_config.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * ns6601 serdes config data driver
 *
 */
#ifndef _NS6601_CONFIG_H_
#define _NS6601_CONFIG_H_

static u8 dms_des_cfg[] = {
/* cmd package 1 */
0x00,0x19,0x5c, 0x01, 0x08, 0x98, 0x1d, 0x21, 0x10, 0xff, 0xff, 0x08, 0xd8, 0x1d, 0xff, 0xff, 0xff, 0xff, 0x08, 0x98, 0x1c, 0xff, 0xff, 0x1b, 0x1f, 0xb7, 0x68,
/* cmd package 2 */
0x00,0x50,0xcc, 0x04, 0xc2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd5, 0x18, 0x0c, 0x00, 0x00, 0x0f, 0x00, 0xd5, 0x18, 0x0d, 0x00, 0x00, 0x0f, 0x00, 0xd5, 0x18, 0x0e, 0x00, 0x00, 
0x0f, 0x00, 0xd5, 0x18, 0x0f, 0x00, 0x00, 0x0f, 0x00, 0x0d, 0x63, 0x00, 0x00, 0x00, 0xca, 0xc0, 0x00, 0x00, 0x00, 0xc0, 0x33, 0x00, 0x00, 0xff, 0xff, 0xc6, 0xc0, 0x01, 
0x40, 0x81, 0x40, 0xec, 0x0c, 0x06, 0x00, 0x03, 0x12, 0x06, 0x00, 0x98, 0x06, 0x6b, 0x02, 0x46, 0x09, 0x6b, 0x4e, 0x87, 0x10, 0x6b, 0x14, 0x81,
/* cmd package 3 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x00, 0x00, 0x48, 0xbf, 0x02, 0x97, 0x48, 0x52, 0x58, 0x25, 0x62, 0x75, 0x20, 0x69, 0x6e, 0x74, 0x0a, 0x00, 0x52, 0x58, 0x25, 0x62, 0x75, 0x20, 0x69, 
0x6e, 0x74, 0x63, 0x0a, 0x00, 0x52, 0x58, 0x25, 0x62, 0x75, 0x20, 0x69, 0x6e, 0x74, 0x20, 0x46, 0x3d, 0x25, 0x62, 0x75, 0x0a, 0x00, 0x52, 0x58, 0x25, 0x62, 0x75, 0x20, 
0x25, 0x62, 0x75, 0x47, 0x20, 0x43, 0x46, 0x4c, 0x0a, 0x00, 0x52, 0x58, 0x25, 0x62, 0x75, 0x20, 0x66, 0x63, 0x73, 0x0a, 0x00, 0x0a, 0x52, 0x58, 0x20, 0x48, 0x4f, 0x4f, 
0x4b, 0x20, 0x76, 0x25, 0x62, 0x75, 0x2e, 0x25, 0x62, 0x75, 0x2e, 0x25, 0x62, 0x75, 0x2e, 0x25, 0x62, 0x75, 0x0a, 0x00, 0x48, 0x04, 0xc8, 0x01, 0x01, 0xff, 0xff, 0x00, 
0x80, 0xc0, 0x01, 0x05, 0x08, 0x80, 0xc0, 0x41, 0x05, 0x31, 0x00, 0xc0, 0x81, 0x05, 0x80, 0x80, 0xc0, 0xc1, 0x05, 0x00, 0x28, 0xc0, 0x01, 0x06, 0x60, 0x80, 0xc0, 0x41, 
0x06, 0x40, 0x22, 0xc8, 0x01, 0x0d, 0xff, 0xff, 0x02, 0x00, 0xc8, 0x01, 0x0d, 0xff, 0xff, 0x01, 0x00, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0xc8, 0x01, 0x0d, 0x00, 0x00, 0x02, 
0x00, 0x0d, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x5f, 0x00, 0x00, 0xd8, 0x1a, 0x08, 0x9b, 0x02, 0x00, 0x00, 0x00, 0x80, 0x00, 0x1b, 0x00, 0x04, 0x00, 0x00, 0x5b, 
0x00, 0x08, 0x81, 0x00, 0x9b, 0x00, 0x00, 0x00, 0x00, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x01, 0x00, 0x24, 0x00, 0x5b, 0x01, 0x30, 0x00, 0x00, 0x9b, 0x01, 0x00, 0x20, 
0x00, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x1b, 0x02, 0x00, 0x00, 0x00, 0x5b, 0x02, 0x10, 0x03, 0x00, 0xdb, 0x03, 0xdc, 0x77, 0x08, 0x1b, 0x04, 0x39, 0x00, 0x87, 0xff, 0x00, 
0x5b, 0x04, 0x00, 0x00, 0x00, 0x9b, 0x04, 0x00, 0x00, 0x00, 0xdb, 0x04, 0x00, 0x00, 0x00, 0x1b, 0x05, 0x00, 0x00, 0x00, 0x5b, 0x05, 0x00, 0x00, 0x00, 0x9b, 0x05, 0x00, 
0x80, 0x00, 0xdb, 0x05, 0x00, 0x00, 0x00, 0x5b, 0x06, 0x3e, 0x1b, 0x00, 0x9b, 0x06, 0x67, 0x77, 0x00, 0xdb, 0x06, 0x3e, 0x1b, 0x00, 0x1b, 0x07, 0x67, 0x77, 0x00, 0x5b, 
0x07, 0x3e, 0x1b, 0x00, 0x9b, 0x07, 0x66, 0x77, 0x00, 0x5b, 0x08, 0x00, 0x46, 0x00, 0x9b, 0x08, 0x00, 0x00, 0x00, 0xdb, 0x08, 0x6c, 0x0c, 0x0d, 0x10, 0x27, 0x00, 0x00, 
0x00, 0x5b, 0x00, 0x00, 0xc1, 0x00, 0xdb, 0x02, 0x10, 0x14, 0x00, 0x1b, 0x03, 0x10, 0xf4, 0x00, 0x5b, 0x03, 0x10, 0xf4, 0x00, 0x9b, 0x03, 0x88, 0x08, 0x00, 0x1b, 0x06, 
0x10, 0xf4, 0x00, 0x9b, 0x02, 0x08, 0x80, 0x0d, 0x31, 0x00, 0x00, 0x00, 0x88, 0x1a, 0x00, 0xff, 0xff, 0x00, 0x1c, 0x80, 0x9a, 0x02, 0x40, 0x00, 0x88, 0x1a, 0x24, 0xff, 
0xff, 0x0a, 0x00, 0x88, 0x1a, 0x00, 0xff, 0xbf, 0x01, 0x60, 0x80, 0x9a, 0x0d, 0x01, 0x00, 0x11, 0x99, 0x9a, 0x0d, 0xff, 0xff, 0x02, 0x00, 0xf4, 0x01, 0x00, 0x00, 0x80, 0x9a, 
0x0d, 0x00, 0x00, 0x88, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x9b, 0x02, 0x00, 0x00, 0x00, 0x80, 0x00, 0x5b, 0x00, 0x00, 0x81, 0x0d, 0x88, 0x13, 0x00, 0x00, 0x00, 
0x1b, 0x00, 0x34, 0xfc, 0x00, 0x5b, 0x00, 0x00, 0xff, 0x00, 0x9b, 0x00, 0xf0, 0x19, 0x00, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x01, 0x00, 0x44, 0x00, 0x5b, 0x01, 0x30, 
0x22, 0x00, 0x9b, 0x01, 0x3b, 0x26, 0x00, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x1b, 0x02, 0xff, 0x00, 0x00, 0x5b, 0x02, 0x10, 0x03, 0x00, 0xdb, 0x03, 0x3f, 0x3f, 0x08, 0x1b, 
0x04, 0xa9, 0x41, 0x87, 0xff, 0x00, 0x5b, 0x04, 0x00, 0x00, 0x00, 0x9b, 0x04, 0x30, 0x00, 0x00, 0xdb, 0x04, 0x00, 0x00, 0x00, 0x1b, 0x05, 0x10, 0x00, 0x00, 0x5b, 0x05, 
0x00, 0x00, 0x00, 0x9b, 0x05, 0x00, 0x00, 0x00, 0xdb, 0x05, 0x00, 0x00, 0x08, 0x5b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x08, 0x1b, 0x01, 0x00, 0x00, 0x00, 0x04, 0x0d, 0x14, 
0x00, 0x00, 0x00, 0x08, 0xdb, 0x03, 0x00, 0x00, 0x00, 0x01, 0x08, 0x5b, 0x00, 0x00, 0x00, 0x00, 0x80, 0x11, 0x19, 0xdb, 0x1a, 0xff, 0xff, 0x01, 0x00, 0xe8, 0x03, 0x00, 
0x00, 0x08, 0x5b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08, 0x1b, 0x01, 0xff, 0xff, 0x00, 0x04, 0x08, 0xdb, 0x03, 0xff, 0xff, 0x00, 0x01, 0x00, 0x51, 0xea, 0x00, 0x00, 0xc8, 
0x12, 0x40, 0x9b, 0x20, 0x10, 0x00, 0x40, 0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 0x08, 0x00, 0x40, 0x9b, 0x28, 0x40, 0x00, 0x40, 0xdb, 0x28, 0x88, 0x01, 0x40, 0x1b, 
0x36, 0x10, 0x40, 0x40, 0xdb, 0x37, 0x00, 0x01, 0x40, 0x5b, 0x28, 0x50, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 
0x40, 0x1b, 0x28, 0x6f, 0x03, 0x40, 0x5b, 0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 0x10, 0x40, 0x5b, 0x36, 0x00, 0x00, 0x40, 0xdb, 0x36, 0xac, 0x00, 0x40, 0x1b, 0x37, 
0xcc, 0xcc, 0x40, 0x5b, 0x37, 0x0b, 0x0b, 0x40, 0x9b, 0x37, 0x0b, 0x0b, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 
0x00, 0x00, 0x00, 0x20, 0x00, 0x48, 0x1b, 0x20, 0x00, 0x00, 0x01, 0x00, 0x48, 0xdb, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 
0x24, 0x01, 0x00, 0x01, 0x70, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x40, 0x09, 0x70, 0x0d, 0xb8, 0x0b, 0x00, 0x00, 0x48, 0x1b, 0x24, 0xff, 
0xff, 0x02, 0x00, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x00, 0x00, 0x02, 0x00, 0x40, 0x5b, 0x36, 0x01, 0x00, 0x40, 0xdb, 0x36, 0xaa, 0x00, 0x40, 
0x1b, 0x37, 0xaa, 0xaa, 0x48, 0x1b, 0x24, 0x01, 0x40, 0x09, 0x70, 0x0d, 0xb8, 0x0b, 0x00, 0x00, 0x48, 0x1b, 0x24, 0xff, 0xff, 0x02, 0x00, 0x55, 0x9b, 0x24, 0xff, 0xff, 
0x01, 0x00, 0x48, 0x1b, 0x24, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x04, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x08, 0x48, 0x1a, 0x00, 0xff, 0xff, 
0x01, 0x00, 0x48, 0x1a, 0x01, 0x00, 0x00, 0x04, 0x00, 0x48, 0x9a, 0x00, 0xff, 0xff, 0x01, 0x00, 0x48, 0x5a, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x01, 
0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x02, 0x00, 0x0d, 0x00, 0x12, 0x00, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x04, 0x00, 0x00, 0x00, 0x0a, 0xd6, 0x00, 0x00, 0xc8, 0x12, 
0x40, 0x9b, 0x20, 0x10, 0x00, 0x40, 0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 0x08, 0x00, 0x40, 0x9b, 0x28, 0x40, 0x00, 0x40, 0xdb, 0x28, 0x88, 0x01, 0x40, 0x1b, 0x36, 
0x10, 0x40, 0x40, 0xdb, 0x37, 0x00, 0x01, 0x40, 0x5b, 0x28, 0x50, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 0x40, 
0x1b, 0x28, 0x6f, 0x03, 0x40, 0x5b, 0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 0x10, 0x40, 0x5b, 0x36, 0x00, 0x00, 0x40, 0xdb, 0x36, 0xac, 0x00, 0x40, 0x1b, 0x37, 0xcc, 
0xcc, 0x40, 0x5b, 0x37, 0x0b, 0x0b, 0x40, 0x9b, 0x37, 0x40, 0x74,
/* cmd package 4 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x40, 0x3f, 0x48, 0xbf, 0x0b, 0x0b, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 0x00, 0x00, 0x00, 
0x20, 0x00, 0x48, 0x1b, 0x20, 0x00, 0x00, 0x01, 0x00, 0x48, 0xdb, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x00, 
0x01, 0x70, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x40, 0x09, 0x70, 0x0d, 0xb8, 0x0b, 0x00, 0x00, 0x48, 0x1b, 0x24, 0xff, 0xff, 0x02, 0x00, 
0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x00, 0x00, 0x02, 0x00, 0x40, 0x5b, 0x36, 0x01, 0x00, 0x40, 0xdb, 0x36, 0xaa, 0x00, 0x40, 0x1b, 0x37, 0xaa, 
0xaa, 0x48, 0x1b, 0x24, 0x01, 0x40, 0x09, 0x70, 0x0d, 0xb8, 0x0b, 0x00, 0x00, 0x48, 0x1b, 0x24, 0xff, 0xff, 0x02, 0x00, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 
0x1b, 0x24, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x04, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x08, 0x48, 0x1a, 0x00, 0xff, 0xff, 0x01, 0x00, 0x48, 
0x1a, 0x01, 0x00, 0x00, 0x04, 0x00, 0x48, 0x9a, 0x00, 0xff, 0xff, 0x01, 0x00, 0x48, 0x5a, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1a, 
0x08, 0xff, 0xff, 0x02, 0x00, 0x0d, 0x00, 0x12, 0x00, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x04, 0x00, 0x00, 0x00, 0x0a, 0xd6, 0x00, 0x00, 0xc8, 0x12, 0x40, 0x9b, 0x20, 
0x10, 0x00, 0x40, 0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 0x08, 0x00, 0x40, 0x9b, 0x28, 0x40, 0x00, 0x40, 0xdb, 0x28, 0x88, 0x01, 0x40, 0x1b, 0x36, 0x10, 0x40, 0x40, 
0xdb, 0x37, 0x00, 0x01, 0x40, 0x5b, 0x28, 0x50, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 0x40, 0x1b, 0x28, 0x6f, 
0x03, 0x40, 0x5b, 0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 0x10, 0x40, 0x5b, 0x36, 0x00, 0x00, 0x40, 0xdb, 0x36, 0xac, 0x00, 0x40, 0x1b, 0x37, 0xcc, 0xcc, 0x40, 0x5b, 
0x37, 0x0b, 0x0b, 0x40, 0x9b, 0x37, 0x0b, 0x0b, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 0x00, 0x00, 0x00, 0x20, 
0x00, 0x48, 0x1b, 0x20, 0x00, 0x00, 0x01, 0x00, 0x48, 0xdb, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x00, 0x01, 
0x70, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x40, 0x09, 0x70, 0x0d, 0xd0, 0x07, 0x00, 0x00, 0x48, 0x1b, 0x24, 0xff, 0xff, 0x02, 0x00, 0x55, 
0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x00, 0x00, 0x02, 0x00, 0x40, 0x5b, 0x36, 0x01, 0x00, 0x40, 0xdb, 0x36, 0xaa, 0x00, 0x40, 0x1b, 0x37, 0xaa, 0xaa, 
0x48, 0x1b, 0x24, 0x01, 0x40, 0x09, 0x70, 0x0d, 0xd0, 0x07, 0x00, 0x00, 0x48, 0x1b, 0x24, 0xff, 0xff, 0x02, 0x00, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 
0x24, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x04, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x08, 0x48, 0x1a, 0x00, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1a, 
0x01, 0x00, 0x00, 0x04, 0x00, 0x48, 0x9a, 0x00, 0xff, 0xff, 0x01, 0x00, 0x48, 0x5a, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1a, 0x08, 
0xff, 0xff, 0x02, 0x00, 0x0d, 0x00, 0x12, 0x00, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x04, 0x00, 0x00, 0x00, 0xb5, 0xa9, 0x00, 0x00, 0xa8, 0x11, 0x40, 0x9b, 0x20, 0x10, 
0x00, 0x40, 0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 0x08, 0x00, 0x40, 0x9b, 0x28, 0x40, 0x00, 0x40, 0xdb, 0x28, 0x88, 0x01, 0x40, 0x1b, 0x36, 0x10, 0x40, 0x40, 0xdb, 
0x37, 0x00, 0x01, 0x40, 0x5b, 0x28, 0x68, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 0x40, 0x1b, 0x28, 0x8f, 0x03, 
0x40, 0x5b, 0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 0x10, 0x40, 0x5b, 0x36, 0x01, 0x00, 0x40, 0xdb, 0x36, 0xac, 0x00, 0x40, 0x1b, 0x37, 0xcc, 0xcc, 0x40, 0x5b, 0x37, 
0x15, 0x15, 0x40, 0x9b, 0x37, 0x15, 0x15, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 0x00, 0x00, 0x00, 0x20, 0x00, 
0x48, 0x1b, 0x20, 0x00, 0x00, 0x01, 0x00, 0x48, 0xdb, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x00, 0x01, 0x70, 
0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x40, 0x09, 0x70, 0x0d, 0xd0, 0x07, 0x00, 0x00, 0x40, 0xdb, 0x36, 0xaa, 0x00, 0x40, 0x1b, 0x37, 0xaa, 
0xaa, 0x40, 0x5b, 0x36, 0x07, 0x00, 0x0d, 0xe8, 0x03, 0x00, 0x00, 0x40, 0x5b, 0x36, 0xff, 0x01, 0x0d, 0xd0, 0x07, 0x00, 0x00, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x04, 
0x48, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x08, 0x48, 0x1a, 0x00, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1a, 0x01, 0x00, 0x00, 0x04, 0x00, 0x48, 0x9a, 0x00, 0xff, 0xff, 0x01, 0x00, 
0x48, 0x5a, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1a, 0x08, 0xff, 0xff, 0x02, 0x00, 0x0d, 0x00, 0x12, 0x00, 0x00, 0x48, 0x1a, 0x08, 
0xff, 0xff, 0x04, 0x00, 0x48, 0x1b, 0x24, 0xff, 0xff, 0x02, 0x00, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x00, 0x00, 0x02, 0x00, 0x56, 0x57, 0x00, 0x00, 
0x58, 0x02, 0x40, 0x1b, 0x36, 0x00, 0x40, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0xdb, 0x36, 0xa6, 0x00, 0x40, 0x1b, 0x37, 0x66, 0x66, 0x40, 
0x5b, 0x24, 0xff, 0x89, 0x48, 0x1b, 0x24, 0x01, 0x40, 0x01, 0x70, 0x00, 0xb7, 0xc5, 0x00, 0x00, 0x38, 0x0a, 0x00, 0x1b, 0x00, 0x34, 0xfc, 0x00, 0x5b, 0x00, 0x00, 0xff, 
0x00, 0x9b, 0x00, 0xf0, 0x19, 0x00, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x01, 0x00, 0x44, 0x00, 0x5b, 0x01, 0x30, 0x22, 0x00, 0x9b, 0x01, 0x3b, 0x66, 0x00, 0xdb, 0x01, 
0x00, 0x00, 0x00, 0x1b, 0x02, 0xff, 0x00, 0x00, 0x5b, 0x02, 0x14, 0x03, 0x00, 0xdb, 0x03, 0x3f, 0x3f, 0x08, 0x1b, 0x04, 0xa9, 0x41, 0x87, 0xff, 0x00, 0x5b, 0x04, 0x00, 
0x00, 0x00, 0x9b, 0x04, 0x30, 0x00, 0x00, 0xdb, 0x04, 0x00, 0x00, 0x00, 0x1b, 0x05, 0x10, 0x00, 0x00, 0x5b, 0x05, 0x00, 0x00, 0x00, 0x9b, 0x05, 0x00, 0x00, 0x00, 0xdb, 
0x05, 0x00, 0x00, 0x00, 0x5b, 0x06, 0x3e, 0xd2, 0x00, 0x9b, 0x06, 0x41, 0x77, 0x00, 0xdb, 0x06, 0x3e, 0x52, 0x00, 0x1b, 0x07, 0x67, 0x77, 0x00, 0x5b, 0x07, 0x3e, 0x52, 
0x00, 0x9b, 0x07, 0x40, 0x77, 0x00, 0x5b, 0x08, 0x01, 0xa4, 0x00, 0x9b, 0x08, 0x00, 0x00, 0x00, 0xdb, 0x08, 0xc9, 0x8c, 0x08, 0x5b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x08, 
0x1b, 0x01, 0x00, 0x00, 0x00, 0x04, 0x08, 0xf5, 0xbd,
/* cmd package 5 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x80, 0x7e, 0x48, 0xbf, 0xdb, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x54, 0x90, 0x00, 0x00, 0x38, 0x0a, 0x00, 0x1b, 0x00, 0xa6, 0xfb, 0x00, 
0x5b, 0x00, 0xe0, 0x5e, 0x00, 0x9b, 0x00, 0xf0, 0x04, 0x00, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x01, 0x00, 0x44, 0x00, 0x5b, 0x01, 0x30, 0x22, 0x00, 0x9b, 0x01, 0x5b, 
0x66, 0x00, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x1b, 0x02, 0xaa, 0x00, 0x00, 0x5b, 0x02, 0xf4, 0x01, 0x00, 0xdb, 0x03, 0x3f, 0x3f, 0x08, 0x1b, 0x04, 0xa9, 0x79, 0x87, 0xff, 
0x00, 0x5b, 0x04, 0x00, 0x00, 0x00, 0x9b, 0x04, 0x30, 0x00, 0x00, 0xdb, 0x04, 0x00, 0x00, 0x00, 0x1b, 0x05, 0x08, 0x00, 0x00, 0x5b, 0x05, 0x00, 0x00, 0x00, 0x9b, 0x05, 
0x00, 0x80, 0x00, 0xdb, 0x05, 0x00, 0x00, 0x00, 0x5b, 0x06, 0x3e, 0x9b, 0x00, 0x9b, 0x06, 0x41, 0x77, 0x00, 0xdb, 0x06, 0x3e, 0x1b, 0x00, 0x1b, 0x07, 0x67, 0x77, 0x00, 
0x5b, 0x07, 0x3e, 0x1b, 0x00, 0x9b, 0x07, 0x40, 0x77, 0x00, 0x5b, 0x08, 0x01, 0xc6, 0x00, 0x9b, 0x08, 0x00, 0x00, 0x00, 0xdb, 0x08, 0x6d, 0xb8, 0x08, 0x5b, 0x00, 0xff, 
0xff, 0x02, 0x00, 0x08, 0x1b, 0x01, 0x00, 0x00, 0x00, 0x04, 0x08, 0xdb, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0xe1, 0x00, 0x00, 0x38, 0x0a, 0x00, 0x1b, 
0x00, 0xa6, 0xfb, 0x00, 0x5b, 0x00, 0xe0, 0x5e, 0x00, 0x9b, 0x00, 0xf0, 0x04, 0x00, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x01, 0x00, 0x44, 0x00, 0x5b, 0x01, 0x30, 0x22, 
0x00, 0x9b, 0x01, 0x5b, 0x66, 0x00, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x1b, 0x02, 0xaa, 0x00, 0x00, 0x5b, 0x02, 0xf0, 0x01, 0x00, 0xdb, 0x03, 0x3f, 0x3f, 0x08, 0x1b, 0x04, 
0xa9, 0x79, 0x87, 0xff, 0x00, 0x5b, 0x04, 0x00, 0x00, 0x00, 0x9b, 0x04, 0x30, 0x00, 0x00, 0xdb, 0x04, 0x00, 0x00, 0x00, 0x1b, 0x05, 0x08, 0x00, 0x00, 0x5b, 0x05, 0x00, 
0x00, 0x00, 0x9b, 0x05, 0x00, 0x80, 0x00, 0xdb, 0x05, 0x00, 0x00, 0x00, 0x5b, 0x06, 0x3e, 0x9b, 0x00, 0x9b, 0x06, 0x41, 0x77, 0x00, 0xdb, 0x06, 0x3e, 0x9b, 0x00, 0x1b, 
0x07, 0x41, 0x77, 0x00, 0x5b, 0x07, 0x3e, 0x1b, 0x00, 0x9b, 0x07, 0x40, 0x77, 0x00, 0x5b, 0x08, 0x00, 0xc6, 0x00, 0x9b, 0x08, 0x00, 0x00, 0x00, 0xdb, 0x08, 0x6d, 0x8c, 
0x08, 0x5b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x08, 0x1b, 0x01, 0x00, 0x00, 0x00, 0x04, 0x08, 0xdb, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9e, 0x08, 0x00, 0x00, 
0x38, 0x0a, 0x00, 0x1b, 0x00, 0xa6, 0xfb, 0x00, 0x5b, 0x00, 0xe0, 0x5e, 0x00, 0x9b, 0x00, 0xf0, 0x04, 0x00, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x01, 0x00, 0x44, 0x00, 
0x5b, 0x01, 0x30, 0x22, 0x00, 0x9b, 0x01, 0x5b, 0x66, 0x00, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x1b, 0x02, 0xaa, 0x00, 0x00, 0x5b, 0x02, 0xf4, 0x01, 0x00, 0xdb, 0x03, 0x3f, 
0x3f, 0x08, 0x1b, 0x04, 0xa9, 0x79, 0x87, 0xff, 0x00, 0x5b, 0x04, 0x00, 0x00, 0x00, 0x9b, 0x04, 0x30, 0x00, 0x00, 0xdb, 0x04, 0x00, 0x00, 0x00, 0x1b, 0x05, 0x00, 0x00, 
0x00, 0x5b, 0x05, 0x00, 0x00, 0x00, 0x9b, 0x05, 0x00, 0x80, 0x00, 0xdb, 0x05, 0x00, 0x00, 0x00, 0x5b, 0x06, 0x3e, 0xd2, 0x00, 0x9b, 0x06, 0x41, 0x77, 0x00, 0xdb, 0x06, 
0x3e, 0xd2, 0x00, 0x1b, 0x07, 0x41, 0x77, 0x00, 0x5b, 0x07, 0x3e, 0x52, 0x00, 0x9b, 0x07, 0x40, 0x77, 0x00, 0x5b, 0x08, 0x00, 0xa4, 0x00, 0x9b, 0x08, 0x00, 0x00, 0x00, 
0xdb, 0x08, 0x49, 0xb8, 0x08, 0x5b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x08, 0x1b, 0x01, 0x00, 0x00, 0x00, 0x04, 0x08, 0xdb, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 
0xbe, 0x97, 0x00, 0x00, 0x38, 0x0a, 0x00, 0x1b, 0x00, 0xa6, 0xfb, 0x00, 0x5b, 0x00, 0xa0, 0x7e, 0x00, 0x9b, 0x00, 0xf0, 0x05, 0x00, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x1b, 
0x01, 0x00, 0x44, 0x00, 0x5b, 0x01, 0x30, 0x22, 0x00, 0x9b, 0x01, 0x5b, 0x66, 0x00, 0xdb, 0x01, 0x00, 0x00, 0x00, 0x1b, 0x02, 0xaa, 0x00, 0x00, 0x5b, 0x02, 0xf4, 0x01, 
0x00, 0xdb, 0x03, 0x3f, 0x3f, 0x08, 0x1b, 0x04, 0xa9, 0x79, 0x87, 0xff, 0x00, 0x5b, 0x04, 0x00, 0x00, 0x00, 0x9b, 0x04, 0x30, 0x00, 0x00, 0xdb, 0x04, 0x00, 0x00, 0x00, 
0x1b, 0x05, 0x00, 0x00, 0x00, 0x5b, 0x05, 0x00, 0x00, 0x00, 0x9b, 0x05, 0x00, 0x80, 0x00, 0xdb, 0x05, 0x00, 0x00, 0x00, 0x5b, 0x06, 0x3e, 0x9b, 0x00, 0x9b, 0x06, 0x41, 
0x77, 0x00, 0xdb, 0x06, 0x3e, 0x9b, 0x00, 0x1b, 0x07, 0x41, 0x77, 0x00, 0x5b, 0x07, 0x3e, 0x1b, 0x00, 0x9b, 0x07, 0x40, 0x77, 0x00, 0x5b, 0x08, 0x00, 0xc6, 0x00, 0x9b, 
0x08, 0x00, 0x00, 0x00, 0xdb, 0x08, 0x6d, 0xb8, 0x08, 0x5b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x08, 0x1b, 0x01, 0x00, 0x00, 0x00, 0x04, 0x08, 0xdb, 0x03, 0x00, 0x00, 0x00, 
0x01, 0x00, 0x00, 0x00, 0xc6, 0x21, 0x00, 0x00, 0x28, 0x10, 0x08, 0x9b, 0x05, 0x00, 0x00, 0x00, 0x80, 0x08, 0x1b, 0x04, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 
0x00, 0x40, 0x1b, 0x3b, 0x00, 0x00, 0x40, 0x1b, 0x3a, 0x50, 0x15, 0x40, 0x5b, 0x3a, 0x1c, 0x24, 0x40, 0x9b, 0x26, 0x41, 0x3f, 0x40, 0x5b, 0x26, 0x52, 0x2e, 0x40, 0x1b, 
0x26, 0x00, 0x00, 0x40, 0x1b, 0x27, 0x00, 0x00, 0x40, 0xdb, 0x26, 0x00, 0x00, 0x40, 0x5b, 0x20, 0x10, 0x00, 0x40, 0x5b, 0x21, 0x00, 0x00, 0x40, 0x9b, 0x20, 0x10, 0x01, 
0x40, 0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 0x08, 0x00, 0x40, 0x9b, 0x28, 0x00, 0x00, 0x40, 0xdb, 0x28, 0x88, 0x01, 0x40, 0x1b, 0x3c, 0x20, 0x40, 0x40, 0x1b, 0x36, 
0x80, 0x40, 0x40, 0xdb, 0x37, 0x00, 0x01, 0x40, 0x5b, 0x28, 0x50, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 0x40, 
0x5b, 0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 0x10, 0x40, 0x1b, 0x3d, 0x20, 0x20, 0x40, 0x5b, 0x36, 0x00, 0x00, 0x40, 0xdb, 0x36, 0xab, 0x00, 0x40, 0x1b, 0x37, 0xbb, 
0xbb, 0x40, 0x5b, 0x37, 0x0b, 0x0b, 0x40, 0x9b, 0x37, 0x0b, 0x0b, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 0x00, 
0x00, 0x00, 0x20, 0x00, 0x48, 0x1b, 0x20, 0x00, 0x00, 0x01, 0x00, 0x48, 0x1b, 0x28, 0xff, 0xff, 0x10, 0x00, 0x48, 0x1b, 0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 
0x01, 0x50, 0x01, 0x70, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x9b, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08, 0x9b, 0x05, 0xff, 
0xff, 0x00, 0x80, 0x08, 0x1b, 0x04, 0xff, 0xff, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0xfa, 0xb9, 0x00, 0x00, 0x28, 0x10, 0x08, 0x9b, 0x05, 0x00, 0x00, 0x00, 0x80, 
0x08, 0x1b, 0x04, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0x40, 0x1b, 0x3b, 0x00, 0x00, 0x40, 0x1b, 0x3a, 0x50, 0x25, 0x40, 0x5b, 0x3a, 0x1c, 0x24, 0x40, 
0x9b, 0x26, 0x41, 0x3f, 0x40, 0x5b, 0x26, 0x52, 0x2e, 0x40, 0xd9, 0xa4,
/* cmd package 6 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0xc0, 0xbd, 0x48, 0xbf, 0x1b, 0x26, 0x01, 0x00, 0x40, 0x1b, 0x27, 0x00, 0x00, 0x40, 0xdb, 0x26, 0x00, 0x00, 0x40, 0x5b, 0x20, 0x10, 0x00, 0x40, 0x5b, 
0x21, 0x00, 0x00, 0x40, 0x9b, 0x20, 0x10, 0x01, 0x40, 0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 0x08, 0x00, 0x40, 0x9b, 0x28, 0x00, 0x00, 0x40, 0xdb, 0x28, 0x88, 0x01, 
0x40, 0x1b, 0x3c, 0x20, 0x40, 0x40, 0x1b, 0x36, 0x80, 0x40, 0x40, 0xdb, 0x37, 0x00, 0x01, 0x40, 0x5b, 0x28, 0x50, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 
0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 0x40, 0x5b, 0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 0x10, 0x40, 0x1b, 0x3d, 0x20, 0x20, 0x40, 0x5b, 0x36, 0x00, 0x00, 0x40, 
0xdb, 0x36, 0xab, 0x00, 0x40, 0x1b, 0x37, 0xbb, 0xbb, 0x40, 0x5b, 0x37, 0x0b, 0x0b, 0x40, 0x9b, 0x37, 0x0b, 0x0b, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 
0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 0x00, 0x00, 0x00, 0x20, 0x00, 0x48, 0x1b, 0x20, 0x00, 0x00, 0x01, 0x00, 0x48, 0x1b, 0x28, 0xff, 0xff, 0x10, 0x00, 0x48, 0x1b, 
0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x50, 0x01, 0x70, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x9b, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x00, 
0x00, 0x00, 0x02, 0x00, 0x08, 0x9b, 0x05, 0xff, 0xff, 0x00, 0x80, 0x08, 0x1b, 0x04, 0xff, 0xff, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0xc4, 0xdc, 0x00, 0x00, 0xc8, 
0x17, 0x08, 0x9b, 0x06, 0x00, 0x00, 0x01, 0x00, 0x08, 0x5b, 0x06, 0x00, 0x00, 0x80, 0x00, 0x0d, 0x01, 0x00, 0x00, 0x00, 0x08, 0x5b, 0x06, 0xff, 0xff, 0x80, 0x00, 0x08, 
0x1b, 0x1c, 0xff, 0xff, 0x08, 0x00, 0x08, 0x1b, 0x1c, 0xff, 0xff, 0x04, 0x00, 0x08, 0x1b, 0x1c, 0xff, 0xff, 0x01, 0x00, 0x15, 0x1b, 0x1c, 0xff, 0xff, 0x10, 0x00, 0x08, 0x9b, 
0x06, 0xff, 0xff, 0x01, 0x00, 0x08, 0x1b, 0x07, 0x00, 0x00, 0x01, 0x00, 0x08, 0xdb, 0x06, 0x00, 0x00, 0x80, 0x00, 0x0d, 0x01, 0x00, 0x00, 0x00, 0x08, 0xdb, 0x06, 0xff, 
0xff, 0x80, 0x00, 0x08, 0x9b, 0x1c, 0xff, 0xff, 0x08, 0x00, 0x08, 0x9b, 0x1c, 0xff, 0xff, 0x04, 0x00, 0x08, 0x9b, 0x1c, 0xff, 0xff, 0x01, 0x00, 0x15, 0x9b, 0x1c, 0xff, 0xff, 
0x10, 0x00, 0x08, 0x1b, 0x07, 0xff, 0xff, 0x01, 0x00, 0x08, 0x9b, 0x05, 0x00, 0x00, 0x00, 0x80, 0x08, 0x1b, 0x04, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 
0x40, 0x1b, 0x3b, 0x00, 0x00, 0x40, 0x1b, 0x3a, 0x60, 0x16, 0x40, 0x5b, 0x3a, 0x1c, 0x24, 0x40, 0x9b, 0x26, 0x41, 0x3f, 0x40, 0x5b, 0x26, 0x52, 0x2e, 0x40, 0x1b, 0x26, 
0x11, 0x00, 0x40, 0x1b, 0x27, 0x00, 0x00, 0x40, 0xdb, 0x26, 0x00, 0x00, 0x40, 0x5b, 0x20, 0x10, 0x00, 0x40, 0x5b, 0x21, 0x00, 0x00, 0x40, 0x9b, 0x20, 0x10, 0x01, 0x40, 
0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 0x08, 0x00, 0x40, 0x9b, 0x28, 0x00, 0x00, 0x40, 0xdb, 0x28, 0x88, 0x01, 0x40, 0x1b, 0x3c, 0x20, 0x40, 0x40, 0x1b, 0x36, 0x80, 
0x40, 0x40, 0xdb, 0x37, 0x00, 0x01, 0x40, 0x5b, 0x28, 0x50, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 0x40, 0x5b, 
0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 0x10, 0x40, 0x1b, 0x3d, 0x20, 0x20, 0x40, 0x5b, 0x36, 0x00, 0x00, 0x40, 0xdb, 0x36, 0xab, 0x00, 0x40, 0x1b, 0x37, 0xbb, 0xbb, 
0x40, 0x5b, 0x37, 0x0b, 0x0b, 0x40, 0x9b, 0x37, 0x0b, 0x0b, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 0x00, 0x00, 
0x00, 0x20, 0x00, 0x48, 0x1b, 0x20, 0x00, 0x00, 0x01, 0x00, 0x48, 0x1b, 0x28, 0xff, 0xff, 0x10, 0x00, 0x48, 0x1b, 0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 
0x50, 0x01, 0x70, 0x55, 0x9b, 0x24, 0xff, 0xff, 0x01, 0x00, 0x48, 0x9b, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08, 0x9b, 0x05, 0xff, 0xff, 
0x00, 0x80, 0x08, 0x1b, 0x04, 0xff, 0xff, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0x42, 0x00, 0x00, 0xc8, 0x17, 0x08, 0x9b, 0x06, 0x00, 0x00, 0x01, 
0x00, 0x08, 0x5b, 0x06, 0x00, 0x00, 0x80, 0x00, 0x0d, 0x01, 0x00, 0x00, 0x00, 0x08, 0x5b, 0x06, 0xff, 0xff, 0x80, 0x00, 0x08, 0x1b, 0x1c, 0xff, 0xff, 0x08, 0x00, 0x08, 
0x1b, 0x1c, 0xff, 0xff, 0x04, 0x00, 0x08, 0x1b, 0x1c, 0xff, 0xff, 0x01, 0x00, 0x15, 0x1b, 0x1c, 0xff, 0xff, 0x10, 0x00, 0x08, 0x9b, 0x06, 0xff, 0xff, 0x01, 0x00, 0x08, 0x1b, 
0x07, 0x00, 0x00, 0x01, 0x00, 0x08, 0xdb, 0x06, 0x00, 0x00, 0x80, 0x00, 0x0d, 0x01, 0x00, 0x00, 0x00, 0x08, 0xdb, 0x06, 0xff, 0xff, 0x80, 0x00, 0x08, 0x9b, 0x1c, 0xff, 
0xff, 0x08, 0x00, 0x08, 0x9b, 0x1c, 0xff, 0xff, 0x04, 0x00, 0x08, 0x9b, 0x1c, 0xff, 0xff, 0x01, 0x00, 0x15, 0x9b, 0x1c, 0xff, 0xff, 0x10, 0x00, 0x08, 0x1b, 0x07, 0xff, 0xff, 
0x01, 0x00, 0x08, 0x9b, 0x05, 0x00, 0x00, 0x00, 0x80, 0x08, 0x1b, 0x04, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0x40, 0x1b, 0x3b, 0x00, 0x00, 0x40, 0x1b, 
0x3a, 0x60, 0x26, 0x40, 0x5b, 0x3a, 0x1c, 0x24, 0x40, 0x9b, 0x26, 0x41, 0x3f, 0x40, 0x5b, 0x26, 0x52, 0x2e, 0x40, 0x1b, 0x26, 0x12, 0x00, 0x40, 0x1b, 0x27, 0x00, 0x00, 
0x40, 0xdb, 0x26, 0x00, 0x00, 0x40, 0x5b, 0x20, 0x10, 0x00, 0x40, 0x5b, 0x21, 0x00, 0x00, 0x40, 0x9b, 0x20, 0x10, 0x01, 0x40, 0xdb, 0x20, 0x00, 0x08, 0x40, 0xdb, 0x21, 
0x08, 0x00, 0x40, 0x9b, 0x28, 0x00, 0x00, 0x40, 0xdb, 0x28, 0xc0, 0x0f, 0x40, 0x1b, 0x3c, 0x20, 0x40, 0x40, 0x1b, 0x36, 0x80, 0x40, 0x40, 0xdb, 0x37, 0x00, 0x01, 0x40, 
0x5b, 0x28, 0x50, 0x00, 0x40, 0x5b, 0x38, 0xa2, 0x01, 0x40, 0x1b, 0x38, 0x00, 0x02, 0x40, 0x5b, 0x24, 0xff, 0x80, 0x40, 0x5b, 0x3c, 0x40, 0x10, 0x40, 0x9b, 0x3c, 0x3c, 
0x10, 0x40, 0x1b, 0x3d, 0x20, 0x20, 0x40, 0x5b, 0x36, 0x00, 0x00, 0x40, 0xdb, 0x36, 0xab, 0x00, 0x40, 0x1b, 0x37, 0xbb, 0xbb, 0x40, 0x5b, 0x37, 0x0b, 0x0b, 0x40, 0x9b, 
0x37, 0x0b, 0x0b, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x48, 0x1b, 0x00, 0xff, 0xff, 0x02, 0x00, 0x48, 0x5b, 0x00, 0x00, 0x00, 0x20, 0x00, 0x48, 0x1b, 0x20, 0x00, 
0x00, 0x01, 0x00, 0x48, 0x1b, 0x28, 0xff, 0xff, 0x10, 0x00, 0x48, 0x1b, 0x20, 0xff, 0xff, 0x01, 0x00, 0x48, 0x1b, 0x24, 0x01, 0x50, 0x01, 0x70, 0x55, 0x9b, 0x24, 0xff, 0xff, 
0x01, 0x00, 0x48, 0x9b, 0x25, 0xff, 0xff, 0x02, 0x00, 0x48, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x08, 0x9b, 0x05, 0xff, 0xff, 0x00, 0x80, 0x08, 0x1b, 0x04, 0xff, 0xff, 0x00, 
0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x55, 0x00, 0x00, 0x58, 0x09, 0xc8, 0x01, 0x07, 0x00, 0x00, 0x04, 0x00, 0xc8, 0x41, 0x07, 0x00, 0x00, 0x04, 0x00, 
0x00, 0xdb, 0x04, 0x29, 0xa4,
/* cmd package 7 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x00, 0xfd, 0x48, 0xbf, 0x30, 0x00, 0x08, 0x9b, 0x02, 0x00, 0x00, 0x00, 0x80, 0x08, 0x1b, 0x01, 0x00, 0x00, 0x00, 0x01, 0x08, 0x5b, 0x01, 0xff, 0xff, 
0x10, 0x00, 0x08, 0x5b, 0x01, 0xff, 0xff, 0x20, 0x00, 0x08, 0xdb, 0x02, 0xff, 0xff, 0x00, 0x10, 0x08, 0xdb, 0x1f, 0xff, 0xff, 0x00, 0x01, 0x0d, 0xe8, 0x03, 0x00, 0x00, 0x08, 
0xdb, 0x1f, 0xff, 0xff, 0x01, 0x00, 0x08, 0xdb, 0x1f, 0xff, 0xff, 0x02, 0x00, 0x08, 0xdb, 0x1f, 0xff, 0xff, 0x00, 0x02, 0x0d, 0xe8, 0x03, 0x00, 0x00, 0x08, 0xdb, 0x1f, 0x00, 
0x00, 0x00, 0x02, 0x0d, 0xe8, 0x03, 0x00, 0x00, 0x08, 0xdb, 0x1f, 0x00, 0x00, 0x02, 0x00, 0x08, 0xdb, 0x1f, 0xff, 0xff, 0x04, 0x00, 0x08, 0xdb, 0x1f, 0xff, 0xff, 0x00, 0x04, 
0x0d, 0xe8, 0x03, 0x00, 0x00, 0x08, 0xdb, 0x1f, 0x00, 0x00, 0x00, 0x04, 0x0d, 0xe8, 0x03, 0x00, 0x00, 0x08, 0xdb, 0x1f, 0x00, 0x00, 0x04, 0x00, 0x00, 0xb1, 0xfa, 0x00, 
0x00, 0x58, 0x09, 0xc8, 0xc1, 0x13, 0x02, 0x00, 0x0f, 0x00, 0xc8, 0x81, 0x13, 0x00, 0x00, 0x01, 0x00, 0xc8, 0x01, 0x07, 0x00, 0x00, 0x01, 0x00, 0xc8, 0x41, 0x07, 0x00, 
0x00, 0x01, 0x00, 0xc8, 0x01, 0x12, 0x20, 0x00, 0x38, 0x00, 0xc8, 0x01, 0x12, 0xff, 0xff, 0x40, 0x00, 0xc8, 0x01, 0x12, 0xff, 0xff, 0x00, 0x08, 0xd5, 0x01, 0x12, 0xff, 0xff, 
0x00, 0x10, 0xc8, 0x41, 0x07, 0xff, 0xff, 0x01, 0x00, 0xc8, 0x01, 0x07, 0xff, 0xff, 0x01, 0x00, 0xc8, 0xc1, 0x0c, 0x00, 0x00, 0x02, 0x00, 0xc8, 0xc1, 0x0c, 0x00, 0x00, 0x01, 
0x00, 0xc0, 0xc1, 0x01, 0x1d, 0x00, 0xc0, 0x01, 0x02, 0x00, 0x00, 0xc0, 0x41, 0x02, 0x00, 0x50, 0xc0, 0x81, 0x02, 0x40, 0x21, 0xc0, 0xc1, 0x02, 0x01, 0x00, 0xc0, 0x01, 
0x03, 0x00, 0x00, 0xc0, 0x41, 0x03, 0x00, 0x00, 0xc0, 0x81, 0x03, 0x00, 0x00, 0xc0, 0xc1, 0x03, 0x00, 0x00, 0xc0, 0x01, 0x04, 0x00, 0x00, 0xc0, 0x41, 0x04, 0x00, 0x00, 
0xc0, 0x81, 0x04, 0x00, 0x00, 0xc0, 0xc1, 0x04, 0x00, 0x00, 0x00, 0xb5, 0x03, 0x00, 0x00, 0x58, 0x09, 0xc8, 0xc1, 0x17, 0x02, 0x00, 0x0f, 0x00, 0xc8, 0x81, 0x17, 0x00, 
0x00, 0x01, 0x00, 0xc8, 0x01, 0x07, 0x00, 0x00, 0x01, 0x00, 0xc8, 0x41, 0x07, 0x00, 0x00, 0x01, 0x00, 0xc8, 0x01, 0x16, 0x20, 0x00, 0x38, 0x00, 0xc8, 0x01, 0x16, 0xff, 
0xff, 0x40, 0x00, 0xc8, 0x01, 0x16, 0xff, 0xff, 0x00, 0x08, 0xd5, 0x01, 0x16, 0xff, 0xff, 0x00, 0x10, 0xc8, 0x41, 0x07, 0xff, 0xff, 0x01, 0x00, 0xc8, 0x01, 0x07, 0xff, 0xff, 
0x01, 0x00, 0xc8, 0xc1, 0x0c, 0x00, 0x00, 0x02, 0x00, 0xc8, 0xc1, 0x0c, 0x00, 0x00, 0x01, 0x00, 0xc0, 0xc1, 0x01, 0x1d, 0x00, 0xc0, 0x01, 0x02, 0x00, 0x00, 0xc0, 0x41, 
0x02, 0x00, 0x50, 0xc0, 0x81, 0x02, 0x40, 0x21, 0xc0, 0xc1, 0x02, 0x01, 0x00, 0xc0, 0x01, 0x03, 0x00, 0x00, 0xc0, 0x41, 0x03, 0x00, 0x00, 0xc0, 0x81, 0x03, 0x00, 0x00, 
0xc0, 0xc1, 0x03, 0x00, 0x00, 0xc0, 0x01, 0x04, 0x00, 0x00, 0xc0, 0x41, 0x04, 0x00, 0x00, 0xc0, 0x81, 0x04, 0x00, 0x00, 0xc0, 0xc1, 0x04, 0x00, 0x00, 0x00, 0x67, 0xbd, 
0x00, 0x00, 0x04, 0x04, 0x81, 0x08, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x10, 0x77, 0xdc, 0x00, 0x39, 0x00, 0x00, 
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x0c, 0x34, 0x41, 0x00, 0x10, 0x08, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x3b, 0x00, 0x00, 
0x00, 0xff, 0x03, 0x14, 0x3f, 0x3f, 0x41, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x34, 0x7f, 0x00, 0x19, 0xf8, 
0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x3b, 0x00, 0x00, 0x00, 0xff, 0x03, 0x14, 0x3f, 0x3f, 0x41, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 
0x00, 0x00, 0x00, 0x00, 0xfc, 0x34, 0x7e, 0x80, 0x19, 0xf8, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x3b, 0x00, 0x00, 0x00, 0xff, 0x03, 0x14, 0x3f, 0x3f, 0x41, 0xa9, 
0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x81, 0x08, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x20, 0x00, 
0x00, 0x00, 0x00, 0x00, 0x03, 0x10, 0x77, 0xdc, 0x00, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x03, 0xa6, 0x42, 0xe0, 
0x05, 0xf8, 0x7e, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x1b, 0x00, 0x00, 0x00, 0xcc, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x08, 
0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x3b, 0xa6, 0x5e, 0xe0, 0x00, 0xb8, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0x74, 0x3f, 0x3f, 
0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 0x5e, 0xe0, 0x04, 0xf8, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 
0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 
0x7e, 0xe0, 0x05, 0xf8, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 
0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x1e, 0xa6, 0x6e, 0x60, 0x05, 0xf8, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 
0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfe, 0xa6, 0x7e, 0x60, 0x05, 0xf8, 0x00, 0x00, 0x44, 0x00, 
0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 
0xfe, 0xa6, 0x7e, 0x60, 0x05, 0xf8, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0xe6, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 
0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x04, 0x04, 0x81, 0x08, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x03, 0x10, 0x77, 0xdc, 0x00, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x03, 0xa6, 0x42, 0xe0, 0x05, 0xf0, 0x7e, 0x00, 
0x44, 0x00, 0x22, 0x30, 0x66, 0x1b, 0x00, 0x00, 0x00, 0xcc, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 
0x00, 0x00, 0x3b, 0xa6, 0x5e, 0xe0, 0x00, 0xb0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0x74, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 
0x00, 0x30, 0x00, 0x00, 0x00, 0x14, 0xb8,
/* cmd package 8 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x40, 0x3c, 0x49, 0xbf, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 0x5e, 0xe0, 0x04, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 
0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 0x7e, 0xe0, 
0x05, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 
0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x1e, 0xa6, 0x6e, 0x60, 0x05, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 
0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfe, 0xa6, 0x7e, 0x60, 0x05, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 
0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfe, 0xa6, 
0x7e, 0x60, 0x05, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0xe6, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 
0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x04, 0x04, 0x81, 0x08, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x10, 
0x77, 0xdc, 0x00, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x03, 0xa6, 0x42, 0xe0, 0x05, 0xf0, 0x7e, 0x00, 0x44, 0x00, 
0x22, 0x30, 0x66, 0x1b, 0x00, 0x00, 0x00, 0xcc, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 
0x3b, 0xa6, 0x5e, 0xe0, 0x00, 0xb0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0x74, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 0x5e, 0xe0, 0x04, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 
0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 0x7e, 0xe0, 0x05, 0xf0, 0x00, 0x00, 
0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 
0x00, 0x00, 0xfb, 0xa6, 0x7e, 0xa0, 0x05, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 
0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 0x7e, 0x80, 0x05, 0xf0, 0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 
0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xfb, 0xa6, 0x7e, 0x80, 0x09, 0xf0, 
0x00, 0x00, 0x44, 0x00, 0x22, 0x30, 0x66, 0x5b, 0x00, 0x00, 0x00, 0xaa, 0x01, 0xf4, 0x3f, 0x3f, 0x79, 0xa9, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x80, 0x00, 0x00, 0x00, 0xef, 0x8d, 0xf0, 0xa4, 0xa8, 0xf0, 0xcf, 0x8c, 0xf0, 0xa4, 0x28, 0xce, 0x8d, 0xf0, 0xa4, 0x2e, 0xfe, 0x22, 0xc5, 0xf0, 0xf8, 0xa3, 0xe0, 0x28, 0xf0, 
0xc5, 0xf0, 0xf8, 0xe5, 0x82, 0x15, 0x82, 0x70, 0x02, 0x15, 0x83, 0xe0, 0x38, 0xf0, 0x22, 0xe8, 0x8f, 0xf0, 0xa4, 0xcc, 0x8b, 0xf0, 0xa4, 0x2c, 0xfc, 0xe9, 0x8e, 0xf0, 0xa4, 
0x2c, 0xfc, 0x8a, 0xf0, 0xed, 0xa4, 0x2c, 0xfc, 0xea, 0x8e, 0xf0, 0xa4, 0xcd, 0xa8, 0xf0, 0x8b, 0xf0, 0xa4, 0x2d, 0xcc, 0x38, 0x25, 0xf0, 0xfd, 0xe9, 0x8f, 0xf0, 0xa4, 0x2c, 
0xcd, 0x35, 0xf0, 0xfc, 0xeb, 0x8e, 0xf0, 0xa4, 0xfe, 0xa9, 0xf0, 0xeb, 0x8f, 0xf0, 0xa4, 0xcf, 0xc5, 0xf0, 0x2e, 0xcd, 0x39, 0xfe, 0xe4, 0x3c, 0xfc, 0xea, 0xa4, 0x2d, 0xce, 
0x35, 0xf0, 0xfd, 0xe4, 0x3c, 0xfc, 0x22, 0xeb, 0x9f, 0xf5, 0xf0, 0xea, 0x9e, 0x42, 0xf0, 0xe9, 0x9d, 0x42, 0xf0, 0xe8, 0x9c, 0x45, 0xf0, 0x22, 0xe8, 0x60, 0x0f, 0xef, 0xc3, 
0x33, 0xff, 0xee, 0x33, 0xfe, 0xed, 0x33, 0xfd, 0xec, 0x33, 0xfc, 0xd8, 0xf1, 0x22, 0xa4, 0x25, 0x82, 0xf5, 0x82, 0xe5, 0xf0, 0x35, 0x83, 0xf5, 0x83, 0x22, 0x8a, 0x83, 0x89, 
0x82, 0xe4, 0x73, 0xe7, 0x09, 0xf6, 0x08, 0xdf, 0xfa, 0x80, 0x46, 0xe7, 0x09, 0xf2, 0x08, 0xdf, 0xfa, 0x80, 0x3e, 0x88, 0x82, 0x8c, 0x83, 0xe7, 0x09, 0xf0, 0xa3, 0xdf, 0xfa, 
0x80, 0x32, 0xe3, 0x09, 0xf6, 0x08, 0xdf, 0xfa, 0x80, 0x6e, 0xe3, 0x09, 0xf2, 0x08, 0xdf, 0xfa, 0x80, 0x66, 0x88, 0x82, 0x8c, 0x83, 0xe3, 0x09, 0xf0, 0xa3, 0xdf, 0xfa, 0x80, 
0x5a, 0x89, 0x82, 0x8a, 0x83, 0xe0, 0xa3, 0xf6, 0x08, 0xdf, 0xfa, 0x80, 0x4e, 0x89, 0x82, 0x8a, 0x83, 0xe0, 0xa3, 0xf2, 0x08, 0xdf, 0xfa, 0x80, 0x42, 0x80, 0xd2, 0x80, 
0xfa, 0x80, 0xc6, 0x80, 0xd4, 0x80, 0x55, 0x80, 0xf2, 0x80, 0x29, 0x80, 0x10, 0x80, 0xa6, 0x80, 0xea, 0x80, 0x9a, 0x80, 0xa8, 0x80, 0xda, 0x80, 0xe2, 0x80, 0xca, 0x80, 
0x29, 0x88, 0x84, 0x8c, 0x85, 0x89, 0x82, 0x8a, 0x83, 0xe4, 0x93, 0xa3, 0x05, 0x92, 0xf0, 0xa3, 0x15, 0x92, 0xdf, 0xf5, 0xde, 0xf3, 0x80, 0x0b, 0x89, 0x82, 0x8a, 0x83, 
0xe4, 0x93, 0xa3, 0xf6, 0x08, 0xdf, 0xf9, 0xec, 0xfa, 0xa9, 0xf0, 0xed, 0xfb, 0x22, 0x88, 0x84, 0x8c, 0x85, 0x89, 0x82, 0x8a, 0x83, 0xe0, 0xa3, 0x05, 0x92, 0xf0, 0xa3, 
0x15, 0x92, 0xdf, 0xf6, 0xde, 0xf4, 0x80, 0xe3, 0x89, 0x82, 0x8a, 0x83, 0xe4, 0x93, 0xa3, 0xf2, 0x08, 0xdf, 0xf9, 0x80, 0xd6, 0x88, 0xf0, 0xef, 0x60, 0x01, 0x0e, 0x4e, 
0x60, 0xcd, 0x88, 0xf0, 0xed, 0x24, 0x02, 0xb4, 0x04, 0x00, 0x50, 0xc3, 0xf5, 0x82, 0xeb, 0x24, 0x02, 0xb4, 0x04, 0x00, 0x50, 0xb9, 0x23, 0x23, 0x45, 0x82, 0x23, 0x90, 
0x96, 0xb6, 0x73, 0x90, 0x40, 0x00, 0x7f, 0x00, 0x7e, 0x40, 0xe4, 0xf0, 0xa3, 0xdf, 0xfc, 0xde, 0xfa, 0x02, 0x97, 0x94, 0x02, 0xa8, 0x05, 0xe4, 0x93, 0xa3, 0xf8, 0xe4, 
0x93, 0xa3, 0x40, 0x03, 0xf6, 0x80, 0x01, 0xf2, 0x08, 0xdf, 0xf4, 0x80, 0x29, 0xe4, 0x93, 0xa3, 0xf8, 0x54, 0x07, 0x24, 0x0c, 0xc8, 0xc3, 0x33, 0xc4, 0x54, 0x0f, 0x44, 
0x20, 0xc8, 0x83, 0x40, 0x04, 0xf4, 0x56, 0x80, 0x01, 0x46, 0xf6, 0xdf, 0xe4, 0x80, 0x0b, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x90, 0x97, 0xe5, 0xe4, 0x7e, 
0x01, 0x93, 0x60, 0xbc, 0xa3, 0xff, 0x54, 0x3f, 0x30, 0xe5, 0x09, 0x54, 0x1f, 0xfe, 0xe4, 0x93, 0xa3, 0x60, 0x01, 0x0e, 0xcf, 0x54, 0xc0, 0x25, 0xe0, 0x60, 0xa8, 0x40, 
0xb8, 0xe4, 0x93, 0x8c, 0x0f,
/* cmd package 9 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x80, 0x7b, 0x49, 0xbf, 0xa3, 0xfa, 0xe4, 0x93, 0xa3, 0xf8, 0xe4, 0x93, 0xa3, 0xc8, 0xc5, 0x82, 0xc8, 0xca, 0xc5, 0x83, 0xca, 0xf0, 0xa3, 0xc8, 0xc5, 0x82, 
0xc8, 0xca, 0xc5, 0x83, 0xca, 0xdf, 0xe9, 0xde, 0xe7, 0x80, 0xbe, 0xee, 0x30, 0xe7, 0x07, 0xc3, 0xe4, 0x9f, 0xff, 0xe4, 0x9e, 0xfe, 0x22, 0x01, 0x24, 0x00, 0x01, 0x53, 0x0f, 
0x00, 0x7f, 0x01, 0x12, 0x6d, 0xde, 0x30, 0x0f, 0x1a, 0x12, 0x98, 0x43, 0xc3, 0x94, 0x20, 0x40, 0x0c, 0xef, 0xd3, 0x94, 0x70, 0x50, 0x06, 0x7e, 0x00, 0x7f, 0x01, 0x80, 
0x1d, 0x7e, 0x00, 0x7f, 0x00, 0x80, 0x17, 0x11, 0x43, 0xc3, 0x94, 0x20, 0x40, 0x0c, 0xef, 0xd3, 0x94, 0x30, 0x50, 0x06, 0x7e, 0x00, 0x7f, 0x01, 0x80, 0x04, 0x7e, 0x00, 
0x7f, 0x00, 0xef, 0x4e, 0x60, 0x07, 0xe4, 0xff, 0x12, 0x6d, 0xde, 0x80, 0x10, 0xe5, 0x17, 0x25, 0xe0, 0x25, 0xe0, 0x24, 0x33, 0xfd, 0xe4, 0xfb, 0x7f, 0x63, 0x12, 0x00, 
0x3e, 0x7f, 0x00, 0x22, 0x90, 0x36, 0xd4, 0xe0, 0x54, 0xf0, 0xff, 0x22, 0x8f, 0x4a, 0x31, 0x09, 0xe0, 0xff, 0x75, 0xf0, 0x30, 0xa4, 0x24, 0x74, 0xf5, 0x82, 0xe5, 0xf0, 0x34, 
0x2d, 0xf5, 0x83, 0xef, 0x25, 0x83, 0xaf, 0x82, 0xf5, 0x4d, 0x8f, 0x4e, 0x7e, 0x00, 0xe5, 0x17, 0x25, 0xe0, 0x25, 0xe0, 0xfb, 0xe5, 0x4a, 0xc8, 0xeb, 0xc8, 0x08, 0x80, 
0x05, 0xc3, 0x33, 0xce, 0x33, 0xce, 0xd8, 0xf9, 0xfd, 0xcc, 0xee, 0xcc, 0x74, 0x0f, 0x7e, 0x00, 0xc8, 0xeb, 0xc8, 0x08, 0x80, 0x05, 0xc3, 0x33, 0xce, 0x33, 0xce, 0xd8, 0xf9, 
0xfb, 0xca, 0xee, 0xca, 0x7f, 0x47, 0x7e, 0x63, 0x12, 0x00, 0x5c, 0xc3, 0x74, 0x6c, 0x95, 0x18, 0xfd, 0xe5, 0x4a, 0x75, 0xf0, 0x13, 0xa4, 0xf5, 0x4a, 0xe4, 0xfc, 0x12, 0xad, 
0x22, 0xe0, 0xf5, 0x4c, 0x12, 0xad, 0x93, 0xe5, 0xf2, 0x30, 0xe0, 0xfb, 0x0c, 0xbc, 0x0a, 0xee, 0x7c, 0x0f, 0x12, 0xad, 0x22, 0xe0, 0xf5, 0x4c, 0xec, 0x64, 0x10, 0x70, 
0x29, 0x75, 0xfc, 0x10, 0x8d, 0xff, 0xe5, 0xf2, 0x30, 0xe0, 0xfb, 0x53, 0xf8, 0x78, 0xe5, 0x4c, 0x54, 0x87, 0x42, 0xf8, 0x75, 0xf9, 0x00, 0xe5, 0x4b, 0x42, 0xf9, 0x75, 0xfc, 
0x10, 0xed, 0x44, 0x80, 0xf5, 0xff, 0xe5, 0xf2, 0x20, 0xe0, 0x0c, 0x80, 0xf9, 0xe5, 0x4c, 0x12, 0xad, 0x93, 0xe5, 0xf2, 0x30, 0xe0, 0xfb, 0x0c, 0xbc, 0x18, 0xbe, 0x7f, 0x00, 
0x22, 0x74, 0xc8, 0x25, 0x17, 0xf5, 0x82, 0xe4, 0x34, 0x36, 0xf5, 0x83, 0x22, 0xcd, 0xef, 0xcd, 0x31, 0x09, 0xe0, 0x70, 0x03, 0x7f, 0xff, 0x22, 0xed, 0x60, 0x0f, 0x30, 
0x0c, 0x0c, 0xb1, 0x1e, 0x80, 0x02, 0xc3, 0x33, 0xd8, 0xfc, 0x42, 0x24, 0x80, 0x1c, 0x74, 0x01, 0x7e, 0x00, 0xa8, 0x17, 0x08, 0x80, 0x05, 0xc3, 0x33, 0xce, 0x33, 0xce, 
0xd8, 0xf9, 0xff, 0xac, 0x24, 0xec, 0xfb, 0xef, 0x5b, 0x60, 0x19, 0x30, 0x0c, 0x05, 0xa8, 0x1d, 0xe6, 0xff, 0x22, 0xb1, 0x1e, 0x80, 0x02, 0xc3, 0x33, 0xd8, 0xfc, 0xff, 0xf4, 
0x52, 0x24, 0xef, 0x42, 0x08, 0xad, 0x08, 0xed, 0x70, 0x02, 0x61, 0xde, 0xb1, 0x1e, 0x80, 0x02, 0xc3, 0x33, 0xd8, 0xfc, 0xf4, 0x52, 0x20, 0xf1, 0x85, 0x7b, 0x08, 0xe4, 
0xfd, 0x12, 0x01, 0x59, 0xf1, 0x85, 0x7b, 0x04, 0xe4, 0xfd, 0x12, 0x01, 0x59, 0xf1, 0x85, 0x7b, 0x02, 0xe4, 0xfd, 0x12, 0x01, 0x9c, 0x90, 0x00, 0x0d, 0xe0, 0x70, 0x1c, 
0x90, 0x00, 0x12, 0xe0, 0x54, 0x1f, 0xff, 0xbf, 0x10, 0x0b, 0xb1, 0x1e, 0x80, 0x02, 0xc3, 0x33, 0xd8, 0xfc, 0xf4, 0x52, 0x21, 0xa8, 0x1d, 0x76, 0x11, 0x7f, 0x11, 0x22, 
0x12, 0xa7, 0xe1, 0x75, 0x16, 0xff, 0x90, 0x00, 0xe0, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x06, 0x90, 0x00, 0xe0, 0x12, 0xa5, 0x3e, 0xe5, 0x16, 0xb4, 0xff, 0x05, 0x12, 
0x2d, 0x23, 0x8f, 0x16, 0x90, 0x00, 0xe2, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x06, 0x90, 0x00, 0xe2, 0x12, 0xa5, 0x3e, 0x12, 0xa5, 0x4c, 0x60, 0x4f, 0x7b, 0x80, 0x7d, 
0x07, 0x7f, 0x07, 0x12, 0x01, 0x07, 0xef, 0x60, 0x18, 0x31, 0x09, 0xe0, 0xff, 0x64, 0x01, 0x60, 0x04, 0xef, 0xb4, 0x03, 0x06, 0x7e, 0x00, 0x7f, 0x01, 0x80, 0x14, 0x7e, 
0x00, 0x7f, 0x00, 0x80, 0x0e, 0x31, 0x09, 0xe0, 0x7e, 0x00, 0xb4, 0x02, 0x04, 0x7f, 0x01, 0x80, 0x02, 0x7f, 0x00, 0xef, 0x4e, 0x70, 0x02, 0x61, 0x23, 0x7e, 0x80, 0x7f, 
0x2b, 0x31, 0x09, 0xe0, 0xfd, 0x7c, 0x02, 0xb4, 0x03, 0x02, 0x7c, 0x03, 0xed, 0x2c, 0xfb, 0x12, 0xa7, 0xd7, 0xff, 0x22, 0x31, 0x09, 0xe0, 0xff, 0x64, 0x01, 0x60, 0x07, 
0xef, 0x64, 0x03, 0x60, 0x02, 0x41, 0xf2, 0xef, 0x64, 0x01, 0x70, 0x66, 0xe5, 0x53, 0x64, 0x0d, 0x70, 0x60, 0x7d, 0xd5, 0x7c, 0x1f, 0x74, 0x07, 0xff, 0xfe, 0x91, 0x0a, 
0x7f, 0x08, 0x91, 0x08, 0xf1, 0xdf, 0x7d, 0x05, 0x7c, 0x13, 0x7f, 0x0a, 0x91, 0x08, 0x7f, 0x0b, 0x91, 0x08, 0x7f, 0x0c, 0x91, 0x08, 0x7f, 0x0d, 0xf1, 0x7d, 0x7c, 0x80, 0x7f, 
0x0e, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x74, 0x03, 0xfd, 0xfc, 0x12, 0xa7, 0xc0, 0x7d, 0x3f, 0x7c, 0x70, 0x7f, 0x10, 0xf1, 0x7d, 0x7c, 0x60, 0x7f, 0x11, 0x12, 0xad, 0x4d, 
0x7c, 0x6d, 0xf1, 0xd8, 0x7d, 0xf6, 0x7c, 0x06, 0x12, 0xa6, 0xcd, 0xf1, 0xc1, 0x7d, 0x00, 0xf1, 0xa6, 0x7d, 0x00, 0xf1, 0x9d, 0x7d, 0x00, 0xf1, 0x94, 0x7d, 0x00, 0x80, 
0x6b, 0x7d, 0xdd, 0x7c, 0x1f, 0x74, 0x07, 0xff, 0xfe, 0x91, 0x0a, 0x7f, 0x08, 0x91, 0x08, 0xf1, 0xdf, 0x7d, 0x45, 0x7c, 0x11, 0x7f, 0x0a, 0x91, 0x08, 0xf1, 0x7b, 0x12, 0xad, 
0x49, 0x7c, 0x0d, 0x12, 0xa7, 0xaa, 0x7d, 0x3f, 0x7c, 0xc7, 0x71, 0xfc, 0xf1, 0xd8, 0x7d, 0xc0, 0x7c, 0x36, 0x12, 0xa6, 0xcd, 0xf1, 0xc1, 0x7d, 0x55, 0xf1, 0xa6, 0x7d, 0x55, 
0xf1, 0x9d, 0x7d, 0x55, 0xf1, 0x94, 0x7d, 0x55, 0x80, 0x28, 0x31, 0x09, 0xe0, 0x64, 0x02, 0x70, 0x2a, 0x12, 0xa7, 0x18, 0x7d, 0x00, 0x7c, 0x20, 0x12, 0xa7, 0x74, 0x7d, 
0x1f, 0x7c, 0x73, 0x12, 0xa6, 0xac, 0xf1, 0xc1, 0x7d, 0x45, 0xf1, 0xa6, 0x7d, 0x45, 0xf1, 0x9d, 0x7d, 0x45, 0xf1, 0x94, 0x7d, 0x45, 0x7c, 0x80, 0x7f, 0x95, 0x7e, 0x00, 
0x12, 0x01, 0xea, 0x31, 0x09, 0xe0, 0x14, 0x60, 0x0f, 0x14, 0x60, 0x35, 0x14, 0x60, 0x3a, 0x24, 0x03, 0x70, 0x42, 0x90, 0x08, 0x3e, 0x80, 0x2c, 0xe5, 0x53, 0xb4, 0x0d, 
0x05, 0x90, 0x42, 0xfe, 0x80, 0x03, 0x90, 0x09, 0x3e, 0xe0, 0xfe, 0xee, 0xff, 0x8f, 0xf9, 0xe5, 0x53, 0xb4, 0x0d, 0x05, 0x90, 0x42, 0xfe, 0x80, 0x03, 0x90, 0x09, 0x3e, 
0xe0, 0xfe, 0xa3, 0xe0, 0xff, 0x8f, 0xf8, 0x80, 0x0e, 0x90, 0x0a, 0x3e, 0x12, 0xa7, 0xed, 0x80, 0x06, 0x90, 0x0b, 0x3e, 0x12, 0xa7, 0xed, 0x12, 0xa7, 0xc7, 0x12, 0x00, 
0x03, 0x12, 0xa5, 0x6f, 0x12, 0xa7, 0xcf, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x09, 0x90, 0x00, 0xc0, 0xb1, 0x42, 0xf1, 0xed, 0x8f, 0x16, 0xe5, 0x16, 0xb4, 0xff, 0x09, 0xe4, 
0xfd, 0x7f, 0x02, 0x12, 0x32, 0x8d, 0x8f, 0x16, 0x90, 0x00, 0xc2, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x09, 0x90, 0x00, 0xc2, 0xb1, 0x42, 0xf1, 0xed, 0x8f, 0x16, 0x7e, 
0x81, 0x33,
/* cmd package 10 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0xc0, 0xba, 0x49, 0xbf, 0x80, 0x7f, 0x3b, 0xe4, 0xfb, 0xad, 0x17, 0x12, 0x02, 0xd3, 0x91, 0x1b, 0x12, 0xad, 0xa1, 0x7c, 0x60, 0x12, 0x01, 0x18, 0x12, 
0xad, 0x85, 0x60, 0xfb, 0x12, 0xa7, 0xe1, 0xf1, 0xd1, 0x7b, 0x01, 0x7d, 0x6f, 0x12, 0x01, 0x9c, 0xb1, 0x1e, 0x80, 0x02, 0xc3, 0x33, 0xd8, 0xfc, 0xf4, 0x52, 0x08, 0x80, 
0x1b, 0xf1, 0xd1, 0x7b, 0x01, 0x7d, 0x6f, 0x12, 0x00, 0xf6, 0xef, 0x60, 0x0f, 0x12, 0xad, 0x85, 0x60, 0x0a, 0x91, 0x1b, 0x12, 0xad, 0xa1, 0x7c, 0x60, 0x12, 0x01, 0x75, 
0x7f, 0xff, 0x22, 0x7f, 0x10, 0x7e, 0x07, 0x12, 0x01, 0xea, 0xe4, 0xfd, 0xfc, 0x7f, 0x11, 0x7e, 0x07, 0x12, 0x01, 0xea, 0xe4, 0xfd, 0xfc, 0x22, 0xf5, 0x82, 0xe4, 0x35, 0x4f, 
0xf5, 0x83, 0xe0, 0xf5, 0xf8, 0xc3, 0x74, 0x6a, 0x95, 0x18, 0xff, 0x22, 0xef, 0x64, 0x01, 0x60, 0x02, 0xa1, 0x1b, 0x90, 0x00, 0x0e, 0xe0, 0x30, 0xe7, 0x02, 0xa1, 0x1b, 
0xe5, 0x17, 0xc4, 0x54, 0xf0, 0x24, 0x40, 0xf5, 0x82, 0xe4, 0x34, 0x00, 0xaf, 0x82, 0xf5, 0x4f, 0x8f, 0x50, 0xe5, 0x53, 0x24, 0xf4, 0x60, 0x32, 0x14, 0x60, 0x1e, 0x14, 
0x70, 0x3e, 0x91, 0x1b, 0xe4, 0x94, 0x00, 0xef, 0xfe, 0x74, 0x3b, 0xff, 0x7d, 0xfc, 0x7c, 0x00, 0x12, 0x00, 0xa6, 0x91, 0x1b, 0xf1, 0xaf, 0x7b, 0xc0, 0x7a, 0x0f, 0x80, 0x1d, 
0x91, 0x1b, 0xf1, 0xe6, 0x91, 0x1b, 0xf1, 0xaf, 0x7d, 0xf0, 0x7c, 0x00, 0x12, 0x00, 0xce, 0x80, 0x12, 0x91, 0x1b, 0xf1, 0xe6, 0x91, 0x1b, 0xf1, 0xaf, 0x7b, 0xc0, 0x7a, 0xff, 
0xe4, 0xfd, 0xfc, 0x12, 0x00, 0x5c, 0x90, 0x00, 0x0e, 0xe0, 0x54, 0xfc, 0xf5, 0xf9, 0xe4, 0x91, 0x19, 0x7d, 0x3f, 0x12, 0x00, 0x03, 0xe5, 0x50, 0x24, 0x0c, 0xf5, 0x82, 
0xe4, 0x35, 0x4f, 0xf5, 0x83, 0xe0, 0xf5, 0xf9, 0x75, 0xf8, 0x03, 0x91, 0x1b, 0x7d, 0x92, 0x12, 0x00, 0x03, 0xe5, 0x50, 0x24, 0x0e, 0xb1, 0x27, 0x24, 0x0d, 0x91, 0x11, 
0x7d, 0x93, 0x12, 0x00, 0x03, 0xe5, 0x50, 0x24, 0x09, 0xb1, 0x27, 0x24, 0x08, 0x91, 0x11, 0x7d, 0x94, 0x12, 0x00, 0x03, 0xe5, 0x50, 0x24, 0x0b, 0xb1, 0x27, 0x24, 0x0a, 
0x91, 0x11, 0x7d, 0x95, 0x12, 0x00, 0x03, 0xe5, 0x50, 0x24, 0x05, 0xb1, 0x27, 0x24, 0x04, 0x91, 0x11, 0x7d, 0x96, 0x12, 0x00, 0x03, 0xe5, 0x50, 0x24, 0x07, 0xb1, 0x27, 
0x24, 0x06, 0x91, 0x11, 0x7d, 0x97, 0x12, 0x00, 0x03, 0xb1, 0x38, 0xb1, 0x34, 0x91, 0x18, 0x7d, 0x98, 0x12, 0x00, 0x03, 0xb1, 0x38, 0xa3, 0xa3, 0xb1, 0x34, 0xa3, 0xa3, 
0x91, 0x18, 0x7d, 0x99, 0x12, 0x00, 0x03, 0x7f, 0x00, 0x22, 0xaf, 0x17, 0x74, 0x01, 0xc8, 0xef, 0xc8, 0x08, 0x22, 0xf5, 0x82, 0xe4, 0x35, 0x4f, 0xf5, 0x83, 0xe0, 0xf5, 
0xf9, 0xe5, 0x50, 0x22, 0xa3, 0xe0, 0xf5, 0xf9, 0x85, 0x50, 0x82, 0x85, 0x4f, 0x83, 0x22, 0x90, 0x00, 0xe6, 0xe0, 0xfe, 0xa3, 0xe0, 0xf5, 0x82, 0x8e, 0x83, 0x22, 0x8f, 
0x3b, 0x8d, 0x3c, 0xe5, 0x17, 0x7f, 0x00, 0xfe, 0xef, 0x24, 0x34, 0xf5, 0x82, 0x74, 0x32, 0x3e, 0xaf, 0x82, 0xf5, 0x3d, 0x8f, 0x3e, 0x31, 0x09, 0xe0, 0xff, 0x24, 0x70, 0xf5, 
0x82, 0xe4, 0x34, 0x2d, 0xf5, 0x83, 0xe0, 0x24, 0xfe, 0x65, 0x3b, 0x60, 0x02, 0xe1, 0x55, 0xc2, 0x2a, 0xc2, 0x29, 0xc2, 0x28, 0xef, 0x64, 0x03, 0x60, 0x02, 0xc1, 0x5b, 
0x90, 0x2d, 0x73, 0xe0, 0xd3, 0x94, 0x05, 0x50, 0x02, 0xc1, 0x5b, 0xe0, 0xf9, 0xf1, 0x8c, 0x24, 0xfd, 0xf1, 0x64, 0xe0, 0xfa, 0xa3, 0xe0, 0xfb, 0xed, 0x24, 0xfc, 0xf1, 0x64, 
0xe0, 0xfe, 0xa3, 0xe0, 0xc3, 0x9b, 0xff, 0xee, 0x9a, 0xfe, 0xe4, 0x8f, 0x49, 0x8e, 0x48, 0xf5, 0x47, 0xf5, 0x46, 0xe9, 0xf1, 0x8c, 0x24, 0xfb, 0xf1, 0x64, 0xe0, 0xfa, 0xa3, 
0xe0, 0xfb, 0xed, 0x24, 0xfa, 0xf1, 0x64, 0x12, 0xac, 0xce, 0xe9, 0xf1, 0x8c, 0x24, 0xf9, 0xf1, 0x64, 0xe0, 0xfa, 0xa3, 0xe0, 0xfb, 0xed, 0x24, 0xf8, 0xf1, 0x64, 0x12, 0xac, 
0xce, 0x90, 0x00, 0x1b, 0xe0, 0xff, 0xe4, 0x12, 0xad, 0x38, 0x24, 0xec, 0x12, 0xad, 0x0c, 0xc3, 0x12, 0x96, 0x30, 0x40, 0x06, 0xd2, 0x29, 0xd2, 0x28, 0x80, 0x18, 0x90, 
0x00, 0x1b, 0xe0, 0xff, 0xe4, 0xfc, 0xfd, 0x12, 0xad, 0x38, 0x24, 0x38, 0x12, 0xad, 0x0c, 0xc3, 0x12, 0x96, 0x30, 0x40, 0x02, 0xd2, 0x28, 0x90, 0x00, 0x1b, 0xe0, 0xf9, 
0x75, 0xf0, 0x40, 0xa4, 0x24, 0xd4, 0xff, 0xe5, 0xf0, 0x34, 0xfe, 0xfe, 0xf1, 0xb8, 0xe0, 0xfc, 0xa3, 0xe0, 0xfd, 0x85, 0x3e, 0x82, 0x85, 0x3d, 0x83, 0x12, 0xad, 0x75, 0x40, 
0x23, 0xe9, 0x75, 0xf0, 0x40, 0xa4, 0x24, 0xec, 0xff, 0xe5, 0xf0, 0x34, 0xff, 0xfe, 0xe5, 0x3e, 0x24, 0x06, 0xf1, 0x5c, 0xe0, 0xfc, 0xa3, 0xe0, 0xfd, 0xe5, 0x3e, 0x24, 0x04, 
0xf1, 0x5c, 0x12, 0xad, 0x75, 0x50, 0x06, 0xd2, 0x2a, 0xd2, 0x29, 0xd2, 0x28, 0x85, 0x3e, 0x82, 0x85, 0x3d, 0x83, 0x12, 0xad, 0x65, 0xe5, 0x45, 0xd3, 0x95, 0x3b, 0x50, 
0x42, 0x85, 0x3e, 0x82, 0x85, 0x3d, 0x83, 0xc0, 0x83, 0xc0, 0x82, 0xe5, 0x45, 0x65, 0x3b, 0x70, 0x04, 0xaf, 0x45, 0x80, 0x04, 0xe5, 0x45, 0x04, 0xff, 0xd0, 0x82, 0xd0, 
0x83, 0x75, 0xf0, 0x04, 0xef, 0x12, 0x96, 0x54, 0x12, 0xac, 0xf0, 0xff, 0xe5, 0x43, 0x3e, 0xfe, 0x85, 0x3e, 0x82, 0x85, 0x3d, 0x83, 0x75, 0xf0, 0x04, 0xe5, 0x45, 0x12, 
0x96, 0x54, 0xee, 0xf0, 0xa3, 0xef, 0x12, 0xad, 0x55, 0x80, 0xb7, 0xf1, 0xb8, 0x12, 0xad, 0x65, 0xe5, 0x45, 0xd3, 0x95, 0x3b, 0x50, 0x30, 0xe5, 0x45, 0x65, 0x3b, 0x70, 
0x04, 0xaf, 0x45, 0x80, 0x04, 0xe5, 0x45, 0x04, 0xff, 0xef, 0xf1, 0xf4, 0xe4, 0x35, 0xf0, 0xf1, 0x68, 0x12, 0xac, 0xf0, 0xfd, 0xe5, 0x43, 0x3e, 0xfc, 0xe5, 0x45, 0xf1, 0xf4, 
0xe4, 0x35, 0xf0, 0xf1, 0x68, 0xec, 0xf0, 0xa3, 0xed, 0x12, 0xad, 0x55, 0x80, 0xc9, 0x30, 0x28, 0x10, 0x85, 0x3e, 0x82, 0x85, 0x3d, 0x83, 0x74, 0xff, 0xf0, 0xa3, 0xf0, 0xf1, 
0xb8, 0xf0, 0xa3, 0xf0, 0x30, 0x29, 0x16, 0xe5, 0x3e, 0x24, 0x04, 0xf1, 0x5c, 0x74, 0xff, 0xf0, 0xa3, 0xf0, 0xe5, 0x3e, 0x24, 0x06, 0xf1, 0x5c, 0x74, 0xff, 0xf0, 0xa3, 0xf0, 
0x30, 0x2a, 0x3d, 0xe5, 0x3e, 0x24, 0x08, 0xf1, 0x5c, 0x74, 0xff, 0xf0, 0xa3, 0xf0, 0xe5, 0x3e, 0x24, 0x0a, 0xf1, 0x5c, 0x74, 0xff, 0xf0, 0xa3, 0xf0, 0xf1, 0x58, 0xe4, 0x75, 
0xf0, 0x05, 0x12, 0x95, 0xcb, 0xe5, 0x3e, 0x24, 0x0c, 0xf1, 0x5c, 0xe0, 0xfe, 0xa3, 0xe0, 0xff, 0xf1, 0x58, 0xe0, 0xfc, 0xa3, 0xe0, 0xd3, 0x9f, 0xec, 0x9e, 0x40, 0x07, 0xf1, 
0x58, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x7f, 0x00, 0x22, 0xe5, 0x3e, 0x24, 0x0e, 0xf5, 0x82, 0xe4, 0x35, 0x3d, 0xf5, 0x83, 0x22, 0xff, 0xec, 0x34, 0xff, 0xfe, 0xef, 0x25, 0xe0, 
0xff, 0xee, 0x33, 0xfe, 0xe5, 0x3e, 0x2f, 0xf5, 0x82, 0xe5, 0x3d, 0x3e, 0xf5, 0x83, 0x22, 0x7f, 0x0b, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0x00, 0x22, 0xc3, 0x74, 0x6d, 
0x95, 0x18, 0xff, 0x22, 0x75, 0xf0, 0x02, 0xa4, 0xfd, 0xac, 0xf0, 0x22, 0x7c, 0x80, 0x7f, 0x8b, 0x7e, 0x00, 0x02, 0x01, 0xea, 0x7c, 0x80, 0x7f, 0xe2, 0xff,
/* cmd package 11 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x00, 0xfa, 0x49, 0xbf, 0x94, 0x7e, 0x00, 0x02, 0x01, 0xea, 0x7c, 0x80, 0x7f, 0x8a, 0x7e, 0x00, 0x02, 0x01, 0xea, 0xe4, 0x94, 0x00, 0xef, 0xfe, 0x74, 
0x3a, 0xff, 0x22, 0x85, 0x3e, 0x82, 0x85, 0x3d, 0x83, 0xa3, 0xa3, 0x22, 0x7b, 0x02, 0x7d, 0x33, 0x7f, 0x07, 0x12, 0x01, 0x9c, 0x7f, 0x64, 0x7e, 0x00, 0x02, 0x02, 0x21, 
0xc3, 0x74, 0x6c, 0x95, 0x18, 0xff, 0x22, 0x7f, 0x12, 0x7e, 0x07, 0x02, 0x01, 0xea, 0x7f, 0x09, 0x7e, 0x07, 0x02, 0x01, 0xea, 0xe4, 0xfb, 0x7d, 0x3b, 0x02, 0x00, 0x20, 
0xe4, 0xfd, 0x7f, 0x02, 0x02, 0x96, 0x64, 0x75, 0xf0, 0x02, 0xa4, 0x24, 0x01, 0xff, 0x22, 0x75, 0x26, 0x40, 0x75, 0x27, 0x40, 0x12, 0x9f, 0xd1, 0x51, 0xb7, 0xc0, 0xe0, 
0xef, 0xc0, 0xe0, 0xe5, 0x26, 0xfc, 0x74, 0x78, 0xfd, 0xd0, 0xe0, 0xff, 0xd0, 0xe0, 0xfe, 0x12, 0x00, 0xa6, 0x12, 0x99, 0x09, 0x74, 0x03, 0xf0, 0xd1, 0x17, 0x70, 0x02, 
0xa3, 0xe0, 0x60, 0x08, 0x90, 0x00, 0xd4, 0x12, 0x9d, 0x42, 0xd1, 0x0f, 0xe5, 0x16, 0xb4, 0xff, 0x07, 0x7f, 0x03, 0x12, 0x37, 0x66, 0x8f, 0x16, 0x90, 0x00, 0xd6, 0xe0, 
0x70, 0x02, 0xa3, 0xe0, 0x60, 0x08, 0x90, 0x00, 0xd6, 0x12, 0x9d, 0x42, 0xd1, 0x0f, 0x7f, 0x04, 0x7e, 0x07, 0x12, 0x01, 0xd6, 0x8e, 0x2c, 0x8f, 0x2d, 0x7f, 0x05, 0x7e, 
0x07, 0x12, 0x01, 0xd6, 0x8e, 0x2e, 0x8f, 0x2f, 0x7f, 0x06, 0x7e, 0x07, 0x12, 0x01, 0xd6, 0x8e, 0x30, 0x8f, 0x31, 0x7f, 0x00, 0x7e, 0x07, 0x12, 0x01, 0xd6, 0x8e, 0x32, 
0x8f, 0x33, 0x7f, 0x01, 0x7e, 0x07, 0x12, 0x01, 0xd6, 0x8e, 0x34, 0x8f, 0x35, 0x7f, 0x02, 0x7e, 0x07, 0x12, 0x01, 0xd6, 0x8e, 0x36, 0x8f, 0x37, 0x7f, 0x03, 0x7e, 0x07, 
0x12, 0x01, 0xd6, 0x8e, 0x38, 0x8f, 0x39, 0x7b, 0x07, 0x7d, 0x7b, 0x7f, 0x07, 0x12, 0x00, 0x3e, 0x7b, 0x20, 0x7d, 0x78, 0x7f, 0x07, 0x12, 0x01, 0x59, 0x7d, 0x08, 0x7c, 
0xdc, 0x51, 0xd6, 0x7d, 0x7e, 0x7c, 0x50, 0x51, 0xcf, 0x7d, 0x03, 0x7c, 0x00, 0x7f, 0x06, 0x12, 0x9c, 0x08, 0xff, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0x09, 0x7c, 0xee, 
0x7f, 0x01, 0x12, 0x9f, 0x7d, 0x7c, 0x0c, 0x51, 0xc8, 0x7d, 0x03, 0x7f, 0x07, 0x12, 0x00, 0x13, 0xf1, 0x2f, 0xf1, 0x2f, 0xe4, 0xfd, 0xfc, 0x51, 0xc1, 0x12, 0x9f, 0xd1, 0x7b, 
0x20, 0x7d, 0x33, 0xd1, 0xe3, 0x75, 0x2a, 0x7f, 0x75, 0x2b, 0xff, 0xe4, 0xf5, 0x28, 0xf5, 0x29, 0xf5, 0x3a, 0x7d, 0x5f, 0x7c, 0x07, 0x7f, 0x60, 0x7e, 0x07, 0x12, 0x01, 
0xea, 0x7d, 0x61, 0x7f, 0x07, 0x12, 0x00, 0x13, 0xe5, 0xf8, 0x30, 0xe0, 0xf4, 0xe5, 0xf9, 0x54, 0x07, 0xfe, 0xe5, 0xf8, 0x54, 0xfe, 0xfd, 0xed, 0xff, 0xee, 0xc3, 0x13, 0xfe, 
0xef, 0x13, 0xff, 0x7c, 0x00, 0x7d, 0x03, 0x12, 0x95, 0xb9, 0xef, 0x25, 0x29, 0xf5, 0x29, 0xee, 0x35, 0x28, 0xf5, 0x28, 0x05, 0x3a, 0xe5, 0x3a, 0xc3, 0x94, 0x02, 0x40, 
0xbc, 0x74, 0x42, 0x25, 0x29, 0xf5, 0x29, 0x74, 0xf0, 0x35, 0x28, 0xf5, 0x28, 0xaf, 0x2b, 0xae, 0x2a, 0x12, 0x97, 0xd9, 0xee, 0xc0, 0xe0, 0xef, 0xc0, 0xe0, 0xaf, 0x29, 
0xae, 0x28, 0x12, 0x97, 0xd9, 0xd0, 0xe0, 0xfd, 0xd0, 0xe0, 0xfc, 0xc3, 0xef, 0x9d, 0xec, 0x64, 0x80, 0xf8, 0xee, 0x64, 0x80, 0x98, 0x40, 0x20, 0xd3, 0xe5, 0x2b, 0x94, 
0x00, 0x51, 0xa9, 0x40, 0x60, 0x51, 0xb0, 0x50, 0x5c, 0xc3, 0xe4, 0x95, 0x29, 0xff, 0xe4, 0x95, 0x28, 0xfe, 0xef, 0x65, 0x2b, 0x70, 0x03, 0xee, 0x65, 0x2a, 0x70, 0x49, 
0x85, 0x26, 0x27, 0xd3, 0xe5, 0x29, 0x94, 0x00, 0x51, 0xb0, 0x40, 0x13, 0xd3, 0xe5, 0x2b, 0x94, 0x00, 0x51, 0xa9, 0x40, 0x0a, 0xe5, 0x26, 0x94, 0x78, 0x50, 0x04, 0x74, 
0x08, 0x80, 0x1e, 0xc3, 0x51, 0xb0, 0x50, 0x1d, 0xc3, 0x51, 0xa9, 0x40, 0x0b, 0xe5, 0x2b, 0xf4, 0x70, 0x04, 0xe5, 0x2a, 0x64, 0x7f, 0x70, 0x0d, 0xe5, 0x26, 0xd3, 0x94, 
0x10, 0x40, 0x06, 0x74, 0xf8, 0x25, 0x26, 0xf5, 0x26, 0x85, 0x28, 0x2a, 0x85, 0x29, 0x2b, 0x80, 0x03, 0x85, 0x27, 0x26, 0xe5, 0x27, 0x65, 0x26, 0x70, 0x22, 0x12, 0x9f, 
0xd1, 0x51, 0xba, 0xc0, 0xe0, 0xef, 0xc0, 0xe0, 0xe5, 0x26, 0x24, 0xf0, 0xff, 0xe4, 0x34, 0xff, 0xef, 0xfc, 0x74, 0x78, 0xfd, 0xd0, 0xe0, 0xff, 0xd0, 0xe0, 0xfe, 0x12, 0x00, 
0xa6, 0x80, 0x22, 0x12, 0x9f, 0xd1, 0x51, 0xb7, 0xc0, 0xe0, 0xef, 0xc0, 0xe0, 0xe5, 0x26, 0xfc, 0x74, 0x78, 0xfd, 0xd0, 0xe0, 0xff, 0xd0, 0xe0, 0xfe, 0x12, 0x00, 0xa6, 0x7f, 
0x14, 0x7e, 0x00, 0x12, 0x02, 0x21, 0x01, 0xf5, 0x7b, 0x20, 0x7d, 0x78, 0x7f, 0x07, 0x12, 0x01, 0xb9, 0x12, 0x9f, 0xd1, 0x7b, 0x20, 0x7d, 0x33, 0x12, 0x01, 0x9c, 0xad, 
0x2d, 0xac, 0x2c, 0x51, 0xd6, 0xad, 0x2f, 0xac, 0x2e, 0x51, 0xcf, 0xad, 0x31, 0xac, 0x30, 0x7f, 0x06, 0x7e, 0x07, 0x12, 0x01, 0xea, 0xad, 0x33, 0xac, 0x32, 0x7f, 0x00, 
0x7e, 0x07, 0x12, 0x01, 0xea, 0xad, 0x35, 0xac, 0x34, 0x7f, 0x01, 0x7e, 0x07, 0x12, 0x01, 0xea, 0xad, 0x37, 0xac, 0x36, 0x51, 0xc8, 0xad, 0x39, 0xac, 0x38, 0x51, 0xc1, 
0xd1, 0x17, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x08, 0x90, 0x00, 0xd4, 0x12, 0x9d, 0x42, 0x51, 0xdd, 0xe5, 0x16, 0xb4, 0xff, 0x07, 0xe4, 0xff, 0x12, 0x37, 0x66, 0x8f, 0x16, 
0x90, 0x00, 0xd6, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x08, 0x90, 0x00, 0xd6, 0x12, 0x9d, 0x42, 0x51, 0xdd, 0x12, 0x99, 0x09, 0xe4, 0xf0, 0x22, 0xe5, 0x2a, 0x64, 0x80, 
0x94, 0x80, 0x22, 0xe5, 0x28, 0x64, 0x80, 0x94, 0x80, 0x22, 0xe4, 0x94, 0x00, 0xef, 0xfe, 0x74, 0x10, 0xff, 0xee, 0x22, 0x7f, 0x03, 0x7e, 0x07, 0x02, 0x01, 0xea, 0x7f, 
0x02, 0x7e, 0x07, 0x02, 0x01, 0xea, 0x7f, 0x05, 0x7e, 0x07, 0x02, 0x01, 0xea, 0x7f, 0x04, 0x7e, 0x07, 0x02, 0x01, 0xea, 0xe4, 0xff, 0x12, 0x96, 0x64, 0x8f, 0x16, 0x22, 
0xef, 0x70, 0x02, 0x81, 0x0a, 0x7f, 0x3c, 0x7e, 0x01, 0x12, 0x01, 0xd6, 0xef, 0x54, 0x0f, 0xf5, 0x53, 0x12, 0x9d, 0x1e, 0x80, 0x02, 0xc3, 0x33, 0xd8, 0xfc, 0xf4, 0x52, 
0x20, 0x52, 0x24, 0xb1, 0xfc, 0xe0, 0xff, 0x64, 0x01, 0x60, 0x04, 0xef, 0xb4, 0x02, 0x05, 0xb1, 0xfc, 0x74, 0x03, 0xf0, 0xd1, 0xed, 0x7b, 0x40, 0x7d, 0x04, 0x12, 0x01, 
0x9c, 0xf1, 0xe1, 0x20, 0x0c, 0x0a, 0xe5, 0x53, 0x64, 0x0c, 0x60, 0x04, 0xb1, 0x4c, 0x60, 0x75, 0x7b, 0x01, 0x7d, 0x34, 0xb1, 0x50, 0x60, 0x5d, 0xb1, 0xe0, 0x70, 0x02, 
0xa3, 0xe0, 0x60, 0x0d, 0x90, 0x00, 0xe4, 0x12, 0x9d, 0x42, 0x7f, 0x01, 0x12, 0x96, 0x64, 0x8f, 0x16, 0xe5, 0x16, 0xb4, 0xff, 0x02, 0xb1, 0xd8, 0x90, 0x00, 0xe6, 0xe0, 
0x70, 0x02, 0xa3, 0xe0, 0x60, 0x0a, 0x12, 0x9d, 0x3f, 0x7f, 0x01, 0x12, 0x96, 0x64, 0x8f, 0x16, 0xb1, 0xe8, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x05, 0x90, 0x00, 0xb4, 
0xb1, 0x3e, 0xe5, 0x16, 0xb4, 0xff, 0x05, 0x12, 0x20, 0x84, 0x8f, 0x16, 0x90, 0x00, 0xb6, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x05, 0x90, 0x00, 0xb6, 0xb1, 0x3e, 0xa8, 
0x1d, 0xa6, 0x16, 0x80, 0x0a, 0xb1, 0x57, 0x11, 0x49,
/* cmd package 12 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x40, 0x39, 0x4a, 0xbf, 0x7b, 0x01, 0x7d, 0x34, 0xb1, 0x50, 0x60, 0xf8, 0x7e, 0x80, 0x7f, 0x03, 0x80, 0x21, 0xd2, 0x0c, 0xe5, 0x53, 0x64, 0x0e, 0x70, 
0x07, 0xb1, 0x87, 0x90, 0x41, 0xfe, 0x80, 0x05, 0xd1, 0x2b, 0x90, 0x40, 0xfe, 0xf1, 0xed, 0xf1, 0xc7, 0x12, 0x00, 0x03, 0xb1, 0x6f, 0x7e, 0x80, 0x7f, 0x0e, 0xe4, 0xfb, 
0xad, 0x17, 0x12, 0x02, 0xd3, 0xb1, 0xfc, 0xe0, 0x64, 0x0a, 0x70, 0x02, 0xa1, 0x39, 0xf1, 0xcf, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x0a, 0x90, 0x00, 0xc0, 0x12, 0x9d, 0x42, 
0xe4, 0xfd, 0x51, 0xde, 0xe5, 0x16, 0xb4, 0xff, 0x08, 0xe4, 0xfd, 0xff, 0x12, 0x32, 0x8d, 0x8f, 0x16, 0x90, 0x00, 0xc2, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x70, 0x02, 0xa1, 
0x39, 0x90, 0x00, 0xc2, 0x12, 0x9d, 0x42, 0xe4, 0xfd, 0x51, 0xde, 0xa1, 0x39, 0xe5, 0x18, 0x24, 0x23, 0xfd, 0x7f, 0x05, 0x12, 0x00, 0x13, 0xe5, 0xf8, 0x20, 0xe0, 0x02, 
0xa1, 0x39, 0xe5, 0xf9, 0x60, 0x0c, 0xc2, 0x0c, 0x7e, 0x80, 0x7f, 0x1a, 0xab, 0xf9, 0xf1, 0xd7, 0xff, 0x22, 0xe5, 0x18, 0x24, 0x21, 0xff, 0xe4, 0x33, 0x44, 0x05, 0xfe, 0x12, 
0x01, 0xd6, 0x8e, 0x51, 0x8f, 0x52, 0xb1, 0xf2, 0x70, 0x03, 0xee, 0x65, 0x51, 0x70, 0x0f, 0xe5, 0x53, 0x64, 0x0d, 0x60, 0x09, 0xb1, 0x87, 0x90, 0x41, 0xfe, 0xb1, 0x5a, 
0xa1, 0x39, 0x90, 0x41, 0xfe, 0xb1, 0xf5, 0x70, 0x03, 0xee, 0x65, 0x51, 0x60, 0x0f, 0xb1, 0xf2, 0x70, 0x03, 0xee, 0x65, 0x51, 0x70, 0x75, 0xe5, 0x53, 0x64, 0x0d, 0x70, 
0x6f, 0xc2, 0x0c, 0x7b, 0x01, 0x7d, 0x34, 0xb1, 0x50, 0x60, 0x59, 0xb1, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x0d, 0x90, 0x00, 0xe4, 0x12, 0x9d, 0x42, 0x7f, 0x01, 0x12, 
0x96, 0x64, 0x8f, 0x16, 0xe5, 0x16, 0xb4, 0xff, 0x02, 0xb1, 0xd8, 0x90, 0x00, 0xe6, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x0a, 0x12, 0x9d, 0x3f, 0x7f, 0x01, 0x12, 0x96, 
0x64, 0x8f, 0x16, 0xb1, 0xe8, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x05, 0x90, 0x00, 0xb4, 0xb1, 0x3e, 0xe5, 0x16, 0xb4, 0xff, 0x05, 0x12, 0x20, 0x84, 0x8f, 0x16, 0x90, 
0x00, 0xb6, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x6a, 0x90, 0x00, 0xb6, 0xb1, 0x3e, 0x80, 0x63, 0xb1, 0x57, 0x7b, 0x01, 0x7d, 0x34, 0xb1, 0x50, 0x70, 0x5d, 0x80, 0xf6, 
0xb1, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x0d, 0x90, 0x00, 0xe4, 0x12, 0x9d, 0x42, 0x7f, 0x01, 0x12, 0x96, 0x64, 0x8f, 0x16, 0xe5, 0x16, 0xb4, 0xff, 0x02, 0xb1, 0xd8, 
0x90, 0x00, 0xe6, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x0a, 0x12, 0x9d, 0x3f, 0x7f, 0x01, 0x12, 0x96, 0x64, 0x8f, 0x16, 0xb1, 0xe8, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 
0x05, 0x90, 0x00, 0xb4, 0xb1, 0x3e, 0xe5, 0x16, 0xb4, 0xff, 0x05, 0x12, 0x20, 0x84, 0x8f, 0x16, 0x90, 0x00, 0xb6, 0xe0, 0x70, 0x02, 0xa3, 0xe0, 0x60, 0x05, 0x90, 0x00, 
0xb6, 0xb1, 0x3e, 0xa8, 0x1d, 0xa6, 0x16, 0xa8, 0x1d, 0xe6, 0xff, 0x22, 0xe0, 0xfe, 0xa3, 0xe0, 0xca, 0xee, 0xca, 0xf9, 0x12, 0x96, 0x60, 0x8f, 0x16, 0x22, 0x7b, 0x01, 
0x7d, 0x33, 0x7f, 0x07, 0x12, 0x00, 0xf6, 0xef, 0x22, 0x90, 0x02, 0x3e, 0xe0, 0xfc, 0xa3, 0xe0, 0xfd, 0xec, 0xf5, 0xf9, 0xed, 0xf5, 0xf8, 0xe5, 0x18, 0x24, 0x21, 0xfd, 0x7f, 
0x05, 0x12, 0x00, 0x03, 0xe5, 0x18, 0x24, 0x20, 0xfd, 0x7b, 0x05, 0x7f, 0x05, 0x12, 0x01, 0x3d, 0xe5, 0x18, 0x24, 0x20, 0xfd, 0x7b, 0x02, 0x7f, 0x05, 0x02, 0x01, 0x3d, 
0xf1, 0x18, 0x7d, 0x04, 0x7c, 0x60, 0xf1, 0x74, 0x7d, 0x1f, 0x7c, 0x70, 0xd1, 0xac, 0xd1, 0x1f, 0x7d, 0x51, 0xf1, 0x0e, 0x7f, 0x50, 0xf1, 0x04, 0x7f, 0x5f, 0xd1, 0xfc, 0xd1, 
0x08, 0x7b, 0x01, 0x7d, 0x5e, 0xd1, 0xf4, 0x7d, 0x50, 0xd1, 0x23, 0x7d, 0x50, 0x7f, 0x07, 0x12, 0x01, 0x3d, 0x7b, 0x10, 0x7d, 0x50, 0xb1, 0x50, 0x60, 0xf8, 0x7b, 0x01, 
0xd1, 0x08, 0x7f, 0x51, 0xf1, 0x23, 0x40, 0x0f, 0x7b, 0xc1, 0x7a, 0x03, 0x7d, 0x41, 0x7c, 0x01, 0x7f, 0x51, 0x7e, 0x07, 0x12, 0x00, 0x5c, 0x22, 0x7f, 0x01, 0x12, 0x46, 
0x02, 0x8f, 0x16, 0x22, 0x75, 0x16, 0xff, 0x90, 0x00, 0xe4, 0xe0, 0x22, 0x12, 0x9f, 0xfc, 0x75, 0x16, 0xff, 0x90, 0x00, 0xb4, 0x22, 0x90, 0x40, 0xfe, 0xe0, 0xfe, 0xa3, 0xe0, 
0x65, 0x52, 0x22, 0x74, 0x00, 0x25, 0x17, 0xf5, 0x82, 0xe4, 0x34, 0x00, 0xf5, 0x83, 0x22, 0x7d, 0x5e, 0x7f, 0x07, 0x02, 0x01, 0x9c, 0x7f, 0x03, 0x12, 0x96, 0x64, 0x8f, 
0x16, 0x22, 0x75, 0x16, 0xff, 0x90, 0x00, 0xd4, 0xe0, 0x22, 0x7b, 0x03, 0x7d, 0x3f, 0x7f, 0x07, 0x12, 0x01, 0x3d, 0x7b, 0x01, 0x22, 0x7d, 0xdd, 0x7c, 0x1f, 0xf1, 0x1c, 
0x7d, 0x04, 0x7c, 0x40, 0x7f, 0x08, 0x12, 0x9f, 0x7d, 0x7c, 0x50, 0x7f, 0x09, 0x12, 0x9f, 0x7d, 0x7c, 0x10, 0x7f, 0x0a, 0x12, 0x9c, 0x08, 0x12, 0x9f, 0x7b, 0x12, 0xad, 
0x49, 0x7c, 0x0d, 0xf1, 0xaa, 0x7d, 0x3f, 0x7c, 0xc4, 0x12, 0x9b, 0xfc, 0x12, 0x9f, 0xd8, 0x7d, 0xc0, 0x7c, 0x36, 0xd1, 0xcd, 0xd1, 0x1f, 0x7d, 0x41, 0xf1, 0x0e, 0x7f, 0x40, 
0xf1, 0x04, 0x7f, 0x4f, 0xd1, 0xfc, 0xd1, 0xa5, 0x7b, 0x01, 0x7d, 0x4e, 0xd1, 0xf4, 0x7d, 0x40, 0xd1, 0x23, 0x7d, 0x40, 0x7f, 0x07, 0x12, 0x01, 0x3d, 0x7b, 0x10, 0x7d, 
0x40, 0xb1, 0x50, 0x60, 0xf8, 0x7b, 0x01, 0xd1, 0xa5, 0x7f, 0x41, 0xf1, 0x23, 0x40, 0x0f, 0x7b, 0xc1, 0x7a, 0x03, 0x7d, 0x41, 0x7c, 0x01, 0x7f, 0x41, 0x7e, 0x07, 0x12, 
0x00, 0x5c, 0x22, 0x7d, 0x4e, 0x7f, 0x07, 0x02, 0x01, 0x9c, 0x7f, 0x10, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0x00, 0x7c, 0x50, 0x7f, 0x11, 0x7e, 0x07, 0x12, 0x01, 0xea, 
0x7d, 0xdd, 0x7c, 0x24, 0x7f, 0x12, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0x92, 0x7c, 0x31, 0x7f, 0x13, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7b, 0x02, 0x7d, 0x33, 0x7f, 0x07, 
0x12, 0x01, 0x3d, 0x7b, 0x01, 0x7d, 0x33, 0x7f, 0x07, 0x12, 0x01, 0x3d, 0x7f, 0x0a, 0x7e, 0x00, 0x02, 0x02, 0x21, 0xc3, 0x74, 0x69, 0x95, 0x18, 0xff, 0x22, 0x7f, 0x07, 
0x12, 0x01, 0x3d, 0x7b, 0x04, 0x22, 0x7e, 0x07, 0x12, 0x00, 0xa6, 0x7b, 0x1e, 0x22, 0x7e, 0x07, 0x12, 0x00, 0xce, 0x7d, 0x0f, 0x7c, 0x02, 0x22, 0x7f, 0x07, 0x12, 0x01, 
0x9c, 0x7d, 0xf0, 0x7c, 0x40, 0x22, 0x7d, 0xb1, 0x7c, 0x8f, 0x74, 0x07, 0xff, 0xfe, 0x02, 0x01, 0xea, 0x7e, 0x07, 0x12, 0x01, 0xd6, 0xef, 0x54, 0x1e, 0xd3, 0x94, 0x0a, 
0x22, 0x43, 0xf9, 0x04, 0x7d, 0x03, 0x7f, 0x07, 0x12, 0x00, 0x03, 0x53, 0xf9, 0xfb, 0x7d, 0x03, 0x7f, 0x07, 0x02, 0x00, 0x03, 0xef, 0x70, 0x2b, 0xa8, 0x1d, 0xe6, 0x64, 
0x10, 0x70, 0x24, 0xd1, 0xed, 0x7b, 0x04, 0x7d, 0x50, 0x12, 0x00, 0xf6, 0xef, 0x60, 0x04, 0x7f, 0xff, 0x80, 0x02, 0x7f, 0x00, 0xef, 0xfc, 0x74, 0x40, 0xfd, 0xd1, 0xed, 0xe4, 
0x94, 0x00, 0xef, 0xfe, 0x74, 0x04, 0xff, 0x12, 0x00, 0xa6, 0x7f, 0x00, 0x22, 0x7f, 0x08, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0xc0, 0x7c, 0x51, 0x7f, 0x09, 0x7e, 0x07, 
0x12, 0x01, 0xea, 0xe4, 0xfd, 0xdb, 0xf4,
/* cmd package 13 */
0x03,0xfd,0x9c, 0x3f, 0x86, 0x80, 0x78, 0x4a, 0xbf, 0xfc, 0x7f, 0x0a, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0x00, 0x7c, 0x10, 0x7f, 0x0b, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0x22, 
0x7c, 0x01, 0x7f, 0x0c, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0xed, 0x7c, 0x06, 0x7f, 0x0d, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0x00, 0x7c, 0xe0, 0x7f, 0x0e, 0x7e, 0x07, 
0x12, 0x01, 0xea, 0x7d, 0xc0, 0x7c, 0x00, 0x7f, 0x0f, 0x7e, 0x07, 0x02, 0x01, 0xea, 0xe5, 0x18, 0x24, 0x21, 0xfd, 0x7f, 0x05, 0x22, 0x75, 0x16, 0xff, 0x90, 0x00, 0xc0, 
0xe0, 0x22, 0xad, 0x17, 0x12, 0x02, 0xd3, 0xa8, 0x1d, 0xe4, 0xf6, 0x22, 0xe5, 0x18, 0x24, 0x20, 0xfd, 0x7b, 0x04, 0x7f, 0x05, 0x02, 0x00, 0x20, 0xe0, 0xfc, 0xa3, 0xe0, 
0xfd, 0xec, 0xf5, 0xf9, 0xed, 0xf5, 0xf8, 0x22, 0x7b, 0x02, 0x7d, 0xf6, 0xe4, 0xff, 0x12, 0x01, 0x59, 0x7f, 0x00, 0x22, 0x7d, 0x00, 0x7c, 0x03, 0x7f, 0x05, 0x7e, 0x63, 0x12, 
0x01, 0xea, 0x7d, 0x22, 0x7c, 0x1c, 0x7f, 0x2d, 0x7e, 0x63, 0x12, 0x01, 0xea, 0x30, 0x0f, 0x02, 0x81, 0x6f, 0x91, 0x8e, 0xef, 0x64, 0x02, 0x60, 0x02, 0x81, 0x2e, 0x90, 
0x00, 0xdc, 0x74, 0x97, 0xf0, 0xa3, 0x74, 0xec, 0xf0, 0x90, 0x00, 0xd4, 0x74, 0x98, 0xf0, 0xa3, 0x74, 0x4b, 0xf0, 0x90, 0x00, 0xda, 0x74, 0x9d, 0xf0, 0xa3, 0x74, 0x4b, 
0xf0, 0x90, 0x00, 0xce, 0x74, 0x9c, 0xf0, 0xa3, 0x74, 0x22, 0xf0, 0x90, 0x00, 0x88, 0x74, 0xa2, 0xf0, 0xa3, 0x74, 0xe5, 0xf0, 0x90, 0x00, 0x92, 0x74, 0xa7, 0xf0, 0xa3, 
0x74, 0x43, 0xf0, 0x90, 0x00, 0x94, 0x74, 0x99, 0xf0, 0xa3, 0x74, 0x15, 0xf0, 0x90, 0x00, 0xba, 0x74, 0xa7, 0xf0, 0xa3, 0x74, 0xf9, 0xf0, 0x78, 0x74, 0x7c, 0x2d, 0x7d, 
0x01, 0x7b, 0xff, 0x7a, 0x91, 0x79, 0x91, 0x7e, 0x00, 0x7f, 0x98, 0x12, 0x97, 0x22, 0x90, 0x2d, 0x70, 0x74, 0x04, 0xf0, 0x78, 0xa4, 0x7c, 0x2e, 0x7d, 0x01, 0x7b, 0xff, 
0x7a, 0x92, 0x79, 0x29, 0x91, 0xa3, 0x90, 0x2d, 0x71, 0x74, 0x08, 0xf0, 0x78, 0xd4, 0x7c, 0x2f, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x93, 0x79, 0x59, 0x91, 0xa3, 0x90, 0x2d, 
0x72, 0x74, 0x08, 0xf0, 0x78, 0x04, 0x7c, 0x31, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x94, 0x79, 0x89, 0x91, 0xa3, 0x90, 0x2d, 0x73, 0x74, 0x08, 0xf0, 0x7a, 0x01, 0x79, 0x40, 
0x7e, 0x01, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x02, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x01, 0x7d, 
0x01, 0x7b, 0xff, 0x7a, 0x80, 0x79, 0x61, 0x7e, 0x00, 0x7f, 0x4c, 0x12, 0x97, 0x22, 0x7a, 0x02, 0x79, 0x40, 0x7e, 0x02, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 
0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x04, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x02, 0x91, 0xbf, 0x7a, 0x07, 0x79, 0x40, 0x7e, 0x07, 0x7f, 0x40, 0x74, 
0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x08, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x07, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x87, 
0x79, 0x49, 0x91, 0x87, 0x7a, 0x08, 0x79, 0x40, 0x7e, 0x08, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x09, 0x3e, 0xee, 
0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x08, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x87, 0x79, 0xf5, 0x91, 0x87, 0x7a, 0x09, 0x79, 0x40, 0x7e, 0x09, 0x7f, 0x40, 0x74, 0x40, 
0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x0a, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x09, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x89, 0x79, 
0x4d, 0x91, 0x87, 0x7a, 0x0a, 0x79, 0x40, 0x7e, 0x0a, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x0b, 0x3e, 0xee, 0xf0, 
0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x0a, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x89, 0x79, 0xf9, 0x91, 0x87, 0x7a, 0x0b, 0x79, 0x40, 0x7e, 0x0b, 0x7f, 0x40, 0x74, 0x40, 0x78, 
0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x0d, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x0b, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x8a, 0x79, 0xa5, 
0x91, 0xb8, 0x7a, 0x0d, 0x79, 0x40, 0x7e, 0x0d, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x0f, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 
0xf0, 0x78, 0x40, 0x7c, 0x0d, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x8b, 0x79, 0xad, 0x91, 0xb8, 0x7a, 0x0f, 0x79, 0x40, 0x7e, 0x0f, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 
0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x11, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x0f, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x8c, 0x79, 0xb5, 0x91, 0xb1, 
0x7a, 0x11, 0x79, 0x40, 0x7e, 0x11, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x13, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 
0x78, 0x40, 0x7c, 0x11, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x8e, 0x79, 0x39, 0x91, 0xb1, 0x7a, 0x13, 0x79, 0x40, 0x7e, 0x13, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 
0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x15, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x13, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x82, 0x79, 0x61, 0x91, 0x9c, 0x7a, 
0x15, 0x79, 0x40, 0x7e, 0x15, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x17, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 
0x40, 0x7c, 0x15, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x83, 0x79, 0x95, 0x91, 0x9c, 0x7a, 0x17, 0x79, 0x40, 0x7e, 0x17, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 
0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x19, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x17, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x84, 0x79, 0xc9, 0x91, 0x9c, 0x7a, 0x19, 
0x79, 0x40, 0x7e, 0x19, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x1b, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 
0x19, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x85, 0x79, 0xfd, 0x7e, 0x01, 0x7f, 0x20, 0x12, 0x97, 0x22, 0x7a, 0x1b, 0x79, 0x40, 0x7e, 0x1b, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 
0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x1c, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x1b, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x87, 0x79, 0x1d, 0x7e, 
0x00, 0x7f, 0x2c, 0x12, 0x97, 0x22, 0x7a, 0x1c, 0x79, 0x40, 0x7e, 0x1c, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x1e, 
0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x1c, 0x91, 0xbf, 0x7a, 0x24, 0x79, 0x40, 0x7e, 0x24, 0x7f, 0x40, 0x74, 0x40, 0x78, 0x02, 0xce, 0xc3, 0x13, 0x6c, 0x21,
/* cmd package 14 */
0x02,0x47,0x3c, 0x24, 0x86, 0xc0, 0xb7, 0x0a, 0xa3, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x25, 0x3e, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x40, 0x7c, 0x24, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 
0x8f, 0x79, 0xbd, 0x91, 0x95, 0x7a, 0x40, 0x79, 0x00, 0x7e, 0x40, 0x7f, 0x00, 0x74, 0x00, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x40, 0xfe, 
0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x00, 0x7c, 0x40, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x90, 0x79, 0x59, 0x91, 0x95, 0x7a, 0x41, 0x79, 0x00, 0x7e, 0x41, 0x7f, 0x00, 0x74, 
0x00, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x41, 0xfe, 0xee, 0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x00, 0x7c, 0x41, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x90, 
0x79, 0xf5, 0x91, 0x95, 0x7a, 0x42, 0x79, 0x00, 0x7e, 0x42, 0x7f, 0x00, 0x74, 0x00, 0x78, 0x02, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff, 0x90, 0x42, 0xfe, 0xee, 
0xf0, 0xa3, 0xef, 0xf0, 0x78, 0x00, 0x7c, 0x42, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x88, 0x79, 0xa1, 0x91, 0x87, 0x90, 0x00, 0x0d, 0x74, 0x06, 0xf0, 0x90, 0x00, 0x08, 0x74, 
0x19, 0xf0, 0xa3, 0xf0, 0xa3, 0xf0, 0xa3, 0xf0, 0x90, 0x00, 0x0e, 0xe0, 0x44, 0x40, 0xf0, 0x91, 0x8e, 0xef, 0x7f, 0x00, 0xfe, 0xef, 0xc0, 0xe0, 0xee, 0xc0, 0xe0, 0x91, 0x8e, 
0xee, 0xfd, 0xd0, 0xe0, 0xfc, 0xd0, 0xe0, 0x4d, 0xfd, 0xec, 0xc0, 0xe0, 0xed, 0xc0, 0xe0, 0x91, 0xaa, 0xef, 0x7f, 0x00, 0xfe, 0xef, 0xc0, 0xe0, 0xee, 0xc0, 0xe0, 0x91, 0xaa, 
0xee, 0xfd, 0xd0, 0xe0, 0xfa, 0xd0, 0xe0, 0x4d, 0xfb, 0x7e, 0x80, 0x7f, 0x46, 0xd0, 0xe0, 0xfd, 0xd0, 0xe0, 0xfc, 0x12, 0x02, 0xed, 0x7b, 0xc0, 0x7a, 0x06, 0x7d, 0x7f, 0x7c, 
0xff, 0x7f, 0xf6, 0x7e, 0x00, 0x12, 0x00, 0x5c, 0x7b, 0x02, 0x7d, 0xf4, 0xe4, 0xff, 0x02, 0x01, 0xb9, 0x7e, 0x00, 0x7f, 0xac, 0x02, 0x97, 0x22, 0x7f, 0x04, 0x7e, 0x63, 0x02, 
0x01, 0xd6, 0x7e, 0x00, 0x7f, 0x9c, 0x02, 0x97, 0x22, 0x7e, 0x01, 0x7f, 0x34, 0x02, 0x97, 0x22, 0x7e, 0x01, 0x7f, 0x30, 0x02, 0x97, 0x22, 0x7f, 0x05, 0x7e, 0x63, 0x02, 
0x01, 0xd6, 0x7e, 0x01, 0x7f, 0x84, 0x02, 0x97, 0x22, 0x7e, 0x01, 0x7f, 0x08, 0x02, 0x97, 0x22, 0x7d, 0x01, 0x7b, 0xff, 0x7a, 0x80, 0x79, 0xad, 0x7e, 0x01, 0x7f, 0xb4, 
0x02, 0x97, 0x22, 0xe0, 0xfe, 0xa3, 0xe0, 0xc3, 0x9b, 0xff, 0xee, 0x9a, 0xfe, 0xe4, 0xfc, 0xfd, 0xe5, 0x49, 0x2f, 0xf5, 0x49, 0xe5, 0x48, 0x3e, 0xf5, 0x48, 0xed, 0x35, 0x47, 
0xf5, 0x47, 0xec, 0x35, 0x46, 0xf5, 0x46, 0x22, 0xe0, 0xf5, 0x43, 0xa3, 0xe0, 0xf5, 0x44, 0xe5, 0x42, 0x25, 0xe0, 0xff, 0xe5, 0x41, 0x33, 0xfe, 0xe5, 0x40, 0x2f, 0xff, 0xe5, 
0x3f, 0x3e, 0xfe, 0xe5, 0x44, 0x2f, 0x22, 0xff, 0xee, 0x34, 0xff, 0xfe, 0xed, 0x34, 0xff, 0xfd, 0xec, 0x34, 0xff, 0xfc, 0xab, 0x49, 0xaa, 0x48, 0xa9, 0x47, 0xa8, 0x46, 0x22, 
0x85, 0x4e, 0x82, 0x85, 0x4d, 0x83, 0xaf, 0x4a, 0x05, 0x4a, 0x75, 0xf0, 0x02, 0xef, 0x12, 0x96, 0x54, 0xe0, 0xf5, 0x4b, 0xa3, 0x22, 0xfe, 0x78, 0x06, 0x12, 0x96, 0x41, 
0xe4, 0x7b, 0x03, 0xfa, 0xf9, 0xf8, 0x12, 0x95, 0xe1, 0xef, 0x22, 0x7c, 0x80, 0x7f, 0x0c, 0x7e, 0x07, 0x12, 0x01, 0xea, 0x7d, 0xb6, 0x22, 0xf0, 0x85, 0x41, 0x3f, 0x85, 
0x42, 0x40, 0x85, 0x43, 0x41, 0x85, 0x44, 0x42, 0x05, 0x45, 0x22, 0xe0, 0xfe, 0xa3, 0xe0, 0x8e, 0x41, 0xf5, 0x42, 0x8e, 0x3f, 0xf5, 0x40, 0xe4, 0xf5, 0x45, 0x22, 0xe0, 
0xfa, 0xa3, 0xe0, 0xc3, 0x9d, 0xfd, 0xea, 0x9c, 0xfc, 0xc3, 0xed, 0x9f, 0xec, 0x9e, 0x22, 0xe5, 0x18, 0x24, 0x23, 0xfd, 0x7b, 0x01, 0x7f, 0x05, 0x12, 0x00, 0xf6, 0xef, 0x22, 
0xf5, 0xf8, 0xe5, 0x4b, 0xf5, 0xf9, 0x8c, 0xfc, 0xed, 0x44, 0x80, 0xf5, 0xff, 0x22, 0xe4, 0x94, 0x00, 0xef, 0x7f, 0x00, 0xfe, 0x7d, 0x01, 0x22, 0x00, 0x08, 0x00, 0x3d, 0xff, 
0xff, 0x00, 0x02, 0x15, 0x00, 0x3d, 0x00, 0x00, 0x00, 0x02, 0x28, 0xf8,
/* cmd package 15 */
0x00,0x11,0xe4, 0xc2, 0x00, 0x04, 0x00, 0x80, 0x43, 0x09, 0xc2, 0x00, 0x06, 0x00, 0x80, 0x43, 0x09, 0xb1, 0x4c,
/* cmd package 16 */
0x00,0x09,0x62, 0x00, 0x02, 0x05, 0x00, 0x03, 0x00, 0xb2, 0x06, 
/* cmd package 17 */
0x00,0x4a,0x6c, 0x04, 0x08, 0x00, 0x26, 0xff, 0xff, 0x01, 0x00, 0x08, 0x98, 0xc6, 0xff, 0xff, 0x08, 0x00, 0x08, 0x58, 0x24, 0xff, 0xff, 0x01, 0x00, 0x08, 0xd8, 0x24, 0x01, 0x00, 0x3f, 
0x00, 0x08, 0xd8, 0x24, 0x00, 0x05, 0x00, 0x1f, 0x08, 0x58, 0x1c, 0xff, 0xff, 0x00, 0x20, 0x08, 0x18, 0x01, 0x05, 0x00, 0x3f, 0x00, 0x08, 0x58, 0x1c, 0x00, 0x00, 0x00, 
0x20, 0x08, 0x18, 0x04, 0x10, 0x32, 0xff, 0xff, 0x08, 0x58, 0x04, 0x04, 0x00, 0xff, 0xff, 0xc9, 0xc5, 
/* cmd package 18 */
0x00,0x19,0x5c, 0x01, 0xc8, 0xc1, 0x05, 0x00, 0x20, 0x00, 0x3c, 0xc8, 0x01, 0x06, 0x10, 0x00, 0x10, 0x00, 0x88, 0x41, 0x06, 0x00, 0x08, 0x00, 0x0e, 0x90, 0x63, 
/* cmd package 19 */
0x02,0x90,0xcc, 0x28, 0xc8, 0x81, 0x07, 0x00, 0x00, 0x01, 0x00, 0xc8, 0xc1, 0x07, 0x00, 0x00, 0x01, 0x00, 0xc8, 0x81, 0x07, 0x00, 0x00, 0x04, 0x00, 0xc8, 0xc1, 0x07, 0x00, 0x00, 0x04, 0x00, 0x00, 0x80, 0x20, 
0xbf, 0x0e, 0x00, 0xc0, 0x20, 0x03, 0x00, 0x08, 0xc0, 0x04, 0x00, 0x00, 0x08, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0xc0, 0x04, 0xff, 0xff, 0x08, 0x00, 0xc0, 0x1f, 0x0b, 0x01, 0x00, 0xc0, 0x9f, 0x09, 
0x07, 0x00, 0xc0, 0xdf, 0x09, 0x07, 0x00, 0xc0, 0x1f, 0x0a, 0x07, 0x00, 0xc0, 0x5f, 0x0a, 0x07, 0x00, 0xc0, 0xdf, 0x0a, 0x07, 0x00, 0xc0, 0x1f, 0x0e, 0x88, 0x9c, 0xc0, 0x5f, 0x0e, 0x0c, 0x00, 0xc0, 0x1f, 
0x10, 0xe0, 0x80, 0xc0, 0x5f, 0x10, 0x40, 0x40, 0xc0, 0x9f, 0x10, 0x60, 0x80, 0xc8, 0x1f, 0x14, 0xff, 0xff, 0x01, 0x00, 0xc8, 0x1f, 0x14, 0xff, 0xff, 0x02, 0x00, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0xc8, 0x1f, 
0x14, 0x00, 0x00, 0x01, 0x00, 0x0d, 0x64, 0x00, 0x00, 0x00, 0xc8, 0x1f, 0x09, 0x60, 0x01, 0xff, 0xd5, 0xc0, 0x5f, 0x09, 0x60, 0x01, 0xc8, 0x1f, 0x09, 0x60, 0xc1, 0xff, 0xd5, 0xc0, 0x1f, 0x00, 0xc5, 0x63, 
0xc0, 0x5f, 0x00, 0x01, 0x00, 0xc0, 0x9f, 0x00, 0x20, 0xc5, 0xc0, 0xdf, 0x00, 0xc5, 0x63, 0xc0, 0x1f, 0x01, 0x01, 0x00, 0xc0, 0x5f, 0x01, 0x20, 0xc5, 0xc0, 0x9f, 0x01, 0xc7, 0x63, 0xc0, 0xdf, 0x01, 0x01, 
0x00, 0xc0, 0x1f, 0x02, 0x20, 0xc5, 0xc0, 0x5f, 0x02, 0xc7, 0x63, 0xc0, 0x9f, 0x02, 0x01, 0x00, 0xc0, 0xdf, 0x02, 0x20, 0xc5, 0xc0, 0x1f, 0x03, 0xc5, 0x63, 0xc0, 0x5f, 0x03, 0x01, 0x00, 0xc0, 0x9f, 0x03, 
0x20, 0xc5, 0xc0, 0xdf, 0x03, 0xc5, 0x63, 0xc0, 0x1f, 0x04, 0x01, 0x00, 0xc0, 0x5f, 0x04, 0x20, 0xc5, 0xc0, 0x9f, 0x04, 0xc5, 0x63, 0xc0, 0xdf, 0x04, 0x01, 0x00, 0xc0, 0x1f, 0x05, 0x20, 0xc5, 0xc0, 0x5f, 
0x05, 0xc5, 0x63, 0xc0, 0x9f, 0x05, 0x01, 0x00, 0xc0, 0xdf, 0x05, 0x20, 0xc5, 0xc0, 0x9f, 0x07, 0xc5, 0x63, 0xc0, 0xdf, 0x07, 0x01, 0x00, 0xc0, 0x1f, 0x08, 0x20, 0xc5, 0xc0, 0x5f, 0x08, 0xc5, 0x63, 0xc0, 
0x9f, 0x08, 0x01, 0x00, 0xc0, 0xdf, 0x08, 0x20, 0xc5, 0xc8, 0x9f, 0x11, 0x00, 0x00, 0x11, 0x00, 0xc8, 0xdf, 0x11, 0x00, 0x00, 0x11, 0x00, 0xc8, 0x81, 0x07, 0x00, 0x00, 0x00, 0x02, 0xc8, 0xc1, 0x07, 
0x00, 0x00, 0x00, 0x02, 0xc8, 0x81, 0x07, 0x00, 0x00, 0x04, 0x00, 0xc8, 0xc1, 0x07, 0x00, 0x00, 0x04, 0x00, 0x00, 0x80, 0x20, 0xbf, 0x0e, 0x00, 0xc0, 0x20, 0x03, 0x00, 0x08, 0x00, 0x06, 0x00, 0x00, 
0x08, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x06, 0xff, 0xff, 0x08, 0x00, 0xc0, 0x0f, 0x0b, 0x01, 0x00, 0xc0, 0x8f, 0x09, 0x07, 0x00, 0xc0, 0xcf, 0x09, 0x07, 0x00, 0xc0, 0x0f, 0x0a, 0x07, 0x00, 
0xc0, 0x4f, 0x0a, 0x07, 0x00, 0xc0, 0xcf, 0x0a, 0x07, 0x00, 0xc0, 0x0f, 0x0e, 0x88, 0x9c, 0xc0, 0x4f, 0x0e, 0x0c, 0x00, 0xc0, 0x0f, 0x10, 0xe0, 0x80, 0xc0, 0x4f, 0x10, 0x40, 0x40, 0xc0, 0x8f, 0x10, 0x60, 
0x80, 0xc8, 0x0f, 0x14, 0xff, 0xff, 0x01, 0x00, 0xc8, 0x0f, 0x14, 0xff, 0xff, 0x02, 0x00, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0xc8, 0x0f, 0x14, 0x00, 0x00, 0x01, 0x00, 0x0d, 0x64, 0x00, 0x00, 0x00, 0xc8, 0x0f, 
0x09, 0x60, 0x01, 0xff, 0xd5, 0xc0, 0x4f, 0x09, 0x60, 0x01, 0xc8, 0x0f, 0x09, 0x60, 0xc1, 0xff, 0xd5, 0xc0, 0x0f, 0x00, 0xc5, 0x63, 0xc0, 0x4f, 0x00, 0x01, 0x00, 0xc0, 0x8f, 0x00, 0x20, 0xc5, 0xc0, 0xcf, 
0x00, 0xc5, 0x63, 0xc0, 0x0f, 0x01, 0x01, 0x00, 0xc0, 0x4f, 0x01, 0x20, 0xc5, 0xc0, 0x8f, 0x01, 0xc7, 0x63, 0xc0, 0xcf, 0x01, 0x01, 0x00, 0xc0, 0x0f, 0x02, 0x20, 0xc5, 0xc0, 0x4f, 0x02, 0xc7, 0x63, 0xc0, 
0x8f, 0x02, 0x01, 0x00, 0xc0, 0xcf, 0x02, 0x20, 0xc5, 0xc0, 0x0f, 0x03, 0xc5, 0x63, 0xc0, 0x4f, 0x03, 0x01, 0x00, 0xc0, 0x8f, 0x03, 0x20, 0xc5, 0xc0, 0xcf, 0x03, 0xc5, 0x63, 0xc0, 0x0f, 0x04, 0x01, 0x00, 
0xc0, 0x4f, 0x04, 0x20, 0xc5, 0xc0, 0x8f, 0x04, 0xc5, 0x63, 0xc0, 0xcf, 0x04, 0x01, 0x00, 0xc0, 0x0f, 0x05, 0x20, 0xc5, 0xc0, 0x4f, 0x05, 0xc5, 0x63, 0xc0, 0x8f, 0x05, 0x01, 0x00, 0xc0, 0xcf, 0x05, 0x20, 
0xc5, 0xc0, 0x8f, 0x07, 0xc5, 0x63, 0xc0, 0xcf, 0x07, 0x01, 0x00, 0xc0, 0x0f, 0x08, 0x20, 0xc5, 0xc0, 0x4f, 0x08, 0xc5, 0x63, 0xc0, 0x8f, 0x08, 0x01, 0x00, 0xc0, 0xcf, 0x08, 0x20, 0xc5, 0xc8, 0x8f, 0x11, 
0x00, 0x00, 0x11, 0x00, 0xc8, 0xcf, 0x11, 0x00, 0x00, 0x11, 0x00, 0x80, 0x03,
/* cmd package 20 */
0x03,0x94,0x0c, 0x39, 0x08, 0x40, 0x04, 0x00, 0x00, 0x01, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x04, 0xff, 0xff, 0x01, 0x00, 0x88, 0xde, 0x3f, 0x00, 0x00, 0x01, 0x00, 0x88, 0x1e, 0x04, 0x00, 0xa0, 
0xff, 0xff, 0x88, 0x5e, 0x04, 0x00, 0x00, 0xff, 0xff, 0x88, 0x9e, 0x04, 0x0f, 0x00, 0xff, 0x00, 0x88, 0xde, 0x04, 0x32, 0x00, 0xff, 0x00, 0x88, 0xde, 0x04, 0x00, 0x28, 0x00, 0xff, 0x88, 0x1e, 0x05, 0x10, 
0x00, 0xff, 0x00, 0x88, 0x5e, 0x05, 0x05, 0x00, 0xff, 0x00, 0x88, 0x5e, 0x05, 0x00, 0x1f, 0x00, 0xff, 0x88, 0x9e, 0x05, 0x06, 0x00, 0xff, 0x00, 0x88, 0x9e, 0x05, 0x00, 0x02, 0x00, 0xff, 0x88, 0xde, 0x05, 
0x01, 0x00, 0xff, 0x00, 0x88, 0xde, 0x05, 0x00, 0x06, 0x00, 0xff, 0x88, 0x1e, 0x06, 0xff, 0x00, 0xff, 0x00, 0x88, 0x1e, 0x06, 0x00, 0xff, 0x00, 0xff, 0x88, 0x5e, 0x06, 0x05, 0x00, 0xff, 0x00, 0x88, 0x5e, 
0x06, 0x00, 0x03, 0x00, 0xff, 0x88, 0x9e, 0x06, 0x05, 0x00, 0xff, 0x00, 0x88, 0xde, 0x06, 0x78, 0x09, 0xff, 0xff, 0x88, 0x1e, 0x07, 0x00, 0x00, 0xff, 0xff, 0x88, 0xde, 0x07, 0xe0, 0x32, 0xff, 0xff, 0x88, 
0x1e, 0x08, 0x29, 0x00, 0xff, 0xff, 0x88, 0x5e, 0x08, 0x00, 0x00, 0x10, 0x00, 0x88, 0x5e, 0x08, 0x00, 0x00, 0x80, 0x00, 0x88, 0x5e, 0x00, 0x03, 0x00, 0xff, 0x00, 0x88, 0x5e, 0x00, 0x00, 0x00, 0x00, 
0x01, 0x88, 0x5e, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x88, 0xde, 0x0d, 0xff, 0xff, 0x04, 0x00, 0x88, 0x5e, 0x0c, 0x1f, 0x00, 0xff, 0x00, 0x88, 0x5e, 0x0e, 0xf8, 0x00, 0xff, 0x00, 0x88, 0x5e, 0x0e, 0x00, 0x81, 
0x00, 0xff, 0x88, 0x5e, 0x0c, 0x00, 0x1f, 0x00, 0xff, 0x88, 0x9e, 0x0e, 0xf8, 0x00, 0xff, 0x00, 0x88, 0x9e, 0x0e, 0x00, 0x81, 0x00, 0xff, 0x88, 0x9e, 0x0c, 0x1f, 0x00, 0xff, 0x00, 0x88, 0xde, 0x0e, 0xf8, 
0x00, 0xff, 0x00, 0x88, 0xde, 0x0e, 0x00, 0x81, 0x00, 0xff, 0x88, 0x9e, 0x0c, 0x00, 0x1f, 0x00, 0xff, 0x88, 0x1e, 0x0f, 0xf8, 0x00, 0xff, 0x00, 0x88, 0x1e, 0x0f, 0x00, 0x81, 0x00, 0xff, 0x88, 0x1e, 0x0c, 
0x00, 0x00, 0x0f, 0x00, 0x88, 0x1e, 0x00, 0x00, 0x30, 0x00, 0xf0, 0x88, 0x9e, 0x00, 0x0f, 0x00, 0x0f, 0x00, 0x88, 0x9e, 0x00, 0xff, 0xff, 0x00, 0x06, 0x80, 0x5e, 0x05, 0x07, 0x14, 0x80, 0x9e, 0x05, 0x0f, 
0x0f, 0xc8, 0x98, 0x10, 0x00, 0x13, 0xff, 0x1f, 0x08, 0xc0, 0x04, 0x00, 0x00, 0x00, 0x02, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0xc0, 0x04, 0xff, 0xff, 0x00, 0x02, 0x08, 0xde, 0x3f, 0x00, 0x00, 0x07, 0x00, 
0x08, 0x5e, 0x00, 0xff, 0xff, 0x04, 0x00, 0x08, 0x5e, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x5e, 0x00, 0x00, 0x00, 0x20, 0x00, 0x08, 0x5e, 0x00, 0x01, 0x00, 0x03, 0x00, 0x08, 0x1e, 0x00, 0xff, 0xff, 0x04, 
0x00, 0x08, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x04, 0x08, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x9e, 0x01, 0xff, 0xff, 0x00, 0xde, 0x01, 0x00, 0x00, 0x08, 0x9e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 
0x9e, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0xde, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x01, 0x00, 0x00, 0x00, 0x5e, 0x01, 0x00, 0x00, 0x08, 0x5e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x08, 0x1e, 0x00, 0xff, 0xff, 
0x02, 0x00, 0x08, 0x1e, 0x00, 0xff, 0xff, 0x01, 0x00, 0x08, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0x08, 0x1e, 0x00, 0xff, 0xff, 0x08, 0x00, 0x08, 0xc0, 0x05, 0x00, 0x00, 0x01, 
0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0xc0, 0x05, 0xff, 0xff, 0x01, 0x00, 0x88, 0xce, 0x3f, 0x00, 0x00, 0x01, 0x00, 0x88, 0x0e, 0x04, 0x00, 0xa0, 0xff, 0xff, 0x88, 0x4e, 0x04, 0x00, 0x00, 0xff, 0xff, 
0x88, 0x8e, 0x04, 0x0f, 0x00, 0xff, 0x00, 0x88, 0xce, 0x04, 0x32, 0x00, 0xff, 0x00, 0x88, 0xce, 0x04, 0x00, 0x28, 0x00, 0xff, 0x88, 0x0e, 0x05, 0x10, 0x00, 0xff, 0x00, 0x88, 0x4e, 0x05, 0x05, 0x00, 0xff, 
0x00, 0x88, 0x4e, 0x05, 0x00, 0x1f, 0x00, 0xff, 0x88, 0x8e, 0x05, 0x06, 0x00, 0xff, 0x00, 0x88, 0x8e, 0x05, 0x00, 0x02, 0x00, 0xff, 0x88, 0xce, 0x05, 0x0f, 0x00, 0xff, 0x00, 0x88, 0xce, 0x05, 0x00, 0x06, 
0x00, 0xff, 0x88, 0x0e, 0x06, 0x01, 0x00, 0xff, 0x00, 0x88, 0x0e, 0x06, 0x00, 0x02, 0x00, 0xff, 0x88, 0x4e, 0x06, 0x02, 0x00, 0xff, 0x00, 0x88, 0x4e, 0x06, 0x00, 0x03, 0x00, 0xff, 0x88, 0x8e, 0x06, 0x05, 
0x00, 0xff, 0x00, 0x88, 0xce, 0x06, 0x78, 0x09, 0xff, 0xff, 0x88, 0x0e, 0x07, 0x00, 0x00, 0xff, 0xff, 0x88, 0xce, 0x07, 0xe0, 0x32, 0xff, 0xff, 0x88, 0x0e, 0x08, 0x29, 0x00, 0xff, 0xff, 0x88, 0x4e, 0x08, 0x00, 
0x00, 0x10, 0x00, 0x88, 0x4e, 0x08, 0x00, 0x00, 0x80, 0x00, 0x88, 0x4e, 0x00, 0x03, 0x00, 0xff, 0x00, 0x88, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x01, 0x88, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x88, 0xce, 
0x0d, 0xff, 0xff, 0x04, 0x00, 0x88, 0x0e, 0x00, 0x00, 0x30, 0x00, 0xf0, 0x88, 0x8e, 0x00, 0x0f, 0x00, 0x0f, 0x00, 0x88, 0x8e, 0x00, 0xff, 0xff, 0x00, 0x06, 0x80, 0x4e, 0x05, 0x07, 0x14, 0x80, 0x8e, 0x05, 
0x0f, 0x0f, 0xc8, 0x98, 0x10, 0x00, 0x43, 0xff, 0x4f, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x06, 0xff, 0xff, 0x00, 0x02, 0x08, 0xce, 0x3f, 0x00, 0x00, 0x07, 
0x00, 0x08, 0x4e, 0x00, 0xff, 0xff, 0x04, 0x00, 0x08, 0x4e, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x4e, 0x00, 0x01, 0x00, 0x03, 0x00, 0x08, 0x0e, 0x00, 0xff, 0xff, 0x04, 0x00, 0x08, 0x8e, 0x00, 0x00, 0x00, 
0x00, 0x01, 0x08, 0x8e, 0x00, 0x00, 0x00, 0x00, 0x02, 0x08, 0x8e, 0x00, 0x00, 0x00, 0x00, 0x04, 0x08, 0x8e, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x8e, 0x01, 0xff, 0xff, 0x00, 0xce, 0x01, 0x00, 0x00, 
0x08, 0x8e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x8e, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0xce, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x01, 0x00, 0x00, 0x00, 0x4e, 0x01, 0x00, 0x00, 0x08, 0x4e, 0x00, 0x00, 
0x00, 0x10, 0x00, 0x08, 0x0e, 0x00, 0xff, 0xff, 0x02, 0x00, 0x08, 0x0e, 0x00, 0xff, 0xff, 0x01, 0x00, 0x08, 0x8e, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x0a, 0x00, 0x00, 0x00, 0x08, 0x0e, 0x00, 0xff, 0xff, 
0x08, 0x00, 0xa7, 0xa9, 
/* cmd package 21 */
0x03,0xfc,0x8c, 0x3f, 0x08, 0xc0, 0x04, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0xc0, 0x04, 0xff, 0xff, 0x00, 0x01, 0x48, 0xdd, 0x3f, 0x00, 0x00, 0x07, 0x00, 
0x48, 0xdd, 0x0e, 0x00, 0x00, 0xff, 0x03, 0x48, 0xdd, 0x02, 0x00, 0x00, 0x03, 0x00, 0x48, 0xdd, 0x02, 0x00, 0x00, 0x0c, 0x00, 0x48, 0xdd, 0x02, 0x00, 0x00, 0x30, 0x00, 
0x48, 0xdd, 0x02, 0x00, 0x00, 0xc0, 0x00, 0x48, 0xdd, 0x02, 0x00, 0x00, 0x00, 0x03, 0x48, 0xdd, 0x02, 0x00, 0x00, 0x00, 0x0c, 0x48, 0xdd, 0x02, 0x00, 0x00, 0x00, 0x30, 
0x48, 0xdd, 0x02, 0x00, 0x00, 0x00, 0xc0, 0x48, 0xdd, 0x02, 0x00, 0x08, 0xff, 0xff, 0x48, 0xdd, 0x0e, 0x30, 0x00, 0xff, 0x00, 0x48, 0x5d, 0x00, 0x55, 0x30, 0xff, 0xff, 0x48, 
0x1d, 0x00, 0x0b, 0x02, 0xff, 0x03, 0x08, 0xc0, 0x04, 0x00, 0x00, 0x80, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0xc0, 0x04, 0xff, 0xff, 0x80, 0x00, 0x08, 0xdd, 0x3f, 
0x00, 0x00, 0x07, 0x00, 0x08, 0x1d, 0x0c, 0x00, 0x00, 0x01, 0x00, 0x08, 0x1d, 0x00, 0xff, 0xff, 0x01, 0x00, 0x08, 0x9d, 0x00, 0x00, 0x00, 0x40, 0x00, 0x08, 0xdd, 0x00, 
0x00, 0x00, 0x40, 0x00, 0x08, 0x1d, 0x01, 0x00, 0x00, 0x40, 0x00, 0x08, 0x5d, 0x01, 0x00, 0x00, 0x40, 0x00, 0x08, 0x9d, 0x01, 0x00, 0x00, 0x40, 0x00, 0x08, 0xdd, 0x01, 
0x00, 0x00, 0x40, 0x00, 0x08, 0x1d, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, 0x5d, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, 0x9d, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, 0xdd, 0x02, 
0x00, 0x00, 0x40, 0x00, 0x08, 0x1d, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x5d, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0xdd, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x1d, 0x04, 
0x00, 0x00, 0x40, 0x00, 0x08, 0x5d, 0x04, 0x00, 0x00, 0x40, 0x00, 0x08, 0x9d, 0x04, 0x00, 0x00, 0x40, 0x00, 0x08, 0xdd, 0x04, 0x00, 0x00, 0x40, 0x00, 0x08, 0x1d, 0x05, 
0x0b, 0x00, 0x3f, 0x00, 0x08, 0x1d, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0x1d, 0x05, 0x00, 0x0c, 0x00, 0x3f, 0x08, 0x1d, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0x5d, 0x05, 
0x0d, 0x00, 0x3f, 0x00, 0x08, 0x5d, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0x5d, 0x05, 0x00, 0x0e, 0x00, 0x3f, 0x08, 0x5d, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0x9d, 0x05, 
0x0a, 0x00, 0x3f, 0x00, 0x08, 0x9d, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0x9d, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x08, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0xdd, 0x05, 
0x0a, 0x00, 0x3f, 0x00, 0x08, 0xdd, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0xdd, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x08, 0xdd, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0x1d, 0x1c, 
0x01, 0x00, 0xff, 0x00, 0x08, 0x1d, 0x1c, 0x00, 0x01, 0x00, 0xff, 0x08, 0x5d, 0x1c, 0x01, 0x00, 0xff, 0x00, 0x08, 0x5d, 0x1c, 0x00, 0x01, 0x00, 0xff, 0x08, 0x9d, 0x1c, 0x01, 
0x00, 0xff, 0x00, 0x08, 0x9d, 0x1c, 0x00, 0x01, 0x00, 0xff, 0x08, 0xdd, 0x1c, 0x01, 0x00, 0xff, 0x00, 0x08, 0xdd, 0x1c, 0x00, 0x01, 0x00, 0xff, 0x08, 0x1d, 0x00, 0x00, 0x00, 
0x02, 0x00, 0x08, 0x1d, 0x00, 0x00, 0x00, 0x20, 0x00, 0x08, 0x1d, 0x14, 0x00, 0x00, 0x1f, 0x00, 0x08, 0x1d, 0x14, 0x00, 0x00, 0x00, 0x1f, 0x08, 0x5d, 0x14, 0x01, 0x00, 
0x1f, 0x00, 0x08, 0x5d, 0x14, 0x00, 0x01, 0x00, 0x1f, 0x08, 0x9d, 0x14, 0x02, 0x00, 0x1f, 0x00, 0x08, 0x9d, 0x14, 0x00, 0x02, 0x00, 0x1f, 0x08, 0xdd, 0x14, 0x03, 0x00, 
0x1f, 0x00, 0x08, 0xdd, 0x14, 0x00, 0x03, 0x00, 0x1f, 0x08, 0x1d, 0x14, 0x00, 0x00, 0x00, 0x20, 0x08, 0x5d, 0x14, 0x00, 0x00, 0x00, 0x20, 0x08, 0x9d, 0x14, 0x00, 0x00, 
0x00, 0x20, 0x08, 0xdd, 0x14, 0x00, 0x00, 0x00, 0x20, 0x08, 0x1d, 0x15, 0x00, 0x00, 0x00, 0x20, 0x08, 0x5d, 0x15, 0x00, 0x00, 0x00, 0x20, 0x08, 0x9d, 0x15, 0x00, 0x00, 
0x00, 0x20, 0x08, 0xdd, 0x15, 0x00, 0x00, 0x00, 0x20, 0x08, 0x1d, 0x16, 0x00, 0x00, 0x00, 0x20, 0x08, 0x5d, 0x16, 0x00, 0x00, 0x00, 0x20, 0x08, 0x9d, 0x16, 0x00, 0x00, 
0x00, 0x20, 0x08, 0xdd, 0x16, 0x00, 0x00, 0x00, 0x20, 0x08, 0x9d, 0x28, 0xff, 0xff, 0x01, 0x00, 0x08, 0x9d, 0x28, 0xff, 0xff, 0x02, 0x00, 0x08, 0x9d, 0x28, 0xff, 0xff, 0x04, 
0x00, 0x08, 0x9d, 0x28, 0xff, 0xff, 0x08, 0x00, 0x08, 0x1d, 0x3e, 0xff, 0xff, 0x01, 0x00, 0x08, 0x1d, 0x2d, 0x00, 0x00, 0x3f, 0x00, 0x08, 0x1d, 0x2d, 0xff, 0xff, 0x40, 0x00, 
0x08, 0x1d, 0x2d, 0x00, 0x00, 0x00, 0x1f, 0x08, 0x1d, 0x2d, 0xff, 0xff, 0x00, 0x20, 0x08, 0x1d, 0x1c, 0x10, 0x10, 0xff, 0xff, 0x08, 0x5d, 0x1c, 0x10, 0x10, 0xff, 0xff, 0x08, 
0x1d, 0x00, 0xff, 0xff, 0xc0, 0x30, 0x08, 0x00, 0x06, 0x00, 0x00, 0x80, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x06, 0xff, 0xff, 0x80, 0x00, 0x08, 0xcd, 0x3f, 0x00, 
0x00, 0x07, 0x00, 0x08, 0x0d, 0x0c, 0x00, 0x00, 0x01, 0x00, 0x08, 0x0d, 0x00, 0xff, 0xff, 0x01, 0x00, 0x08, 0x8d, 0x00, 0x00, 0x00, 0x40, 0x00, 0x08, 0xcd, 0x00, 0x00, 
0x00, 0x40, 0x00, 0x08, 0x0d, 0x01, 0x00, 0x00, 0x40, 0x00, 0x08, 0x4d, 0x01, 0x00, 0x00, 0x40, 0x00, 0x08, 0x8d, 0x01, 0x00, 0x00, 0x40, 0x00, 0x08, 0xcd, 0x01, 0x00, 
0x00, 0x40, 0x00, 0x08, 0x0d, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, 0x4d, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, 0x8d, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, 0xcd, 0x02, 0x00, 
0x00, 0x40, 0x00, 0x08, 0x0d, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x4d, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0xcd, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x0d, 0x04, 0x00, 
0x00, 0x40, 0x00, 0x08, 0x4d, 0x04, 0x00, 0x00, 0x40, 0x00, 0x08, 0x8d, 0x04, 0x00, 0x00, 0x40, 0x00, 0x08, 0xcd, 0x04, 0x00, 0x00, 0x40, 0x00, 0x08, 0x0d, 0x05, 0x0b, 
0x00, 0x3f, 0x00, 0x08, 0x0d, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0x0d, 0x05, 0x00, 0x0c, 0x00, 0x3f, 0x08, 0x0d, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0x4d, 0x05, 0x0d, 
0x00, 0x3f, 0x00, 0x08, 0x4d, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0x4d, 0x05, 0x00, 0x0e, 0x00, 0x3f, 0x08, 0x4d, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0x8d, 0x05, 0x0a, 
0x00, 0x3f, 0x00, 0x08, 0x8d, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0x8d, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x08, 0x8d, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0xcd, 0x05, 0x0a, 
0x00, 0x3f, 0x00, 0x08, 0xcd, 0x05, 0x00, 0x00, 0x40, 0x00, 0x08, 0xcd, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x08, 0xcd, 0x05, 0x00, 0x00, 0x00, 0x40, 0x08, 0x0d, 0x1c, 0x04, 
0x00, 0xff, 0x00, 0x08, 0x0d, 0x1c, 0x00, 0x04, 0x00, 0xff, 0x08, 0x4d, 0x1c, 0x04, 0x00, 0xff, 0x00, 0x08, 0x4d, 0x1c, 0x00, 0x04, 0x00, 0xff, 0x08, 0x8d, 0x1c, 0x01, 0x00, 
0xff, 0x00, 0x08, 0x8d, 0x1c, 0x00, 0x01, 0x00, 0xff, 0x08, 0xcd, 0x1c, 0x01, 0x00, 0xff, 0x00, 0x08, 0xcd, 0x1c, 0x00, 0x01, 0x00, 0xff, 0x08, 0x0d, 0x00, 0x00, 0x00, 0x02, 
0x00, 0xc3, 0x7c, 
/* cmd package 22 */
0x00,0xeb,0x7c, 0x0e, 0x08, 0x0d, 0x00, 0x00, 0x00, 0x20, 0x00, 0x08, 0x0d, 0x14, 0x00, 0x00, 0x1f, 0x00, 0x08, 0x0d, 0x14, 0x00, 0x00, 0x00, 0x1f, 0x08, 0x4d, 0x14, 0x01, 0x00, 
0x1f, 0x00, 0x08, 0x4d, 0x14, 0x00, 0x01, 0x00, 0x1f, 0x08, 0x8d, 0x14, 0x02, 0x00, 0x1f, 0x00, 0x08, 0x8d, 0x14, 0x00, 0x02, 0x00, 0x1f, 0x08, 0xcd, 0x14, 0x03, 0x00, 
0x1f, 0x00, 0x08, 0xcd, 0x14, 0x00, 0x03, 0x00, 0x1f, 0x08, 0x0d, 0x14, 0x00, 0x00, 0x00, 0x20, 0x08, 0x4d, 0x14, 0x00, 0x00, 0x00, 0x20, 0x08, 0x8d, 0x14, 0x00, 0x00, 
0x00, 0x20, 0x08, 0xcd, 0x14, 0x00, 0x00, 0x00, 0x20, 0x08, 0x0d, 0x15, 0x00, 0x00, 0x00, 0x20, 0x08, 0x4d, 0x15, 0x00, 0x00, 0x00, 0x20, 0x08, 0x8d, 0x15, 0x00, 0x00, 
0x00, 0x20, 0x08, 0xcd, 0x15, 0x00, 0x00, 0x00, 0x20, 0x08, 0x0d, 0x16, 0x00, 0x00, 0x00, 0x20, 0x08, 0x4d, 0x16, 0x00, 0x00, 0x00, 0x20, 0x08, 0x8d, 0x16, 0x00, 0x00, 
0x00, 0x20, 0x08, 0xcd, 0x16, 0x00, 0x00, 0x00, 0x20, 0x08, 0x8d, 0x28, 0xff, 0xff, 0x01, 0x00, 0x08, 0x8d, 0x28, 0xff, 0xff, 0x02, 0x00, 0x08, 0x8d, 0x28, 0xff, 0xff, 0x04, 
0x00, 0x08, 0x8d, 0x28, 0xff, 0xff, 0x08, 0x00, 0x08, 0x0d, 0x3e, 0xff, 0xff, 0x01, 0x00, 0x08, 0x0d, 0x2d, 0x00, 0x00, 0x3f, 0x00, 0x08, 0x0d, 0x2d, 0xff, 0xff, 0x40, 0x00, 
0x08, 0x0d, 0x2d, 0x00, 0x00, 0x00, 0x1f, 0x08, 0x0d, 0x2d, 0xff, 0xff, 0x00, 0x20, 0x08, 0x0d, 0x1c, 0x20, 0x20, 0xff, 0xff, 0x08, 0x4d, 0x1c, 0x20, 0x20, 0xff, 0xff, 0x08, 
0x0d, 0x00, 0xff, 0xff, 0xc0, 0x30, 0xe4, 0x23, 
/* cmd package 23 */
0x01,0xb9,0x5c, 0x1b, 0x08, 0x40, 0x04, 0x00, 0x00, 0x20, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x04, 0xff, 0xff, 0x20, 0x00, 0x48, 0xd1, 0x3f, 0x00, 0x00, 0x03, 0x00, 
0x08, 0xc0, 0x3d, 0xff, 0xff, 0x00, 0x80, 0x48, 0x51, 0x19, 0x00, 0x00, 0x1f, 0x00, 0x48, 0x51, 0x19, 0x00, 0x00, 0xe0, 0x03, 0x48, 0x91, 0x19, 0x00, 0x00, 0x1f, 0x00, 
0x48, 0x91, 0x19, 0x00, 0x00, 0xe0, 0x03, 0x48, 0x91, 0x1a, 0xff, 0xff, 0x01, 0x00, 0x48, 0x91, 0x1a, 0xff, 0xff, 0x02, 0x00, 0x48, 0x91, 0x1a, 0xff, 0xff, 0x04, 0x00, 0x48, 
0x91, 0x1a, 0xff, 0xff, 0x08, 0x00, 0x48, 0xd1, 0x1a, 0xff, 0xff, 0x01, 0x00, 0x48, 0xd1, 0x1a, 0xff, 0xff, 0x00, 0x02, 0x48, 0xd1, 0x1a, 0xff, 0xff, 0x00, 0x04, 0x48, 0xd1, 
0x1a, 0xff, 0xff, 0x00, 0x08, 0x48, 0xd1, 0x1a, 0xff, 0xff, 0x00, 0x10, 0x48, 0x91, 0x1b, 0x01, 0x00, 0x03, 0x00, 0x48, 0x91, 0x1b, 0x04, 0x00, 0x0c, 0x00, 0x48, 0x91, 
0x1b, 0x10, 0x00, 0x30, 0x00, 0x48, 0x91, 0x1b, 0x40, 0x00, 0xc0, 0x00, 0x48, 0x91, 0x1c, 0x01, 0x00, 0x0f, 0x00, 0x48, 0x91, 0x1c, 0x20, 0x00, 0xf0, 0x00, 0x48, 0x91, 
0x1c, 0x00, 0x03, 0x00, 0x0f, 0x48, 0x91, 0x1c, 0x00, 0x40, 0x00, 0xf0, 0x48, 0xd1, 0x1d, 0xff, 0xff, 0x00, 0x10, 0x48, 0xd1, 0x1d, 0xff, 0xff, 0x00, 0x20, 0x48, 0xd1, 0x1d, 
0xff, 0xff, 0x00, 0x40, 0x48, 0xd1, 0x1d, 0xff, 0xff, 0x00, 0x80, 0x48, 0x51, 0x1e, 0x01, 0x00, 0x0f, 0x00, 0x48, 0x51, 0x1e, 0x20, 0x00, 0xf0, 0x00, 0x48, 0x51, 0x1e, 0x00, 
0x03, 0x00, 0x0f, 0x48, 0x51, 0x1e, 0x00, 0x40, 0x00, 0xf0, 0x48, 0x11, 0x00, 0xff, 0xff, 0x5f, 0x00, 0x48, 0x11, 0x20, 0x04, 0x00, 0x1f, 0x00, 0x48, 0x11, 0x20, 0x60, 
0x00, 0xe0, 0x03, 0x48, 0x51, 0x20, 0x02, 0x00, 0x1f, 0x00, 0x48, 0x51, 0x20, 0x20, 0x00, 0xe0, 0x03, 0x40, 0x11, 0x21, 0x80, 0x01, 0x40, 0x51, 0x21, 0x80, 0x01, 0x40, 
0x91, 0x21, 0x80, 0x01, 0x40, 0xd1, 0x21, 0x80, 0x01, 0x48, 0x11, 0x23, 0xff, 0xff, 0x01, 0x00, 0x48, 0x11, 0x23, 0xff, 0xff, 0x02, 0x00, 0x48, 0x11, 0x23, 0xff, 0xff, 0x04, 
0x00, 0x48, 0x11, 0x23, 0xff, 0xff, 0x08, 0x00, 0x40, 0x91, 0x23, 0x00, 0x00, 0x40, 0xd1, 0x23, 0x00, 0x00, 0x40, 0x11, 0x24, 0x00, 0x00, 0x40, 0x51, 0x24, 0x00, 0x00, 
0x48, 0x11, 0x00, 0xff, 0xff, 0x1f, 0x02, 0x08, 0x00, 0x36, 0x23, 0x01, 0xff, 0xff, 0x08, 0x40, 0x36, 0x00, 0x00, 0xff, 0xff, 0x08, 0xc0, 0x35, 0xff, 0xff, 0x40, 0x00, 0x08, 
0xc0, 0x35, 0xff, 0xff, 0x20, 0x00, 0x08, 0x80, 0x37, 0x35, 0xb7, 0xff, 0xff, 0x08, 0xc0, 0x37, 0x0c, 0x00, 0xff, 0xff, 0x08, 0xc0, 0x36, 0xff, 0xff, 0x20, 0x00, 0x08, 0xc0, 
0x36, 0xff, 0xff, 0x01, 0x00, 0x08, 0xc0, 0x36, 0xff, 0xff, 0x02, 0x00, 0x08, 0xc0, 0x36, 0xff, 0xff, 0x04, 0x00, 0x08, 0xc0, 0x36, 0xff, 0xff, 0x08, 0x00, 0x08, 0xc0, 0x36, 
0xff, 0xff, 0x10, 0x00, 0x08, 0xc0, 0x35, 0x0f, 0x00, 0x0f, 0x00, 0xab, 0x25, 
/* cmd package 24 */
0x00,0x18,0x4c, 0x01, 0xc0, 0x18, 0x10, 0x01, 0x01, 0xc0, 0x58, 0x10, 0x01, 0x01, 0xc0, 0x98, 0x10, 0x00, 0x10, 0xc0, 0xd8, 0x10, 0x01, 0x00, 0xf5, 0x14, 
};

static u8 dms_ser_cfg[] = {
/* cmd package 1 */
0x00,0x0f,0xc4, 0x08, 0x18, 0x04, 0x01, 0x00, 0x0f, 0x00, 0x00, 0x18, 0x1e, 0x00, 0x01, 0x02, 0xbb,
/* cmd package 2 */
0x00,0x19,0x58, 0x01, 0x08, 0x58, 0x04, 0x10, 0x00, 0xff, 0xff, 0x88, 0xc1, 0x05, 0x00, 0x24, 0x00, 0x3c, 0x88, 0x41, 0x06, 0x40, 0x01, 0xc0, 0x03, 0x32, 0xa0, 
/* cmd package 3 */
0x00,0xd7,0x38, 0x0d, 0x88, 0x41, 0x06, 0x00, 0x00, 0xc0, 0x01, 0x88, 0x01, 0x08, 0x00, 0x00, 0x00, 0x40, 0x88, 0x41, 0x08, 0x00, 0x00, 0x00, 0x40, 0x88, 0x81, 0x08, 0x00, 0x00, 
0x04, 0x00, 0x88, 0xc1, 0x08, 0x00, 0x00, 0x04, 0x00, 0x08, 0x80, 0x04, 0x00, 0x00, 0x02, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x80, 0x04, 0xff, 0xff, 0x02, 0x00, 
0x88, 0xdf, 0x05, 0xff, 0xff, 0x01, 0x00, 0x80, 0x1f, 0x04, 0x70, 0x07, 0x80, 0x5f, 0x04, 0x00, 0x00, 0x80, 0x9f, 0x04, 0x00, 0x80, 0x80, 0x1f, 0x00, 0x70, 0x07, 0x80, 
0x5f, 0x00, 0x00, 0x00, 0x80, 0x9f, 0x00, 0x00, 0x00, 0x80, 0xdf, 0x00, 0x03, 0x00, 0x80, 0x1f, 0x01, 0x70, 0x07, 0x80, 0x5f, 0x01, 0x00, 0x00, 0x80, 0x9f, 0x01, 0x00, 
0x00, 0x80, 0xdf, 0x01, 0x03, 0x00, 0x80, 0x1f, 0x02, 0x70, 0x07, 0x80, 0x5f, 0x02, 0x00, 0x00, 0x80, 0x9f, 0x02, 0x00, 0x00, 0x80, 0xdf, 0x02, 0x03, 0x00, 0x80, 0x1f, 
0x03, 0x70, 0x07, 0x80, 0x5f, 0x03, 0x00, 0x00, 0x80, 0x9f, 0x03, 0x00, 0x00, 0x80, 0xdf, 0x03, 0x03, 0x00, 0x80, 0x5f, 0x07, 0x00, 0x00, 0x88, 0x1f, 0x05, 0xff, 0xff, 
0x80, 0x0f, 0x88, 0x5f, 0x08, 0x00, 0x00, 0x0f, 0x00, 0x88, 0x9f, 0x08, 0x00, 0x00, 0x0f, 0x00, 0x88, 0x5f, 0x08, 0x00, 0x00, 0x00, 0x0d, 0x88, 0x9f, 0x08, 0x00, 0x00, 
0x00, 0x0d, 0x80, 0x1f, 0x0a, 0x00, 0x00, 0x80, 0x5f, 0x0a, 0x01, 0x00, 0x0d, 0xe8, 0x03, 0x00, 0x00, 0x7a, 0x21, 
/* cmd package 4 */
0x00,0x25,0x18, 0x02, 0x08, 0x80, 0x04, 0x00, 0x00, 0x10, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x80, 0x04, 0xff, 0xff, 0x10, 0x00, 0xc8, 0xdb, 0x3f, 0x00, 0x00, 0x07, 0x00, 
0xc8, 0x1b, 0x00, 0xff, 0xff, 0x0f, 0x00, 0x12, 0x9b, 
/* cmd package 5 */
0x01,0xe6,0x28, 0x1e, 0x08, 0x80, 0x04, 0x00, 0x00, 0x08, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x80, 0x04, 0xff, 0xff, 0x08, 0x00, 0x48, 0xde, 0x3f, 0x00, 0x00, 0x07, 0x00, 
0x48, 0x1e, 0x04, 0xff, 0xff, 0x80, 0x00, 0x48, 0x1e, 0x04, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x5e, 0x04, 0xff, 0xff, 0x80, 0x00, 0x48, 0x5e, 0x04, 0x00, 0x0a, 0x00, 0x3f, 0x48, 
0x9e, 0x04, 0xff, 0xff, 0x80, 0x00, 0x48, 0x9e, 0x04, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0xde, 0x04, 0xff, 0xff, 0x80, 0x00, 0x48, 0xde, 0x04, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x1e, 
0x05, 0xff, 0xff, 0x80, 0x00, 0x48, 0x1e, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x5e, 0x05, 0xff, 0xff, 0x80, 0x00, 0x48, 0x5e, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x9e, 0x05, 
0xff, 0xff, 0x80, 0x00, 0x48, 0x9e, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0xde, 0x05, 0xff, 0xff, 0x80, 0x00, 0x48, 0xde, 0x05, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x1e, 0x06, 0xff, 
0xff, 0x80, 0x00, 0x48, 0x1e, 0x06, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x5e, 0x06, 0xff, 0xff, 0x80, 0x00, 0x48, 0x5e, 0x06, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x9e, 0x06, 0xff, 0xff, 
0x80, 0x00, 0x48, 0x9e, 0x06, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0xde, 0x06, 0xff, 0xff, 0x80, 0x00, 0x48, 0xde, 0x06, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x1e, 0x07, 0xff, 0xff, 0x80, 
0x00, 0x48, 0x1e, 0x07, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x5e, 0x07, 0xff, 0xff, 0x80, 0x00, 0x48, 0x5e, 0x07, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x9e, 0x07, 0xff, 0xff, 0x80, 0x00, 
0x48, 0x9e, 0x07, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0xde, 0x07, 0xff, 0xff, 0x80, 0x00, 0x48, 0xde, 0x07, 0x00, 0x0a, 0x00, 0x3f, 0x48, 0x9e, 0x00, 0x03, 0x00, 0x03, 0x00, 
0x48, 0x9e, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48, 0x9e, 0x00, 0x00, 0x00, 0x08, 0x00, 0x48, 0x9e, 0x00, 0xff, 0xff, 0x10, 0x00, 0x48, 0x1e, 0x14, 0x00, 0x00, 0x00, 0x40, 
0x48, 0x5e, 0x14, 0x00, 0x00, 0x00, 0x40, 0x48, 0x1e, 0x14, 0x00, 0x00, 0x1f, 0x00, 0x48, 0x1e, 0x14, 0x00, 0x00, 0x00, 0x3e, 0x48, 0x5e, 0x14, 0x01, 0x00, 0x1f, 0x00, 
0x48, 0x5e, 0x14, 0x00, 0x02, 0x00, 0x3e, 0x48, 0x9e, 0x14, 0x02, 0x00, 0x1f, 0x00, 0x48, 0x9e, 0x14, 0x00, 0x04, 0x00, 0x3e, 0x48, 0xde, 0x14, 0x03, 0x00, 0x1f, 0x00, 
0x48, 0xde, 0x14, 0x00, 0x06, 0x00, 0x3e, 0x48, 0x1e, 0x15, 0x04, 0x00, 0x1f, 0x00, 0x48, 0x1e, 0x15, 0x00, 0x08, 0x00, 0x3e, 0x48, 0x5e, 0x15, 0x05, 0x00, 0x1f, 0x00, 
0x48, 0x5e, 0x15, 0x00, 0x0a, 0x00, 0x3e, 0x48, 0x9e, 0x15, 0x06, 0x00, 0x1f, 0x00, 0x48, 0x9e, 0x15, 0x00, 0x0c, 0x00, 0x3e, 0x48, 0xde, 0x15, 0x07, 0x00, 0x1f, 0x00, 
0x48, 0xde, 0x15, 0x00, 0x0e, 0x00, 0x3e, 0x48, 0xde, 0x02, 0xff, 0xff, 0x10, 0x80, 0x48, 0x1e, 0x03, 0xff, 0xff, 0x10, 0x80, 0x48, 0x5e, 0x03, 0xff, 0xff, 0x80, 0x80, 0x48, 
0x9e, 0x03, 0xff, 0xff, 0x80, 0x80, 0x48, 0x9e, 0x02, 0xff, 0xff, 0x11, 0x00, 0x40, 0x5e, 0x12, 0x4a, 0x04, 0x40, 0x9e, 0x12, 0x4a, 0x04, 0x40, 0x9e, 0x11, 0xff, 0x0f, 0x48, 
0x1e, 0x00, 0xff, 0xff, 0x00, 0xf0, 0x48, 0x1e, 0x00, 0xff, 0xff, 0x00, 0x03, 0x48, 0x1e, 0x00, 0xff, 0xff, 0x1f, 0x00, 0x48, 0x5e, 0x00, 0x00, 0x00, 0x10, 0x63, 0x92, 0x97, 
/* cmd package 6 */
0x00,0xd2,0xe8, 0x0c, 0xc8, 0x98, 0x10, 0x01, 0x03, 0xff, 0x0f, 0x08, 0x40, 0x04, 0x00, 0x00, 0x02, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x04, 0xff, 0xff, 0x02, 0x00, 
0xc8, 0x1e, 0x00, 0xff, 0xff, 0x02, 0x00, 0xc8, 0xde, 0x3f, 0x00, 0x00, 0x01, 0x00, 0xc8, 0x1e, 0x04, 0xc0, 0x00, 0xff, 0xff, 0xc8, 0x5e, 0x04, 0x00, 0x00, 0xff, 0xff, 0xc8, 
0x9e, 0x04, 0x32, 0x00, 0xff, 0x00, 0xc8, 0x9e, 0x04, 0x00, 0x28, 0x00, 0xff, 0xc8, 0xde, 0x04, 0x10, 0x00, 0xff, 0x00, 0xc8, 0xde, 0x04, 0x00, 0x08, 0x00, 0xff, 0xc8, 0x1e, 
0x05, 0x01, 0x00, 0xff, 0x00, 0xc8, 0x1e, 0x05, 0x00, 0x01, 0x00, 0xff, 0xc8, 0x5e, 0x05, 0x02, 0x00, 0xff, 0x00, 0xc8, 0x1e, 0x06, 0xe0, 0x32, 0xff, 0xff, 0xc8, 0x5e, 0x06, 
0x29, 0x00, 0xff, 0xff, 0xc8, 0x9e, 0x06, 0x46, 0x05, 0xff, 0xff, 0xc8, 0xde, 0x06, 0x00, 0x00, 0xff, 0xff, 0xc8, 0x1e, 0x07, 0x00, 0x00, 0x02, 0x00, 0xc8, 0x1e, 0x07, 0x00, 
0x00, 0x80, 0x00, 0xc8, 0x9e, 0x00, 0x00, 0x00, 0xff, 0x00, 0xc8, 0x1e, 0x00, 0x00, 0xf0, 0x00, 0xf0, 0xc8, 0xde, 0x00, 0xff, 0xff, 0x03, 0x00, 0xc8, 0xde, 0x00, 0x00, 0x00, 
0x3c, 0x00, 0xc8, 0xde, 0x00, 0x00, 0x07, 0x00, 0x07, 0xc8, 0x9e, 0x00, 0xff, 0xff, 0x00, 0x1f, 0xc8, 0xde, 0x00, 0xff, 0xff, 0x40, 0x00, 0x0d, 0x10, 0x27, 0x00, 0x00, 0xc8, 
0x9e, 0x00, 0xff, 0xff, 0x00, 0x60, 0x74, 0x2a, 
/* cmd package 7 */
0x01,0x69,0x58, 0x16, 0x48, 0x40, 0x0e, 0xff, 0xff, 0x10, 0x00, 0x08, 0x80, 0x25, 0xff, 0xff, 0x01, 0x00, 0x08, 0x80, 0x04, 0x00, 0x00, 0x00, 0x01, 0x08, 0x80, 0x04, 0xff, 0xff, 0x00, 
0x01, 0x88, 0x41, 0x08, 0xff, 0xff, 0x01, 0x00, 0x88, 0x01, 0x08, 0xff, 0xff, 0x01, 0x00, 0x88, 0xc1, 0x08, 0xff, 0xff, 0x00, 0x04, 0x88, 0x81, 0x08, 0xff, 0xff, 0x00, 0x04, 
0x88, 0x01, 0x14, 0x00, 0x00, 0x01, 0x00, 0x80, 0x9d, 0x08, 0x00, 0x00, 0x80, 0x81, 0x06, 0x00, 0x12, 0x80, 0xc1, 0x06, 0x60, 0x67, 0x88, 0x01, 0x07, 0xff, 0xff, 0x08, 
0x00, 0x88, 0x41, 0x05, 0x00, 0x00, 0x00, 0x80, 0x80, 0x01, 0x07, 0x00, 0x00, 0x80, 0x41, 0x07, 0x85, 0x00, 0x88, 0x1d, 0x00, 0xff, 0xff, 0x00, 0x04, 0x88, 0x01, 0x07, 
0x00, 0x00, 0x08, 0x00, 0x88, 0x41, 0x05, 0xff, 0xff, 0x00, 0x80, 0x88, 0x81, 0x08, 0x00, 0x00, 0x00, 0x04, 0x88, 0xc1, 0x08, 0x00, 0x00, 0x00, 0x04, 0x88, 0x01, 0x08, 
0x00, 0x00, 0x01, 0x00, 0x88, 0x41, 0x08, 0x00, 0x00, 0x01, 0x00, 0x88, 0xc1, 0x06, 0x00, 0x00, 0x20, 0x00, 0x88, 0x01, 0x14, 0xff, 0xff, 0x01, 0x00, 0x80, 0x9d, 0x08, 
0x43, 0x00, 0x80, 0x9d, 0x06, 0x00, 0x00, 0x08, 0x80, 0x25, 0x00, 0x00, 0x01, 0x00, 0x48, 0x40, 0x0e, 0x00, 0x00, 0x10, 0x00, 0x08, 0x40, 0x04, 0x00, 0x00, 0x20, 0x00, 
0x0d, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x04, 0xff, 0xff, 0x20, 0x00, 0x48, 0xd1, 0x3f, 0x00, 0x00, 0x03, 0x00, 0x00, 0xd1, 0x14, 0x00, 0x00, 0x00, 0xd1, 0x15, 0x08, 
0x07, 0x08, 0x11, 0x16, 0xff, 0xff, 0x00, 0x80, 0x08, 0x11, 0x16, 0xff, 0xff, 0x08, 0x00, 0x08, 0x51, 0x17, 0xff, 0xff, 0x00, 0x10, 0x00, 0x11, 0x17, 0xff, 0xff, 0x08, 0x11, 
0x00, 0xff, 0xff, 0x43, 0x00, 0x08, 0xc0, 0x3d, 0xff, 0xff, 0x00, 0x80, 0x00, 0x91, 0x10, 0x05, 0x00, 0x00, 0xd1, 0x11, 0x01, 0x00, 0x08, 0xd1, 0x12, 0xff, 0xff, 0x04, 0x00, 
0x08, 0xd1, 0x12, 0xff, 0xff, 0x10, 0x00, 0x08, 0xd1, 0x12, 0xff, 0xff, 0x00, 0x20, 0x08, 0x51, 0x13, 0x10, 0x00, 0x30, 0x00, 0x08, 0x11, 0x00, 0xff, 0xff, 0x0b, 0x00, 0x00, 
0x11, 0x17, 0x10, 0x27, 0x08, 0x11, 0x16, 0x00, 0x00, 0x00, 0x80, 0x48, 0xc0, 0x22, 0x08, 0x00, 0xff, 0x00, 0x48, 0x00, 0x1d, 0x66, 0x00, 0xff, 0x00, 0x48, 0x00, 0x1b, 
0xff, 0xff, 0x00, 0x01, 0x48, 0x40, 0x0d, 0xff, 0xff, 0x01, 0x00, 0x48, 0x40, 0x0e, 0x00, 0x00, 0x01, 0x00, 0xde, 0x83, 
/* cmd package 8 */
0x00,0x93,0xf8, 0x08, 0x88, 0x41, 0x06, 0x00, 0x00, 0x00, 0x20, 0x88, 0x41, 0x06, 0xff, 0xff, 0x00, 0x40, 0x0d, 0xe8, 0x03, 0x00, 0x00, 0x88, 0x41, 0x06, 0xff, 0xff, 0x00, 0x80, 
0x0d, 0xe8, 0x03, 0x00, 0x00, 0x88, 0x41, 0x06, 0xff, 0xff, 0x00, 0x10, 0x08, 0x18, 0xc4, 0xff, 0xff, 0x0e, 0x00, 0x08, 0x18, 0xc4, 0x0e, 0x00, 0x0e, 0x00, 0x08, 0x58, 
0x04, 0x10, 0x00, 0xff, 0xff, 0x08, 0x18, 0x40, 0xff, 0xff, 0x01, 0x00, 0x08, 0x18, 0xc9, 0xff, 0xff, 0x01, 0x00, 0x08, 0x98, 0xc9, 0xff, 0xff, 0x01, 0x00, 0x08, 0x58, 0xc9, 
0xff, 0xff, 0x01, 0x00, 0x08, 0x58, 0xc4, 0xff, 0xff, 0x01, 0x00, 0x08, 0x18, 0x40, 0xff, 0xff, 0x01, 0x00, 0x08, 0x58, 0xc4, 0x00, 0x00, 0x04, 0x00, 0x08, 0x58, 0xc4, 0xff, 
0xff, 0x08, 0x00, 0x08, 0x58, 0xc4, 0xff, 0xff, 0x02, 0x00, 0x08, 0x58, 0x44, 0xff, 0xff, 0x01, 0x00, 0x08, 0xd8, 0x44, 0x05, 0x00, 0x3f, 0x00, 0x08, 0xd8, 0x44, 0x00, 0x02, 
0x00, 0x1f, 0xcf, 0xb4, 
/* cmd package 9 */
0x00,0x18,0x48, 0x01, 0xc0, 0x18, 0x10, 0x01, 0x01, 0xc0, 0x58, 0x10, 0x01, 0x01, 0xc0, 0x98, 0x10, 0x01, 0x00, 0xc0, 0xd8, 0x10, 0x03, 0x00, 0xae, 0x97,
/* cmd package 10 */
0x00,0x11,0xe0, 0x88, 0xda, 0x04, 0xff, 0xff, 0x02, 0x00, 0x88, 0x9a, 0x1c, 0xff, 0xff, 0x01, 0x00, 0x1b, 0x03, 
/* cmd package 11 */
0x00,0x11,0xe0, 0x08, 0x58, 0x04, 0x10, 0x00, 0xff, 0xff, 0x08, 0x18, 0x01, 0x01, 0x00, 0x3f, 0x00, 0x74, 0x5c, 
};

#endif

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值