Index: bt_rom/format/bt.format
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/bt_rom/format/bt.format	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/bt_rom/format/bt.format	(working copy)
@@ -391,6 +391,8 @@
 3 TX_POWER_f3DB
 4 TX_POWER_f5DB
 
+8 TX_POWER_8DB
+
 0x20 TX_POWER_PAIR
 )
 
Index: format/app_module.format
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/format/app_module.format	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/format/app_module.format	(working copy)
@@ -79,6 +79,7 @@
 1 mem_btsniff
 1 mem_ns_wake_up_flag
 160 mem_context_new
+1 mem_hid_response
 0 mem_module_end
 )
 (
Index: output/bt_code.c
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/output/bt_code.c	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/output/bt_code.c	(working copy)
@@ -1,15 +1,15 @@
 const unsigned char bt_code[] = {
-0x00,0x02,0xaa,0x55,0x46,0x14,0xc2,0x84,0x00,0x19,0xc0,0x00,0x83,0xba,0xc0,0x02,
+0x00,0x02,0xaa,0x55,0x36,0x15,0xc2,0x84,0x00,0x19,0xc0,0x00,0x83,0xc2,0xc0,0x02,
 0x80,0x31,0xc0,0x17,0x00,0x2e,0xc0,0x1a,0x00,0x2a,0xc0,0x2f,0x80,0x76,0xc0,0x30,
 0x00,0x7b,0xc0,0x2e,0x80,0x5c,0xc0,0x2f,0x00,0x6b,0xc0,0x38,0x00,0x4b,0xc0,0x1e,
-0x83,0x91,0xc0,0x42,0x83,0xc1,0xc0,0x44,0x83,0xe7,0xc0,0x4a,0x03,0xa0,0xc0,0x51,
-0x03,0xf0,0xc0,0x51,0x83,0xab,0xc0,0x54,0x83,0xae,0xc0,0x56,0x03,0xf7,0xc0,0x5c,
-0x00,0xc1,0xc0,0x5d,0x81,0x4b,0xc0,0x5e,0x01,0xfd,0xc0,0x5f,0x04,0xe9,0xc0,0x64,
-0x00,0x9f,0xc0,0x6d,0x80,0x93,0x20,0x20,0x4a,0x8b,0xc0,0x01,0x84,0x07,0xc0,0x02,
-0x83,0xfe,0xc0,0x03,0x03,0xe2,0xc0,0x09,0x84,0x36,0xc0,0x0f,0x84,0x13,0xc0,0x10,
-0x84,0x25,0xc0,0x12,0x84,0x2a,0xc0,0x18,0x00,0x9a,0xc0,0x1e,0x02,0x15,0xc0,0x1d,
-0x02,0x25,0xc0,0x1e,0x82,0x35,0xc0,0x1f,0x82,0x42,0xc0,0x1f,0x02,0x48,0xc0,0x20,
-0x82,0x5b,0xc0,0x4c,0x82,0x61,0xc0,0x51,0x82,0x65,0x20,0x20,0x4a,0x8b,0x6f,0xe2,
+0x83,0x99,0xc0,0x42,0x83,0xc9,0xc0,0x44,0x83,0xf0,0xc0,0x4a,0x03,0xa8,0xc0,0x51,
+0x04,0x2c,0xc0,0x51,0x83,0xb3,0xc0,0x54,0x83,0xb6,0xc0,0x56,0x04,0x33,0xc0,0x5c,
+0x00,0xc1,0xc0,0x5d,0x81,0x4b,0xc0,0x5e,0x01,0xfd,0xc0,0x5f,0x05,0x25,0xc0,0x64,
+0x00,0x9f,0xc0,0x6d,0x80,0x93,0x20,0x20,0x4a,0x8b,0xc0,0x01,0x84,0x43,0xc0,0x02,
+0x84,0x3a,0xc0,0x03,0x03,0xeb,0xc0,0x09,0x84,0x72,0xc0,0x0f,0x84,0x4f,0xc0,0x10,
+0x84,0x61,0xc0,0x12,0x84,0x66,0xc0,0x18,0x00,0x9a,0xc0,0x1e,0x02,0x15,0xc0,0x1d,
+0x02,0x25,0xc0,0x1e,0x82,0x35,0xc0,0x1f,0x82,0x42,0xc0,0x1f,0x02,0x50,0xc0,0x20,
+0x82,0x63,0xc0,0x4c,0x82,0x69,0xc0,0x51,0x82,0x6d,0x20,0x20,0x4a,0x8b,0x6f,0xe2,
 0x00,0x4c,0x79,0x3f,0xfe,0x02,0x67,0xe2,0x00,0x4c,0x20,0x20,0x43,0x2f,0xda,0x20,
 0x4b,0xd7,0xdf,0x20,0x00,0x02,0x20,0x20,0x42,0x60,0x20,0x40,0x42,0x5a,0x24,0x22,
 0x80,0x39,0x20,0x40,0x42,0x06,0x1a,0x20,0x8c,0x01,0xef,0xe2,0x00,0x06,0xc2,0x80,
@@ -50,9 +50,9 @@
 0x52,0x8b,0x70,0x0a,0x95,0x42,0x20,0x20,0x7b,0xab,0x58,0x00,0x00,0xf8,0x67,0xe4,
 0x41,0xf6,0x58,0x00,0x01,0x3a,0x67,0xe4,0x41,0xfe,0x58,0x00,0x00,0xd2,0x67,0xe4,
 0x41,0xf4,0x58,0x00,0x01,0x3e,0x67,0xe4,0x41,0xfa,0x58,0x00,0x01,0x46,0x67,0xe4,
-0x41,0xea,0x58,0x00,0x01,0x47,0x67,0xe4,0x41,0xf2,0x20,0x40,0x03,0xf8,0x20,0x40,
+0x41,0xea,0x58,0x00,0x01,0x47,0x67,0xe4,0x41,0xf2,0x20,0x40,0x04,0x34,0x20,0x40,
 0x4d,0xaf,0x20,0x40,0x4d,0xbc,0x20,0x40,0x4c,0x2a,0x20,0x20,0x50,0x4d,0x20,0x40,
-0x02,0xd5,0x20,0x40,0x50,0xd3,0x20,0x40,0x00,0xd5,0x20,0x40,0x56,0x48,0x24,0x7a,
+0x02,0xdd,0x20,0x40,0x50,0xd3,0x20,0x40,0x00,0xd5,0x20,0x40,0x56,0x48,0x24,0x7a,
 0x00,0x00,0x20,0x20,0x00,0xd8,0x6f,0xe4,0x4f,0xfc,0x68,0x44,0x4f,0xfe,0x98,0x46,
 0x7c,0x00,0x20,0x22,0xce,0x3a,0x20,0x40,0x67,0xf7,0xef,0xe2,0x00,0x03,0xc0,0x80,
 0xce,0x4e,0xef,0xe2,0x00,0x03,0xc0,0x50,0x00,0xea,0x67,0xe2,0x0a,0xff,0xe8,0x42,
@@ -62,15 +62,15 @@
 0x01,0x01,0x20,0x40,0x4e,0x5a,0x6f,0xe2,0x0b,0x01,0xc1,0x00,0x00,0x00,0x20,0x20,
 0x00,0xf3,0x20,0x40,0x67,0xf7,0x18,0x60,0x86,0x02,0xef,0xe4,0x00,0x03,0x98,0x60,
 0x86,0x00,0x20,0x20,0x4e,0x59,0x1a,0x62,0x7e,0x00,0xc0,0x00,0x81,0x0d,0xc0,0x01,
-0x01,0x18,0xc0,0x02,0x01,0x1b,0xc0,0x02,0x84,0x9a,0xc0,0x03,0x04,0x9b,0xc0,0x03,
-0x84,0x9e,0xc0,0x09,0x04,0xa7,0xc0,0x09,0x81,0x1b,0xc0,0x13,0x84,0xb2,0xc0,0x17,
-0x04,0xb5,0xc0,0x0c,0x04,0xb7,0xc0,0x19,0x04,0x49,0xc0,0x14,0x84,0x4b,0xc0,0x05,
+0x01,0x18,0xc0,0x02,0x01,0x1b,0xc0,0x02,0x84,0xd6,0xc0,0x03,0x04,0xd7,0xc0,0x03,
+0x84,0xda,0xc0,0x09,0x04,0xe3,0xc0,0x09,0x81,0x1b,0xc0,0x13,0x84,0xee,0xc0,0x17,
+0x04,0xf1,0xc0,0x0c,0x04,0xf3,0xc0,0x19,0x04,0x85,0xc0,0x14,0x84,0x87,0xc0,0x05,
 0x81,0x2c,0xc0,0x11,0x01,0x1c,0xc0,0x21,0x81,0x1c,0xc0,0x21,0x01,0x23,0xc0,0x0a,
 0x4e,0x29,0xc0,0x0a,0x81,0x15,0x20,0x20,0x4d,0xdf,0x70,0x4b,0x7f,0x00,0x70,0x4b,
 0x7e,0x00,0x70,0x0a,0xff,0xb9,0x58,0x00,0x00,0x01,0x20,0x40,0x50,0xa5,0x58,0x00,
 0x00,0x00,0xe7,0xe2,0x00,0x0a,0x20,0x20,0x67,0xb9,0x20,0x40,0x5b,0xf6,0x20,0x40,
 0x4d,0x75,0x20,0x20,0x50,0x28,0x70,0x4b,0xd6,0x00,0x20,0x40,0x4d,0x69,0x20,0x20,
-0x04,0x86,0x20,0x20,0x04,0x93,0x58,0x00,0x00,0x02,0x70,0x0a,0xff,0xb8,0x20,0x40,
+0x04,0xc2,0x20,0x20,0x04,0xcf,0x58,0x00,0x00,0x02,0x70,0x0a,0xff,0xb8,0x20,0x40,
 0x50,0xa5,0x6f,0xe4,0x00,0x32,0x1f,0xe3,0x7e,0x00,0xe7,0xe4,0x00,0x0a,0x20,0x20,
 0x67,0xb9,0x6f,0xe4,0x46,0x52,0x79,0x20,0x7e,0x02,0x67,0xe4,0x46,0x52,0x58,0x00,
 0x00,0x02,0x70,0x0a,0xff,0xb7,0x20,0x40,0x50,0xa5,0x68,0x44,0x42,0x20,0xe0,0x44,
@@ -78,13 +78,13 @@
 0x7e,0x00,0x68,0x44,0x41,0xe4,0x98,0x46,0x7c,0x00,0x20,0x20,0x4d,0x91,0x6f,0xe2,
 0x46,0x79,0xc3,0x82,0x80,0x00,0x6f,0xe4,0x4f,0xfc,0x68,0x44,0x4f,0xfe,0x98,0x46,
 0x7c,0x00,0x24,0x42,0xd0,0xda,0x20,0x20,0x4d,0x87,0x20,0x60,0x00,0x00,0x20,0x40,
-0x02,0xce,0x20,0x40,0x04,0xc3,0x20,0x40,0x04,0xcb,0x20,0x20,0x04,0xce,0x20,0x40,
-0x04,0x78,0x20,0x74,0x00,0x00,0x1a,0x22,0x7e,0x00,0x67,0xe4,0x46,0x71,0x1a,0x42,
+0x02,0xd6,0x20,0x40,0x04,0xff,0x20,0x40,0x05,0x07,0x20,0x20,0x05,0x0a,0x20,0x40,
+0x04,0xb4,0x20,0x74,0x00,0x00,0x1a,0x22,0x7e,0x00,0x67,0xe4,0x46,0x71,0x1a,0x42,
 0x7e,0x00,0x67,0xe2,0x46,0x70,0x6f,0xe4,0x04,0x74,0x20,0x20,0x50,0xbb,0x20,0x20,
 0x4d,0xbd,0x20,0x20,0x01,0x48,0x6f,0xe2,0x4b,0xd5,0x20,0x7a,0x00,0x00,0x20,0x20,
 0x4d,0xc8,0x6f,0xe2,0x0a,0xff,0xc0,0x08,0x81,0xc7,0xc0,0x0a,0x81,0xcf,0xc0,0x13,
 0x81,0xdd,0xc0,0x06,0x01,0xd4,0xc0,0x58,0x01,0xdf,0xc0,0x59,0x01,0xef,0xc0,0x04,
-0x84,0x74,0xc0,0x50,0x81,0x62,0xc0,0x51,0x01,0x5c,0xc0,0x58,0x84,0xde,0xc0,0x50,
+0x84,0xb0,0xc0,0x50,0x81,0x62,0xc0,0x51,0x01,0x5c,0xc0,0x58,0x85,0x1a,0xc0,0x50,
 0x01,0xc2,0xc0,0x3b,0x01,0x7d,0xc0,0x3b,0x81,0x83,0xc0,0x3c,0x01,0x88,0xc0,0x38,
 0x01,0x65,0x20,0x20,0x4e,0x5c,0xef,0xe2,0x00,0x03,0x67,0xe2,0x4b,0xd5,0x20,0x3a,
 0x50,0x1f,0xef,0xe4,0x00,0x03,0x67,0xe4,0x41,0xe4,0x20,0x20,0x50,0x1f,0xef,0xf0,
@@ -94,7 +94,7 @@
 0x4b,0xca,0xe8,0x48,0x00,0x03,0x5f,0xff,0xff,0xff,0x98,0x42,0xfe,0x00,0x67,0xe8,
 0x4b,0xc1,0xef,0xe8,0x00,0x03,0x67,0xe8,0x4b,0xc5,0xd8,0xa0,0x41,0xbf,0xdf,0x20,
 0x00,0x10,0x20,0x40,0x67,0xed,0x70,0x4b,0xb6,0x01,0x58,0x00,0x00,0x3c,0x67,0xe4,
-0x4b,0xb7,0x20,0x40,0x02,0xdb,0x20,0x20,0x50,0x1f,0xd8,0x40,0x00,0x0c,0x20,0x40,
+0x4b,0xb7,0x20,0x40,0x02,0xe3,0x20,0x20,0x50,0x1f,0xd8,0x40,0x00,0x0c,0x20,0x40,
 0x5b,0x4d,0x18,0xc0,0x8b,0xfe,0x58,0x00,0x00,0x00,0xe7,0xe4,0x00,0x05,0x20,0x20,
 0x50,0x1f,0x20,0x40,0x01,0x8c,0x20,0x40,0x01,0xa9,0x58,0x00,0x00,0x00,0xe7,0xe4,
 0x00,0x05,0x20,0x20,0x01,0xbb,0xef,0xe2,0x00,0x03,0x20,0x40,0x01,0x90,0x20,0x40,
@@ -144,61 +144,63 @@
 0x04,0xc5,0xc0,0x05,0x82,0x39,0x20,0x20,0x61,0xa6,0x20,0x40,0x61,0xdf,0x6f,0xe2,
 0x00,0x55,0xc1,0x8c,0x80,0x00,0x70,0x0a,0xff,0xb1,0x58,0x00,0x00,0x01,0x20,0x40,
 0x50,0xa5,0x58,0x00,0x00,0x01,0xe7,0xe2,0x00,0x0a,0x20,0x20,0x67,0xb9,0x6f,0xe2,
-0x00,0x49,0xc0,0x0b,0x82,0x45,0x20,0x20,0x64,0x33,0x70,0x0a,0x95,0x43,0x20,0x40,
+0x00,0x49,0xc0,0x0b,0x82,0x4d,0xc0,0x19,0x82,0x46,0x20,0x20,0x64,0x33,0x70,0x00,
+0x7c,0x8b,0x70,0x00,0x7c,0x31,0x6f,0xe2,0x04,0xcd,0x79,0x20,0x7e,0x00,0x67,0xe2,
+0x04,0xcd,0x70,0x0a,0x95,0x01,0x20,0x20,0x7b,0xab,0x70,0x0a,0x95,0x43,0x20,0x40,
 0x7b,0xab,0x20,0x20,0x46,0xc2,0x78,0x54,0x7c,0x00,0x20,0x40,0x66,0xa3,0x6f,0xe2,
-0x00,0x48,0x20,0x7a,0x00,0x00,0xc2,0x83,0x82,0x4f,0xc0,0x21,0x03,0x7f,0x20,0x20,
-0x63,0xf2,0xc0,0x42,0x02,0x52,0xc0,0x41,0x82,0x55,0x20,0x20,0x64,0x21,0x20,0x40,
-0x02,0x58,0x6f,0xe2,0x00,0x48,0x20,0x20,0x64,0x7b,0x20,0x40,0x02,0x58,0x6f,0xe2,
+0x00,0x48,0x20,0x7a,0x00,0x00,0xc2,0x83,0x82,0x57,0xc0,0x21,0x03,0x87,0x20,0x20,
+0x63,0xf2,0xc0,0x42,0x02,0x5a,0xc0,0x41,0x82,0x5d,0x20,0x20,0x64,0x21,0x20,0x40,
+0x02,0x60,0x6f,0xe2,0x00,0x48,0x20,0x20,0x64,0x7b,0x20,0x40,0x02,0x60,0x6f,0xe2,
 0x00,0x48,0x20,0x20,0x64,0xef,0x6f,0xe2,0x46,0x2c,0x20,0x3a,0x65,0x0d,0x20,0x20,
 0x65,0x06,0x6f,0xe2,0x40,0x9e,0x79,0x3f,0xfe,0x03,0x67,0xe2,0x40,0x9e,0x58,0x00,
 0x00,0x01,0x67,0xe4,0x04,0xca,0x20,0x60,0x00,0x00,0x6f,0xe2,0x44,0x90,0x20,0x3a,
 0x5e,0xd0,0x20,0x40,0x74,0x38,0x20,0x20,0x79,0x32,0x20,0x40,0x66,0x9e,0x24,0x3a,
-0x7b,0xfd,0x6f,0xe2,0x0a,0x95,0xc5,0x84,0xfb,0xf8,0xc0,0x02,0x82,0x6b,0x20,0x20,
+0x7b,0xfd,0x6f,0xe2,0x0a,0x95,0xc5,0x84,0xfb,0xf8,0xc0,0x02,0x82,0x73,0x20,0x20,
 0x7b,0xec,0x6f,0xe2,0x4b,0xd5,0x20,0x3a,0x50,0xea,0x20,0x20,0x50,0xfd,0x6f,0xe2,
 0x46,0x6c,0x79,0x20,0x7e,0x07,0x67,0xe2,0x46,0x6c,0xda,0xc0,0x00,0x00,0xd8,0xc0,
 0x89,0x73,0xef,0xe2,0x00,0x06,0x79,0x20,0x7e,0x06,0xd8,0xa0,0x89,0x73,0xe7,0xe2,
 0x00,0x05,0xda,0xc0,0x00,0x0f,0xdf,0x20,0x00,0x06,0xda,0x40,0x00,0x02,0xda,0x20,
-0x4b,0x97,0x20,0x40,0x02,0x90,0xdf,0x20,0x00,0x14,0xda,0x40,0x01,0x2c,0xda,0x20,
-0x4b,0x9d,0x20,0x40,0x02,0x90,0xdf,0x20,0x00,0x02,0xda,0x40,0x1f,0xfe,0xda,0x20,
-0x4b,0xb1,0x20,0x40,0x02,0x90,0x20,0x40,0x02,0xac,0xda,0xc0,0x00,0x00,0xd8,0xc0,
+0x4b,0x97,0x20,0x40,0x02,0x98,0xdf,0x20,0x00,0x14,0xda,0x40,0x01,0x2c,0xda,0x20,
+0x4b,0x9d,0x20,0x40,0x02,0x98,0xdf,0x20,0x00,0x02,0xda,0x40,0x1f,0xfe,0xda,0x20,
+0x4b,0xb1,0x20,0x40,0x02,0x98,0x20,0x40,0x02,0xb4,0xda,0xc0,0x00,0x00,0xd8,0xc0,
 0x89,0x73,0xef,0xe2,0x00,0x06,0x79,0x3f,0xfe,0x06,0xd8,0xa0,0x89,0x73,0xe7,0xe2,
 0x00,0x05,0xda,0xc0,0x00,0x00,0x6f,0xe2,0x46,0x6c,0x79,0x3f,0xfe,0x07,0x67,0xe2,
-0x46,0x6c,0x20,0x60,0x00,0x00,0x1a,0x49,0xa4,0x00,0x20,0x40,0x02,0x9a,0x20,0x40,
-0x02,0xa7,0x20,0x40,0x02,0xa9,0x6f,0xe3,0x85,0x0c,0xe7,0xe2,0x00,0x11,0x1a,0x40,
-0xa4,0x08,0x1a,0x20,0xa2,0x01,0xc2,0x00,0x02,0x93,0x20,0x60,0x00,0x00,0x58,0x00,
-0x02,0x0c,0x20,0x40,0x02,0xa2,0x58,0x00,0x02,0x08,0x20,0x40,0x02,0xa2,0x58,0x00,
-0x02,0x00,0x20,0x40,0x02,0xa2,0x58,0x00,0x02,0x08,0x20,0x20,0x02,0xa2,0xd8,0xa1,
+0x46,0x6c,0x20,0x60,0x00,0x00,0x1a,0x49,0xa4,0x00,0x20,0x40,0x02,0xa2,0x20,0x40,
+0x02,0xaf,0x20,0x40,0x02,0xb1,0x6f,0xe3,0x85,0x0c,0xe7,0xe2,0x00,0x11,0x1a,0x40,
+0xa4,0x08,0x1a,0x20,0xa2,0x01,0xc2,0x00,0x02,0x9b,0x20,0x60,0x00,0x00,0x58,0x00,
+0x02,0x0c,0x20,0x40,0x02,0xaa,0x58,0x00,0x02,0x08,0x20,0x40,0x02,0xaa,0x58,0x00,
+0x02,0x00,0x20,0x40,0x02,0xaa,0x58,0x00,0x02,0x08,0x20,0x20,0x02,0xaa,0xd8,0xa1,
 0x85,0x0a,0xe7,0xe2,0x00,0x05,0x1f,0xec,0xfe,0x00,0xe7,0xe2,0x00,0x05,0x20,0x60,
-0x00,0x00,0x58,0x00,0x02,0x88,0x20,0x20,0x02,0xa2,0x1a,0x42,0x7e,0x00,0xd8,0xa1,
-0x85,0x08,0x20,0x20,0x02,0xa3,0x58,0x00,0x02,0x0c,0x20,0x20,0x02,0xa2,0xdf,0x20,
+0x00,0x00,0x58,0x00,0x02,0x88,0x20,0x20,0x02,0xaa,0x1a,0x42,0x7e,0x00,0xd8,0xa1,
+0x85,0x08,0x20,0x20,0x02,0xab,0x58,0x00,0x02,0x0c,0x20,0x20,0x02,0xaa,0xdf,0x20,
 0x00,0x0d,0xd8,0x40,0x55,0xaa,0xd8,0xc0,0x4b,0x97,0xef,0xe4,0x00,0x06,0x98,0x40,
-0xfe,0x00,0x1f,0xe2,0x04,0x00,0xc2,0x00,0x02,0xb1,0x20,0x60,0x00,0x00,0xdf,0x20,
+0xfe,0x00,0x1f,0xe2,0x04,0x00,0xc2,0x00,0x02,0xb9,0x20,0x60,0x00,0x00,0xdf,0x20,
 0x00,0x0d,0xd8,0xc0,0x4b,0x97,0xef,0xe4,0x00,0x06,0x98,0x42,0xfe,0x00,0x1f,0xe2,
-0x04,0x00,0xc2,0x00,0x02,0xb8,0x20,0x60,0x00,0x00,0x70,0x4b,0xb3,0x00,0xd8,0x40,
+0x04,0x00,0xc2,0x00,0x02,0xc0,0x20,0x60,0x00,0x00,0x70,0x4b,0xb3,0x00,0xd8,0x40,
 0xff,0xff,0x98,0x41,0x7e,0x00,0xd8,0xc0,0x4b,0xb1,0xe8,0x44,0x00,0x06,0x98,0x46,
 0x7c,0x00,0x24,0x62,0x80,0x00,0x70,0x4b,0xb3,0x01,0x20,0x60,0x00,0x00,0x20,0x40,
-0x02,0x6e,0x20,0x40,0x02,0xae,0x20,0x40,0x02,0xb6,0x20,0x40,0x02,0xbd,0x6f,0xe2,
+0x02,0x76,0x20,0x40,0x02,0xb6,0x20,0x40,0x02,0xbe,0x20,0x40,0x02,0xc5,0x6f,0xe2,
 0x4b,0xb3,0x2f,0xe1,0xfe,0x01,0x20,0x60,0x80,0x00,0x20,0x20,0x4a,0x8b,0x6f,0xe2,
-0x4b,0xb6,0x20,0x7a,0x00,0x00,0xda,0x60,0x4b,0xd3,0xda,0x40,0x02,0xd3,0x20,0x20,
+0x4b,0xb6,0x20,0x7a,0x00,0x00,0xda,0x60,0x4b,0xd3,0xda,0x40,0x02,0xdb,0x20,0x20,
 0x4d,0x0b,0x70,0x0a,0xff,0xba,0x20,0x20,0x50,0x4e,0x6f,0xe2,0x4b,0xb6,0x20,0x7a,
-0x00,0x00,0x20,0x20,0x02,0xde,0x70,0x4b,0xb6,0x01,0x58,0x00,0x00,0x3c,0x67,0xe4,
+0x00,0x00,0x20,0x20,0x02,0xe6,0x70,0x4b,0xb6,0x01,0x58,0x00,0x00,0x3c,0x67,0xe4,
 0x4b,0xb7,0x58,0x00,0x00,0xa0,0x18,0x00,0x0e,0x0e,0x20,0x20,0x7c,0xe3,0x18,0x00,
 0x0e,0x0e,0x20,0x40,0x7c,0xf1,0x24,0x7a,0x00,0x00,0x20,0x40,0x48,0xd8,0x20,0x40,
-0x02,0xf6,0x20,0x40,0x02,0xdb,0x68,0x44,0x4b,0xb7,0x78,0x48,0x7c,0x00,0x18,0x42,
-0x36,0x00,0x20,0x21,0x83,0x21,0x20,0x40,0x49,0x15,0xd8,0x40,0x00,0x00,0x20,0x40,
-0x49,0x30,0x20,0x40,0x4a,0x50,0x20,0x40,0x03,0x0d,0x20,0x40,0x46,0x49,0x20,0x00,
-0x13,0x88,0x20,0x20,0x02,0xe7,0x6f,0xf2,0x4b,0xc1,0x1f,0xef,0x7e,0x00,0x1f,0xeb,
+0x02,0xfe,0x20,0x40,0x02,0xe3,0x68,0x44,0x4b,0xb7,0x78,0x48,0x7c,0x00,0x18,0x42,
+0x36,0x00,0x20,0x21,0x83,0x29,0x20,0x40,0x49,0x15,0xd8,0x40,0x00,0x00,0x20,0x40,
+0x49,0x30,0x20,0x40,0x4a,0x50,0x20,0x40,0x03,0x15,0x20,0x40,0x46,0x49,0x20,0x00,
+0x13,0x88,0x20,0x20,0x02,0xef,0x6f,0xf2,0x4b,0xc1,0x1f,0xef,0x7e,0x00,0x1f,0xeb,
 0x7e,0x00,0x67,0xe6,0x07,0x42,0x6d,0x86,0x07,0x42,0x20,0x60,0x00,0x00,0x20,0x40,
-0x02,0xf0,0x6f,0xf2,0x4b,0xc1,0x68,0x50,0x4b,0xb9,0x98,0x42,0xfe,0x00,0x67,0xf0,
+0x02,0xf8,0x6f,0xf2,0x4b,0xc1,0x68,0x50,0x4b,0xb9,0x98,0x42,0xfe,0x00,0x67,0xf0,
 0x07,0x42,0x6f,0xea,0x07,0x42,0x78,0x3b,0x7c,0x00,0x98,0x00,0x12,0x00,0x78,0x5b,
 0x7c,0x00,0x20,0x60,0x00,0x00,0x20,0x40,0x4a,0x63,0x78,0x43,0xfc,0x00,0x78,0x25,
 0x7c,0x00,0x78,0x2d,0xfc,0x00,0x6f,0xe4,0x0b,0x37,0x08,0x00,0x86,0x0a,0x78,0x24,
 0x7c,0x00,0x08,0x00,0x86,0x08,0x78,0x4d,0xfc,0x00,0x78,0x44,0x7c,0x00,0x78,0x45,
 0x7c,0x00,0x79,0x3f,0xaa,0x02,0x20,0x60,0x00,0x00,0x58,0x00,0x00,0x78,0x67,0xe4,
-0x0b,0x37,0x20,0x40,0x03,0x00,0x78,0x2e,0xfc,0x00,0x78,0x47,0x7c,0x00,0x78,0x24,
+0x0b,0x37,0x20,0x40,0x03,0x08,0x78,0x2e,0xfc,0x00,0x78,0x47,0x7c,0x00,0x78,0x24,
 0xfc,0x00,0x58,0x00,0x0a,0x98,0x08,0x00,0x86,0x10,0xdf,0x20,0x00,0x50,0x6f,0xe8,
-0x4b,0xca,0x08,0x00,0x86,0x20,0xc2,0x00,0x03,0x16,0xdf,0x20,0x00,0x13,0x58,0x00,
-0x00,0x00,0x08,0x00,0x86,0x08,0xc2,0x00,0x03,0x1a,0x78,0x24,0x7c,0x00,0x08,0x00,
+0x4b,0xca,0x08,0x00,0x86,0x20,0xc2,0x00,0x03,0x1e,0xdf,0x20,0x00,0x13,0x58,0x00,
+0x00,0x00,0x08,0x00,0x86,0x08,0xc2,0x00,0x03,0x22,0x78,0x24,0x7c,0x00,0x08,0x00,
 0x86,0x10,0x78,0x44,0x7c,0x00,0x20,0x60,0x00,0x00,0x68,0x44,0x4b,0xb7,0x78,0x48,
 0x7c,0x00,0x18,0x42,0x36,0x00,0x78,0x58,0x7c,0x00,0x78,0x57,0x7c,0x00,0xd8,0x40,
 0x00,0x00,0x20,0x40,0x49,0x1c,0x20,0x40,0x49,0xea,0x20,0x40,0x4a,0x13,0x24,0x2c,
@@ -206,25 +208,25 @@
 0x00,0x0a,0x19,0x83,0x7e,0x00,0x67,0xe4,0x0b,0x39,0x09,0x80,0x00,0x08,0x78,0x45,
 0xfc,0x00,0x78,0x45,0x7c,0x00,0x20,0x23,0x46,0x49,0xdf,0x20,0x00,0x12,0xd8,0xa0,
 0x0b,0x1e,0x78,0x26,0x7c,0x00,0x78,0x24,0xfc,0x00,0x09,0x80,0x00,0x08,0x19,0x89,
-0x7e,0x00,0xe7,0xe2,0x00,0x05,0xc2,0x00,0x03,0x39,0x09,0x80,0x00,0x10,0x20,0x40,
+0x7e,0x00,0xe7,0xe2,0x00,0x05,0xc2,0x00,0x03,0x41,0x09,0x80,0x00,0x10,0x20,0x40,
 0x46,0x49,0x20,0x63,0x00,0x00,0x6f,0xec,0x0b,0x20,0x68,0x4c,0x41,0xd1,0x98,0x46,
 0x7c,0x00,0x24,0x62,0x80,0x00,0x6f,0xe8,0x0b,0x2c,0x1f,0xe3,0x7e,0x00,0x67,0xe8,
 0x01,0x63,0x6f,0xe2,0x0b,0x1f,0x67,0xe2,0x01,0x72,0x58,0x00,0x00,0x67,0x67,0xe2,
 0x0b,0x1e,0x6f,0xec,0x40,0xa0,0x67,0xec,0x0b,0x1f,0x58,0x00,0x00,0x00,0x67,0xf2,
 0x0b,0x25,0x20,0x40,0x4a,0x4c,0x20,0x40,0x49,0x15,0xd8,0x40,0x00,0x00,0x20,0x40,
 0x49,0x30,0x20,0x40,0x4a,0x50,0x20,0x40,0x4a,0x5e,0x6f,0xe4,0x0b,0x39,0x67,0xe4,
-0x0b,0x37,0x20,0x40,0x03,0x00,0x78,0x2e,0x7c,0x00,0x78,0x47,0x7c,0x00,0x78,0x24,
+0x0b,0x37,0x20,0x40,0x03,0x08,0x78,0x2e,0x7c,0x00,0x78,0x47,0x7c,0x00,0x78,0x24,
 0xfc,0x00,0xdf,0x20,0x00,0x0d,0xd8,0xc0,0x0b,0x1e,0xef,0xe2,0x00,0x06,0x08,0x00,
-0x86,0x08,0xc2,0x00,0x03,0x5d,0x78,0x24,0x7c,0x00,0x08,0x00,0x86,0x10,0x78,0x44,
+0x86,0x08,0xc2,0x00,0x03,0x65,0x78,0x24,0x7c,0x00,0x08,0x00,0x86,0x10,0x78,0x44,
 0x7c,0x00,0x20,0x40,0x46,0x49,0x70,0x4b,0xb6,0x00,0x58,0x00,0x00,0x00,0x67,0xe4,
-0x02,0xce,0x2d,0x00,0x06,0x03,0x20,0x20,0x83,0x6b,0x37,0xcb,0x82,0x00,0x20,0x20,
-0x03,0x67,0x6f,0xe8,0x01,0x63,0x1f,0xe1,0xfe,0x03,0x1f,0xe2,0x50,0x00,0x6f,0xec,
+0x02,0xd6,0x2d,0x00,0x06,0x03,0x20,0x20,0x83,0x73,0x37,0xcb,0x82,0x00,0x20,0x20,
+0x03,0x6f,0x6f,0xe8,0x01,0x63,0x1f,0xe1,0xfe,0x03,0x1f,0xe2,0x50,0x00,0x6f,0xec,
 0x41,0xd1,0x67,0xec,0x00,0x40,0x20,0x40,0x44,0x31,0x20,0x40,0x44,0x78,0x20,0x36,
-0x83,0x77,0x20,0x40,0x44,0x51,0x24,0x3a,0x03,0x71,0x70,0x0a,0xff,0xbb,0x20,0x20,
-0x50,0x4e,0x70,0x4b,0xd6,0x01,0x6f,0xe2,0x05,0x4d,0x20,0x40,0x03,0x7b,0x20,0x20,
+0x83,0x7f,0x20,0x40,0x44,0x51,0x24,0x3a,0x03,0x79,0x70,0x0a,0xff,0xbb,0x20,0x20,
+0x50,0x4e,0x70,0x4b,0xd6,0x01,0x6f,0xe2,0x05,0x4d,0x20,0x40,0x03,0x83,0x20,0x20,
 0x43,0xc4,0x6f,0xe6,0x05,0x4e,0x67,0xe6,0x4b,0xce,0x70,0x00,0x7c,0x42,0x20,0x60,
 0x00,0x00,0x58,0x00,0x00,0x00,0x67,0xe2,0x00,0x48,0x6f,0xe2,0x4b,0xce,0xc0,0x00,
-0x03,0x85,0xc0,0x02,0x03,0x8b,0x20,0x60,0x00,0x00,0x18,0x00,0x7e,0x0a,0x20,0x40,
+0x03,0x8d,0xc0,0x02,0x03,0x93,0x20,0x60,0x00,0x00,0x18,0x00,0x7e,0x0a,0x20,0x40,
 0x66,0x7a,0x58,0x1d,0x32,0x01,0xe7,0xf2,0x00,0x05,0x58,0x00,0x00,0x00,0x20,0x20,
 0x66,0x99,0x18,0x00,0x7e,0x04,0x20,0x40,0x66,0x7a,0x58,0x00,0x00,0x04,0xe7,0xe6,
 0x00,0x05,0x58,0x00,0x00,0x01,0x20,0x20,0x66,0x99,0x20,0x40,0x4c,0x24,0x20,0x40,
@@ -233,25 +235,38 @@
 0x60,0xe9,0x6f,0xe2,0x00,0x0b,0x1f,0xe0,0xfe,0x01,0x67,0xe2,0x00,0x0b,0x20,0x40,
 0x48,0x3d,0x20,0x20,0x43,0xde,0x18,0x42,0x7e,0x00,0x20,0x40,0x7d,0x2b,0x1c,0x30,
 0x7e,0x00,0x79,0x20,0x7e,0x2c,0x20,0x40,0x7d,0x14,0x79,0x3f,0xfe,0x2c,0x20,0x40,
-0x4a,0x76,0x20,0x40,0x7d,0x14,0x20,0x74,0x00,0x00,0x20,0x40,0x03,0xb7,0x20,0x20,
-0x4a,0x2f,0x1b,0x42,0x7e,0x00,0x20,0x40,0x03,0xb6,0x20,0x20,0x4a,0xe9,0x6f,0xe4,
+0x4a,0x76,0x20,0x40,0x7d,0x14,0x20,0x74,0x00,0x00,0x20,0x40,0x03,0xbf,0x20,0x20,
+0x4a,0x2f,0x1b,0x42,0x7e,0x00,0x20,0x40,0x03,0xbe,0x20,0x20,0x4a,0xe9,0x6f,0xe4,
 0x40,0x4e,0x1f,0xe3,0x7e,0x00,0x20,0x40,0x7d,0x2b,0x1e,0x02,0x7e,0x00,0x20,0x40,
-0x7d,0x14,0x1b,0x42,0x04,0x00,0x20,0x40,0x03,0xb6,0x20,0x20,0x4b,0x67,0x20,0x40,
+0x7d,0x14,0x1b,0x42,0x04,0x00,0x20,0x40,0x03,0xbe,0x20,0x20,0x4b,0x67,0x20,0x40,
 0x7d,0x14,0x98,0x00,0x0c,0x00,0x79,0x3f,0x8c,0x10,0x20,0x20,0x7d,0x1f,0x20,0x40,
-0x68,0xc4,0x20,0x40,0x60,0xd7,0x20,0x40,0x03,0xbe,0x20,0x20,0x40,0x0a,0x20,0x75,
-0x80,0x00,0x20,0x20,0x7b,0x9a,0x20,0x20,0x40,0x10,0x20,0x30,0x83,0xd1,0x70,0x89,
+0x68,0xc4,0x20,0x40,0x60,0xd7,0x20,0x40,0x03,0xc6,0x20,0x20,0x40,0x0a,0x20,0x75,
+0x80,0x00,0x20,0x20,0x7b,0x9a,0x20,0x20,0x40,0x10,0x20,0x30,0x83,0xda,0x70,0x89,
 0x55,0xd4,0x20,0x00,0x00,0x04,0x70,0x89,0x55,0xd2,0x20,0x00,0x00,0x04,0x70,0x89,
-0x55,0xd1,0x20,0x00,0x00,0x04,0x6f,0xe2,0x41,0xdf,0xc0,0x00,0x03,0xcf,0xc0,0x00,
-0x83,0xdf,0xc0,0x01,0x03,0xcf,0xc0,0x01,0x83,0xdf,0xc0,0x02,0x03,0xdf,0xc0,0x10,
-0x03,0xdf,0x70,0x89,0x55,0xd0,0x70,0x89,0x56,0xe0,0x18,0x00,0x2a,0x08,0x18,0x00,
-0x2a,0x00,0x78,0x50,0xfc,0x00,0x78,0x50,0x7c,0x00,0x78,0x2f,0x7c,0x00,0x70,0x89,
-0x02,0x00,0x70,0x89,0x01,0x00,0x70,0x89,0x00,0x00,0x70,0x89,0x03,0x00,0x70,0x89,
-0x04,0x70,0x6f,0xe2,0x89,0x06,0x79,0x20,0x7e,0x00,0x67,0xe2,0x89,0x06,0x20,0x60,
-0x00,0x00,0x70,0x89,0x55,0xd0,0x70,0x89,0x56,0xc0,0x20,0x20,0x03,0xd1,0x20,0x40,
-0x57,0xaf,0x20,0x40,0x03,0xe5,0x20,0x20,0x58,0xa7,0x20,0x36,0x83,0xec,0x20,0x20,
-0x57,0xbe,0x60,0x42,0x00,0x17,0x20,0x40,0x49,0x2a,0x20,0x40,0x49,0x80,0x58,0x00,
-0x05,0x00,0x20,0x40,0x4a,0x8e,0x6f,0xe2,0x89,0x06,0x79,0x20,0x7e,0x00,0x67,0xe2,
-0x89,0x06,0x20,0x20,0x49,0x37,0x70,0x89,0x06,0x7c,0x20,0x75,0x80,0x00,0x58,0x00,
+0x55,0xd1,0x20,0x00,0x00,0x04,0x6f,0xe2,0x41,0xdf,0xc0,0x00,0x03,0xd8,0xc0,0x00,
+0x83,0xe8,0xc0,0x01,0x03,0xd8,0xc0,0x04,0x03,0xd8,0xc0,0x01,0x83,0xe8,0xc0,0x02,
+0x03,0xe8,0xc0,0x10,0x03,0xe8,0x70,0x89,0x55,0xd0,0x70,0x89,0x56,0xe0,0x18,0x00,
+0x2a,0x08,0x18,0x00,0x2a,0x00,0x78,0x50,0xfc,0x00,0x78,0x50,0x7c,0x00,0x78,0x2f,
+0x7c,0x00,0x70,0x89,0x02,0x00,0x70,0x89,0x01,0x00,0x70,0x89,0x00,0x00,0x70,0x89,
+0x03,0x00,0x70,0x89,0x04,0x70,0x6f,0xe2,0x89,0x06,0x79,0x20,0x7e,0x00,0x67,0xe2,
+0x89,0x06,0x20,0x60,0x00,0x00,0x70,0x89,0x55,0xd0,0x70,0x89,0x56,0xc0,0x20,0x20,
+0x03,0xda,0x20,0x40,0x57,0xaf,0x20,0x40,0x03,0xee,0x20,0x20,0x58,0xa7,0x20,0x36,
+0x83,0xf5,0x20,0x20,0x57,0xbe,0x60,0x42,0x00,0x17,0x20,0x40,0x49,0x2a,0x20,0x40,
+0x49,0x80,0x58,0x00,0x05,0x00,0x20,0x40,0x4a,0x8e,0x6f,0xe2,0x89,0x06,0x79,0x20,
+0x7e,0x00,0x67,0xe2,0x89,0x06,0x70,0x89,0x00,0x3c,0x70,0x89,0x01,0xe0,0x70,0x89,
+0x6d,0x12,0x20,0x00,0x00,0x0a,0x70,0x89,0x02,0x01,0x70,0x89,0x02,0x3d,0x20,0x00,
+0x00,0x0a,0x70,0x89,0x03,0xb7,0x20,0x00,0x00,0x0a,0x70,0x89,0x02,0x7f,0x70,0x89,
+0x4b,0xba,0x6f,0xe2,0x41,0xdf,0xc0,0x00,0x04,0x0b,0xc0,0x00,0x84,0x10,0xc0,0x01,
+0x04,0x18,0xc0,0x04,0x04,0x22,0xc0,0x01,0x84,0x1d,0xc0,0x02,0x49,0x58,0xc0,0x10,
+0x49,0x5c,0x58,0x88,0xe0,0xd0,0x67,0xe6,0x89,0x55,0x58,0x00,0x10,0x5c,0x67,0xe4,
+0x89,0x58,0x20,0x20,0x49,0x48,0x58,0x88,0xf7,0xdf,0x67,0xe6,0x89,0x55,0x58,0x00,
+0x10,0x3c,0x67,0xe4,0x89,0x58,0x70,0x89,0x56,0xf7,0x20,0x40,0x49,0x62,0x70,0x89,
+0x55,0xdf,0x20,0x60,0x00,0x00,0x58,0x88,0xe0,0xd0,0x67,0xe6,0x89,0x55,0x58,0x00,
+0x10,0x3c,0x67,0xe4,0x89,0x58,0x20,0x20,0x49,0x50,0x58,0x88,0xe0,0xd0,0x67,0xe6,
+0x89,0x55,0x58,0x00,0x10,0x6c,0x67,0xe4,0x89,0x58,0x20,0x20,0x49,0x54,0x70,0x89,
+0x54,0x6b,0x70,0x89,0x5a,0x7a,0x58,0xcc,0xff,0xff,0x67,0xe6,0x89,0x55,0x58,0x00,
+0x10,0x3c,0x67,0xe4,0x89,0x58,0x70,0x89,0x56,0xff,0x20,0x40,0x49,0x62,0x70,0x89,
+0x55,0xff,0x20,0x60,0x00,0x00,0x70,0x89,0x06,0x7c,0x20,0x75,0x80,0x00,0x58,0x00,
 0x00,0x00,0x67,0xe4,0x41,0xdd,0x1c,0x43,0x7e,0x00,0x67,0xe8,0x40,0x94,0x20,0x60,
 0x00,0x00,0x20,0x20,0x4b,0x7f,0x58,0x00,0x00,0x25,0x67,0xe4,0x44,0xcc,0x20,0x40,
 0x5b,0xf0,0x20,0x40,0x5c,0x0c,0x20,0x40,0x5c,0x19,0x20,0x20,0x5b,0xf8,0x20,0x40,
@@ -265,7 +280,7 @@
 0x44,0xdd,0x20,0x7a,0x00,0x00,0x18,0xc2,0x7e,0x00,0x67,0xe4,0x44,0xdf,0x6f,0xe2,
 0x44,0xde,0xc0,0x01,0xe0,0x44,0x20,0x40,0x5a,0x76,0xd8,0xe0,0x00,0x03,0x24,0x34,
 0x4b,0xec,0x20,0x40,0x4b,0xf0,0x20,0x20,0x5a,0x6b,0xef,0xe4,0x00,0x06,0xc0,0x02,
-0x04,0x56,0xc0,0x03,0x5e,0xd4,0xc0,0x02,0xde,0x96,0x20,0x60,0x00,0x00,0x18,0x0a,
+0x04,0x92,0xc0,0x03,0x5e,0xd4,0xc0,0x02,0xde,0x96,0x20,0x60,0x00,0x00,0x18,0x0a,
 0x7e,0x00,0xd8,0x40,0x00,0x0f,0x98,0x41,0x7e,0x00,0x1f,0xe0,0xfe,0x19,0x20,0x40,
 0x5a,0xef,0x6f,0xe2,0x0a,0xbe,0x68,0x42,0x44,0x5f,0x98,0x46,0x7c,0x00,0x24,0x22,
 0xda,0xce,0xd8,0xe0,0x00,0x00,0x6f,0xe4,0x44,0x54,0x20,0x20,0x7c,0xe3,0x20,0x40,
@@ -277,19 +292,19 @@
 0x50,0x4e,0x70,0x0a,0xff,0xb4,0x58,0x00,0x00,0x1c,0x20,0x40,0x50,0xa5,0x6f,0xec,
 0x44,0x72,0xe7,0xec,0x00,0x0a,0x6f,0xec,0x04,0x4b,0xe7,0xec,0x00,0x0a,0xd8,0xc0,
 0x43,0xeb,0xdf,0x20,0x00,0x10,0x20,0x40,0x67,0xd4,0x20,0x20,0x67,0xb9,0xef,0xe6,
-0x00,0x06,0x67,0xe6,0x04,0x73,0xc0,0x09,0x04,0x5b,0xc0,0x05,0x04,0x69,0x20,0x20,
+0x00,0x06,0x67,0xe6,0x04,0x73,0xc0,0x09,0x04,0x97,0xc0,0x05,0x04,0xa5,0x20,0x20,
 0x5c,0x8d,0x18,0xc2,0x22,0x00,0x6f,0xe4,0x44,0xce,0x1f,0xe0,0xa5,0xfd,0x20,0x40,
 0x5a,0xbe,0x6f,0xe2,0x44,0xbb,0xc3,0x02,0x5e,0x1d,0x68,0x44,0x04,0x74,0x6f,0xe4,
-0x44,0xcc,0x98,0x46,0x7c,0x00,0x24,0x22,0xde,0x1d,0x20,0x40,0x04,0x7b,0x24,0x34,
+0x44,0xcc,0x98,0x46,0x7c,0x00,0x24,0x22,0xde,0x1d,0x20,0x40,0x04,0xb7,0x24,0x34,
 0x5e,0x1d,0x70,0x04,0x76,0x05,0x20,0x20,0x5e,0x57,0x68,0x44,0x04,0x74,0x6f,0xe2,
-0x44,0xbb,0xc2,0x81,0x84,0x6d,0x20,0x20,0x5d,0x9f,0x6f,0xe4,0x44,0xcc,0x98,0x46,
-0x7c,0x00,0x24,0x22,0xdd,0x9f,0x20,0x40,0x04,0x7b,0x24,0x34,0x5d,0x9f,0x70,0x04,
+0x44,0xbb,0xc2,0x81,0x84,0xa9,0x20,0x20,0x5d,0x9f,0x6f,0xe4,0x44,0xcc,0x98,0x46,
+0x7c,0x00,0x24,0x22,0xdd,0x9f,0x20,0x40,0x04,0xb7,0x24,0x34,0x5d,0x9f,0x70,0x04,
 0x76,0x05,0x20,0x20,0x5e,0x57,0x6f,0xe4,0x46,0x52,0xc3,0x04,0xd0,0x1c,0x20,0x40,
-0x04,0x78,0x20,0x20,0x4e,0xda,0x6f,0xe2,0x46,0x79,0xc2,0x81,0x04,0x7b,0x20,0x20,
+0x04,0xb4,0x20,0x20,0x4e,0xda,0x6f,0xe2,0x46,0x79,0xc2,0x81,0x04,0xb7,0x20,0x20,
 0x7d,0xc1,0x20,0x40,0x7d,0xc1,0x6f,0xe2,0x44,0x98,0xc1,0x00,0x00,0x00,0x6f,0xe2,
 0x04,0x3b,0xc3,0x82,0x00,0x00,0x20,0x20,0x7d,0xbf,0x70,0x4b,0x7f,0x00,0x70,0x4b,
 0x7e,0x00,0x20,0x20,0x4d,0x6b,0x70,0x4b,0xd6,0x00,0x20,0x40,0x4e,0x2f,0x20,0x40,
-0x04,0x8c,0x6f,0xe4,0x46,0x52,0x79,0x3f,0xfe,0x0c,0x67,0xe4,0x46,0x52,0x70,0x0a,
+0x04,0xc8,0x6f,0xe4,0x46,0x52,0x79,0x3f,0xfe,0x0c,0x67,0xe4,0x46,0x52,0x70,0x0a,
 0xff,0xb6,0x20,0x20,0x50,0x4e,0x70,0x41,0xe3,0x00,0x70,0x46,0x50,0x00,0x70,0x42,
 0x04,0x00,0x70,0x4b,0x7e,0x00,0x70,0x4b,0x7f,0x00,0x20,0x60,0x00,0x00,0x20,0x40,
 0x4e,0x2f,0x70,0x0a,0xff,0xb1,0x58,0x00,0x00,0x01,0x20,0x40,0x50,0xa5,0x58,0x00,
@@ -299,14 +314,14 @@
 0x50,0x4e,0x70,0x4b,0x7e,0x00,0x58,0x00,0x00,0x01,0x67,0xe2,0x4b,0x7f,0x20,0x60,
 0x00,0x00,0x6f,0xe2,0x41,0xe3,0xc1,0x00,0x80,0x00,0x6f,0xe4,0x46,0x52,0x79,0x20,
 0x7e,0x0c,0x67,0xe4,0x46,0x52,0x70,0x0a,0xff,0xb0,0x20,0x40,0x50,0x4e,0x70,0x41,
-0xe3,0x01,0x20,0x40,0x4d,0x6b,0x20,0x20,0x4d,0x89,0x20,0x20,0x04,0x92,0x58,0x00,
+0xe3,0x01,0x20,0x40,0x4d,0x6b,0x20,0x20,0x4d,0x89,0x20,0x20,0x04,0xce,0x58,0x00,
 0x00,0x05,0x67,0xe2,0x4b,0x7e,0x20,0x60,0x00,0x00,0x20,0x20,0x4d,0x48,0x20,0x60,
-0x00,0x00,0x20,0x20,0x04,0xb8,0x70,0x0a,0xff,0xb5,0x58,0x00,0x00,0x1c,0x20,0x40,
+0x00,0x00,0x20,0x20,0x04,0xf4,0x70,0x0a,0xff,0xb5,0x58,0x00,0x00,0x1c,0x20,0x40,
 0x50,0xa5,0x6f,0xec,0x40,0xa0,0xe7,0xec,0x00,0x0a,0x6f,0xec,0x00,0x40,0xe7,0xec,
 0x00,0x0a,0xd8,0xc0,0x41,0xbf,0xdf,0x20,0x00,0x10,0x20,0x40,0x67,0xd4,0x20,0x20,
-0x67,0xb9,0xda,0x60,0x4b,0x7e,0xda,0x40,0x04,0xc6,0x20,0x20,0x4d,0x04,0x6f,0xe2,
+0x67,0xb9,0xda,0x60,0x4b,0x7e,0xda,0x40,0x05,0x02,0x20,0x20,0x4d,0x04,0x6f,0xe2,
 0x02,0x7b,0x79,0x20,0x7e,0x00,0x79,0x20,0x7e,0x07,0x67,0xe2,0x02,0x7b,0x20,0x60,
-0x00,0x00,0xda,0x60,0x46,0x50,0xda,0x40,0x04,0xa7,0x20,0x20,0x4d,0x04,0xda,0x60,
+0x00,0x00,0xda,0x60,0x46,0x50,0xda,0x40,0x04,0xe3,0x20,0x20,0x4d,0x04,0xda,0x60,
 0x4b,0x7f,0xda,0x40,0x4d,0x64,0x20,0x20,0x4d,0x04,0x20,0x40,0x56,0x4b,0x24,0x7a,
 0x00,0x00,0x6f,0xe2,0x0b,0x00,0x1f,0xe0,0xa2,0x01,0x20,0x40,0x51,0x3d,0x6f,0xe4,
 0x42,0x20,0xe7,0xe4,0x00,0x05,0x58,0x00,0x00,0xa1,0xe7,0xe2,0x00,0x05,0x6f,0xe2,
@@ -315,15 +330,15 @@
 0x41,0xbf,0xdf,0x20,0x00,0x10,0x20,0x40,0x67,0xed,0x20,0x40,0x68,0xbe,0x20,0x40,
 0x4d,0x6b,0x20,0x40,0x4d,0x5c,0x20,0x20,0x50,0x1f,0x6f,0xe4,0x02,0x60,0x1f,0xe2,
 0x0c,0x00,0xef,0xe2,0x00,0x06,0x1f,0xe1,0x04,0x0f,0x1f,0xf1,0xfe,0x00,0xc0,0x04,
-0xd1,0x2d,0xc0,0x03,0xd1,0x2d,0xc0,0x05,0x04,0xf5,0xc0,0x02,0x85,0x08,0xc0,0x00,
-0x85,0x0a,0xc0,0x02,0x51,0x2d,0x20,0x60,0x00,0x00,0x20,0x20,0x04,0xfa,0xef,0xe4,
-0x00,0x06,0x67,0xe4,0x0a,0x96,0xc0,0x00,0x85,0x02,0x20,0x60,0x00,0x00,0x70,0x0a,
+0xd1,0x2d,0xc0,0x03,0xd1,0x2d,0xc0,0x05,0x05,0x31,0xc0,0x02,0x85,0x44,0xc0,0x00,
+0x85,0x46,0xc0,0x02,0x51,0x2d,0x20,0x60,0x00,0x00,0x20,0x20,0x05,0x36,0xef,0xe4,
+0x00,0x06,0x67,0xe4,0x0a,0x96,0xc0,0x00,0x85,0x3e,0x20,0x60,0x00,0x00,0x70,0x0a,
 0xff,0xb2,0x6f,0xe4,0x02,0x62,0x1f,0xe2,0x72,0x00,0x20,0x40,0x50,0xa5,0x6f,0xe4,
 0x02,0x60,0x1f,0xe2,0x0c,0x00,0x20,0x40,0x67,0xc1,0x20,0x20,0x67,0xb9,0x70,0x0a,
 0xff,0xb2,0x58,0x00,0x00,0x02,0x20,0x40,0x50,0xa5,0x6f,0xe4,0x0a,0x96,0xe7,0xe4,
-0x00,0x0a,0x20,0x20,0x67,0xb9,0x20,0x40,0x04,0xf5,0x20,0x20,0x51,0x26,0x18,0x42,
+0x00,0x0a,0x20,0x20,0x67,0xb9,0x20,0x40,0x05,0x31,0x20,0x20,0x51,0x26,0x18,0x42,
 0x7e,0x00,0xc0,0x02,0xd1,0x1e,0x70,0x4b,0x80,0x01,0xc0,0x01,0xd1,0x2d,0x70,0x4b,
-0x80,0x00,0xc0,0x02,0x51,0x2d,0x20,0x60,0x00,0x00,0x0c,0xc6,0xaa,0x55,0x40,0x00,
+0x80,0x00,0xc0,0x02,0x51,0x2d,0x20,0x60,0x00,0x00,0xe4,0x64,0xaa,0x55,0x40,0x00,
 0x00,0x40,0x22,0x00,0x00,0x00,0x00,0x40,0x10,0x20,0x00,0x00,0x00,0xe0,0x01,0x00,
 0x01,0x00,0x20,0x02,0x10,0x00,0x0c,0x12,0x00,0x59,0x00,0x01,0x00,0x08,0x00,0x00,
 0x00,0x00,0x68,0x00,0x08,0x80,0x22,0x00,0x01,0xf4,0x02,0x00,0x00,0x00,0x00,0x00,
@@ -405,7 +420,7 @@
 0x04,0x28,0x01,0x09,0x02,0x05,0x09,0x00,0x02,0x00,0xaa,0x55,0x01,0x00,0x92,0x40,
 0x0a,0xaa,0x55,0x03,0x00,0x14,0x42,0xc5,0x4a,0x05,0xaa,0x55,0x10,0x00,0xf0,0x4f,
 0x00,0x1c,0xff,0x1f,0x00,0x1c,0x00,0x1c,0x80,0x4c,0xe0,0x4f,0x80,0x4c,0x80,0x4c,
-0xaa,0x55,0x02,0x00,0x68,0x46,0x20,0x0b,0xaa,0x55,0x01,0x00,0x6c,0x46,0x03,0xaa,
+0xaa,0x55,0x02,0x00,0x68,0x46,0x20,0x0e,0xaa,0x55,0x01,0x00,0x6c,0x46,0x03,0xaa,
 0x55,0x01,0x00,0x6f,0x46,0x07,0xaa,0x55,0x01,0x00,0x79,0x46,0x00,0xaa,0x55,0x01,
 0x00,0x91,0x40,0x00,0xaa,0x55,0x03,0x00,0x54,0x41,0x00,0x01,0x08,0xaa,0x55,0x01,
 0x00,0x74,0x41,0x02,0xaa,0x55,0x02,0x00,0xe4,0x41,0x0e,0x00,0xaa,0x55,0x10,0x00,
@@ -422,5 +437,5 @@
 0x08,0x0e,0x05,0x04,0x00,0xaa,0x55,0x02,0x00,0x02,0x42,0x30,0x1f,0xaa,0x55,0x01,
 0x00,0x10,0x42,0x20,0xaa,0x55,0x01,0x00,0xe0,0x41,0x01,0xaa,0x55,0x0f,0x00,0x6f,
 0x4b,0x4b,0xba,0x55,0xd0,0x56,0xe0,0x57,0x88,0x58,0x6c,0x59,0x10,0x07,0xff,0xff,
-0xaa,0x55,0x02,0x00,0xc3,0x40,0x6f,0x4b,0x6a,0x86
+0xaa,0x55,0x02,0x00,0xc3,0x40,0x6f,0x4b,0x55,0xaa,0xaa,0x55,0x4b,0x44,0x1e,0x9d
 };
Index: output/memmap.format
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/output/memmap.format	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/output/memmap.format	(working copy)
@@ -969,7 +969,8 @@
 0x4bd5 mem_btsniff
 0x4bd6 mem_ns_wake_up_flag
 0x4bd7 mem_context_new
-0x4c77 mem_module_end
+0x4c77 mem_hid_response
+0x4c78 mem_module_end
 0x0b1e mem_m_process_sync_buffer
 0x0b37 mem_m_snd_op
 0x0b39 mem_m_rcv_op
Index: patch/patch.prog
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/patch/patch.prog	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/patch/patch.prog	(working copy)
@@ -890,8 +890,16 @@
 p_send_lmp_accepted:
 	fetch 1,mem_lmi_opcode
 	beq LMP_SNIFF_REQ,p_send_lmp_accept_sniff_req
+	beq LMP_HOST_CONNECTION_REQ,p_send_lmp_accepted_connection
 	branch send_lmp_accepted+7
-	
+p_send_lmp_accepted_connection:
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmo_opcode2
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_CONN_REQ,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_BB_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event	
 p_send_lmp_accept_sniff_req:
 	jam BT_EVT_SNIFF_REPORT,mem_fifo_temp
 	call ui_ipc_send_event	
@@ -1549,6 +1557,7 @@
 	beq TX_POWER_0DB,p_shutdown_radio_0db
 	beq TX_POWER_3DB,p_shutdown_radio_3db
 	beq TX_POWER_5DB,p_shutdown_radio_5db
+	beq TX_POWER_8DB,p_shutdown_radio_5db
 	beq TX_POWER_f3DB,p_shutdown_radio_f3db
 	beq TX_POWER_f5DB,p_shutdown_radio_f5db
 	beq TX_POWER_PAIR,p_shutdown_radio_pair
@@ -1599,12 +1608,67 @@
 	fetch 1,rfen_adc
 	set1 0,pdata
 	store 1,rfen_adc
-	branch txon+1
+	hjam 0x3c,rfen_rx
+	hjam 0xe0,rfen_tx
+	hjam 0x12,0x96d
+	nop 10
+	hjam 0x01,rfen_mdm
+	hjam 0x3d,rfen_mdm
+	nop 10
+	hjam 0xb7,rfen_sn
+	nop 10
+	hjam 0x7f, rfen_mdm
+	hjam 0xba,0x894b
+	fetch 1,mem_tx_power
+	beq TX_POWER_0DB,p_set_tx_power_0db
+	beq TX_POWER_3DB,p_set_tx_power_3db	
+	beq TX_POWER_5DB,p_set_tx_power_5db
+	beq TX_POWER_8DB,p_set_tx_power_8db
+	beq TX_POWER_f3DB,p_set_tx_power_f3db	
+	beq TX_POWER_f5DB,set_tx_power_f5db
+
+	beq TX_POWER_PAIR,set_tx_power_pair
+p_set_tx_power_0db:
+	setarg 0x88e0d0
+	hstore 3,0x8955
+	setarg 0x105c
+	hstore 2,0x8958
+	branch set_tx_power_0db
+p_set_tx_power_3db:
+	setarg 0x88f7df
+	hstore 3,0x8955
+	setarg 0x103c
+	hstore 2,0x8958
+	hjam 0xf7,0x956
+	call txon_common
+	hjam 0xdf,0x955
+	rtn
+p_set_tx_power_5db:
+	setarg 0x88e0d0
+	hstore 3,0x8955
+	setarg 0x103c
+	hstore 2,0x8958
+	branch set_tx_power_5db
+p_set_tx_power_f3db:
+	setarg 0x88e0d0
+	hstore 3,0x8955
+	setarg 0x106c
+	hstore 2,0x8958
+	branch set_tx_power_f3db
+p_set_tx_power_8db:
+	hjam 0x6b,0x954
+	hjam 0x7a,0x95a
+	setarg 0xccffff
+	hstore 3,0x8955
+	setarg 0x103c
+	hstore 2,0x8958
+	hjam 0xff,0x956
+	call txon_common
+	hjam 0xff,0x955
+	rtn
 
 
 p_init_param:
-	hjam 0x74,rfen_adc
-	nop 12000
 	hjam 0x7c,rfen_adc
 	rtn wake
 	setarg 0
Index: program_patch/main_patch.prog
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/program_patch/main_patch.prog	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/program_patch/main_patch.prog	(working copy)
@@ -890,8 +890,16 @@
 p_send_lmp_accepted:
 	fetch 1,mem_lmi_opcode
 	beq LMP_SNIFF_REQ,p_send_lmp_accept_sniff_req
+	beq LMP_HOST_CONNECTION_REQ,p_send_lmp_accepted_connection
 	branch send_lmp_accepted+7
-	
+p_send_lmp_accepted_connection:
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmo_opcode2
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_CONN_REQ,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_BB_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event	
 p_send_lmp_accept_sniff_req:
 	jam BT_EVT_SNIFF_REPORT,mem_fifo_temp
 	call ui_ipc_send_event	
Index: program_patch/patch_chip_common_bugfix.prog
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/program_patch/patch_chip_common_bugfix.prog	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/program_patch/patch_chip_common_bugfix.prog	(working copy)
@@ -75,6 +75,7 @@
 	beq TX_POWER_0DB,p_shutdown_radio_0db
 	beq TX_POWER_3DB,p_shutdown_radio_3db
 	beq TX_POWER_5DB,p_shutdown_radio_5db
+	beq TX_POWER_8DB,p_shutdown_radio_5db
 	beq TX_POWER_f3DB,p_shutdown_radio_f3db
 	beq TX_POWER_f5DB,p_shutdown_radio_f5db
 	beq TX_POWER_PAIR,p_shutdown_radio_pair
@@ -125,7 +126,64 @@
 	fetch 1,rfen_adc
 	set1 0,pdata
 	store 1,rfen_adc
-	branch txon+1
+	hjam 0x3c,rfen_rx
+	hjam 0xe0,rfen_tx
+	hjam 0x12,0x96d
+	nop 10
+	hjam 0x01,rfen_mdm
+	hjam 0x3d,rfen_mdm
+	nop 10
+	hjam 0xb7,rfen_sn
+	nop 10
+	hjam 0x7f, rfen_mdm
+	hjam 0xba,0x894b
+	fetch 1,mem_tx_power
+	beq TX_POWER_0DB,p_set_tx_power_0db
+	beq TX_POWER_3DB,p_set_tx_power_3db	
+	beq TX_POWER_5DB,p_set_tx_power_5db
+	beq TX_POWER_8DB,p_set_tx_power_8db
+	beq TX_POWER_f3DB,p_set_tx_power_f3db	
+	beq TX_POWER_f5DB,set_tx_power_f5db
+
+	beq TX_POWER_PAIR,set_tx_power_pair
+p_set_tx_power_0db:
+	setarg 0x88e0d0
+	hstore 3,0x8955
+	setarg 0x105c
+	hstore 2,0x8958
+	branch set_tx_power_0db
+p_set_tx_power_3db:
+	setarg 0x88f7df
+	hstore 3,0x8955
+	setarg 0x103c
+	hstore 2,0x8958
+	hjam 0xf7,0x956
+	call txon_common
+	hjam 0xdf,0x955
+	rtn
+p_set_tx_power_5db:
+	setarg 0x88e0d0
+	hstore 3,0x8955
+	setarg 0x103c
+	hstore 2,0x8958
+	branch set_tx_power_5db
+p_set_tx_power_f3db:
+	setarg 0x88e0d0
+	hstore 3,0x8955
+	setarg 0x106c
+	hstore 2,0x8958
+	branch set_tx_power_f3db
+p_set_tx_power_8db:
+	hjam 0x6b,0x954
+	hjam 0x7a,0x95a
+	setarg 0xccffff
+	hstore 3,0x8955
+	setarg 0x103c
+	hstore 2,0x8958
+	hjam 0xff,0x956
+	call txon_common
+	hjam 0xff,0x955
+	rtn
 
 
 p_init_param:
Index: sched/DM_module.dat
===================================================================
--- /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/sched/DM_module.dat	(revision 896)
+++ /YC3121_demo/ModuleDemo/BlueTooth/BT_code_patch/shoubing/sched/DM_module.dat	(working copy)
@@ -21,7 +21,7 @@
 
 ##############BLUETOOTH CONFIG##############
 ###commom###
-mem_soft_version_num:20 0b
+mem_soft_version_num:20 0e
 mem_module_state:03
 mem_module_bluetooth_stauts_by_command:07
 
