Index: do.bat
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/do.bat	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/do.bat	(working copy)
@@ -86,7 +86,7 @@
 goto contin
 
 :SBmode
-%util_path%/geneep  -n -s
+%util_path%/geneep  -n -s -i
 goto contin
 
 :contin
Index: format/app_mouse.format
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/format/app_mouse.format	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/format/app_mouse.format	(working copy)
@@ -430,6 +430,10 @@
 64 mem_le_tx_buffer3_omemalloc_new
 
 1 mem_mouse_qdec_set_flag
+//commbination_dpi
+1 mem_commbination_dpi_timer
+1 mem_mouse_commbination_key_dpi
+
 42 mem_sensor_sg8670_init
 16 mem_sensor_sg8670_dpi_800
 16 mem_sensor_sg8670_dpi_1200
Index: format/g24_protocol_stack/24g_reconn.format
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/format/g24_protocol_stack/24g_reconn.format	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/format/g24_protocol_stack/24g_reconn.format	(working copy)
@@ -21,9 +21,10 @@
 
 (//mem_24g_reconn_type
 0 DEFAULT_24G_DEVICE
-1 FAST_CONN_AND_RECEIVER
+1 FAST_CONN_AND_RECEIVER	
 2 FAST_CONN_AND_3_0_ADDR
 3 RECEIVER_AND_3_0_ADDR
 4 PAIR_AND_3_0_ADDR
+5 PAIR_AND_RECEIVER
 )
 
Index: output/memmap.format
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/memmap.format	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/memmap.format	(working copy)
@@ -1970,99 +1970,101 @@
 0x4a9d mem_le_tx_buffer2_omemalloc_new
 0x4add mem_le_tx_buffer3_omemalloc_new
 0x4b1d mem_mouse_qdec_set_flag
-0x4b1e mem_sensor_sg8670_init
-0x4b48 mem_sensor_sg8670_dpi_800
-0x4b58 mem_sensor_sg8670_dpi_1200
-0x4b68 mem_sensor_sg8670_dpi_1600
-0x4b78 mem_sensor_3056GX_dpi
-0x4b78 mem_sensor_3056GX_dpi_0
-0x4b79 mem_sensor_3056GX_dpi_1
-0x4b7a mem_sensor_3056GX_dpi_2
-0x4b7b mem_sensor_3056GX_dpi_3
-0x4b7c mem_24g_txpayload_buf
-0x4b8c mem_release_data_from_receiver_enable
-0x4b8d mem_release_data_from_transmiter_enable
-0x4b8e mem_flippen_key0_gpio
-0x4b8f mem_flippen_key1_gpio
-0x4b90 mem_flippen_key2_gpio
-0x4b91 mem_flippen_key3_gpio
-0x4b92 mem_flippen_key4_gpio
-0x4b93 mem_flippen_key5_gpio
-0x4b94 mem_flippen_key6_gpio
-0x4b95 mem_flippen_key7_gpio
-0x4b96 mem_flippen_key0_press_status
-0x4b97 mem_flippen_key1_press_status
-0x4b98 mem_flippen_key2_press_status
-0x4b99 mem_flippen_key3_press_status
-0x4b9a mem_flippen_key4_press_status
-0x4b9b mem_flippen_key5_press_status
-0x4b9c mem_flippen_key6_press_status
-0x4b9d mem_flippen_key7_press_status
-0x4b9e mem_key_press_data
-0x4b9e mem_key_pageup_data
-0x4ba7 mem_key_pagedown_data
-0x4bb0 mem_key_shift_f5_data
-0x4bb9 mem_key_esc_data
-0x4bc2 mem_key_b_data
-0x4bcb mem_key_tab
-0x4bd4 mem_key_enter
-0x4bdd mem_key_alt_tab
-0x4be6 mem_key_alt_f4
-0x4bef mem_key_play_pause
-0x4bf8 mem_key_vol_up
-0x4c01 mem_key_vol_down
-0x4c0a mem_standard_key_release
-0x4c13 mem_system_ctrl_key_release
-0x4c1c mem_media_key_release
-0x4c25 mem_key0_long_press_flag
-0x4c26 mem_key1_long_press_flag
-0x4c27 mem_key2_long_press_flag
-0x4c28 mem_key3_long_press_flag
-0x4c29 mem_key4_long_press_flag
-0x4c2a mem_key0_long_press_event
-0x4c2b mem_key1_long_press_event
-0x4c2c mem_key2_long_press_event
-0x4c2d mem_key3_long_press_event
-0x4c2e mem_key4_long_press_event
-0x4c2f mem_key0_short_press_flag
-0x4c30 mem_key1_short_press_flag
-0x4c31 mem_key2_short_press_flag
-0x4c32 mem_key3_short_press_flag
-0x4c33 mem_key4_short_press_flag
-0x4c34 mem_key0_press_timer_count
-0x4c35 mem_key1_press_timer_count
-0x4c36 mem_key2_press_timer_count
-0x4c37 mem_key3_press_timer_count
-0x4c38 mem_key4_press_timer_count
-0x4c39 mem_combination_key_down_flag
-0x4c3a mem_combination_key_longpress_flag
-0x4c3b mem_key_disable_timer
-0x4c3c mem_24g_calculate_package_id_disable
-0x4c3d mem_24g_package_id_abandon_flag
-0x4c3e mem_24g_package_id
-0x4c3f mem_key_state
-0x4c40 mem_key_press_state
-0x4c41 mem_poweron_first_blank_data_enable
-0x4c42 mem_flippen_no_data_timeout
-0x4c44 mem_flippen_start_pair_no_data_timeout
-0x4c46 mem_key_longpress_timer_init
-0x4c48 mem_key_longpress_timer
-0x4c4a mem_low_voltage_led_blink_flag
-0x4c4b mem_low_voltage_led_blink_start_timer
-0x4c4c mem_poweron_led_blink_flag
-0x4c4d mem_24g_pair_enable_flag
-0x4c4e mem_24g_ch_work
-0x4c4f mem_24g_pair_key_down_flag
-0x4c50 mem_24g_pairing_stop_flag
-0x4c51 mem_longpress_24g_enter_hibernate_flag
-0x4c52 mem_g24_connected_state
-0x4c53 mem_g24_pairing_stop_flag
-0x4c54 mem_send_package_before_check
-0x4c55 mem_le_conn_rcv_new
-0x4c56 mem_le_conn_first_rcv
-0x4c57 mem_le_check_retransmit_flag
-0x4c58 mem_le_retransmit_cnt
-0x4c59 mem_le_check_retransmit_discon_flag
+0x4b1e mem_commbination_dpi_timer
+0x4b1f mem_mouse_commbination_key_dpi
+0x4b20 mem_sensor_sg8670_init
+0x4b4a mem_sensor_sg8670_dpi_800
+0x4b5a mem_sensor_sg8670_dpi_1200
+0x4b6a mem_sensor_sg8670_dpi_1600
+0x4b7a mem_sensor_3056GX_dpi
+0x4b7a mem_sensor_3056GX_dpi_0
+0x4b7b mem_sensor_3056GX_dpi_1
+0x4b7c mem_sensor_3056GX_dpi_2
+0x4b7d mem_sensor_3056GX_dpi_3
+0x4b7e mem_24g_txpayload_buf
+0x4b8e mem_release_data_from_receiver_enable
+0x4b8f mem_release_data_from_transmiter_enable
+0x4b90 mem_flippen_key0_gpio
+0x4b91 mem_flippen_key1_gpio
+0x4b92 mem_flippen_key2_gpio
+0x4b93 mem_flippen_key3_gpio
+0x4b94 mem_flippen_key4_gpio
+0x4b95 mem_flippen_key5_gpio
+0x4b96 mem_flippen_key6_gpio
+0x4b97 mem_flippen_key7_gpio
+0x4b98 mem_flippen_key0_press_status
+0x4b99 mem_flippen_key1_press_status
+0x4b9a mem_flippen_key2_press_status
+0x4b9b mem_flippen_key3_press_status
+0x4b9c mem_flippen_key4_press_status
+0x4b9d mem_flippen_key5_press_status
+0x4b9e mem_flippen_key6_press_status
+0x4b9f mem_flippen_key7_press_status
+0x4ba0 mem_key_press_data
+0x4ba0 mem_key_pageup_data
+0x4ba9 mem_key_pagedown_data
+0x4bb2 mem_key_shift_f5_data
+0x4bbb mem_key_esc_data
+0x4bc4 mem_key_b_data
+0x4bcd mem_key_tab
+0x4bd6 mem_key_enter
+0x4bdf mem_key_alt_tab
+0x4be8 mem_key_alt_f4
+0x4bf1 mem_key_play_pause
+0x4bfa mem_key_vol_up
+0x4c03 mem_key_vol_down
+0x4c0c mem_standard_key_release
+0x4c15 mem_system_ctrl_key_release
+0x4c1e mem_media_key_release
+0x4c27 mem_key0_long_press_flag
+0x4c28 mem_key1_long_press_flag
+0x4c29 mem_key2_long_press_flag
+0x4c2a mem_key3_long_press_flag
+0x4c2b mem_key4_long_press_flag
+0x4c2c mem_key0_long_press_event
+0x4c2d mem_key1_long_press_event
+0x4c2e mem_key2_long_press_event
+0x4c2f mem_key3_long_press_event
+0x4c30 mem_key4_long_press_event
+0x4c31 mem_key0_short_press_flag
+0x4c32 mem_key1_short_press_flag
+0x4c33 mem_key2_short_press_flag
+0x4c34 mem_key3_short_press_flag
+0x4c35 mem_key4_short_press_flag
+0x4c36 mem_key0_press_timer_count
+0x4c37 mem_key1_press_timer_count
+0x4c38 mem_key2_press_timer_count
+0x4c39 mem_key3_press_timer_count
+0x4c3a mem_key4_press_timer_count
+0x4c3b mem_combination_key_down_flag
+0x4c3c mem_combination_key_longpress_flag
+0x4c3d mem_key_disable_timer
+0x4c3e mem_24g_calculate_package_id_disable
+0x4c3f mem_24g_package_id_abandon_flag
+0x4c40 mem_24g_package_id
+0x4c41 mem_key_state
+0x4c42 mem_key_press_state
+0x4c43 mem_poweron_first_blank_data_enable
+0x4c44 mem_flippen_no_data_timeout
+0x4c46 mem_flippen_start_pair_no_data_timeout
+0x4c48 mem_key_longpress_timer_init
+0x4c4a mem_key_longpress_timer
+0x4c4c mem_low_voltage_led_blink_flag
+0x4c4d mem_low_voltage_led_blink_start_timer
+0x4c4e mem_poweron_led_blink_flag
+0x4c4f mem_24g_pair_enable_flag
+0x4c50 mem_24g_ch_work
+0x4c51 mem_24g_pair_key_down_flag
+0x4c52 mem_24g_pairing_stop_flag
+0x4c53 mem_longpress_24g_enter_hibernate_flag
+0x4c54 mem_g24_connected_state
+0x4c55 mem_g24_pairing_stop_flag
+0x4c56 mem_send_package_before_check
+0x4c57 mem_le_conn_rcv_new
+0x4c58 mem_le_conn_first_rcv
+0x4c59 mem_le_check_retransmit_flag
+0x4c5a mem_le_retransmit_cnt
+0x4c5b mem_le_check_retransmit_discon_flag
 0x462d mem_remote_car_hard_soft_switch
 0x462e mem_remote_car_queue_each_size
 0x462f mem_remote_car_queue_length
Index: output/otp.dat
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/otp.dat	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/otp.dat	(working copy)
@@ -9,5514 +9,5370 @@
 00
 00
 00
-bf
-1d
-33
-68
-b6
-9d
-fa
-9a
-6a
-40
-d8
-d5
-b4
-3f
-ea
-66
-aa
-55
-70
-15
-b5
-da
-25
-77
-09
-0b
-a7
-84
-4c
-15
-ec
-27
-77
-2b
-2e
+8f
+ab
+f1
+00
+3c
+ae
 c6
-f4
-72
-6c
-97
-cd
-73
-2c
-0e
+03
+78
+5c
 8d
-3e
-42
-6d
-ca
-e6
-ce
-fd
 07
-5f
+e0
+71
+35
+1e
+aa
+55
+e0
 14
-47
-7e
-1d
-2a
-47
-df
-9a
-17
-08
-fa
-f5
-bb
-5b
-d8
-dd
-ab
-8c
-c4
-76
-4b
-e6
-78
-21
-28
-7c
 4e
-93
-ff
-18
-71
-24
+06
+a3
+14
+a2
+a1
+1a
+61
+23
+16
+29
 f6
-2e
-cd
-6b
-f2
-ef
-9a
-da
-99
-f5
-2a
-da
-59
-19
-cd
-9d
-5c
-88
+50
+e2
+3b
+fd
+04
+50
+c7
+37
+27
+04
+c7
+18
+53
+b3
+aa
+35
+ae
+4d
+7a
+6d
+5f
 16
-4e
+4f
+76
+41
+0a
+d8
+df
+32
+f4
+be
+11
+42
 ed
-79
+f8
 c2
-bc
-9b
+21
+13
+d6
+ba
+54
+74
 0e
-2f
-7c
-f2
-f6
-55
-8a
-a8
+c6
+9e
+ae
+06
+69
+6f
+e1
+3b
+a1
+04
 57
-88
-53
-ee
-0f
-af
+ad
 ae
-c5
-f7
-0b
-53
-3c
+35
+5a
+d3
+66
+fb
+f0
+24
+5b
+61
+67
 7a
-14
+67
 9a
-f3
-58
 2a
-51
-4c
-ed
-b0
-81
-1b
-08
-25
-c4
-80
-34
-a4
+65
+63
+f7
+dc
+c2
+56
+ca
+91
 eb
-f4
-5e
-0a
+02
 f6
-b9
-00
-93
-c5
-84
-cf
-21
-ba
-84
+83
+7e
 b0
-c4
-17
-29
-e1
+0d
+c5
+0f
+0d
+50
+fe
 9b
-80
-24
-9b
-f4
-b1
-ed
-66
-35
-f2
-85
-25
-fd
-16
-12
-84
-0a
-b7
-de
-29
-16
-3d
-ae
-d3
-d5
-3f
-f6
-be
-94
+e4
+6f
+32
+dd
+92
+f3
+0f
+1d
 1a
-bf
+2b
+56
+51
+11
 9d
-f5
-49
-ac
-b3
-48
-50
-29
-2e
-8e
-f6
-10
-79
-af
-70
-3d
-07
-ee
-72
-77
+8f
+55
+fa
 6a
-c6
-de
-18
-f7
-41
-e4
-82
-14
-6b
-ae
-03
-86
-92
-86
-f2
+dc
+4f
+a4
+8b
+0f
+8b
+44
 9b
-2b
-67
-b3
 d4
-ec
-3a
-36
-71
-b6
-2e
-50
-3d
-bb
-2d
-f2
-37
-be
-c6
-e1
-b5
-e9
-77
-bb
-0d
-b5
-5c
-c3
-4b
-ab
-ad
-d0
+1e
+b7
+79
+d3
+97
+09
 28
-77
-3d
+22
+6e
+90
+bc
+cc
+e4
+a4
+41
 18
-9f
-7b
-c2
-92
-cf
+9e
+83
+ad
+42
+04
+c5
+43
+3b
+4f
+40
+59
+81
+fc
+36
 c6
-e1
-99
-98
-db
-49
+13
+fe
+9a
+b9
+a4
+d2
+d6
+87
+bf
+c9
+22
+5d
+32
+be
+39
+5f
+c5
+eb
+55
+37
+f6
+b0
+8d
+7f
+cb
+2f
 8e
-79
-b3
-60
-09
-58
-77
+04
+ba
 4d
-dc
-47
+a3
+f3
+71
+b7
+44
+d9
+cc
+e3
+7f
+99
+4f
+93
+e9
+3d
+fd
+ff
+aa
+c6
+ec
+a1
+39
 2f
-3b
-c5
-d3
-57
-70
-30
-a7
-df
-ba
-53
-a2
-bd
-40
-ea
-1e
-e8
+d9
+a6
+50
+54
 51
-3d
-f5
-40
-78
-48
-1f
-9b
+ae
+c2
+7b
 9a
-75
-65
-b7
-43
-e8
-ce
-76
-9e
-7d
-ef
-56
+2a
+0c
+0f
 c0
-50
-73
-3c
-00
-f3
-07
-8d
-3f
-ef
-1f
-6a
-3c
-25
-c3
-8c
-ee
-38
-68
-0a
-f2
-ae
-dc
-5b
-60
+4d
+f8
+ad
+2e
+47
 cc
-a4
-65
-84
-c6
-d5
-e6
-43
-10
-5b
-08
-1e
-c1
-7b
-5e
 85
-1e
-af
-3e
-52
-79
-fe
-70
-57
-49
-c4
-2c
-4a
-9f
+5a
+0c
+0d
+de
 7a
-37
-c7
-53
-72
+af
+c9
+bf
+c1
+41
+f0
+b9
+f2
+0a
+a4
+cf
+81
+03
+15
+47
+9a
+ac
+f8
 b3
-93
-c8
-ab
-e0
-61
-2b
-11
-09
-5a
 9e
-7c
-e0
-a8
-3a
-f8
-05
-82
-a2
-82
-b2
-f0
-11
-a2
-87
-3d
-16
-ec
+17
+e8
+27
 1b
-bc
-0c
-92
-75
-13
-aa
-32
-0c
+23
+dd
+3f
+8e
+4e
+44
+40
+b6
+a9
+a3
+c6
+95
+27
 20
-fc
+98
+20
+af
+ad
+12
+1d
+9c
+8f
+78
+c0
 25
-52
-48
-b5
-ea
+23
+9a
+c1
+69
+e0
+fa
+e4
+6b
+8e
+55
 8c
-d6
-d0
-d7
-d6
-67
-58
-f8
-c9
-39
-d6
-ff
-2a
-82
-89
+9b
 c2
-e2
-24
-79
+1b
+f7
+86
+6a
+98
+5a
+ac
+f4
+56
+d6
+8c
+08
+46
+85
+e8
+61
+15
+2b
+16
+c0
+3d
+32
+40
+0d
+9a
+e3
+f2
+d4
+7f
+4a
 f6
-11
-77
-04
-cb
-41
-9c
-93
-ee
-94
+8c
+36
+34
+d2
+dc
+c6
+0c
+f0
 49
-c9
-94
-d7
-d6
+77
+1b
+46
+ce
+74
+b3
 73
-95
+49
 b1
-6d
-5a
-77
-67
-b8
-db
-37
-40
-e1
 47
-43
-fc
-73
-db
-58
-d7
-a8
-8a
-0b
-11
-89
-1d
-1a
-81
-66
-82
-15
-86
-ac
-d8
-07
-8d
+31
+d6
+d5
+59
+5e
+f8
+4d
+bf
 88
-9f
-e4
-a7
-c0
-22
-f4
-27
+79
+dd
+50
+c6
+56
+0b
+55
+78
+7f
+d8
+2c
+a2
+8a
+ed
+64
 73
-d1
-5b
-ae
-06
-bc
-8d
-98
-6d
-d7
-a3
-3b
-17
-04
-12
-3b
-22
-f2
+ca
+68
+4b
+ca
+77
+89
+27
+7e
+2c
+df
+21
+c8
+c3
+b2
+5d
+f1
+11
 07
-3f
-c1
-75
-59
-6c
+be
+26
+4c
 a3
-37
-e8
-6c
+97
+5b
+9a
+d8
+9c
 b8
-4b
-7c
-b2
-b9
-ca
-49
-1d
-69
-86
-4e
-42
 a4
-9a
-c5
-1a
+38
+0c
+63
 9b
-17
-ea
-06
-b5
-02
-87
-de
-98
+c5
+46
+8c
+dd
+f8
+d6
+9c
+f9
+2e
+83
+2d
+d2
+18
 e8
-9b
-5f
-fa
-08
+ae
+7f
+b3
+01
+5e
+86
+36
+37
 fe
-21
-7d
-1a
-3a
-ed
-1c
-20
-41
-71
-ba
-ce
+dc
+da
+59
+b8
+9b
+c1
 77
-52
-65
-d7
-e1
-4c
-73
-ea
+08
+0d
+92
+d8
+9f
+7c
+d8
+70
+7f
 69
-66
+be
+2f
+de
+08
+c2
 30
-77
-17
-38
-ed
-54
-1c
-28
-c8
-d7
-dc
+85
+02
+00
+37
+ff
+e0
+59
+a0
+bc
+57
+b6
 43
-29
-aa
-4f
-3c
-cb
-3d
-01
-31
-b4
-7f
-b0
 ec
-82
-6d
-06
+1c
+22
+5a
+3c
+f9
+f6
+f8
+f5
+fb
+fe
+59
+fb
 ad
-e4
-9f
-8b
-68
-f1
-5d
-6b
-fd
 4f
+74
+82
+b8
+d8
+52
+22
+e6
+8f
+bc
+99
+e6
 10
-20
-5c
-68
-96
-8c
-95
 d9
-e7
-76
-e1
-54
 8b
-01
-37
-8f
-81
-57
-2f
-83
-e7
-79
-7b
 70
-de
-96
-21
-67
-a5
-19
-d7
-ed
-d5
-ca
-a4
-d9
-f9
-79
+4f
 78
-e2
-aa
-c2
-e6
-a8
-62
-bc
-71
-88
-d1
-e4
+27
+55
+73
+8d
+a6
+2a
+66
+9a
+bf
+47
 5a
-c6
-49
-58
-19
-4c
+30
+65
+22
+dd
 59
+76
 83
-7a
-ca
-b7
-9a
-ef
-6a
-42
-0b
-ae
-97
-f0
-eb
-46
-e8
-a5
-df
-32
-c4
-48
-51
-38
-eb
-b5
-1e
-67
-bd
+b3
+12
+fc
+90
+c2
+9f
+af
+05
+5d
+ac
 a1
-41
-8b
-5a
-0b
-15
-81
-81
-46
-99
-b6
-6c
+17
+20
+65
 fa
-31
-a8
-47
-be
-21
-91
-39
-a0
-03
-5a
-bc
-bc
-ab
-eb
-87
-1f
-fb
-71
+3f
+24
+58
+b1
+6d
+1e
+07
+92
+c4
+59
+bb
+b6
+b5
 d7
-e1
-46
-99
+1b
+8f
+3b
+9e
+df
+16
+d6
+f9
+ab
 08
-81
+1d
+f3
+11
+cb
+3a
+93
+b7
+3c
+f1
+7a
+fb
+ae
+9a
+c1
+1f
+f1
+f0
+35
+ba
+20
+e8
 9a
-0e
-75
-9d
 24
-b2
-4d
-a1
-a9
-8d
-ef
-b5
-a5
-d6
-b4
-c9
-2b
-58
-49
-8b
-b0
-54
+cc
+c5
+76
+f1
+42
+99
+c3
+73
+a7
+a2
 16
-56
+ef
+0c
+d5
+62
+14
+fd
+35
+40
+f0
+9d
+e5
+ee
+e1
+08
+38
 e4
-11
-61
-2d
-79
-c6
-61
-09
-94
+e1
+a3
+23
 ad
-ec
-60
-d8
+5a
+ae
+ba
+b7
+59
+05
+fb
+fa
+0b
+ff
+cc
+de
+7a
 21
-db
-ef
-0e
-bf
-16
-60
+99
 eb
-05
-4f
-6e
-8e
+15
+b6
+48
+0c
 f5
-78
-7d
-66
-1f
+dc
+8f
+de
+03
+b2
+67
+04
 30
-4b
-35
-10
-53
-01
-3c
-18
-c9
-65
-b5
-f8
-ab
-c1
-f4
-f8
-96
-bc
-e3
-32
+e6
+a3
+4a
+44
+d5
+ea
+d0
+00
+56
+40
+3d
+f5
+e2
+1d
 ca
-b9
-26
-47
-75
+f2
 24
-c5
-da
-74
-d3
-e3
-8e
-78
+92
+d1
+c1
+c0
+1f
+97
+1a
+36
+44
+1d
+3c
 0d
-34
-80
-cd
-93
-4c
+14
+40
+c6
 35
-5c
+11
+98
+05
+ef
+4d
+2d
+d5
+e3
+0b
+0e
+57
 69
-cb
-82
-e5
-89
-26
 b5
-f9
-f9
-08
-a7
-cb
-33
-3f
-fe
-96
-f0
-0e
-50
-30
+b8
+d7
+d3
+ad
+65
+48
+23
+c8
+f1
+7d
+8b
 75
-62
-62
-13
-ba
-d5
-70
-8e
-c6
-d4
-9c
-36
-b1
-b5
-80
-f3
-f7
-12
-24
-39
-1e
-f6
+19
+72
+fd
 b5
-97
-a6
-0c
+76
+7a
+c3
 5f
-24
-ac
-b9
-bc
-19
-b8
-83
-b3
-37
-25
-dd
-17
-1f
-ab
-c5
-54
-49
-19
-28
-d9
+8c
 ad
-5f
-bd
-20
+47
+dc
+2f
+da
+76
+b3
+f4
+f4
+26
 93
-c4
-f8
-2c
-4a
-10
-39
-6c
-f3
-0b
-9f
-a2
-06
-7e
-95
-82
-36
-d4
-d4
-a8
 62
-d3
-de
-9b
-e2
-ad
-da
-17
-40
-3b
-1f
-c4
-e5
-98
-a6
-3c
-24
-03
-81
-89
-a0
-60
-94
-b1
-a6
-b4
-22
-52
-b1
+2e
+6a
 77
-6e
-ec
-d1
-b7
-c8
-8b
-4e
-05
-6b
-86
-59
-1b
-2d
-f0
+2c
+07
+89
+37
+a1
 12
-ad
-2b
-86
-ff
-b0
+33
+6c
+57
+99
+49
 b2
-66
-89
-27
-13
-49
-77
-1c
-c6
-c7
-92
-bc
-83
-29
-10
-d0
-a8
-76
-e2
-12
-c2
-56
-e2
-8f
-bf
-0e
-7c
-09
-42
-ab
-d4
-1b
-0d
-7d
-cd
-06
-ad
-07
-89
-2a
-e2
-8b
-00
-5b
-74
+c9
+17
+c3
+f4
+a7
 45
-dd
-dd
-3e
-34
-75
-c5
-c5
-23
-80
-51
-27
-8f
-77
-25
-cb
-9b
-fa
-07
-ee
-40
-00
-a1
-3e
-d0
+a5
 90
-2a
-48
-f8
-ed
+67
+d7
+0c
+b2
+6f
+8b
+15
+4a
+a2
+b2
+cb
+78
+86
+a7
+3d
+51
+54
+1e
+2e
+50
+e3
+54
+13
+46
+50
 c1
-32
-8d
-4b
-97
-8c
+09
+9d
+93
+5d
 85
-ce
-3a
-fa
-76
-be
-89
+aa
+8b
 54
-d4
-de
-1f
-9e
-1d
-a3
-02
-f8
-74
-f1
-66
-56
-32
-1f
+a0
+73
+a5
+41
 8d
-93
-2b
-91
-ff
-ab
+59
+fa
+4c
+06
+8b
+29
+01
+77
+a4
 c2
-44
-28
-5d
-5a
-0e
-de
-f4
-b1
-ad
-d8
-a0
-b1
-85
+10
+97
 1b
-f6
-8e
-f4
-c8
-4e
-2a
-1f
-b1
-c2
-a8
-81
-20
-5e
-d6
-c3
-fd
-6e
-81
-f1
-44
-84
-81
-38
-9a
-a6
-83
-fd
-cd
+57
 75
-82
+97
+4c
+62
+90
+1e
+68
+ca
+b0
+a1
+08
+9a
+15
+c7
+3d
+25
+3d
+f2
+9c
+db
+0c
+b4
+c8
+0c
+4a
+49
+56
+09
 eb
-02
-bd
+5d
+13
+f3
+88
+8a
+b6
+ce
+a2
+28
+04
+a3
+7c
+77
+ae
+b0
+58
+c9
+48
+4e
 1c
+09
+68
+49
+45
+96
+66
+f5
 07
-df
-a8
-f7
-42
-6a
-e1
-4f
-17
-05
-d7
-33
-21
-e6
-1f
-2f
+0e
+85
+12
+a7
+ea
 f5
-ef
-6d
-7b
-24
-20
-61
-db
+e5
+3f
+0c
+e5
+03
+a7
+8f
+74
+c1
+65
+63
+1c
 b7
-bf
-67
-43
-b4
-6f
-5a
-39
-7b
+f8
+b8
+6b
+f4
+e3
+f3
+b6
+55
+a9
+fe
+13
+85
+15
+ac
+bc
+ef
+42
+42
+ba
+cc
+88
+0b
+1b
 7c
-6d
-fc
+9b
+ad
+35
+01
+fe
+e5
+2f
+57
+28
+51
+71
+bc
 79
-5f
-3c
-3c
-84
-20
-91
-53
-10
-a0
-02
-7e
-bd
-16
-40
-f6
-0e
-09
-dc
-0c
-65
-ab
-48
-70
+8a
+17
+21
+ea
+68
+67
+9d
+94
+4b
+f8
+e8
+68
+2f
+e6
+1a
+e9
 9a
-9f
-f5
-2c
+13
+2d
 9e
-56
-3c
-6b
-8f
-9b
-6c
-44
-8c
-a2
-9f
-5c
-c2
-16
-f6
-23
-7c
-6f
-c8
-fa
-75
-4e
-b7
-d7
-e7
-f9
+e1
 17
 81
-27
-af
-67
-b8
-16
-50
-9c
-54
-8c
-5b
-5c
-0b
-91
-dd
-88
-41
-76
-be
-3c
-42
-a4
-84
+bb
 7d
+2e
+e2
 da
-aa
-ba
-4f
-78
-64
-85
-d8
-c5
-44
-5a
-ac
+57
+e1
 cc
-04
-9b
-c4
-d7
-f1
-68
-e5
-01
-e0
-b4
+43
+51
+0a
 08
-ec
-7f
-65
-0d
-60
-ec
-fc
-3a
-05
-a0
-05
-da
-41
-32
-01
-a8
-d1
-0f
-57
-e9
-cf
-f8
-82
-02
-58
-7e
-72
-83
+4c
+f2
+2c
+85
+9a
+7d
+48
+b2
+4f
+bf
+ef
+b2
+12
 84
-36
+e2
+6d
+ca
+e0
+28
+22
+14
+73
+26
+09
+46
+3b
+14
+ea
+dd
+99
+c0
+db
+54
+90
+bb
 af
-1d
-d6
+45
+f7
+0d
+dc
+8d
+51
+ac
+bb
+90
+1b
+36
+77
+ac
+4f
 d3
-a0
-ba
-a3
-1f
+ae
+d5
+d2
+4e
+f0
+51
+af
+61
+49
+7e
+dd
+18
+cc
+12
+00
+c6
 28
-dc
-f5
-85
-ef
+f1
+cd
+59
+c9
+05
+b2
+9a
+f1
+3c
+02
+a8
 8c
-62
-99
-42
+77
+10
+48
+2e
+6b
+d5
+26
+06
+ed
+27
+07
+11
+cd
+f1
+06
+2e
+34
+55
+13
+7d
+8e
+55
+ba
+8b
+3c
+27
+2f
+03
+c2
+d2
+b4
+3d
+33
 80
-1c
-66
+de
+01
+22
+61
+67
+7d
+7f
+f9
+f4
+81
+4b
+70
+e4
+fa
+3f
+75
+9f
+fe
 10
-1e
-66
-df
+bf
+67
+18
+1d
 73
-0b
-d1
-85
-b5
-00
-2f
-5d
-b4
-f8
-dc
-58
-2c
-54
-cd
-9c
-81
-d5
-30
-4d
-c9
-82
-e7
-41
-50
-d8
-c1
 83
-2d
 bd
+b4
+ad
+2f
+c4
+69
+66
+3b
+88
+c5
+c7
+6e
+3d
+d0
 e8
-38
-0f
+3e
+13
+bb
+3c
+1d
+4e
+35
+c4
+eb
+66
+40
+80
+7f
+0a
+7a
+33
+d6
+ac
+c7
+3f
+63
+18
+95
+10
+79
+6e
+0d
 8d
-62
-31
-0b
-fa
-06
-f9
-2e
-2b
-b7
-a2
-0f
-06
-fe
-60
-71
-f2
-d5
-41
 20
+33
+14
+39
+7c
+48
+c6
+a4
+49
+1e
+9b
+18
+9d
+59
+c2
+a2
+d2
+f4
+22
+87
+3f
+c3
+ad
+ce
+e6
+8c
+07
 eb
+50
+6e
 69
-05
-c5
+17
+04
+f6
+11
+4a
+00
+93
+f7
+d6
+4b
+bc
+9b
+29
+bd
+4d
 ab
-f0
-3b
-26
-49
-fd
-7b
-36
-f9
-5f
-19
+e4
+e3
+85
+34
+db
+76
+f3
+07
+9b
+2c
+7a
+be
+af
+07
+d2
+25
+71
+f5
+00
+f8
+08
+93
+92
+31
+c8
 62
-9f
-52
+70
+d1
+02
+74
 05
-40
-40
-95
-06
-87
-54
-92
-4c
-c2
+0f
+47
+a0
+ea
+9f
+d8
+c7
+1e
+2b
+80
+f3
+2e
+9c
+81
+98
+7b
+3a
+ec
+e0
+71
+fc
+60
+7c
+29
+b1
+f7
 0c
-c8
-2d
-c3
-1b
-36
+31
+80
+b9
+a6
+a6
+11
+d0
+45
+76
+b3
+bd
+bd
+d9
 0b
-77
+66
+2f
+b0
+2e
+64
+96
 e3
-3e
-15
-29
-07
-a1
-37
-6d
-74
-f4
-f6
-83
-be
-4c
+d6
+b9
+b1
+80
+fe
+7a
+19
+29
+e9
+de
 6e
-08
-48
-dc
-35
-ee
-1c
+1d
+b2
+04
 8b
-3f
-eb
-52
-89
-23
-76
-f9
-8c
-60
-5c
-48
-b1
-c5
-39
-02
-93
-b0
-b6
-2b
-90
-03
-a8
-0a
+1e
+25
+12
+30
 47
-2a
-d7
-11
-c6
+e2
+ec
 17
-fe
-83
-38
-dd
-c9
+7e
+98
+b9
+19
+36
+cf
+f7
+11
+ef
+6b
+91
+aa
+a1
+a0
+f3
+93
+24
+ce
+91
+f6
+d7
+41
+96
+c1
+ec
+df
+e6
+4b
+bc
+5f
 7d
-85
+45
+bf
+f8
+a9
+87
+d0
+42
+6f
 5b
-d8
-85
-94
-97
-ce
-c3
-fc
+16
+98
+0e
+1b
+f2
+98
+64
+00
+c4
+d5
 c1
+70
+6e
+51
+f6
+17
+a7
+71
+d5
+bc
+7c
+6d
+ac
+10
+7a
+05
+a1
+74
+80
+62
+1a
+da
+56
+d5
+03
+c4
+7a
+70
+e1
+f7
+35
+75
+49
+84
+32
+95
+2a
 36
-f5
-1b
-14
-9a
+b6
+a1
+24
 7e
-52
-55
-1c
-33
-96
-46
+58
+40
+f5
+a8
+9b
+6f
+ae
+2b
+0a
+16
+1e
+31
+54
+fb
+22
+1e
 c0
+30
 a2
-36
-e1
-75
-af
-9b
-93
-ab
+71
 35
-38
-d0
-3e
-4e
-7c
-bd
-8f
-c0
-0d
-5e
-31
-2f
-fa
-07
-ce
-1f
-01
-bb
-24
-1a
-1f
-52
-c2
-82
-d2
-48
-20
-f1
-0d
-6b
-5f
-9e
-be
-58
-72
-2f
-d8
-78
+65
 a7
-34
-07
-11
-b1
-a0
-dc
-c3
-36
+5d
+4d
+61
+7b
+fd
+35
+2c
+e4
+55
+a7
+e1
+41
+08
+bb
+f9
+29
 0c
-15
-5c
-a4
-b4
-98
-5f
-c1
-70
+d6
+ee
+6a
+0c
+36
+2f
+19
+7a
 8f
-ec
-e5
-de
-e4
-fd
-48
+8e
 a8
-ac
+51
+c0
+08
+a1
+41
+79
+dd
+06
+1e
+31
+ea
+93
+98
 ef
+30
+e6
+b1
 62
-09
-ee
-22
-06
-da
-14
-c6
-09
-ab
+7f
+46
+a2
+86
+c4
+fd
+af
+1f
+9e
+93
+c1
+1f
+80
+cd
+2c
+ff
+1e
+eb
+50
+d4
+b6
+0a
+c0
+50
+e6
+11
 87
-cf
-44
-da
-a0
+36
 17
-d1
-53
-06
-e8
-1e
-b3
-67
 43
-c5
-f3
-12
-89
+de
+75
+95
+d3
+f0
+6d
+1e
+75
 5c
-86
-0a
-d9
+2a
+4b
+b8
+b4
+a0
+ff
+b3
+a1
 2b
-41
+81
+bb
+08
 2f
-2d
-a6
-32
-13
-be
-57
-06
-f8
-c3
-d5
-76
-f0
-6d
-20
-ac
-a7
+ee
 97
-38
-ec
-ff
-e0
+db
+46
+c7
+03
+e5
+9f
+d5
+5e
+4d
+94
+dd
+22
+eb
+62
+c4
+f8
+83
+5c
+43
+95
+eb
+5b
+8c
+cd
+4a
+5a
+0b
+54
+c5
+40
+5d
+ae
+02
+fc
 c1
-25
-cf
-d8
-87
-cc
-49
-39
-65
-18
-65
+c1
+b6
+8b
+bd
+ab
+8d
+5d
+06
+ec
+c7
+80
+46
+a5
+bc
+d1
+66
+c8
+b0
+3f
+3b
+e5
+7b
+c6
+30
 6b
-3e
-fa
-73
-0f
+25
+7d
+ab
+ed
+c3
+b7
+4b
 8b
-7c
+11
+ba
+42
+97
+06
+fd
+90
+6a
+ba
+23
+e6
+02
+d2
+09
+b4
+3d
 21
-43
-32
-f8
-1f
-32
-31
-f7
-56
-ff
-5d
-00
-f4
-d4
-73
+6c
+78
+fe
+59
+42
+a6
+0c
+0c
+16
+63
+79
+68
+f3
+3c
+aa
+4b
+03
+7a
+c3
+8d
+a7
+3d
+7a
+72
+5e
+5c
+2c
 23
-2b
-a2
+fe
 24
-fc
-ea
-42
-d6
-52
-be
-18
-c8
-7b
-a3
-3a
-c3
-e7
-f4
-ad
-53
-c2
 dd
-90
-34
-26
+89
+16
+de
+18
+1d
+6a
+06
+27
+f3
+5c
+d9
+13
+d8
+9b
 c5
-0d
-3e
-32
+e4
+92
+8e
+de
+78
+83
+1d
+5e
+aa
+cf
+fe
+35
+58
 f9
-61
-27
-00
-ab
-80
-87
-98
-76
-84
+23
+c1
+48
+f6
+0c
+18
 80
-02
-57
-39
-c0
-52
-55
-f7
+ed
+f1
 e7
 8b
-55
-60
-6d
-1f
-44
-b7
-ea
-4d
+f8
+d6
+90
+c5
 d8
-73
-91
+ce
+d9
+67
+35
+52
 b9
-ad
-79
-45
-10
-65
-b1
-29
-46
-36
-b2
-74
-84
-27
-16
-e3
-61
-fe
-0e
-41
-d7
-79
-ed
-fb
-ae
-87
-e3
-7b
-a9
-96
-32
-df
-06
-75
-ad
-b0
-f0
+37
+0c
+da
+f9
+64
+d4
+a0
 fe
-a8
-33
-ad
-ed
-b3
-f1
-73
-10
-6b
-3e
-1b
-d9
-00
-af
-0a
-af
-a1
 7c
-69
-79
-4e
-84
-2e
-55
-cc
-86
-41
-97
-7d
-f8
+94
+a2
+e6
 c8
-92
-a0
-e1
 c0
-2c
-74
-7b
-8a
-c7
-bb
-06
+30
+04
 b5
-b8
-fa
+a5
 54
-e6
-f9
-85
-a7
-4b
-49
-eb
-36
-b3
-3f
-ef
-22
-34
-f2
-fa
-6d
-d0
-fe
-f9
-bf
-6a
+da
 78
-77
+9a
+61
+91
+3b
+cb
+3b
+ca
+f4
+cf
+fa
+38
+a9
+99
+f1
+15
+f8
+1f
+f2
+ee
+5d
+97
+1f
+e2
+55
+bc
+af
+ee
+6f
+5c
+3e
+48
+41
+69
+64
+40
+be
+1e
+0b
+53
+28
+9c
+96
 7c
-86
-08
+ea
+0a
+46
+cc
+70
 34
-92
-dc
-21
-7f
-10
-2e
-9f
-86
+2b
 8d
-11
-d3
-20
+5e
+80
+29
 3d
-40
-b9
-9e
-c8
-79
-55
-63
-4b
-00
-cd
-8a
-ff
-00
-9d
-da
-96
-0e
-ed
-0b
+df
+38
 f7
-6b
-07
-e0
-0c
-8d
-03
+9c
+10
+60
+c1
 67
-b4
-55
-40
-4a
-0b
-f7
-77
-11
-6b
-36
-ba
-d5
-aa
-d7
-45
-2c
-62
-05
-5b
-36
-a9
-84
-ab
-88
-42
-72
-72
-15
-83
-76
-c3
-e8
-dc
-e8
-14
-d2
-39
+8c
+d6
+38
+16
+22
+da
+9d
 dc
+7a
+27
 8a
-70
+c0
+8b
+4f
+66
+71
+3f
+a4
+b3
 53
-1d
-0a
-1c
+5a
+87
+8a
+15
+d3
+d0
 59
-8b
-47
-06
-f1
-6f
+97
 b8
-4d
-7f
-fb
-4f
-d2
-1f
-0d
-04
-09
-4c
-85
-c0
-64
-6e
-bf
-0b
-be
 d3
-1d
-4b
-af
-2a
-66
-76
+bf
+61
+22
+0e
+7a
+44
+f3
+2f
+fa
+b9
+d9
 88
+76
+f5
+9a
+27
+1b
+87
+3f
 7b
-eb
-29
-e4
+35
+52
+07
+64
+ff
+79
+be
+e0
+8a
+c6
+f0
+38
+65
+67
+60
+b2
+e0
+48
+80
+4a
+f2
+5b
+10
+f5
+ad
+58
+8b
+69
+97
+52
 2e
-df
-de
-2f
-0b
-e3
-40
-06
-76
+26
+83
+c4
+22
+3f
+ba
+78
+4e
+a9
+9e
+05
+29
+b7
+fe
+2a
+48
+73
+c0
+d5
+fc
 9b
-d8
-fb
-e3
-2e
-02
-3e
-6f
-7c
-e4
-7f
-58
-9f
-ea
-58
-a1
-d9
+da
+cb
+73
+15
+67
+50
+d4
+4f
+63
+a8
+24
+4c
+47
+29
+fa
 27
-68
-ba
-4b
-69
-35
-70
-05
-3b
-fc
-ce
-5f
-48
-2b
-c4
-e9
+4f
+75
+99
+00
+43
+a5
+99
+cc
 17
-e2
-d4
-b4
+b6
+5e
+a9
+d3
+74
+fd
+24
+82
+2c
+97
+45
+2e
+d3
+76
+2f
+f5
+21
+e6
+f2
+bf
+ff
+2b
+13
+8c
+24
 86
-c5
-f8
-7a
-e1
-d8
-80
-d0
-31
-5b
-91
-1a
-58
-6b
-56
-50
-63
-61
+25
+5f
+40
+df
 0b
-cf
-49
-fb
-69
-29
-ed
+c0
+24
+84
+dd
 51
-fd
-59
-0a
-7c
-4c
-4d
-50
-90
-7f
-f4
-41
-a3
-5e
-57
-e5
-9d
-42
-d2
+53
+15
+e0
+52
+26
 56
-df
-8f
-95
-70
-40
-50
-f7
 bc
-6a
-3f
-0b
-31
-6c
-95
-2c
-ac
-5e
-bb
-c7
-88
-b6
-1e
-18
+a1
+6e
+a5
+84
+cb
 01
-c8
-98
-d4
-95
-96
-f2
-83
-88
-a9
-12
-a8
-00
-6a
-7c
-d7
-4f
-de
-3c
+9c
 13
-ef
-2d
-b1
-fb
-72
-7d
-9f
-cb
-27
-4b
-8b
-f6
-66
-5f
-60
-e7
-1c
-b2
-5c
+6c
+d7
+71
+23
+5a
+0a
+47
 79
-f8
-99
-7a
-8f
-19
-78
+60
+91
+c1
+74
+05
+48
+ec
+52
+e3
+4d
+5b
+56
+12
+ee
 e5
-a9
-7c
-8f
-99
-61
-f2
+be
+a0
+82
 10
-c6
-1e
-c8
-a6
-8b
+07
+c1
+92
+6a
+12
+23
+b1
+fe
 e5
-29
-62
-35
-61
-de
-41
-c2
-b6
-fc
-64
-ad
-bc
-88
-af
-82
-df
-36
-bb
-b7
-86
-28
-75
-c6
-03
-a7
-d4
-2c
-b4
-1a
-31
-d9
-b8
-64
-35
-ca
+6c
+03
+02
 e9
+4f
+17
+95
+56
+67
+51
+b4
+66
+13
 b1
-dd
-73
-b8
-92
-26
-74
+f4
+a2
+23
+f6
+4e
+a6
+13
 41
-ed
+3a
+e5
+d1
 cb
-b5
-3d
-ab
-ac
-17
-f9
-72
-46
-be
-7a
-9c
-0d
-66
-07
-e9
-47
-9c
-f3
-27
 9a
-aa
-9f
-de
-c4
-11
-a5
-e4
-02
-58
-20
-15
-40
-ee
+3c
 69
-0a
-90
-55
-53
-f6
-98
-46
-bf
-51
-dd
+25
+04
+ad
+30
+cd
+f3
 59
-72
-02
-49
-bb
-db
-57
-80
-fd
-4a
-d7
-8c
-e6
-5a
-b9
-9c
-ff
-f5
-03
-94
-ab
-78
-fe
-f7
+66
+77
+8a
 e5
-59
-78
-30
-cf
-ed
-0b
-1b
-bb
-45
-7d
-54
-0d
-38
+3c
+de
+77
+14
+73
+d4
+48
+5e
+3b
 88
-0f
-54
-85
-8a
-09
-a0
-18
-b3
-fc
-42
-0e
-75
-da
-16
-40
-e8
-eb
-97
-b9
-11
-d6
-c4
-e8
-c8
-35
-9a
-25
-b9
-71
-b9
-53
-96
-2d
+7b
+c7
+9d
 1a
-38
-53
-51
-36
-4e
-bf
-e1
-b1
-b7
-8b
+a3
+b2
+64
+80
+2d
+d9
+45
+ae
 58
-bf
-dc
+6d
+86
 27
-6e
-5e
-50
-f7
-60
-32
-59
-0a
-8d
-11
-62
-1e
-d1
-37
-a6
-d8
-ae
-55
-92
-8c
-1d
-d3
-b4
-cd
-a8
-20
-30
-71
-55
-e1
-b4
-d9
-59
-52
 57
-6b
+56
+d2
 3d
-d0
-72
-e1
-39
-7d
 4e
-87
-d5
-51
-61
-d0
-81
-e9
-4b
-de
-7d
+10
+3d
+a6
+f6
 45
-1b
-e3
-64
-46
-8d
-c7
-3e
-17
+55
+16
+72
+74
+4d
+62
+d8
+7d
+a9
+93
+a9
+fc
+16
+7c
+c4
+53
+21
+e7
+d3
+85
 d9
-18
-68
-a7
-5b
-8e
+4e
 65
-9e
-5c
+ff
+c0
+eb
+e0
+98
+56
+5d
+8e
+9c
+77
+14
+b6
+bf
+53
+f2
+db
+d4
+66
+f1
+79
+67
+b3
+50
+4a
+6b
+3c
+41
+f8
+84
+87
+a3
 27
-f6
-bc
-82
-63
-10
-a5
-af
-fd
-7b
-c3
-fb
-99
-91
+33
+a3
+30
+44
+0e
+dc
+58
+86
+65
+d3
+37
+94
+00
+8b
+9d
+b8
+00
+a2
+87
+00
+0d
+c5
+fc
+c4
 a5
-46
-32
-80
 e8
-8c
-c4
-a9
-b1
 ef
-f6
+19
+98
+5f
+b8
+0d
 15
-b1
-4d
-f0
-97
-23
+11
+0c
+d2
+a4
+de
+e6
+f7
+67
+9b
 f8
-91
+4b
+81
+28
+d4
+57
+a2
 15
-c8
-1b
-5c
-19
-5c
-ee
-ac
-d5
+14
 07
+8c
+92
+8b
+ed
+48
+27
+b8
+68
 e8
-f7
-88
+af
+fc
 e3
-bf
-fa
-8c
-13
-cf
-a9
-89
-78
-10
-ae
-84
-17
-fb
-c0
-2f
-b0
-bf
-e7
-0b
-12
-52
-04
-be
-bf
-4e
-f8
-b5
-6d
-dd
-9d
-7d
-f5
-fa
-6c
-08
-42
-ae
-5a
-70
-14
-97
-a5
-18
-ee
-56
-15
-1f
-36
-38
-90
+2a
 ef
-17
-15
-7d
-c1
-55
-47
-56
-9c
-c7
-21
-f6
+29
+96
+7f
+77
+d4
+4a
+e3
 df
-18
-4f
-80
-7a
-54
-31
-1f
-90
-e6
+7f
+32
+47
 34
-be
-30
-7b
-ef
-ae
-ec
-37
-30
-db
-33
-e0
+80
+83
+0b
+c6
+24
+7e
+c8
+1e
+8b
+81
+42
+47
+a4
+41
+28
+72
+19
+f2
+8d
+5e
+b5
+01
+87
+2f
+b7
+23
+35
+23
+4b
+a7
+a6
+aa
+fb
+94
+24
+50
+7e
+c7
+d4
+e8
+6a
+2b
+f1
+9d
 73
-14
-ab
-00
-75
+39
+9a
+da
+67
+dc
+49
+4c
+93
+2b
+c4
+38
+71
 e9
-2a
+eb
+92
+2c
+6e
+6b
 b8
-ac
-71
-7e
-70
-37
-b9
-b6
-99
-62
-15
-d7
-ef
-96
+4c
+6c
 8f
-a1
-03
-e8
-40
-c8
-04
-aa
-b2
-6d
-eb
-69
-82
-d3
-2f
-af
-10
-12
-ad
-79
-a5
-8b
+68
+0c
+f0
 74
+b5
+76
 d6
-70
-fd
-85
-4c
-a0
-0b
-aa
-51
-94
-62
-46
-a4
-a9
+29
+f8
 4e
-c9
-e6
-10
-4b
-c4
-e4
-67
-8d
-a2
-43
+e1
 71
-55
-a3
-55
-6e
-b6
-ce
-b6
-d5
+1a
+78
+e1
+c4
+f5
 0c
-06
-f7
-ae
+1d
+4d
+21
+d4
+30
+08
+59
+84
+80
+01
+50
+5c
+f9
+56
 00
-e2
-f3
-a8
-94
-35
-0d
-e9
-63
-37
-76
-61
-9a
-2a
-a5
-d3
+45
+ef
+1b
+7f
+8e
+fe
+29
+2d
+22
 69
-ad
-ba
-c0
-6e
-c7
-97
-9a
-e4
-41
-2f
+e8
 fc
-41
-91
-97
-f3
-e3
-1e
-ff
-54
-ab
-75
-2c
-c4
-8b
-1c
-d4
+13
+e6
 ff
-dc
-64
-e3
-85
-a1
+9d
+3e
+94
+15
+9c
+fb
+bc
+8f
+18
+17
+f7
+12
+80
+67
+d8
+e1
+46
+60
+fd
+da
+fe
+4f
+35
+27
+62
+6d
+c3
+9d
 2e
-b9
-83
-f8
-66
-d9
+dd
+94
+19
+74
+e0
+60
+a8
+31
+05
+6a
+3f
 61
-16
-1a
-f5
-86
-c9
-37
-2a
+35
+6f
+66
+07
+d7
+62
+98
+dc
+17
+30
+74
 e3
 3f
+48
+65
+70
 7f
-6e
-8a
-c8
-02
-b3
-44
-89
-32
-0a
-93
-12
-c1
+e2
+3b
+cb
+2b
+ba
+a8
+03
+db
+54
+80
+83
+a4
+1b
+f9
+fd
+d0
+0b
+d9
+91
+96
+49
+2d
+11
 38
-dd
-ad
+15
+b7
+47
 08
-1d
-e8
+86
+a2
+64
+c3
+6a
+b2
+f2
+80
+c4
+07
 30
-32
-41
-e4
-8d
-1a
-24
-17
+7e
+7f
+62
+f0
+2d
+20
+57
 8e
-f1
+6e
+ae
 8d
-1e
 7a
-21
-f2
-7b
-82
-e9
-0d
-e7
-58
-4a
-91
-f4
-36
-0c
-9e
-8c
+2a
+68
+0a
+68
+f5
+2a
+c1
+cd
+65
+50
+53
 b9
-7a
-f2
-32
-84
-04
-f4
-b6
-05
-6f
-08
-2c
-26
-bf
+4f
 06
-62
-36
-2c
-6c
-20
-ef
-c2
-2f
-7c
-fd
-89
-79
-f7
-2d
-a6
-3d
-ce
-2c
-d2
-5e
-3a
-3c
-d4
-24
-2b
-57
-10
-5a
+1b
+8b
+70
 0a
-c6
-ba
-26
-35
-9a
-e9
-14
-90
-bb
-48
-f0
-89
-88
-9d
-54
-df
-11
-28
-d0
+3d
 41
-ce
-ef
-03
-71
-94
-1b
-15
-62
-74
-ec
-92
-b4
-0f
-d2
-c9
-de
-06
-3a
-d8
-38
-6e
-cc
+5d
 04
-ee
+0b
 77
-e7
-02
+46
+bb
+e9
 d9
-98
-0d
-2d
-4e
+4b
 63
-7b
-e2
-dc
-d0
-66
-54
-68
-09
-4f
-c5
-0a
-12
 7a
-61
-4c
-d5
-c2
-50
-ec
+76
+ca
+04
+68
+58
+a7
+2a
+70
+64
+6b
+af
+cc
+f7
+01
+f9
+05
+37
+9a
+cb
+ef
 c5
-dc
 7b
-69
-fa
-fa
-f2
-c1
-f7
-71
-53
-9c
-de
+50
+ee
+30
+f9
+87
+f6
+af
+a6
+8a
+bf
+90
+3c
+12
 d2
-7f
-42
-ed
-36
+3e
 8f
-8a
-a7
-7d
-1e
-a3
-06
+df
+f1
+a1
+a0
 c2
-7f
-5d
-12
-80
-d1
-82
-32
-ff
-a6
-15
-d5
-18
 68
-52
-81
-ee
+cd
+61
+b5
 e1
-5e
-29
-4d
+03
+99
+19
+3f
+1f
+12
 d7
-e6
-a2
-00
-97
-8a
-30
-e0
-43
-3a
-f4
-f5
+c1
+2b
+34
+68
 85
-96
-69
-ae
-59
-96
-1b
-12
+1e
+a7
+b8
+e4
+20
 1c
-50
-24
-d5
-52
-ec
-67
-82
-e3
-57
-57
-07
+80
 52
-a7
-c1
-92
-7b
-90
-0e
-77
-89
-54
-bf
-86
-89
-8e
-7d
-d1
-b7
-e8
+7a
+95
+e2
+42
+1f
+9f
+ac
+c2
+be
+0b
+d3
+79
 4b
-1d
-49
-91
-99
-5e
-01
-6b
+7e
+12
+20
+6a
+f4
+4b
+ff
+b6
 74
-d6
+06
+7d
+83
+83
+a5
+a3
+6b
+8d
+0d
+dd
+46
+71
+23
+c1
+9e
+e7
+18
+ba
+f2
+8a
+b0
+f7
+f6
+f1
+24
+9b
+f3
+c4
+77
+97
+0a
+db
 09
-b6
+fc
+d3
+04
+8d
 4c
-47
-cb
-97
-a9
-80
-7a
-61
-0b
-bc
-bf
-59
-ad
-8a
-bc
-f0
-9a
-ef
-20
-a7
-78
-33
-63
+b2
+55
 53
-f9
-07
-8b
+3c
+75
+5a
+36
+10
+63
+bd
+7e
+13
+e7
+de
+21
+a5
+fe
+c9
+02
+26
+82
+33
+2f
+a1
+e4
+ff
+34
+a4
+3a
+b3
+97
 2a
+94
+aa
+6f
+36
+dc
+c2
+24
+73
+59
+80
+12
+83
+db
+12
+8d
+fc
+a3
+b2
+ae
 be
-fa
-ad
-4f
-27
+9a
+bc
+18
+c7
+f6
 11
-d5
-48
-d2
-e9
-70
-dd
-9d
-87
-c5
-ad
-f8
+72
+80
 fe
-8e
-f2
+9e
+e0
+07
+94
+d9
+62
+e9
+9e
 89
-9c
-b1
 82
-eb
-0e
-9e
-8a
-30
-f3
+11
+a9
+0a
 e8
-fd
+3b
+ea
+62
+7e
+f0
+f8
+29
+dc
+6d
+73
+1d
+1b
+ac
+44
+4d
+b1
 f9
-d5
-d4
-37
-67
-5a
-fb
-88
-87
-3a
+e4
+b1
 b9
-ff
-c4
-3e
-f8
-dd
-91
-b8
-c7
-e9
-0b
-c0
-2d
-ec
-ed
-2f
+dc
+5d
+45
+65
+a5
+66
+19
+0a
+6a
+b7
+c9
+94
+53
+9c
+79
+68
+bd
+c3
+6c
+d9
+77
+d0
+eb
 f9
-3c
-fa
-01
-7a
-b3
-87
-d7
-c1
-29
-59
-a4
-ee
-ce
-6b
-cf
 5f
-15
+2a
 81
-e5
-99
-85
-e3
+08
+5a
+c0
+7d
+41
+0f
+36
+75
 45
-ac
-4a
-71
-a1
-1a
-4a
-8b
-5c
-02
-f0
+d6
 4b
-07
-b5
-cc
-a0
-f9
-58
-b8
-bf
-c6
-e2
-07
-70
-f6
-87
-65
-9a
-fa
-f7
-08
-59
-57
-cb
-db
-5e
+e5
+1a
+d9
+a9
+77
+69
+ad
+2a
+0c
+90
+be
+4c
+49
+6a
+2f
+67
+1f
+47
+b6
+50
 56
-00
-dc
-de
-51
-00
-01
-e6
-23
-f7
-43
+f3
+ff
+77
+d4
+cb
+b8
+82
+1a
+48
+93
+b1
+95
+b2
+a6
+a4
+19
 dc
-8f
-52
-c1
-c6
-6d
-36
-ac
-83
-aa
-09
-8b
-de
-6f
-d5
-24
-07
-5a
-0e
-49
+e9
+fa
 ea
-a8
-6f
-d6
 66
-0c
-58
-c1
-39
-0a
-d2
-3d
-dc
-ee
-34
+5a
+73
+1f
+9e
+d9
+a4
+c6
+a2
+5f
+18
+8c
+59
+d0
+16
+10
+18
+a0
+90
+99
+42
+4f
+f8
+16
+d5
+61
+40
+ca
+6a
+d4
+bf
+7d
+d7
+03
+4d
+4b
+55
+69
+db
+fc
+97
+2f
+52
+85
+ed
+3a
 93
-bd
+1d
 f0
-97
-07
-43
-74
-70
-fe
-af
 b2
-d8
-f1
-f3
-23
-cf
-2d
-61
-75
-62
-f1
-64
-60
-8b
-b1
-84
-8b
-a3
-17
-b5
-f6
-93
-a7
-28
-3f
-7c
+ab
+1c
 e5
-92
-3a
-70
-cd
-93
-5f
-ec
-0a
-9c
-33
-7b
 73
-dd
-6a
-f1
-64
-0e
-3c
-78
-49
-f7
-8f
+40
 a9
-39
-31
-a5
-f7
-42
-8e
-55
-cc
-21
-bc
+e3
+8b
+de
+cf
+73
+2e
 12
-42
+de
+41
+2d
+19
 40
-a5
-35
-be
+af
+c5
+a0
+92
+80
+ad
+59
 c8
-11
-fe
-7b
-bf
 39
-58
-e8
-e7
-f8
-9e
-d4
-be
-a1
-8d
-5d
-28
-49
-26
-ae
-1e
-64
-f3
-58
-0c
-6d
-56
-24
-0b
-a2
+60
+a5
+31
+b1
+ac
+f2
+fa
+76
+8e
+06
+99
+d7
+eb
+78
+61
+d1
+21
 af
-c0
-38
-cf
-c3
-0d
-ff
-e0
-64
-ff
-33
-9e
-2c
-75
-d6
+58
+e5
+18
+e2
+a5
+71
+2f
 22
-2a
-5a
-f8
-2c
-d7
-ac
-7a
-d0
-35
-cd
-03
+1d
+c7
+3d
+68
+42
+b3
+b8
+b0
+70
+9f
+fd
+ed
 18
-d8
-bc
-0f
-4c
-1c
-56
-6c
-58
-f0
+25
+41
+3f
+b1
+75
+d2
+14
+51
+48
+8a
+cf
+65
+ef
 9e
-22
-bf
-8c
-e1
-53
-2e
-38
+3d
+a5
 8f
-87
-cf
-0c
-b6
-26
-e7
-19
-95
-15
+3b
+3d
+57
+96
+5c
+41
+35
+3e
+83
+b8
+02
+89
 03
-6f
-bd
-26
-fb
-14
-e7
+a6
+84
+7a
+a8
+72
+de
 87
-c4
-32
-7f
-b1
-57
+6b
+86
+4c
+f3
+da
+8b
+4f
+70
+26
+e4
+b2
+f2
+8d
+f1
+de
+5c
+de
+b6
+74
 bb
-0a
-3c
-3d
-5e
-b8
-d8
+9d
+2b
+12
 df
-aa
-4a
-24
-4b
+f1
+6d
+bd
+62
+d8
+a7
+7a
+34
+68
+86
+6e
+a6
+47
+2b
+be
+5c
+f2
+6a
+d6
+5b
+10
+68
+25
 c9
-d2
-3e
-60
-2c
-96
-09
-b5
-3c
-bb
-ce
-64
-92
+cc
+73
+b2
+c6
+67
+05
+75
+18
+d9
+91
+87
+8d
+6b
+f4
+d3
+97
+33
+76
+79
+fe
 10
+23
+6c
+b2
+d7
+de
+17
+bb
+55
+5f
+0e
+88
+32
+f2
+48
+5d
+41
 82
-86
-b3
-3e
-40
-8b
-92
-61
-4a
-b5
-e1
-66
-00
-69
+e3
+b8
+59
+68
+1b
+21
+c2
+31
 fe
-fb
-53
-85
-25
+51
 c4
+0e
 8d
-cb
-47
-fd
-02
-64
-d9
-35
-b2
-ad
-48
-90
-f5
-d1
-df
-c3
-38
 3e
-e4
-5a
-b8
+2d
+de
+f9
+65
+a6
+2f
+8a
+ba
+2a
+39
+b1
+1d
+98
+76
+0a
+cf
+cf
+b5
+13
+9f
 13
-10
-51
-0b
 49
-a0
-c1
-eb
-2a
-99
-34
+11
+ee
+f3
+14
+6a
+26
+f8
+10
+e8
+fe
+08
+22
+d8
+5c
+5f
 b0
-8c
-6d
-6d
+d3
+d4
+97
+9b
 62
-38
+d3
+5c
+dc
+04
+a4
+53
+fc
+be
+a1
+f1
+ea
+eb
+46
+4f
+5d
+81
+df
+28
+9d
+03
+ab
+5e
+46
+ed
+64
+8b
+09
+b7
+ba
+d5
+e1
 17
-88
-b7
-7e
-85
-96
+9e
+07
+b3
+3e
 40
-0c
-cc
-3c
+2c
+3f
+ba
+a2
+9c
+92
+a9
+9b
+e6
+df
+14
+45
+e1
+70
+95
+16
+79
+61
+0a
+ed
+03
+3a
+a8
+6f
+5f
+c5
+93
+78
+98
+ac
+21
+e8
+ba
+b5
+28
 13
-32
-33
-8e
+15
 9e
-fe
-50
-5c
-90
-11
-96
+e0
+47
+2a
+c7
+f1
+c4
+22
+4e
 12
-18
-87
-5a
-26
-00
-03
+cc
+35
+37
+bb
+bf
+46
+9b
+c9
+cf
+9e
+80
+97
+02
 ec
-75
 23
-34
-39
+2f
+bb
+80
+71
+1d
+8c
+a1
+1e
+88
+29
+fe
+36
+30
+bb
+fd
 b0
-33
-e5
-24
-3d
-77
-e8
-a2
-9c
-c5
-c4
-f5
-2d
-87
+f9
+2b
+08
+fd
+de
+53
 11
-af
-5b
-5d
-58
-63
-a3
-63
-42
-02
-1c
-10
-c1
-97
-f3
-38
-78
-0a
+fa
 e8
-14
-76
-62
-95
-e6
-62
-dc
-5c
-78
-1c
-b9
-59
-df
+0c
 55
-9a
-6c
-12
-f5
-be
-b8
-db
+ff
+05
+6a
+fb
+dd
+eb
+51
+4c
+b1
+d1
+22
+4e
+4d
 55
-e5
-ac
-a5
-45
-a1
-8e
-1b
-dc
-6e
-68
-01
-96
+2b
+e8
+a0
+e4
+95
+94
+71
+2e
+64
+f9
+87
+9d
+fa
+4a
+5a
 85
-bf
-e1
+f3
+91
+2f
+c4
+7a
+73
+f0
+a9
+f3
+33
+5b
+92
+ec
+f8
+f6
+72
+ec
+d8
+4d
+51
+3a
+fe
+82
+d3
+4d
+c7
+23
+ed
+4a
+19
+f0
+68
+46
+63
+ca
+8d
+93
+24
+d1
+88
+28
+ad
+84
+ef
+d1
+70
+fa
+f1
+08
+ab
+4d
+0d
+c3
+73
+c5
+6e
+d7
+93
+0f
 57
-d4
-f6
+1a
+08
+d3
+54
+bb
+43
+d6
+ba
+de
+57
+8c
+84
+fb
 21
-e6
-60
-01
-51
+a9
+a4
+1d
+a6
+6c
+a0
+e2
 af
-83
-df
-04
-c5
-be
-de
-e4
-ca
-3f
-78
-df
-97
-43
+95
+63
+30
+62
+5e
+c7
+c0
+76
+93
+4a
+c2
+99
 dc
-fc
-34
-e2
-de
-c6
-f2
-66
-bc
-b2
+51
+2e
+ef
+64
+53
+87
 85
-1d
-25
-7b
-3d
-3a
-79
-70
 76
-3b
-88
-83
-7b
-65
-ae
-75
-4c
-6a
+5d
+c2
+2e
+f0
+48
+64
+45
+5a
+4a
+a9
+61
+c0
+5e
+cb
+e4
+d6
+4d
+e5
+9c
+d0
+db
 78
-62
+3d
+12
+2f
+e4
+7b
+97
+74
+7d
+71
+48
+e9
+5a
+6b
 a0
-d6
+ad
+3d
+fd
 a0
-cd
-6d
-fe
-98
-05
-0b
-1f
-ca
-6d
-c4
+09
 4b
-68
+95
+34
+6f
+d6
+3f
+aa
+69
+e2
+80
+15
+4e
 c6
-7c
-41
-b4
-d1
-cf
-db
-6b
-74
-4c
-b9
-29
-0b
-a3
-66
-b1
-5b
-3c
-ce
+11
+7f
+a1
+f5
 21
-eb
-1e
-67
-87
-6f
-87
-c4
-c5
-29
-e5
-82
-75
-c1
-89
-a6
-cf
-61
-2c
-ae
-e0
 aa
+77
+d7
+73
+a1
+22
+ab
+49
+c3
+1b
+df
+01
+0d
+01
+f7
+9f
+87
+1e
 ae
-3f
-4c
-65
-2f
-67
-88
-65
-56
-33
-a0
-cd
-99
+89
+fb
+00
+e4
+52
+16
 84
-74
-53
-8a
-ac
-8d
-ef
-1d
-36
-35
-9c
-24
-ac
-5e
-67
+ff
+d0
+c9
+e5
+22
+27
+d4
+21
+55
+0c
+b0
+81
+c5
+f8
+45
+3f
+b5
+d6
+a9
+a0
+ca
+45
+45
+78
+65
+fe
+82
+5b
+04
+6b
+05
+25
+7b
+31
+47
+f6
+c7
+3a
+b0
+b1
+a1
+fe
 67
+7a
+77
+47
+25
+cf
+5d
+a2
+d5
+5b
+b7
+b2
+2d
+26
+1e
+a5
+13
+a8
 75
-fd
-84
-f1
-2c
-0e
-c8
-ce
-03
+4b
+57
+98
+f5
+b7
+62
+2b
 1a
-ce
+8b
+79
+74
+29
 55
-ea
-32
-f3
-ae
-f5
-ce
-0c
-4a
-de
-65
-00
-46
-70
+73
+f2
+f7
+d6
 6a
-e7
-6c
-b5
-aa
+1c
+65
+69
+a5
+43
 96
-71
-ae
+c4
+c4
+b0
+b2
+3c
 43
-f2
+1d
 59
+59
+16
+fd
+0a
+bb
+81
+88
+57
+a2
+cd
+5f
+ae
+91
+b7
+d3
+f4
+be
+c5
+33
+e6
 f8
-9f
-14
+a0
+79
 66
-96
-be
-60
-2b
-fa
-48
-ad
 cc
-ab
-38
-97
-f5
-63
-40
-cf
+d2
+cb
+66
+bb
+39
+db
+95
+f3
+48
+b8
+2a
+02
+3b
+aa
+83
+59
+24
+96
+aa
+f3
+87
+e9
+76
+86
+2e
+3a
+4d
+46
+76
+51
+b6
+73
+c3
+df
+36
+3b
+71
+08
+6b
+1c
+74
+57
+d0
+f3
+1e
+69
+a8
+31
+7b
+89
+d3
+d7
+0c
+7e
+c7
 1a
-03
-c6
+b9
+c2
+08
+2e
+6f
+7b
+2c
+71
 c1
+42
+5d
+3b
+cb
+87
+42
+15
+b3
+3f
+6d
+aa
+91
+36
+f7
+08
+03
+74
+41
+4b
+b8
+03
+21
+13
+ec
+f0
+22
+b8
+98
+1c
+68
+99
+85
+17
+04
+ff
+8d
+6e
+f3
+c2
+4f
+e1
+9e
+4c
+fe
+8a
+4e
+8b
+d3
+31
+39
+c9
+59
+d0
+28
+36
+ff
+44
+e1
+20
+87
+4a
+7f
 be
-23
-7a
-d2
+e4
 a0
-31
-c3
-75
-48
-bb
-6e
 7e
-3f
-f3
-55
-98
-96
-cd
-1a
-2f
-93
-a6
-1b
-41
+39
 11
-b8
-4d
-ce
-cd
+db
+3a
+f8
+94
+ef
+e6
+de
+92
+1c
+5c
+2e
+35
+15
+9e
 5b
-51
-a4
+76
+41
+96
+7e
+52
+ff
+24
+01
+44
+78
+72
+da
+c2
+3c
+a5
+34
+1b
+81
+f0
+0f
+e4
+d0
+af
+23
 c3
-c8
 95
-75
-83
-1c
-6d
-2c
-9e
-37
-e3
-38
-d7
-2a
-62
-d1
-b0
-33
+d4
 e7
-ba
-a7
-cc
-e6
-c0
-3e
-de
-0a
-34
+89
+54
+18
+53
+28
+2d
+06
+41
+56
+a8
+3c
+49
+9a
+d5
+a1
+d7
+c7
+e5
+fe
+39
+f3
+ab
+14
 0a
-33
-e4
-aa
-87
-0b
-17
+32
 e3
-9d
-fe
-53
-51
-10
-97
+8a
+75
+fc
+06
+1b
+9a
+35
+22
 cb
+16
+b3
+e5
+1f
+d6
+53
+c9
+30
+3a
+3e
+6a
+c4
+b6
+f4
+6e
 fd
-6b
-d7
-af
-b5
-93
-cd
-10
-3d
-68
+67
+54
+1c
+94
+bb
+65
+6d
+42
+f3
+59
+27
+95
+51
+1c
+f4
+a1
+d0
+0b
+53
+01
+40
+77
 f2
-d5
-c9
-76
-a2
-62
-b1
-98
-38
-08
-8e
-c0
+ab
 07
-f1
-50
-05
-44
 95
-e6
-c4
-16
-0f
+8b
+f2
+2b
+38
+ff
+54
+ef
+14
+42
+aa
+ed
+40
+65
+c1
+a9
+cf
+f4
+fd
+75
+d6
+b2
+d3
+f3
+7f
+1d
+22
+7f
 04
-90
-a7
+1a
+27
+b5
+96
+37
+62
+b9
+ff
+e0
+67
+c4
+b9
+f9
+d9
+be
+95
+cb
+e1
+07
+26
+e1
+0a
+b8
+65
+13
+9f
+ee
+c5
+74
+2f
 87
-57
-0f
-6e
-73
-11
-29
-f8
-0d
+69
+ac
 17
-e9
-7b
-5d
-24
+2c
+c3
+4b
+fd
+8a
+05
 58
-81
+4c
+21
+e3
+fd
+90
+28
+21
+01
+e1
+8a
+96
+92
 bb
-4e
+b3
+5a
+88
+5a
+ae
+90
 4f
 c7
-e9
-e5
-54
-e9
-47
+a5
 9b
-8d
-f1
-4a
-af
-03
-d3
-fc
-60
-ba
-87
-e8
-a4
-ad
-7e
-5b
-f8
-78
-75
-99
-63
-45
-e1
-4a
-22
-22
-4d
-0e
-43
-4c
-23
-39
-d2
-5d
-ce
-c9
-b6
-8c
-e5
-e6
-40
-63
-d4
-c6
-4b
-5f
-b8
 0f
-ac
-73
-60
-a8
-12
-01
-97
-0d
-a4
-b2
-a7
-74
-ef
-6a
-38
-8a
-ba
-2b
-76
-a6
-53
+0a
+3b
 e4
-c1
-59
-5a
+93
 4a
-3d
-2b
-84
-9d
+82
+d5
+1c
+7f
+94
+f6
 e5
-a2
-56
-f1
-72
-bc
-39
-fc
+da
+1e
+21
+38
+92
 ce
-04
-42
-2c
+d1
 75
-02
-00
-95
-82
-ba
-10
-2c
-4f
-a2
-38
-a6
-a4
-17
-09
-68
-16
-ac
-31
-8c
+7e
 31
-39
-23
-d8
-2d
-66
-bd
-56
-9b
-33
-26
-e6
-e0
-79
-53
-73
-18
-05
-44
-19
-6b
-b6
-26
-eb
-e4
-09
-6c
-21
-d5
-a6
-a4
-76
-cf
-dc
-7c
-17
-84
-ee
-95
-e8
-33
 0a
-5b
+1b
 90
-5d
-cc
-37
-3d
-20
-d0
-2f
-4a
-14
+26
+84
 df
-bf
-94
-eb
-18
-b3
-73
-80
-b8
-49
+fb
+0d
 98
-af
-61
-07
-e2
-62
-a6
+88
+09
+6d
+4a
+df
+8a
+ae
+64
+c9
+23
+aa
+35
 ad
-17
-95
-ea
-05
-5c
+b0
+db
+53
+07
+91
+a5
+94
+6e
+d2
+bb
 0c
-b1
-10
-d0
-83
-c2
-80
-ca
-78
-41
-21
-67
-55
-37
-95
-50
-fd
-b7
-57
-59
-02
-ed
-58
-f9
-d6
+32
+06
+a5
+89
+5f
+99
 75
-2b
-dc
-b7
+5b
 52
-c2
-80
-45
-87
-12
-fe
-9a
-a9
+5b
+e3
+cf
+06
 10
+f7
+9f
+4b
+12
+c5
+b1
+45
+fd
+21
+e9
+b4
+e2
+30
+46
+19
+dd
+0a
+c9
 85
-90
-34
-d7
-70
-9b
-47
-ec
-d3
-9b
-f2
-dc
-32
-27
-d7
+93
+4c
+6e
+92
+00
+9a
+21
+68
+e2
+23
+d2
+5c
+98
+b7
+a1
+7c
 eb
-bd
-30
+91
+a3
 24
-28
-7f
-20
-12
-e3
-51
+af
+8f
+d0
+ae
 ac
+a2
+23
+0c
+3a
+ff
+8b
+80
+63
+6a
+53
+7f
+78
+8a
+d3
+ef
+85
+25
+94
 9f
-f8
-84
-03
-bd
-43
-48
-b7
-c1
-ba
-f3
-26
-2c
-1b
-b0
-77
-99
-f3
-77
-be
-00
-f8
-b0
+51
 ee
-33
-d3
-8b
-60
-b3
+98
+70
 5e
-de
-fb
-7e
 db
-b7
+89
+bc
+ff
 f4
-d0
-b3
-4e
-ee
-17
-4a
-73
-39
-26
+cd
+9f
+1e
+a4
+82
+bd
+e7
+c8
+ab
 e8
-a2
-06
-6a
-f5
-3b
-14
-b1
-6f
-63
-12
-fa
-28
-b9
-3f
+d7
+e4
+8e
+d8
+aa
+6c
 a4
-b1
-e0
-30
-35
-04
-4f
-76
-8c
+fa
 16
-63
-31
-70
-e2
-76
-9e
-92
-f7
-11
-ef
-08
-c7
-19
-ab
-24
-0f
-f8
-9c
+09
+6b
+03
+2d
+f1
+2d
+1e
+b2
+49
+8e
+b2
+1c
+07
+38
 ec
+7f
+35
+40
+d0
+ae
+0f
+3f
+07
+13
 9a
-6b
-50
-6f
-43
-73
-cc
-e2
-b5
+71
+c5
 5a
-3f
-73
-44
-a0
-a9
-c3
-19
-16
-7d
-43
-a4
-c4
-dc
+5f
+2e
+0e
+f9
+2f
+37
+a5
+c7
+36
+d4
+bf
+81
 d7
-ed
-cc
-28
-64
-c6
+a6
+db
+96
+7b
+65
 43
+a6
+8f
+a6
+12
+55
+83
+f3
+cf
+ff
+25
+51
+2a
+5a
+a1
+0e
+69
+e7
+bf
+4b
+0c
+80
+a8
+64
+97
+1e
+6f
+d1
+6b
+54
+0b
+de
+72
+83
+91
+c2
+5f
+23
+5b
+22
+2d
+88
+d1
+6a
+71
 43
-fe
-ca
+94
+1a
+bc
+d0
+01
+fc
+21
+f2
+59
+15
+4d
+f4
 e8
-3a
-60
-b7
-40
-9f
-0d
-22
-ec
-40
-e2
-ec
-70
-78
+42
 ed
-62
-41
-6f
-78
-56
-76
-3e
+d7
+4d
 8b
-45
-75
-cd
-58
-5c
-d0
-30
-2f
-f7
-5e
-87
-cf
-5d
+2e
+94
+c0
+e2
+68
+c2
+31
+3f
+63
+a2
+b4
+06
+57
 34
-da
-00
-7c
-7d
-f2
-c8
-f3
-5d
-0f
-58
-76
-3e
+5f
+ea
+ae
+c6
 ec
-44
-6a
-1d
-7a
-11
-5c
-f2
-0f
+48
+12
+dd
+58
 43
-79
-97
-b8
-c8
-44
+43
+84
+2d
+b4
+fc
+9e
+09
+d2
 64
-13
-f7
-03
-4a
+e1
+db
+80
+20
+be
+b8
 fc
-c7
-98
-dc
+d2
+17
+3f
+92
+c3
+4c
+89
+d0
+41
+a5
+18
+c2
+b8
+aa
 47
-1e
-d3
-0f
-ec
-5b
-ab
-2e
-c4
-c4
-82
-e1
-9e
-d7
-44
+3e
+43
+d2
+df
+24
+9b
+d4
+f2
+38
+2b
 ac
-51
-16
-33
-df
-06
-0a
-18
-a0
-70
-54
+db
+6c
+1f
+a7
+78
+5c
+31
 68
-b9
-8d
-32
-69
-f7
-13
-27
-27
+90
+ce
+2a
 91
-26
+b3
+b7
+54
+d9
+a2
+45
+cd
+5f
+ac
+95
+9b
+bc
+60
+a7
+7b
+ac
+3f
+e4
+53
+0f
+f7
 8f
-6c
-a4
-2a
-de
+f3
+92
+61
+99
+6e
+b8
+f0
+e7
+d5
+d9
+45
+44
+06
 6f
-ac
-2e
-08
-1a
+67
+27
+cd
+72
+29
 d5
-36
-16
-f0
-48
-41
-d2
-5a
-52
+a3
+b9
+d3
+c6
+6b
+10
+70
+18
+55
+fb
 5d
-19
-8c
-39
+42
+46
+61
+77
+e1
+5f
+b8
+cd
+ab
+f6
+9a
+5b
+85
+a9
+94
+4c
+3e
+54
+d7
+04
+fb
+da
+25
+46
 4a
+50
+e8
+54
 97
-4e
-d3
-b2
-c3
-1f
-b4
-db
-64
-e3
-fc
-e9
-e2
-3d
-86
-ab
-88
-84
-77
-23
-fd
-06
-be
-81
-c3
-81
-78
-73
+17
+95
+af
 6d
-80
+c9
+2e
+f6
 6f
-70
-02
-be
-02
-43
-9b
+31
+e6
+59
+bc
+f0
+b2
+96
+75
+b6
+91
+1b
+75
+9d
+51
+98
+b9
+b1
+f3
+8e
+8c
 6e
-93
-e3
-44
-d7
-ea
-56
+06
+52
+7f
+ee
+bb
+00
+a0
+d1
+d3
+63
+3f
+09
+7a
+d5
+3e
 2b
-fb
-db
-4b
-24
-85
-94
-72
-26
-df
+8e
+82
+a5
+af
+96
+b1
+4d
+6b
+3e
+1c
+06
+d2
+8d
+93
+49
+4a
+67
+28
+e0
+a4
 c4
-9d
-a8
-5e
-13
-79
-1d
-85
-ec
-c8
-e5
-2c
-6c
-1a
-dd
-0d
-9a
-6f
-dc
+cc
+7e
+79
+2c
+d5
 7e
-64
-15
-93
+cf
+17
+7c
+f9
+c6
+e1
+a0
+06
+25
+14
+6d
+b7
+9e
+ec
 1e
-dc
-51
+74
+60
+6c
+d4
+0a
 88
-2e
-b3
+d7
+48
+6c
+87
+18
+c2
+dd
+9e
+c5
+f0
+4e
+92
+c6
+df
+ae
+26
+46
+07
+de
+72
+ef
+f9
+4d
+61
+a3
+cf
+60
+79
+87
+ca
+7d
 ad
-2e
-5f
-2e
-19
-7b
-49
-43
-b9
-56
+40
+dd
 c8
-e7
-b1
-b8
-0d
-91
-3a
-5a
-ff
-4c
-63
-58
-64
-ac
-5a
-57
-a1
-d2
-ee
-0c
-80
-2a
-64
-51
-32
+c0
+52
+13
 0e
-89
-cf
-ac
-b5
-69
-a3
-0d
+c3
+05
+07
+a7
+de
+ee
+a4
+c6
+9b
+36
+cc
+22
 7c
-9f
-a5
-7e
-56
-9f
-2c
-ab
-c5
-b9
-27
-20
-4c
-c5
-7b
-29
-e4
-66
-fd
-0b
-33
-03
-4a
-d0
-41
-3a
-69
+f4
+58
+c4
+93
+c3
+8d
+a0
+b0
+9c
+8a
+3b
+dd
+cc
+b7
+bf
+9b
+2d
+60
+ca
+3c
+1f
+ec
+77
 03
-8c
 71
-74
-01
-a9
-7f
-d4
-a0
+6a
+2b
+1f
+11
+e5
+d9
+7c
+33
+de
+33
+1e
+b1
+82
 28
-7f
-3f
+57
+8a
+75
+99
+22
+7d
+2b
+42
+af
+eb
+5d
+25
+43
+c2
+f9
 38
-06
-7e
+69
+71
+0b
 23
-03
-48
-cd
-32
-c8
-b0
-29
-87
-e8
-3b
-b6
-41
-65
-3e
-a3
-fc
-95
+d7
+21
+66
+ce
 73
-5e
-8a
-f6
-cb
-a6
-3f
-49
-01
-9f
-64
-a4
-30
-f8
+df
+b4
+86
+ac
+11
+82
+ce
+80
+a2
+a0
+ac
+4b
+d7
+45
+4d
+b7
+46
+9c
+9b
+48
 fb
+88
+d2
+4e
+2d
 77
-8c
-92
-60
-06
-9a
-e7
-5e
-bc
-f0
+a7
+de
+0b
+45
+6e
+21
 ad
-1d
-41
-32
-7f
-ca
-12
-b2
-81
-8e
-d1
-6d
-52
+d4
 36
-cd
-3c
+8b
+fc
+4d
+02
+a5
+b1
+fe
+ac
+c9
+f0
+b5
+1b
 2c
-06
-37
-1e
-3f
-0d
-8d
-52
-0a
-e9
-ad
-4f
-7f
-9c
-8e
-13
-a9
-63
-c3
-f8
-8c
-c3
-b2
-ec
-74
-68
-9d
-97
-31
-7c
-8d
-46
-f4
-96
-a0
-b2
-7a
-4a
-cb
-4f
-28
-22
-ab
-55
-6e
-bd
-80
-4f
-d8
-01
-b2
-62
-28
-90
+5e
+44
+70
+af
+93
+bf
+51
+f3
+d6
+2a
+bf
+1f
+72
+c2
+0b
+f3
 48
-7f
-09
-53
-56
-cc
-5d
+47
+bb
+e5
+ae
+c6
+ef
+db
+b9
+38
+94
+f7
+3d
+7b
+9b
+ea
+ed
+fb
+f1
+e1
 be
-97
-cf
-12
+81
+96
+1a
+58
+e4
+b6
+9d
+bc
+a3
 19
-c0
-15
-b5
+10
+d2
+19
+89
 f8
-85
-7b
-e3
-3a
-09
-a9
-25
-2d
-5c
-36
-60
-80
+4d
+c3
+40
+26
+ef
+ed
+de
+31
+13
+84
+ad
+d6
+c6
+5f
 e4
-92
-2d
-79
-4f
-5c
-87
-00
+ad
+f3
 54
-18
-6d
-e8
-23
-0d
-cd
-95
-26
-aa
-da
+df
+fc
 2f
-7f
-e4
-ea
-4d
-2e
-85
-7a
+41
+bd
 b2
-50
-dd
-44
-69
-a8
-0d
-3a
-90
-ac
-3d
-25
-08
-30
-50
-a8
-1d
-24
-f1
-0f
-02
-c8
-6f
-06
-f1
-18
-64
-5e
-7e
+80
+0e
+74
+89
+fa
+da
+a2
+d4
+bf
+aa
+f9
+35
+81
+3b
 2f
+5e
+c2
 e2
-be
-62
+f1
 b8
+1c
+e1
+83
 46
-08
-6f
-cd
-44
-51
-3f
-27
-bd
-38
-4b
-31
-07
-89
-2f
-12
-60
+86
+fb
 cf
-10
-73
-d9
-8b
-48
-f4
-ff
-71
-88
-59
-16
-52
-bb
+de
+d6
+4d
+cd
+69
+32
+82
+6a
 0e
-3f
-95
+e4
 35
-42
-e0
+32
+60
+ef
+d7
+82
+07
+a7
+96
+6a
+9f
+b1
+19
+e7
 fe
-d8
+09
 42
-c5
-ad
-d9
-13
-af
-b9
+15
+ba
+58
+33
+6b
+3e
+64
+97
+47
+1b
 07
-c9
-6a
-8d
-17
-8a
-bd
-40
-8a
-49
-d4
-d7
-99
+46
+ed
 99
-2f
-e1
-12
-9e
+c8
 de
+3f
+1f
+d0
+87
+90
+67
+f9
+9a
+dc
+02
+1c
 8c
-f2
-9b
-38
-3b
-14
-28
-a7
-cd
+2c
+89
+a0
 53
-bf
-9f
-d9
-ca
-0b
-52
-31
-39
-6b
+fc
+c2
+ac
+35
+54
+ce
+59
+16
+a2
+8a
+0a
+46
+be
+30
+c9
+ba
+c2
+b8
+13
+55
+22
+28
+1e
+e6
+f2
+5b
+6c
+13
+77
+55
+b9
+25
+74
+ea
+82
+f4
+8a
 bb
 75
-d4
-f8
-a9
-c3
-ed
-9d
-37
-af
-35
-4b
-61
-24
-b5
-35
-d2
-b2
+51
+32
+18
+68
+49
+02
+a6
+e2
+69
+ef
+a5
 d9
-ad
-1b
-d0
-fb
-f2
-7b
-3d
-2e
-23
-0d
-39
-29
-5c
-2a
-94
-39
-e8
-4e
-2b
-40
-91
-72
-9a
-3f
+24
 67
-9b
-1c
-ff
-89
+7f
+1e
+ca
+32
+0e
+8f
+d6
+a3
+d6
+3b
+22
+a4
+0c
+c5
+cd
+49
+f0
+f7
+ad
+3a
+1f
+d5
 41
-77
+c6
+07
+28
+a2
+90
 3a
-c2
-75
-fa
-7c
-5a
-8b
+66
+a9
+2e
+56
 f7
-0a
-0b
-ec
-6d
-1d
-52
-68
-96
-4f
-d7
+41
+b2
+3c
+75
+e1
+cb
+77
+b2
+a1
+cd
+7b
+a3
 f1
-92
-ad
-e6
-30
-73
-e4
-d6
-c8
-13
-9d
-c9
+07
+0a
+09
+b0
+ba
+3a
+83
+21
+f6
+b4
 56
-43
-2f
-54
-54
+9c
+5f
+45
+8f
 99
+40
+fc
+a5
+89
+a3
+8a
+a0
+0c
+4f
 d9
-06
-11
-84
-04
-68
-41
-f2
-6d
-85
+e1
+cd
+c9
+4e
 f1
-d8
-7d
-68
-1a
-91
-51
-87
-9d
-68
-cf
-87
-48
-43
-d7
-7a
-ba
-b7
-bd
-ca
-35
-2d
-bd
-19
-c3
-e9
-15
-49
-17
-ea
-6f
-fb
-6e
-28
-33
+31
+9a
 d9
-51
-9f
-30
-fb
-74
 c2
-f1
-7c
-57
-ab
-02
-f4
-c8
-da
-df
-25
-82
-f4
-f5
-02
 8d
-2f
-c4
-38
+93
+7a
+96
+e7
+f3
+ac
+12
+f7
+63
 8c
-76
-aa
-f5
-22
-83
-db
-ab
-45
-b0
-33
-c5
+dd
+48
+f6
+e2
+90
 e0
-71
-85
+bc
+7f
+76
+64
+86
+4a
+a3
+37
+d5
+4c
+6d
 ac
-7b
-91
-b9
-c5
-20
-22
-cd
-97
-2e
-0c
-d8
-36
-ea
-22
-d6
-06
-b4
+45
+ad
+ee
+92
+a9
+04
+58
+81
+bb
+72
+3d
+1b
+43
+1d
+b2
+ca
+f4
 9b
-4c
-30
-9e
-fe
-3a
-6e
 fd
+0b
+bf
+51
+f2
+91
+7c
+ac
+d2
+e1
+b6
+9b
+eb
+c0
+c4
+5e
+18
+ff
+10
+43
+47
+a8
+5f
+59
+c1
+f3
+8e
+31
+8f
 04
-65
-30
-b8
-0d
+59
+7a
+86
+cd
+76
+7b
+4c
+7f
+0a
+db
+4b
+de
+2a
+47
 ce
-b3
-1f
-33
-22
-c7
 b5
-aa
-6e
-ff
-63
+68
+e3
+b0
+64
+f3
+c0
+66
+68
+33
+71
+a2
 73
-f4
-5b
-88
-9b
-fa
-28
-dc
-2d
-57
-b1
-22
-3f
-5e
-a3
-42
-e6
-08
-52
-81
-80
-17
-35
-2c
-7a
-b1
-62
-3c
-50
-00
-0b
-14
+fb
+6d
+3e
+16
+af
+6e
+c4
+18
+18
+c4
+f6
+69
+44
 ea
-98
-27
-f5
-c1
-aa
-dc
-3f
-4d
-2d
-09
-60
-42
-5c
-9f
-73
-61
-8e
-ec
-bc
+6b
+08
+dd
+01
+8c
+d0
+4a
+fe
+64
+5b
 16
-d6
+c8
+a2
+61
+f0
 32
-07
-c7
-c2
 89
-e8
-6b
-a1
-3f
-79
-d2
-15
-94
-85
-92
-dc
-dc
-30
-2b
-21
-1c
-e1
-32
-21
-61
-69
-86
-b2
-4d
-1e
-7d
-ac
-bc
-70
-f9
-c2
-70
-90
-22
-8c
-1d
+47
+53
+33
+27
+04
+d6
+3e
 76
-08
-7f
-83
-ab
 7c
-9e
-3b
-9a
-d5
-d6
+ae
+c3
+e6
+42
+ae
+04
+27
+74
 26
-35
+43
+df
+a1
+83
+dc
+18
+06
 c4
-39
-58
-7a
-25
-db
-fb
-d3
-f8
-20
-31
-d3
-07
-37
-f9
+75
+fd
+75
+8d
+52
+7c
+00
+48
 99
-de
-4f
-6f
-9f
+a8
+58
 88
-4f
-f4
-50
-b1
-33
-61
-23
-59
-c1
-d7
-f7
-06
-0c
-94
-a0
-d9
-2c
-43
-4c
-92
-72
-db
-cd
-31
-bf
-cb
-b7
-b9
-f0
-82
+c3
+1d
+3d
+78
 e3
-be
-a6
-d1
-99
-50
-04
-8a
-c9
-eb
-ad
-b1
+eb
 4a
-4e
-0c
+31
+89
+78
+4a
+d8
+d7
+90
+4a
+4a
+27
+00
+44
 e7
-ae
-ee
-3e
-bc
-55
-46
-58
-2b
-ca
-8b
-85
-c0
-36
-cc
-32
+80
+7a
+00
+5c
+be
+e8
+9e
+2d
+9a
+0a
+df
+d0
 19
-25
-24
-7e
-b1
-53
-31
-79
-46
-74
-41
-64
+18
+e1
 b4
-50
-26
-79
-48
-8d
+ae
+06
+37
+c3
 e8
-1a
-55
 b0
-07
-eb
-66
-28
-3a
-17
-94
+4c
 bf
-41
-3d
-da
-28
-03
-51
-70
-55
-52
-06
-e0
-34
-60
-a7
-43
-43
-9d
+00
+8f
+1f
+d3
+f3
 a5
-f0
-24
-3d
-3c
+2c
 f2
-11
-67
-54
-10
-9a
-9d
-c8
+52
+92
+c5
+1a
+77
 59
-b9
-4d
-75
-f0
-83
-cf
-6c
 a0
-c0
-38
-49
-0b
-b7
-69
-0f
-8f
-fb
-44
-34
-ab
-57
-99
-5c
-3c
-7e
-5d
-44
 2d
-e1
-5c
+8d
 a5
-49
-a4
-b1
-e0
-63
-ca
-13
-94
-34
-1e
+3d
 e8
-33
-35
-fb
-ce
-02
-03
-a1
-23
-a2
-42
-ed
-b5
-d2
-52
-1c
-16
-0c
-55
-d5
-63
-1e
-d4
-03
-9b
-9d
-1e
-8b
-0d
-0a
-ab
-8d
-eb
-63
-38
-ff
-f6
-f2
-c7
-02
-db
-6f
-0d
-61
-05
-1f
-4b
-42
-7f
-aa
-e4
-cc
-d2
-ad
-23
-de
-a3
-ca
-87
-e6
-0b
-01
-ea
-c8
-96
-bc
-39
-5f
-fa
-fb
-44
-d4
-b9
-ad
-2b
+9e
+fd
+8e
 e6
-ee
-5e
-4b
-63
-4f
-ec
-7e
-99
-65
-4f
-93
-f0
-ea
-a9
-a3
-ff
-7c
-7a
-44
-c5
+34
+2c
+37
+54
+e0
+af
+c3
+71
 df
-da
-08
-61
-21
-ae
-dc
-08
-3b
-d2
-61
-e2
+02
 fa
-04
+50
+50
+74
+44
+b8
+ef
+00
+b4
 e0
-8a
-88
-e3
+7e
+9c
 89
-be
+3c
+b1
+2e
+80
 2d
-5e
-41
-d6
-7c
-17
+44
+9e
+66
+12
+a7
+64
+76
+96
+d1
+26
+a4
+bd
+1e
+33
+87
+48
+da
+85
+7b
+99
 98
+a6
+1e
+13
+5a
+3d
+d1
+1b
+6c
 f6
+a6
+a5
+5b
 6b
-53
-4a
-d8
+06
+9c
+a2
+f0
+ad
+f1
+5a
+48
+35
+be
+c3
+68
+80
+a2
+fb
+2a
+10
 1a
-a6
-0a
-8e
+a2
+1c
+d8
+b5
+eb
+83
+21
+7f
+be
+40
+16
+bf
+c6
+7b
+92
+b0
+ef
+34
+6e
+61
+f3
+fa
+e6
+fa
+77
+22
+09
+ba
+99
+df
+01
+f4
+d9
+c7
+64
+d8
+6c
+69
+7d
+80
+ba
+b4
+5e
+8d
+2a
+88
+21
+a2
+21
 86
-5d
-3e
-b3
-2b
-14
-51
-0e
-5b
-a5
-39
+ff
+24
+62
+6d
+8b
+ce
+4e
+02
+83
 2e
-95
+f3
+ed
+d6
+8b
+5b
+5d
+a1
+cc
+b0
+f8
+d9
 eb
+34
+50
+12
+81
+ed
 11
-0d
-e1
-fa
+fd
+31
+5e
+6b
+e7
+3e
+75
 b3
+bb
+4d
+41
+b4
+64
+59
+56
+da
+5b
+7a
+cf
+99
+e8
+38
+3e
+c2
+d0
+43
+e3
+bd
+3f
+f5
+d9
+cf
+7e
+af
+9d
+28
+75
+ba
+b6
+32
+8e
+e9
+28
+a4
+3d
+a8
+90
+55
+c8
+8a
+e4
+8d
+17
 0b
+c6
+a7
+52
+ea
+54
+8d
+e9
+6f
+21
+6b
+ea
+e7
+bb
+a0
+ed
+e4
+e7
+15
+a7
+0a
+80
+5e
+b0
+3c
+56
+36
+31
 da
-11
-75
-fa
-df
-69
-91
-e6
-81
+f9
+b5
+e7
+76
+39
+f5
 ac
-7c
-92
+13
+1c
+3c
 f6
+97
+d1
 0f
-8d
-4f
-18
-36
-df
-3f
-ef
-95
-ce
-5b
-c5
-47
+00
+d4
+44
 40
-13
-46
-e8
-71
-d2
-6c
-83
-b5
-14
-0c
-d6
-f8
-d7
-f9
-68
-1c
-b7
-11
-4c
-b8
-e3
-ff
-f8
-2f
-12
-35
-df
-67
-36
-57
-58
-37
-65
-db
-64
+a2
+20
+1f
+4a
+80
+24
+ca
+4a
+40
+c0
+8e
+ea
 f5
-cc
-5d
-71
-35
-5c
-6e
-bb
-51
-61
-b5
-f2
-0c
-a5
-a8
-43
+65
+2d
+c4
+f0
+2f
+3c
+a4
+86
+2c
+7f
+fb
+a6
+04
+7b
+17
+39
+78
+b0
+27
+88
+d1
+ee
+8c
+42
 aa
 55
 40
@@ -5527,7 +5383,7 @@
 00
 33
 07
-20
+a0
 00
 00
 00
@@ -5536,16 +5392,16 @@
 00
 00
 00
-53
+f7
 18
 bc
 f2
 7d
-60
+69
 01
 00
 00
-02
+00
 00
 20
 00
@@ -5559,7 +5415,7 @@
 00
 10
 04
-60
+70
 00
 00
 06
@@ -5573,7 +5429,7 @@
 00
 00
 00
-41
+45
 a4
 00
 00
@@ -5821,20 +5677,6 @@
 55
 01
 00
-81
-46
-33
-aa
-55
-01
-00
-35
-46
-04
-aa
-55
-01
-00
 28
 47
 03
@@ -5847,6 +5689,13 @@
 07
 aa
 55
+01
+00
+1f
+4b
+ff
+aa
+55
 06
 00
 e6
@@ -5929,8 +5778,8 @@
 00
 43
 47
-ee
-4d
+d0
+52
 00
 80
 bb
@@ -6248,30 +6097,22 @@
 00
 fa
 49
-b9
-1a
-ea
-1a
+21
+1c
+52
+1c
 aa
 55
-18
+10
 00
 e2
 49
-eb
+53
+1c
 1a
-b2
-1b
-b3
+1d
 1b
-2a
-1c
-2b
-1c
-de
-1c
-df
-1c
+1d
 92
 1d
 93
@@ -6424,7 +6265,7 @@
 55
 04
 00
-78
+7a
 4b
 03
 04
@@ -6434,7 +6275,7 @@
 55
 30
 00
-48
+4a
 4b
 09
 5a
@@ -6520,7 +6361,7 @@
 4a
 09
 a5
-26
+46
 34
 19
 04
@@ -6554,6 +6395,22 @@
 ff
 aa
 55
+0a
+00
+90
+48
+09
+5a
+0d
+10
+1d
+ed
+7d
+80
+ff
+ff
+aa
+55
 1a
 00
 d6
@@ -6588,7 +6445,7 @@
 55
 2a
 00
-1e
+20
 4b
 7f
 26
@@ -6634,10 +6491,40 @@
 ff
 aa
 55
-10
+2e
 00
-1a
+fc
+48
+09
+5a
+0d
+10
+0e
+c5
+5b
+9a
+10
+38
+11
+42
+28
+28
+41
+23
 49
+39
+4a
+b0
+4b
+a0
+4c
+90
+4d
+70
+09
+00
+ff
+ff
 09
 5a
 06
@@ -6674,7 +6561,7 @@
 00
 08
 44
-09
+00
 aa
 55
 01
@@ -6836,8 +6723,8 @@
 aa
 aa
 55
-25
-62
-39
-b7
+e3
+6d
+55
+ba
 20
Index: output/program.lis
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/program.lis	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/program.lis	(working copy)
@@ -1,1820 +1,1802 @@
               include "bt_format "
               org 0x0000
-0000 c284002a bbit1 8 ,pf_patch_ext 
-0001 c0000299 beq patch00_0 ,p_soft_reset 
-0002 c0010039 beq patch00_2 ,p_main_loop 
-0003 c0080042 beq patch02_0 ,p_shutdown_radio 
-0004 c0088044 beq patch02_1 ,p_set_sync_on 
-0005 c00a014c beq patch02_4 ,p_set_lemode 
-0006 c00a80c3 beq patch02_5 ,p_rf_rx_enable 
-0007 c00c00e3 beq patch03_0 ,p_txon 
-0008 c00c80ea beq patch03_1 ,p_set_tx_power 
-0009 c00d0052 beq patch03_2 ,p_initialize_radio_cont 
-000a c0128219 beq patch04_5 ,p_lpm_sleep 
-000b c0340292 beq patch0d_0 ,p_mouse_cb_fuction 
-000c c03482a5 beq patch0d_1 ,p_mouse_load_device_info_check 
-000d c0360256 beq patch0d_4 ,p_mouse_param_init 
-000e c0370431 beq patch0d_6 ,p_mouse_start_work 
-000f c039849c beq patch0e_3 ,p_mouse_setgpio_hibernate 
-0010 c03a0211 beq patch0e_4 ,p_mouse_lpm_before_common 
-0011 c03d053f beq patch0f_2 ,p_mouse_motion 
-0012 c03d84ee beq patch0f_3 ,p_mouse_dpi_process 
-0013 c03e04f7 beq patch0f_4 ,p_mouse_setting_dpi 
-0014 c03e84fc beq patch0f_5 ,p_mouse_setting_sensor_type 
-0015 c03f847c beq patch0f_7 ,p_mouse_3io6key_check 
-0016 c04084c5 beq patch10_1 ,p_mouse_init_sensor 
-0017 c0420384 beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
-0018 c04283ce beq patch10_5 ,p_mouse_priority_bb_event 
-0019 c04301e3 beq patch10_6 ,p_mouse_le 
-001a c04383ae beq patch10_7 ,p_mouse_bb_event_timer 
-001b c04403cc beq patch11_0 ,p_mouse_start_discovery 
-001c c0450398 beq patch11_2 ,p_mouse_store_remote_bdaddr 
-001d c04582b6 beq patch11_3 ,p_mouse_app_initflag_check 
-001e c04602dd beq patch11_4 ,p_mouse_store_device_info 
-001f c0468341 beq patch11_5 ,p_mouse_store_dpi_info_check 
-0020 c0470456 beq patch11_6 ,p_mouse_idle 
-0021 c04a8493 beq patch12_5 ,p_mouse_24g_hibernate_set 
-0022 c04b04ae beq patch12_6 ,p_mouse_24g_package_data 
-0023 c04c0519 beq patch13_0 ,p_mouse_dpi_led_blink_init 
-0024 c058851c beq patch16_1 ,p_mouse_init 
-0025 c062823c beq patch18_5 ,p_otp_read_data 
-0026 c06a8202 beq patch1a_5 ,p_gpio_set_wake_by_current_state 
-0027 c06b01fb beq patch1a_6 ,p_gpio_set_wake 
-0028 c06d0135 beq patch1b_2 ,p_sadc_calibration 
-0029 2020235a branch assert 
+0000 c284002f bbit1 8 ,pf_patch_ext 
+0001 c00002c4 beq patch00_0 ,p_soft_reset 
+0002 c0010040 beq patch00_2 ,p_main_loop 
+0003 c0080049 beq patch02_0 ,p_shutdown_radio 
+0004 c008804b beq patch02_1 ,p_set_sync_on 
+0005 c00a0148 beq patch02_4 ,p_set_lemode 
+0006 c00a80db beq patch02_5 ,p_rf_rx_enable 
+0007 c00c00fd beq patch03_0 ,p_txon 
+0008 c00c8104 beq patch03_1 ,p_set_tx_power 
+0009 c00d0054 beq patch03_2 ,p_initialize_radio_cont 
+000a c012823f beq patch04_5 ,p_lpm_sleep 
+000b c01381d3 beq patch04_7 ,p_lpm_adjust_clk 
+000c c03402bf beq patch0d_0 ,p_mouse_cb_fuction 
+000d c03482e3 beq patch0d_1 ,p_mouse_load_device_info_check 
+000e c03502cd beq patch0d_2 ,p_mouse_default_init 
+000f c0360283 beq patch0d_4 ,p_mouse_param_init 
+0010 c03682d1 beq patch0d_5 ,p_mouse_sensor_set_angle 
+0011 c037041d beq patch0d_6 ,p_mouse_start_work 
+0012 c037d4b6 beq patch0d_7 ,mouse4_0_check_reconn_target 
+0013 c039847b beq patch0e_3 ,p_mouse_setgpio_hibernate 
+0014 c03a0233 beq patch0e_4 ,p_mouse_lpm_before_common 
+0015 c03d04f5 beq patch0f_2 ,p_mouse_motion 
+0016 c03d84c7 beq patch0f_3 ,p_mouse_dpi_process 
+0017 c03e04d0 beq patch0f_4 ,p_mouse_setting_dpi 
+0018 c03e84d5 beq patch0f_5 ,p_mouse_setting_sensor_type 
+0019 c03f845e beq patch0f_7 ,p_mouse_3io6key_check 
+001a c040849e beq patch10_1 ,p_mouse_init_sensor 
+001b c0420378 beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
+001c c04283b4 beq patch10_5 ,p_mouse_priority_bb_event 
+001d c0430208 beq patch10_6 ,p_mouse_le 
+001e c0438392 beq patch10_7 ,p_mouse_bb_event_timer 
+001f c04403b2 beq patch11_0 ,p_mouse_start_discovery 
+0020 c0450383 beq patch11_2 ,p_mouse_store_remote_bdaddr 
+0021 c0458302 beq patch11_3 ,p_mouse_app_initflag_check 
+0022 c046031c beq patch11_4 ,p_mouse_store_device_info 
+0023 c0468342 beq patch11_5 ,p_mouse_store_dpi_info_check 
+0024 c0470436 beq patch11_6 ,p_mouse_idle 
+0025 c04802ef beq patch12_0 ,p_mouse_check_select_device_by_switch 
+0026 c0498500 beq patch12_3 ,p_mouse_drawing_optima 
+0027 c04a8472 beq patch12_5 ,p_mouse_24g_hibernate_set 
+0028 c04b0487 beq patch12_6 ,p_mouse_24g_package_data 
+0029 c04c04f2 beq patch13_0 ,p_mouse_dpi_led_blink_init 
+002a c0628261 beq patch18_5 ,p_otp_read_data 
+002b c06a8227 beq patch1a_5 ,p_gpio_set_wake_by_current_state 
+002c c06b0220 beq patch1a_6 ,p_gpio_set_wake 
+002d c06d007b beq patch1b_2 ,p_sadc_calibration 
+002e 2020235a branch assert 
 
 pf_patch_ext:
-002a c00a016d beq patch22_4 ,p_le_slave_match 
-002b c00d016c beq patch23_2 ,p_le_got_first_packet 
-002c c012819c beq patch24_5 ,p_le_rx_dec 
-002d c01301a1 beq patch24_6 ,p_le_rx_nopayload 
-002e c01c81b3 beq patch27_1 ,p_le_parse 
-002f c01d01bd beq patch27_2 ,p_le_parse_l2cap 
-0030 c02601b9 beq patch29_4 ,p_le_adv_not_match 
-0031 c02681b7 beq patch29_5 ,p_le_init_adv 
-0032 c048023f beq patch32_0 ,p_g24_reconn_dispatch 
-0033 c04b0487 beq patch32_6 ,p_g24_short_sleep 
-0034 c04d00d1 beq patch33_2 ,p_mouse_g24_retransmit 
-0035 c04e80d8 beq patch33_5 ,p_g24_transmit_hop_process 
-0036 c04f8263 beq patch33_7 ,p_power_ctrl_start 
-0037 c17f8000 rtneq patch3f_7 
-0038 2020235a branch assert 
+002f c00a0168 beq patch22_4 ,p_le_slave_match 
+0030 c00d0187 beq patch23_2 ,p_le_got_first_packet_new 
+0031 c01201ac beq patch24_4 ,p_le_receive_rxon 
+0032 c012818f beq patch24_5 ,p_le_rx_dec 
+0033 c0130194 beq patch24_6 ,p_le_rx_nopayload 
+0034 c01c81a6 beq patch27_1 ,p_le_parse 
+0035 c01d01e2 beq patch27_2 ,p_le_parse_l2cap 
+0036 c02601de beq patch29_4 ,p_le_adv_not_match 
+0037 c02681aa beq patch29_5 ,p_le_init_adv 
+0038 c0480264 beq patch32_0 ,p_g24_reconn_dispatch 
+0039 c0490278 beq patch32_2 ,p_g24_reconn_device_fail 
+003a c04b0469 beq patch32_6 ,p_g24_short_sleep 
+003b c04d00e9 beq patch33_2 ,p_mouse_g24_retransmit 
+003c c04e80f2 beq patch33_5 ,p_g24_transmit_hop_process 
+003d c04f8290 beq patch33_7 ,p_power_ctrl_start 
+003e c17f8000 rtneq patch3f_7 
+003f 2020235a branch assert 
 
 p_main_loop:
-0039 20407552 call sp_calc_sequence_256 
-003a 20407448 call sp_calc_sequence_256_check 
-003b 20402a45 call le_advertising_dispatch 
-003c 2040202a call idle_dispatch 
-003d 204042ad call app_process_idle 
-003e 20402018 call connection_dispatch 
-003f 2040310f call g24_dispatch 
-0040 2040248c call lpm_dispatch 
-0041 20200039 branch p_main_loop 
+0040 20407552 call sp_calc_sequence_256 
+0041 20407448 call sp_calc_sequence_256_check 
+0042 20402a45 call le_advertising_dispatch 
+0043 2040202a call idle_dispatch 
+0044 204042ad call app_process_idle 
+0045 20402018 call connection_dispatch 
+0046 2040310f call g24_dispatch 
+0047 2040248c call lpm_dispatch 
+0048 20200040 branch p_main_loop 
 
 p_shutdown_radio:
-0042 70890000 jam 0 ,0x8900 
-0043 20202153 branch shutdown_radio + 1 
+0049 70890000 jam 0 ,0x8900 
+004a 20202153 branch shutdown_radio + 1 
 
 p_set_sync_on:
-0044 708a0f60 jam 0x60 ,0x8a0f 
-0045 708a10aa jam 0xaa ,0x8a10 
-0046 708a127a jam 0x7a ,0x8a12 
-0047 708a2500 jam 0x00 ,0x8a25 
-0048 708a2600 jam 0x00 ,0x8a26 
-0049 2000003c nop 60 
-004a 708a2020 jam 0x20 ,0x8a20 
-004b 708a23f5 jam 0xf5 ,0x8a23 
-004c 708a2412 jam 0x12 ,0x8a24 
-004d 708a2410 jam 0x10 ,0x8a24 
-004e 2000003c nop 60 
-004f 708a1260 jam 0x60 ,0x8a12 
-0050 708a23dd jam 0xdd ,0x8a23 
-0051 20600000 rtn 
+004b 708a0f60 jam 0x60 ,0x8a0f 
+004c 708a10aa jam 0xaa ,0x8a10 
+004d 708a127a jam 0x7a ,0x8a12 
+004e 708a2500 jam 0x00 ,0x8a25 
+004f 708a2600 jam 0x00 ,0x8a26 
+0050 2000003c nop 60 
+0051 708a2020 jam 0x20 ,0x8a20 
+0052 708a23f5 jam 0xf5 ,0x8a23 
+0053 20202169 branch set_sync_on_next 
 
 p_initialize_radio_cont:
-0052 7001bb00 jam 0 ,mem_le_testtype 
-0053 7001bc00 jam 0 ,mem_cmd_le_create_conn 
-0054 37d98200 until null ,lpo_edge 
-0055 7089460d jam 0x0d ,0x8946 
-0056 70896f10 jam 0x10 ,0x896f 
-0057 708a13cd jam 0xcd ,0x8a13 
-0058 708a0610 jam 0x10 ,0x8a06 
-0059 708a844a jam 0x4a ,0x8a84 
-005a 708a8540 jam 0x40 ,0x8a85 
-005b 708a16fe jam 0xfe ,0x8a16 
-005c 20400098 call p_set_otp_config 
-005d 204070d7 call wdt_set_disable 
-005e 37d98200 until null ,lpo_edge 
-005f 70813b5f jam 0x5f ,0x813b 
+0054 7001bb00 jam 0 ,mem_le_testtype 
+0055 7001bc00 jam 0 ,mem_cmd_le_create_conn 
+0056 37d98200 until null ,lpo_edge 
+0057 7089460d jam 0x0d ,0x8946 
+0058 70896f10 jam 0x10 ,0x896f 
+0059 708a13cd jam 0xcd ,0x8a13 
+005a 708a0610 jam 0x10 ,0x8a06 
+005b 708a844a jam 0x4a ,0x8a84 
+005c 708a8540 jam 0x40 ,0x8a85 
+005d 708a16fe jam 0xfe ,0x8a16 
+005e 204000b0 call p_set_otp_config 
+005f 204070d7 call wdt_set_disable 
 0060 37d98200 until null ,lpo_edge 
-0061 70813c88 jam 0x88 ,0x813c 
+0061 70813b5f jam 0x5f ,0x813b 
 0062 37d98200 until null ,lpo_edge 
-0063 6fe0c099 fetch 1 ,mem_fcomp_div 
-0064 c008008d beq xtal_16m ,p_initialize_radio_16m 
-0065 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0066 1fe1fe04 or_into 0x04 ,pdata 
-0067 67f08a02 store 1 ,0x8a02 
-0068 70890f01 jam 0x01 ,0x890f 
-0069 708a8024 jam 0x24 ,0x8a80 
-006a 708a8162 jam 0x62 ,0x8a81 
-006b 58e61212 setarg 0xe61212 
-006c 67f18a73 store 3 ,0x8a73 
+0063 70813c88 jam 0x88 ,0x813c 
+0064 37d98200 until null ,lpo_edge 
+0065 6fe0c099 fetch 1 ,mem_fcomp_div 
+0066 c00800a5 beq xtal_16m ,p_initialize_radio_16m 
+0067 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+0068 1fe1fe04 or_into 0x04 ,pdata 
+0069 67f08a02 store 1 ,0x8a02 
+006a 70890f01 jam 0x01 ,0x890f 
+006b 708a8024 jam 0x24 ,0x8a80 
+006c 708a8162 jam 0x62 ,0x8a81 
+006d 58e61212 setarg 0xe61212 
+006e 67f18a73 store 3 ,0x8a73 
 
 p_initialize_radio2:
-006d 708a8660 jam 0x60 ,0x8a86 
-006e 708a8b3b jam 0x3b ,0x8a8b 
-006f 2040007f call p_dpll_on 
-0070 70804300 jam 0 ,core_config 
-0071 70804205 jam clksel_dpll ,core_clksel 
-0072 58557474 setarg 0x557474 
-0073 67f18968 store 3 ,0x8968 
-0074 7089606e jam 0x6e ,0x8960 
-0075 20400108 call p_rx_dcoc 
-0076 20400133 call p_rfpll_aac_ghpc 
-0077 2040007a call p_set_xtal_cap 
-0078 7041480c jam system_clk_12m ,mem_system_clk 
-0079 20206f4e branch sadc_calibration 
+006f 708a8660 jam 0x60 ,0x8a86 
+0070 708a8b3b jam 0x3b ,0x8a8b 
+0071 20400097 call p_dpll_on 
+0072 70804300 jam 0 ,core_config 
+0073 70804205 jam clksel_dpll ,core_clksel 
+0074 58557474 setarg 0x557474 
+0075 67f18968 store 3 ,0x8968 
+0076 7089606e jam 0x6e ,0x8960 
+0077 2040011b call p_rx_dcoc 
+0078 20400146 call p_rfpll_aac_ghpc 
+0079 20400092 call p_set_xtal_cap 
+007a 7041480c jam system_clk_12m ,mem_system_clk 
+
+p_sadc_calibration:
+007b 20758000 rtn wake 
+007c 708a0777 jam 0x77 ,core_gpadc_ctrl 
+007d 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+007e 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+007f 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0080 67f080cd store 1 ,core_sadc_clkdiv 
+0081 20000bb8 nop 3000 
+0082 2040008b call p_sadc_read 
+0083 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+0084 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+0085 df200008 arg 8 ,loopcnt 
+0086 20406f58 call sadc_cal_read + 1 
+0087 6fe0c419 fetch 1 ,mem_spi_write_addr 
+0088 67e0c433 store 1 ,mem_adc_cal_c7 
+0089 6240c419 storer regb ,1 ,mem_spi_write_addr 
+008a 20600000 rtn 
+
+p_sadc_read:
+008b 7080cc03 jam 0x03 ,core_sadc_ctrl 
+
+p_sadc_read_wait:
+008c 6ff08129 fetch 1 ,core_perf_status 
+008d c302808c bbit0 saradc_done ,p_sadc_read_wait 
+008e 68590164 fetcht 2 ,core_sadc_data 
+008f 6049440a storet 2 ,mem_adc_current_value 
+0090 7080cc00 jam 0x00 ,core_sadc_ctrl 
+0091 20600000 rtn 
 
 p_set_xtal_cap:
-007a 20758000 rtn wake 
-007b 37d98200 until null ,lpo_edge 
-007c 6fe0c11c fetch 1 ,mem_xtal_c_sel 
-007d 67f0813a store 1 ,core_xtal_cap 
-007e 2020020d branch p_mouse_wait_lpo 
+0092 20758000 rtn wake 
+0093 37d98200 until null ,lpo_edge 
+0094 6fe0c11c fetch 1 ,mem_xtal_c_sel 
+
+p_set_xtal_cap_next:
+0095 67f0813a store 1 ,core_xtal_cap 
+0096 202023e2 branch lpm_write_wait 
 
 p_dpll_on:
-007f 6fe0c099 fetch 1 ,mem_fcomp_div 
-0080 c00c0085 beq xtal_24m ,p_dpll_on_24m 
-0081 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0082 1fe1fe06 or_into 0x06 ,pdata 
-0083 67f08a02 store 1 ,0x8a02 
-0084 708a05e0 jam 0xe0 ,0x8a05 
+0097 6fe0c099 fetch 1 ,mem_fcomp_div 
+0098 c00c009d beq xtal_24m ,p_dpll_on_24m 
+0099 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+009a 1fe1fe06 or_into 0x06 ,pdata 
+009b 67f08a02 store 1 ,0x8a02 
+009c 708a05e0 jam 0xe0 ,0x8a05 
 
 p_dpll_on_24m:
-0085 708a00d8 jam 0xd8 ,0x8a00 
-0086 2000003c nop 60 
-0087 708a01a0 jam 0xa0 ,0x8a01 
-0088 708a00df jam 0xdf ,0x8a00 
-0089 708a01fa jam 0xfa ,0x8a01 
-008a 20000014 nop 20 
-008b 708a009f jam 0x9f ,0x8a00 
-008c 20600000 rtn 
+009d 708a00d8 jam 0xd8 ,0x8a00 
+009e 2000003c nop 60 
+009f 708a01a0 jam 0xa0 ,0x8a01 
+00a0 708a00df jam 0xdf ,0x8a00 
+00a1 708a01fa jam 0xfa ,0x8a01 
+00a2 20000014 nop 20 
+00a3 708a009f jam 0x9f ,0x8a00 
+00a4 20600000 rtn 
 
 p_initialize_radio_16m:
-008d 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-008e 1fe1fe06 or_into 0x06 ,pdata 
-008f 67f08a02 store 1 ,0x8a02 
-0090 70890f00 jam 0x00 ,0x890f 
-0091 708a8023 jam 0x23 ,0x8a80 
-0092 708a81b0 jam 0xb0 ,0x8a81 
-0093 58e40909 setarg 0xe40909 
-0094 67f18a73 store 3 ,0x8a73 
-0095 708a762a jam 0x2a ,0x8a76 
-0096 70890204 jam 0x04 ,0x8902 
-0097 2020006d branch p_initialize_radio2 
+00a5 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00a6 1fe1fe06 or_into 0x06 ,pdata 
+00a7 67f08a02 store 1 ,0x8a02 
+00a8 70890f00 jam 0x00 ,0x890f 
+00a9 708a8023 jam 0x23 ,0x8a80 
+00aa 708a81b0 jam 0xb0 ,0x8a81 
+00ab 58e40909 setarg 0xe40909 
+00ac 67f18a73 store 3 ,0x8a73 
+00ad 708a762a jam 0x2a ,0x8a76 
+00ae 70890204 jam 0x04 ,0x8902 
+00af 2020006f branch p_initialize_radio2 
 
 p_set_otp_config:
-0098 203580aa branch p_set_otp_config_wake ,wake 
-0099 6fe2020d fetch 4 ,mem_otp_core_ldo 
-009a 207a0000 rtn blank 
-009b 37d98200 until null ,lpo_edge 
-009c 6ff08136 fetch 1 ,0x8136 
-009d 1fe17ef0 and pdata ,0xf0 ,pdata 
-009e 6848820d fetcht 1 ,mem_otp_core_ldo 
-009f 9841fe00 ior temp ,pdata 
-00a0 1fe0fffd increase -3 ,pdata 
-00a1 67f08136 store 1 ,0x8136 
-00a2 37d98200 until null ,lpo_edge 
-00a3 6ff08138 fetch 1 ,0x8138 
-00a4 1fe17e07 and pdata ,0x7 ,pdata 
-00a5 6848820e fetcht 1 ,mem_otp_verf_bg 
-00a6 18498400 lshift3 temp ,temp 
-00a7 9841fe00 ior temp ,pdata 
-00a8 67f08138 store 1 ,0x8138 
-00a9 37d98200 until null ,lpo_edge 
+00b0 203580c2 branch p_set_otp_config_wake ,wake 
+00b1 6fe2020d fetch 4 ,mem_otp_core_ldo 
+00b2 207a0000 rtn blank 
+00b3 37d98200 until null ,lpo_edge 
+00b4 6ff08136 fetch 1 ,0x8136 
+00b5 1fe17ef0 and pdata ,0xf0 ,pdata 
+00b6 6848820d fetcht 1 ,mem_otp_core_ldo 
+00b7 9841fe00 ior temp ,pdata 
+00b8 1fe0fffd increase -3 ,pdata 
+00b9 67f08136 store 1 ,0x8136 
+00ba 37d98200 until null ,lpo_edge 
+00bb 6ff08138 fetch 1 ,0x8138 
+00bc 1fe17e07 and pdata ,0x7 ,pdata 
+00bd 6848820e fetcht 1 ,mem_otp_verf_bg 
+00be 18498400 lshift3 temp ,temp 
+00bf 9841fe00 ior temp ,pdata 
+00c0 67f08138 store 1 ,0x8138 
+00c1 37d98200 until null ,lpo_edge 
 
 p_set_otp_config_wake:
-00aa 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
-00ab 207a0000 rtn blank 
-00ac 67e1020f store 2 ,mem_otp_charge_pump 
+00c2 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
+00c3 207a0000 rtn blank 
+00c4 67e1020f store 2 ,mem_otp_charge_pump 
 
 p_set_otp_config2:
-00ad 6ff08acb fetch 1 ,0x8acb 
-00ae 1fe17ef0 and pdata ,0xf0 ,pdata 
-00af 6848820f fetcht 1 ,mem_otp_charge_pump 
-00b0 6048c15b storet 1 ,mem_otp_charge_pump_x 
-00b1 9841fe00 ior temp ,pdata 
-00b2 67f08acb store 1 ,0x8acb 
-00b3 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-00b4 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
-00b5 2feffe03 isolate1 3 ,pdata 
-00b6 6ff08a06 fetch 1 ,0x8a06 
-00b7 7920fe07 setflag true ,7 ,pdata 
-00b8 67f08a06 store 1 ,0x8a06 
-00b9 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-00ba 1fe10407 and pdata ,7 ,temp 
-00bb 18520400 lshift4 temp ,temp 
-00bc 18438400 lshift temp ,temp 
-00bd 6048c438 storet 1 ,mem_ring_ibias_trim 
-00be 6ff08a02 fetch 1 ,0x8a02 
-00bf 1fe17e1f and pdata ,0x1f ,pdata 
-00c0 9841fe00 ior temp ,pdata 
-00c1 67f08a02 store 1 ,0x8a02 
-00c2 20600000 rtn 
+00c5 6ff08acb fetch 1 ,0x8acb 
+00c6 1fe17ef0 and pdata ,0xf0 ,pdata 
+00c7 6848820f fetcht 1 ,mem_otp_charge_pump 
+00c8 6048c15b storet 1 ,mem_otp_charge_pump_x 
+00c9 9841fe00 ior temp ,pdata 
+00ca 67f08acb store 1 ,0x8acb 
+00cb 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00cc 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
+00cd 2feffe03 isolate1 3 ,pdata 
+00ce 6ff08a06 fetch 1 ,0x8a06 
+00cf 7920fe07 setflag true ,7 ,pdata 
+00d0 67f08a06 store 1 ,0x8a06 
+00d1 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00d2 1fe10407 and pdata ,7 ,temp 
+00d3 18520400 lshift4 temp ,temp 
+00d4 18438400 lshift temp ,temp 
+00d5 6048c438 storet 1 ,mem_ring_ibias_trim 
+00d6 6ff08a02 fetch 1 ,0x8a02 
+00d7 1fe17e1f and pdata ,0x1f ,pdata 
+00d8 9841fe00 ior temp ,pdata 
+00d9 67f08a02 store 1 ,0x8a02 
+00da 20600000 rtn 
 
 p_rf_rx_enable:
-00c3 2040686f call rf_debug_rx_gpio_high 
-00c4 204021ba call rf_rx_agc_set 
-00c5 18002a08 force 8 ,radio_ctrl 
-00c6 18002a00 force 0 ,radio_ctrl 
-00c7 580aaada setarg 0x0aaada 
-00c8 67f18a0f store 3 ,0x8a0f 
-00c9 708a2540 jam 0x40 ,0x8a25 
-00ca 708a2610 jam 0x10 ,0x8a26 
-00cb 2000003c nop 60 
-00cc 708a01fb jam 0xfb ,0x8a01 
-00cd 708a25ff jam 0xff ,0x8a25 
-00ce 708a2630 jam 0x30 ,0x8a26 
-00cf 708a16fe jam 0xfe ,0x8a16 
-00d0 202021b4 branch rf_rx_enable + 14 
+00db 2040686f call rf_debug_rx_gpio_high 
+00dc 204021ba call rf_rx_agc_set 
+00dd 18002a08 force 8 ,radio_ctrl 
+00de 18002a00 force 0 ,radio_ctrl 
+00df 580aaada setarg 0x0aaada 
+00e0 67f18a0f store 3 ,0x8a0f 
+00e1 708a2540 jam 0x40 ,0x8a25 
+00e2 708a2610 jam 0x10 ,0x8a26 
+00e3 2000003c nop 60 
+00e4 708a01fb jam 0xfb ,0x8a01 
+00e5 708a25ff jam 0xff ,0x8a25 
+00e6 708a2630 jam 0x30 ,0x8a26 
+00e7 708a16fe jam 0xfe ,0x8a16 
+00e8 202021b4 branch rf_rx_enable + 14 
 
 p_mouse_g24_retransmit:
-00d1 6fe0c793 fetch 1 ,mem_mouse_need_soft_reset 
-00d2 247a0000 nrtn blank 
-00d3 204000d5 call p_mouse_retransmit_select_device_by_pb_button 
-00d4 202060fc branch mouse_g24_retransmit + 3 
-
-p_mouse_retransmit_select_device_by_pb_button:
-00d5 6fe0c655 fetch 1 ,mem_config_select_device_button_gpio 
-00d6 c17f8000 rtneq gpio_disable 
-00d7 20205e78 branch mouse_retransmit_select_device_by_pb_button 
+00e9 6fe0c793 fetch 1 ,mem_mouse_need_soft_reset 
+00ea 247a0000 nrtn blank 
+00eb 204000ed call p_mouse_select_device_by_dpi_button_once 
+00ec 20203662 branch g24_retransmit0 
+
+p_mouse_select_device_by_dpi_button_once:
+00ed d8e0000c arg 12 ,queue 
+00ee 20407cef call timer_check 
+00ef 247a0000 nrtn blank 
+00f0 20400441 call p_mouse_dpi_check_retransmit 
+00f1 20206102 branch mouse_g24_retransmit_event_set 
 
 p_g24_transmit_hop_process:
-00d8 6848c601 fetcht 1 ,mem_24g_retry 
-00d9 6fe0c621 fetch 1 ,mem_24g_fast_hop_count 
-00da 98467c00 isub temp ,null 
-00db 242100dd nbranch p_g24_tx_fast_hop ,positive 
-00dc 20203681 branch g24_transmit_hop_process + 5 
+00f2 6848c601 fetcht 1 ,mem_24g_retry 
+00f3 6fe0c621 fetch 1 ,mem_24g_fast_hop_count 
+00f4 98467c00 isub temp ,null 
+00f5 242100f7 nbranch p_g24_tx_fast_hop ,positive 
+00f6 20203681 branch g24_transmit_hop_process + 5 
 
 p_g24_tx_fast_hop:
-00dd 6fe2458f fetch 4 ,mem_24g_addr 
-00de 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-00df 98467c00 isub temp ,null 
-00e0 2022b222 branch g24_ch ,zero 
-00e1 20400288 call p_power_ctrl_txpower_incrs 
-00e2 2020369b branch g24_tx_fast_hop + 1 
+00f7 6fe2458f fetch 4 ,mem_24g_addr 
+00f8 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+00f9 98467c00 isub temp ,null 
+00fa 2022b222 branch g24_ch ,zero 
+00fb 204002b5 call p_power_ctrl_txpower_incrs 
+00fc 2020369b branch g24_tx_fast_hop + 1 
 
 p_txon:
-00e3 580aaa7e setarg 0x0aaa7e 
-00e4 67f18a0f store 3 ,0x8a0f 
-00e5 2000003c nop 60 
-00e6 708a2500 jam 0x00 ,0x8a25 
-00e7 708a260d jam 0x0d ,0x8a26 
-00e8 708a16f6 jam 0xf6 ,0x8a16 
-00e9 20202203 branch txon + 7 
+00fd 580aaa7e setarg 0x0aaa7e 
+00fe 67f18a0f store 3 ,0x8a0f 
+00ff 2000003c nop 60 
+0100 708a2500 jam 0x00 ,0x8a25 
+0101 708a260d jam 0x0d ,0x8a26 
+0102 708a16f6 jam 0xf6 ,0x8a16 
+0103 20202203 branch txon + 7 
 
 p_set_tx_power:
-00ea 6fe0c141 fetch 1 ,mem_tx_power 
-00eb c0032225 beq tx_power_6db ,set_tx_power_7db 
-00ec c00500f2 beq tx_power_10db ,p_set_tx_power_10db 
-00ed c04f00fb beq tx_power_f30db ,p_set_tx_power_f30db 
-00ee c05000ff beq tx_power_f40db ,p_set_tx_power_f40db 
-00ef c0510103 beq tx_power_f50db ,p_set_tx_power_f50db 
-00f0 c05500f7 beq tx_power_factory ,p_set_tx_power_factory 
-00f1 2020220e branch set_tx_power + 2 
-
-p_set_tx_power_10db:
-00f2 708a1425 jam 0x25 ,0x8a14 
-00f3 58a93f3f setarg 0xa93f3f 
-00f4 67f18a60 store 3 ,0x8a60 
-00f5 708a631f jam 0x1f ,0x8a63 
-00f6 20600000 rtn 
+0104 6fe0c141 fetch 1 ,mem_tx_power 
+0105 c0032225 beq tx_power_6db ,set_tx_power_7db 
+0106 c04f010f beq tx_power_f30db ,p_set_tx_power_f30db 
+0107 c0500112 beq tx_power_f40db ,p_set_tx_power_f40db 
+0108 c0510116 beq tx_power_f50db ,p_set_tx_power_f50db 
+0109 c055010b beq tx_power_factory ,p_set_tx_power_factory 
+010a 2020220e branch set_tx_power + 2 
 
 p_set_tx_power_factory:
-00f7 708a1417 jam 0x17 ,0x8a14 
-00f8 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
-00f9 67f18a60 store 3 ,0x8a60 
-00fa 2020221a branch set_tx_power_8a63_28 
+010b 708a1417 jam 0x17 ,0x8a14 
+010c 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
+
+p_mouse_tx_power_set:
+010d 67f18a60 store 3 ,0x8a60 
+010e 2020221a branch set_tx_power_8a63_28 
 
 p_set_tx_power_f30db:
-00fb 708a1417 jam 0x17 ,0x8a14 
-00fc 58250300 setarg 0x250300 
-00fd 67f18a60 store 3 ,0x8a60 
-00fe 2020221a branch set_tx_power_8a63_28 
+010f 708a1417 jam 0x17 ,0x8a14 
+0110 58250300 setarg 0x250300 
+0111 2020010d branch p_mouse_tx_power_set 
 
 p_set_tx_power_f40db:
-00ff 708a1417 jam 0x17 ,0x8a14 
-0100 58250000 setarg 0x250000 
-0101 67f18a60 store 3 ,0x8a60 
-0102 2020221a branch set_tx_power_8a63_28 
+0112 708a1417 jam 0x17 ,0x8a14 
+0113 58250000 setarg 0x250000 
+0114 67f18a60 store 3 ,0x8a60 
+0115 2020221a branch set_tx_power_8a63_28 
 
 p_set_tx_power_f50db:
-0103 708a1417 jam 0x17 ,0x8a14 
-0104 58000000 setarg 0x000000 
-0105 67f18a60 store 3 ,0x8a60 
-0106 708a6325 jam 0x25 ,0x8a63 
-0107 20600000 rtn 
+0116 708a1417 jam 0x17 ,0x8a14 
+0117 58000000 setarg 0x000000 
+0118 67f18a60 store 3 ,0x8a60 
+0119 708a6325 jam 0x25 ,0x8a63 
+011a 20600000 rtn 
 
 p_rx_dcoc:
-0108 20758000 rtn wake 
-0109 20402160 call set_sync_on 
-010a d8400027 arg 39 ,temp 
-010b 2040216f call set_freq_rx 
-010c 204021a6 call rf_rx_enable 
-010d 708a257f jam 0x7f ,0x8a25 
-010e 708a301a jam 0x1a ,0x8a30 
-010f 708a3178 jam 0x78 ,0x8a31 
-0110 708a8fb2 jam 0xb2 ,0x8a8f 
-0111 708ac200 jam 0 ,0x8ac2 
-0112 708ac300 jam 0 ,0x8ac3 
-0113 d8e00006 arg 6 ,queue 
-0114 20400125 call p_rx_dcoc_avg 
-0115 2a2ffe0d isolate1 13 ,rega 
-0116 2040211d call qset_start 
-0117 2a4ffe0d isolate1 13 ,regb 
-0118 2040211e call qset_p 
-0119 d8e00005 arg 5 ,queue 
+011b 20758000 rtn wake 
+011c 20402160 call set_sync_on 
+011d d8400027 arg 39 ,temp 
+011e 2040216f call set_freq_rx 
+011f 204021a6 call rf_rx_enable 
+0120 708a257f jam 0x7f ,0x8a25 
+0121 708a301a jam 0x1a ,0x8a30 
+0122 708a3178 jam 0x78 ,0x8a31 
+0123 708a8fb2 jam 0xb2 ,0x8a8f 
+0124 708ac200 jam 0 ,0x8ac2 
+0125 708ac300 jam 0 ,0x8ac3 
+0126 d8e00006 arg 6 ,queue 
+0127 20400138 call p_rx_dcoc_avg 
+0128 2a2ffe0d isolate1 13 ,rega 
+0129 2040211d call qset_start 
+012a 2a4ffe0d isolate1 13 ,regb 
+012b 2040211e call qset_p 
+012c d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-011a 2040211c call qset1_p 
-011b 2040211e call qset_p 
-011c 20400125 call p_rx_dcoc_avg 
-011d d8a08ac2 arg 0x8ac2 ,contw 
-011e 1a31fe00 rshift4 rega ,pdata 
-011f 20402117 call qsetxor 
-0120 1a51fe00 rshift4 regb ,pdata 
-0121 20402117 call qsetxor 
-0122 18e08fff increase -1 ,queue 
-0123 2021011a branch p_rx_dcoc_loop2 ,positive 
-0124 2020214f branch rx_dcoc_loop2 + 10 
+012d 2040211c call qset1_p 
+012e 2040211e call qset_p 
+012f 20400138 call p_rx_dcoc_avg 
+0130 d8a08ac2 arg 0x8ac2 ,contw 
+0131 1a31fe00 rshift4 rega ,pdata 
+0132 20402117 call qsetxor 
+0133 1a51fe00 rshift4 regb ,pdata 
+0134 20402117 call qsetxor 
+0135 18e08fff increase -1 ,queue 
+0136 2021012d branch p_rx_dcoc_loop2 ,positive 
+0137 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-0125 2000003c nop 60 
-0126 58000f00 setarg mem_dcoc_buf 
-0127 67f10982 store 2 ,0x8982 
-0128 58000ff0 setarg mem_dcoc_buf_end 
-0129 67f10984 store 2 ,0x8984 
-012a 70898109 jam 0x9 ,0x8981 
-012b 70898103 jam 0x3 ,0x8981 
-012c 70898006 jam 0x6 ,0x8980 
-012d 2000003c nop 60 
-012e da200000 arg 0 ,rega 
-012f da400000 arg 0 ,regb 
-0130 df200010 arg 16 ,loopcnt 
-0131 d8c00f00 arg mem_dcoc_buf ,contr 
-0132 2020212d branch rx_dcoc_loop 
+0138 2000003c nop 60 
+0139 58000f00 setarg mem_dcoc_buf 
+013a 67f10982 store 2 ,0x8982 
+013b 58000ff0 setarg mem_dcoc_buf_end 
+013c 67f10984 store 2 ,0x8984 
+013d 70898109 jam 0x9 ,0x8981 
+013e 70898103 jam 0x3 ,0x8981 
+013f 70898006 jam 0x6 ,0x8980 
+0140 2000003c nop 60 
+0141 da200000 arg 0 ,rega 
+0142 da400000 arg 0 ,regb 
+0143 df200010 arg 16 ,loopcnt 
+0144 d8c00f00 arg mem_dcoc_buf ,contr 
+0145 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-0133 20758000 rtn wake 
-0134 20202272 branch rfpll_aac_ghpc + 1 
-
-p_sadc_calibration:
-0135 20758000 rtn wake 
-0136 708a0777 jam 0x77 ,core_gpadc_ctrl 
-0137 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-0138 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-0139 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-013a 67f080cd store 1 ,core_sadc_clkdiv 
-013b 20000bb8 nop 3000 
-013c 20400145 call p_sadc_read 
-013d 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-013e 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-013f df200008 arg 8 ,loopcnt 
-0140 20406f58 call sadc_cal_read + 1 
-0141 6fe0c419 fetch 1 ,mem_spi_write_addr 
-0142 67e0c433 store 1 ,mem_adc_cal_c7 
-0143 6240c419 storer regb ,1 ,mem_spi_write_addr 
-0144 20600000 rtn 
-
-p_sadc_read:
-0145 7080cc03 jam 0x03 ,core_sadc_ctrl 
-
-p_sadc_read_wait:
-0146 6ff08129 fetch 1 ,core_perf_status 
-0147 c3028146 bbit0 saradc_done ,p_sadc_read_wait 
-0148 68590164 fetcht 2 ,core_sadc_data 
-0149 6049440a storet 2 ,mem_adc_current_value 
-014a 7080cc00 jam 0x00 ,core_sadc_ctrl 
-014b 20600000 rtn 
+0146 20758000 rtn wake 
+0147 20202272 branch rfpll_aac_ghpc + 1 
 
 p_set_lemode:
-014c 708a8211 jam 0x11 ,0x8a82 
-014d 708a8d12 jam 0x12 ,0x8a8d 
-014e 708a8e0a jam 0x0a ,0x8a8e 
-014f 6fe0c099 fetch 1 ,mem_fcomp_div 
-0150 c0080165 beq xtal_16m ,p_set_lemode_2m_16m 
-0151 58005762 setarg 0x5762 
-0152 67f10907 store 2 ,0x8907 
+0148 708a8211 jam 0x11 ,0x8a82 
+0149 708a8d12 jam 0x12 ,0x8a8d 
+014a 708a8e0a jam 0x0a ,0x8a8e 
+014b 6fe0c099 fetch 1 ,mem_fcomp_div 
+014c c0080161 beq xtal_16m ,p_set_lemode_2m_16m 
+014d 58005762 setarg 0x5762 
+014e 67f10907 store 2 ,0x8907 
 
 p_set_lemode_2m:
-0153 70890103 jam 3 ,0x8901 
-0154 70893003 jam 3 ,0x8930 
-0155 c6168000 rtnmark1 mark_ble_2m 
-0156 70890101 jam 1 ,0x8901 
-0157 708a8207 jam 0x07 ,0x8a82 
-0158 708a8d44 jam 0x44 ,0x8a8d 
-0159 708a8e0a jam 0x0a ,0x8a8e 
-015a 6fe0c099 fetch 1 ,mem_fcomp_div 
-015b c0080162 beq xtal_16m ,p_set_lemode_1m_16m 
-015c 58002bb1 setarg 0x2bb1 
-015d 67f10907 store 2 ,0x8907 
+014f 70890103 jam 3 ,0x8901 
+0150 70893003 jam 3 ,0x8930 
+0151 c6168000 rtnmark1 mark_ble_2m 
+0152 70890101 jam 1 ,0x8901 
+0153 708a8207 jam 0x07 ,0x8a82 
+0154 708a8d44 jam 0x44 ,0x8a8d 
+0155 708a8e0a jam 0x0a ,0x8a8e 
+0156 6fe0c099 fetch 1 ,mem_fcomp_div 
+0157 c008015e beq xtal_16m ,p_set_lemode_1m_16m 
+0158 58002bb1 setarg 0x2bb1 
+0159 67f10907 store 2 ,0x8907 
 
 p_set_lemode_1m:
-015e c6978000 rtnmark0 mark_ble_lr 
-015f 70893024 jam 0x24 ,0x8930 
-0160 70890105 jam 5 ,0x8901 
-0161 20600000 rtn 
+015a c6978000 rtnmark0 mark_ble_lr 
+015b 70893024 jam 0x24 ,0x8930 
+015c 70890105 jam 5 ,0x8901 
+015d 20600000 rtn 
 
 p_set_lemode_1m_16m:
-0162 58004189 setarg 0x4189 
-0163 67f10907 store 2 ,0x8907 
-0164 2020015e branch p_set_lemode_1m 
+015e 58004189 setarg 0x4189 
+015f 67f10907 store 2 ,0x8907 
+0160 2020015a branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-0165 58008312 setarg 0x8312 
-0166 67f10907 store 2 ,0x8907 
-0167 20200153 branch p_set_lemode_2m 
+0161 58008312 setarg 0x8312 
+0162 67f10907 store 2 ,0x8907 
+0163 2020014f branch p_set_lemode_2m 
 
 p_le_check_retransmit_timesout:
-0168 6fe0cc55 fetch 1 ,mem_le_conn_rcv_new 
-0169 da600100 arg 256 ,regc 
-016a 9a60fe00 iadd regc ,pdata 
-016b 20600000 rtn 
-
-p_le_got_first_packet:
-016c 2020018c branch p_le_got_first_packet_new 
+0164 6fe0cc57 fetch 1 ,mem_le_conn_rcv_new 
+0165 da600100 arg 256 ,regc 
+0166 9a60fe00 iadd regc ,pdata 
+0167 20600000 rtn 
 
 p_le_slave_match:
-016d 2040016f call p_le_check_retransmit 
-016e 20202563 branch le_slave_match + 1 
+0168 2040016a call p_le_check_retransmit 
+0169 20202563 branch le_slave_match + 1 
 
 p_le_check_retransmit:
-016f 6fe0cc56 fetch 1 ,mem_le_conn_first_rcv 
-0170 207a0000 rtn blank 
-0171 6fe0cc57 fetch 1 ,mem_le_check_retransmit_flag 
-0172 247a0000 nrtn blank 
-0173 6848cc56 fetcht 1 ,mem_le_conn_first_rcv 
-0174 6fe0cc55 fetch 1 ,mem_le_conn_rcv_new 
-0175 98467c00 isub temp ,null 
-0176 24410168 ncall p_le_check_retransmit_timesout ,positive 
-0177 98467e00 isub temp ,pdata 
-0178 1fe67c64 sub pdata ,100 ,null 
-0179 20210181 branch p_le_check_retransmit_count ,positive 
-017a 6fe0cc58 fetch 1 ,mem_le_retransmit_cnt 
-017b 1fe67c14 sub pdata ,20 ,null 
-017c 2441017f ncall p_app_ble_disconnect ,positive 
-017d 704c5701 jam 1 ,mem_le_check_retransmit_flag 
-017e 20600000 rtn 
+016a 6fe0cc58 fetch 1 ,mem_le_conn_first_rcv 
+016b 207a0000 rtn blank 
+016c 6fe0cc59 fetch 1 ,mem_le_check_retransmit_flag 
+016d 247a0000 nrtn blank 
+016e 6848cc58 fetcht 1 ,mem_le_conn_first_rcv 
+016f 6fe0cc57 fetch 1 ,mem_le_conn_rcv_new 
+0170 98467c00 isub temp ,null 
+0171 24410164 ncall p_le_check_retransmit_timesout ,positive 
+0172 98467e00 isub temp ,pdata 
+0173 1fe67c64 sub pdata ,100 ,null 
+0174 2021017c branch p_le_check_retransmit_count ,positive 
+0175 6fe0cc5a fetch 1 ,mem_le_retransmit_cnt 
+0176 1fe67c14 sub pdata ,20 ,null 
+0177 2441017a ncall p_app_ble_disconnect ,positive 
+0178 704c5901 jam 1 ,mem_le_check_retransmit_flag 
+0179 20600000 rtn 
 
 p_app_ble_disconnect:
-017f 704c5901 jam 1 ,mem_le_check_retransmit_discon_flag 
-0180 2020431f branch app_ble_disconnect 
+017a 704c5b01 jam 1 ,mem_le_check_retransmit_discon_flag 
+017b 2020431f branch app_ble_disconnect 
 
 p_le_check_retransmit_count:
-0181 6848817f fetcht 1 ,mem_le_arq 
-0182 6fe0804c fetch 1 ,mem_le_rxbuf_data_header 
-0183 1fe37e00 rshift pdata ,pdata 
-0184 9842fe00 ixor temp ,pdata 
-0185 2feffe02 isolate1 nesn ,pdata 
-0186 58000000 setarg 0 
-0187 6848cc58 fetcht 1 ,mem_le_retransmit_cnt 
-0188 7920fe00 setflag true ,0 ,pdata 
-0189 98408400 iadd temp ,temp 
-018a 6048cc58 storet 1 ,mem_le_retransmit_cnt 
-018b 20600000 rtn 
+017c 6848817f fetcht 1 ,mem_le_arq 
+017d 6fe0804c fetch 1 ,mem_le_rxbuf_data_header 
+017e 1fe37e00 rshift pdata ,pdata 
+017f 9842fe00 ixor temp ,pdata 
+0180 2feffe02 isolate1 nesn ,pdata 
+0181 58000000 setarg 0 
+0182 6848cc5a fetcht 1 ,mem_le_retransmit_cnt 
+0183 7920fe00 setflag true ,0 ,pdata 
+0184 98408400 iadd temp ,temp 
+0185 6048cc5a storet 1 ,mem_le_retransmit_cnt 
+0186 20600000 rtn 
 
 p_le_got_first_packet_new:
-018c 6fe08005 fetch 1 ,mem_le_conn_rcv 
-018d 1fe0fe01 increase 1 ,pdata 
-018e 67e08005 store 1 ,mem_le_conn_rcv 
-018f 24368193 nbranch p_le_got_first_packet_new + 7 ,match 
-0190 6fe0cc55 fetch 1 ,mem_le_conn_rcv_new 
-0191 1fe0fe01 increase 1 ,pdata 
-0192 67e0cc55 store 1 ,mem_le_conn_rcv_new 
-0193 6fe08168 fetch 1 ,mem_le_state 
-0194 c3818000 rtnbit1 lestate_got_first_packet 
-0195 79207e03 set1 lestate_got_first_packet ,pdata 
-0196 67e08168 store 1 ,mem_le_state 
-0197 6fe142f5 fetch 2 ,mem_le_init_superto 
-0198 67e10196 store 2 ,mem_le_superto 
-0199 58000000 setarg 0 
-019a 67e2431d store 4 ,mem_le_transmit_window 
-019b 20600000 rtn 
+0187 6fe08005 fetch 1 ,mem_le_conn_rcv 
+0188 1fe0fe01 increase 1 ,pdata 
+0189 67e08005 store 1 ,mem_le_conn_rcv 
+018a 2436818e nbranch p_le_got_first_packet_new + 7 ,match 
+018b 6fe0cc57 fetch 1 ,mem_le_conn_rcv_new 
+018c 1fe0fe01 increase 1 ,pdata 
+018d 67e0cc57 store 1 ,mem_le_conn_rcv_new 
+018e 2020259b branch le_got_first_packet + 4 
 
 p_le_rx_dec:
-019c 2040281c call le_check_retransmit 
-019d 6a20804d fetchr rega ,1 ,mem_le_rxbuf_data_length 
-019e 1a20a3fc increase -4 ,rega 
-019f 242126fa nbranch le_crc_fail_consecutive ,positive 
-01a0 2020268e branch le_rx_dec + 6 
+018f 2040281c call le_check_retransmit 
+0190 6a20804d fetchr rega ,1 ,mem_le_rxbuf_data_length 
+0191 1a20a3fc increase -4 ,rega 
+0192 242126fa nbranch le_crc_fail_consecutive ,positive 
+0193 2020268e branch le_rx_dec + 6 
 
 p_le_rx_nopayload:
-01a1 09800018 parse demod ,bucket ,24 
-01a2 1fef7e00 rshift32 pdata ,pdata 
-01a3 1ff17e00 rshift16 pdata ,pdata 
-01a4 e7e18005 istore 3 ,contw 
-01a5 78287c00 enable swfine 
-01a6 2040270d call le_set_until_tx_timer 
-01a7 202326f6 branch le_crc_fail ,crc_failed 
-01a8 c59926af bmark0 mark_ble_encryption ,le_rx_match 
-01a9 6fe0804d fetch 1 ,mem_le_rxbuf_data_length 
-01aa 203a26af branch le_rx_match ,blank 
-01ab 1fe0fffc increase -4 ,pdata 
-01ac 67e0804d store 1 ,mem_le_rxbuf_data_length 
-01ad 204072cb call wait_ccm_done 
-01ae 6ff08108 fetch 1 ,core_misc_status 
-01af c303a6fa bbit0 7 ,le_crc_fail_consecutive 
-01b0 1800700c force regidx_result ,regext_index 
-01b1 65e20154 storer regext ,4 ,mem_le_peer_mic 
-01b2 202026af branch le_rx_match 
+0194 09800018 parse demod ,bucket ,24 
+0195 1fef7e00 rshift32 pdata ,pdata 
+0196 1ff17e00 rshift16 pdata ,pdata 
+0197 e7e18005 istore 3 ,contw 
+0198 78287c00 enable swfine 
+0199 2040270d call le_set_until_tx_timer 
+019a 202326f6 branch le_crc_fail ,crc_failed 
+019b c59926af bmark0 mark_ble_encryption ,le_rx_match 
+019c 6fe0804d fetch 1 ,mem_le_rxbuf_data_length 
+019d 203a26af branch le_rx_match ,blank 
+019e 1fe0fffc increase -4 ,pdata 
+019f 67e0804d store 1 ,mem_le_rxbuf_data_length 
+01a0 204072cb call wait_ccm_done 
+01a1 6ff08108 fetch 1 ,core_misc_status 
+01a2 c303a6fa bbit0 7 ,le_crc_fail_consecutive 
+01a3 1800700c force regidx_result ,regext_index 
+01a4 65e20154 storer regext ,4 ,mem_le_peer_mic 
+01a5 202026af branch le_rx_match 
 
 p_le_parse:
-01b3 6fe0c334 fetch 1 ,mem_le_packet_llid 
-01b4 c1000000 rtneq llid_reserved 
-01b5 c001b04a beq llid_le_ll ,le_parse_ll 
-01b6 202028e1 branch le_parse_l2cap 
+01a6 6fe0c334 fetch 1 ,mem_le_packet_llid 
+01a7 c1000000 rtneq llid_reserved 
+01a8 c001b04a beq llid_le_ll ,le_parse_ll 
+01a9 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-01b7 793f8030 set0 mark_ble_crc_fail ,mark 
-01b8 20202af6 branch le_init_adv + 1 
+01aa 793f8030 set0 mark_ble_crc_fail ,mark 
+01ab 20202af6 branch le_init_adv + 1 
+
+p_le_receive_rxon:
+01ac 204025c2 call le_prep 
+01ad c59781b2 bmark0 mark_ble_lr ,p_le_receive_nolr 
+01ae 783cfc00 pulse dewhiten_code_calc 
+01af 2000001e nop 30 
+01b0 204025c2 call le_prep 
+01b1 19699600 lshift3 timeup ,timeup 
+
+p_le_receive_nolr:
+01b2 7856fc00 disable match 
+01b3 7826fc00 enable decode_fec0 
+01b4 7830fc00 enable is_rx 
+01b5 78507c00 disable is_tx 
+01b6 19623600 copy timeup ,stop_watch 
+01b7 37c18400 correlate null ,timeout 
+01b8 203701bb branch p_le_receive_on_attempt ,attempt 
+01b9 1b420400 copy clke ,temp 
+01ba 604b000f storet 6 ,mem_sync_clke 
+
+p_le_receive_on_attempt:
+01bb 242c26fa nbranch le_unsync_end ,sync 
+01bc 78287c00 enable swfine 
+01bd 6fe0c167 fetch 1 ,mem_le_tx_ifs_defference 
+01be d8404e20 arg param_20ms_init ,temp 
+01bf 98408400 iadd temp ,temp 
+01c0 6fe0c148 fetch 1 ,mem_system_clk 
+01c1 984fb600 imul32 temp ,stop_watch 
+01c2 20406877 call rf_debug_rx_sync_line 
+01c3 20372677 branch le_receive_skip ,attempt 
+01c4 204001c9 call p_calc_clke_all_modem 
+01c5 6fe08168 fetch 1 ,mem_le_state 
+01c6 c301a677 bbit0 lestate_got_first_packet ,le_receive_skip 
+01c7 2055a477 call lpm_adjust_clk ,wake 
+01c8 20202677 branch le_receive_skip 
+
+p_calc_clke_all_modem:
+01c9 684b000f fetcht 6 ,mem_sync_clke 
+01ca 1b427e00 copy clke ,pdata 
+01cb 20407d12 call clk_diff 
+01cc 1fe20400 copy pdata ,temp 
+01cd 204026ff call calc_clke_all_modem 
+01ce 1b425600 copy clke ,rege 
+01cf 1d227e00 copy clke_rt ,pdata 
+01d0 9840fe00 iadd temp ,pdata 
+01d1 1fe25200 copy pdata ,clke_rt 
+01d2 20600000 rtn 
+
+p_lpm_adjust_clk:
+01d3 c584a489 bmark0 mark_context ,lpm_clear_counter 
+01d4 684a40ad fetcht 4 ,mem_sleep_counter_all 
+01d5 dfe00600 arg 0x600 ,pdata 
+01d6 98467c00 isub temp ,null 
+01d7 20610000 rtn positive 
+01d8 18422200 copy temp ,rega 
+01d9 684b000f fetcht 6 ,mem_sync_clke 
+01da 1d627e00 deposit rege 
+01db 20407d10 call clk_diff_rt 
+01dc 1a220400 copy rega ,temp 
+01dd 2020247d branch lpm_adjust_clk + 6 
 
 p_le_adv_not_match:
-01b9 20402152 call shutdown_radio 
-01ba 70890000 jam 0 ,0x8900 
-01bb 793f8030 set0 mark_ble_crc_fail ,mark 
-01bc 20202ae3 branch le_adv_not_match + 1 
+01de 20402152 call shutdown_radio 
+01df 70890000 jam 0 ,0x8900 
+01e0 793f8030 set0 mark_ble_crc_fail ,mark 
+01e1 20202ae3 branch le_adv_not_match + 1 
 
 p_le_parse_l2cap:
-01bd efe10006 ifetch 2 ,contr 
-01be c00201c0 beq le_l2cap_cid_att ,p_le_parse_att 
-01bf 202028eb branch le_parse_l2cap_next + 2 
+01e2 efe10006 ifetch 2 ,contr 
+01e3 c00201e5 beq le_l2cap_cid_att ,p_le_parse_att 
+01e4 202028eb branch le_parse_l2cap_next + 2 
 
 p_le_parse_att:
-01c0 efe18006 ifetch 3 ,contr 
-01c1 67e1c397 store 3 ,mem_le_att_opcode 
-01c2 c00501c5 beq attop_read_request ,p_le_parse_att_read_request 
-01c3 c00901d4 beq attop_write_request ,p_le_parse_att_write_request 
-01c4 20202b96 branch le_parse_att2 
+01e5 efe18006 ifetch 3 ,contr 
+01e6 67e1c397 store 3 ,mem_le_att_opcode 
+01e7 c00501ea beq attop_read_request ,p_le_parse_att_read_request 
+01e8 c00901f9 beq attop_write_request ,p_le_parse_att_write_request 
+01e9 20202b96 branch le_parse_att2 
 
 p_le_parse_att_read_request:
-01c5 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01c6 c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
-01c7 20402dc7 call le_check_encrypt_state 
-01c8 68494398 fetcht 2 ,mem_le_att_handle 
-01c9 6fe0c321 fetch 1 ,mem_le_configuration 
-01ca c28181cf bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+01ea 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+01eb c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
+01ec 20402dc7 call le_check_encrypt_state 
+01ed 68494398 fetcht 2 ,mem_le_att_handle 
+01ee 6fe0c321 fetch 1 ,mem_le_configuration 
+01ef c28181f4 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-01cb 6fe14398 fetch 2 ,mem_le_att_handle 
-01cc c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
-01cd 68494398 fetcht 2 ,mem_le_att_handle 
-01ce 20202d1d branch le_send_att_read_response 
+01f0 6fe14398 fetch 2 ,mem_le_att_handle 
+01f1 c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
+01f2 68494398 fetcht 2 ,mem_le_att_handle 
+01f3 20202d1d branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-01cf 6fe14332 fetch 2 ,mem_le_pairing_handle 
-01d0 98467c00 isub temp ,null 
-01d1 242281cb nbranch p_le_send_att_read_response ,zero 
-01d2 243401cb nbranch p_le_send_att_read_response ,user 
-01d3 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01f4 6fe14332 fetch 2 ,mem_le_pairing_handle 
+01f5 98467c00 isub temp ,null 
+01f6 242281f0 nbranch p_le_send_att_read_response ,zero 
+01f7 243401f0 nbranch p_le_send_att_read_response ,user 
+01f8 20202d46 branch le_send_att_read_response_error_insufficient_auth 
 
 p_le_parse_att_write_request:
-01d4 18c22200 copy contr ,rega 
-01d5 6fe14335 fetch 2 ,mem_le_l2cap_size 
-01d6 1fe0a5fd add pdata ,-3 ,regb 
-01d7 20402929 call le_writeatt_cb 
-01d8 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-01d9 c07fadac beq 0xff ,le_send_att_write_response_check_auth 
-01da 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
-01db 203a2dac branch le_send_att_write_response_check_auth ,blank 
-01dc 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-01dd c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-01de 5800001a setarg 0x001a 
-01df 68494398 fetcht 2 ,mem_le_att_handle 
-01e0 98467c00 isub temp ,null 
-01e1 2422adac nbranch le_send_att_write_response_check_auth ,zero 
-01e2 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01f9 18c22200 copy contr ,rega 
+01fa 6fe14335 fetch 2 ,mem_le_l2cap_size 
+01fb 1fe0a5fd add pdata ,-3 ,regb 
+01fc 20402929 call le_writeatt_cb 
+01fd 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+01fe c07fadac beq 0xff ,le_send_att_write_response_check_auth 
+01ff 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+0200 203a2dac branch le_send_att_write_response_check_auth ,blank 
+0201 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+0202 c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0203 5800001a setarg 0x001a 
+0204 68494398 fetcht 2 ,mem_le_att_handle 
+0205 98467c00 isub temp ,null 
+0206 2422adac nbranch le_send_att_write_response_check_auth ,zero 
+0207 20202d46 branch le_send_att_read_response_error_insufficient_auth 
 
 p_mouse_le:
-01e3 20402a28 call le_fifo_check_nearly_full 
-01e4 247a0000 nrtn blank 
-01e5 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-01e6 c07f81ee beq 0xff ,p_mouse_le_next 
-01e7 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-01e8 1fe17e03 and pdata ,0x03 ,pdata 
-01e9 c1818000 rtnne 0x03 
-01ea 6fe0cc57 fetch 1 ,mem_le_check_retransmit_flag 
-01eb 207a0000 rtn blank 
-01ec 6fe0cc59 fetch 1 ,mem_le_check_retransmit_discon_flag 
-01ed 247a0000 nrtn blank 
+0208 20402a28 call le_fifo_check_nearly_full 
+0209 247a0000 nrtn blank 
+020a 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+020b c07f8213 beq 0xff ,p_mouse_le_next 
+020c 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+020d 1fe17e03 and pdata ,0x03 ,pdata 
+020e c1818000 rtnne 0x03 
+020f 6fe0cc59 fetch 1 ,mem_le_check_retransmit_flag 
+0210 207a0000 rtn blank 
+0211 6fe0cc5b fetch 1 ,mem_le_check_retransmit_discon_flag 
+0212 247a0000 nrtn blank 
 
 p_mouse_le_next:
-01ee 6fe0c956 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-01ef 205a5a71 call mouse_clear_sensor_data_by_reset ,blank 
-01f0 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01f1 c280db5b bbit1 mouse_24g_pairing_flag ,mouse_le_send_empty_packet 
-01f2 c2805b5b bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
-01f3 c282db5b bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-01f4 c2835b5b bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_le_send_empty_packet 
-01f5 20405601 call mouse_motion 
-01f6 20405ab2 call mouse_check_125hz 
-01f7 24740000 nrtn user 
-01f8 20405abc call mouse_current_mult_update 
-01f9 204004ba call p_mouse_data_xy_release 
-01fa 20205b37 branch mouse_le_next + 12 
+0213 6fe0c956 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0214 205a5a71 call mouse_clear_sensor_data_by_reset ,blank 
+0215 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0216 c280db5b bbit1 mouse_24g_pairing_flag ,mouse_le_send_empty_packet 
+0217 c2805b5b bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+0218 c282db5b bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0219 c2835b5b bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_le_send_empty_packet 
+021a 20405601 call mouse_motion 
+021b 20405ab2 call mouse_check_125hz 
+021c 24740000 nrtn user 
+021d 20405abc call mouse_current_mult_update 
+021e 20400493 call p_mouse_data_xy_release 
+021f 20205b37 branch mouse_le_next + 12 
 
 p_gpio_set_wake:
-01fb 18467cff sub temp ,ui_button_gpio_disable ,null 
-01fc 20628000 rtn zero 
-01fd d9000004 arg 4 ,debug 
-01fe 284ffe07 isolate1 gpio_active_bit ,temp 
-01ff 2020eebd branch gpio_set_wake_high ,true 
-0200 d9000003 arg 3 ,debug 
-0201 20206ebd branch gpio_set_wake_high 
+0220 18467cff sub temp ,ui_button_gpio_disable ,null 
+0221 20628000 rtn zero 
+0222 d9000004 arg 4 ,debug 
+0223 284ffe07 isolate1 gpio_active_bit ,temp 
+0224 2020eebd branch gpio_set_wake_high ,true 
+0225 d9000003 arg 3 ,debug 
+0226 20206ebd branch gpio_set_wake_high 
 
 p_gpio_set_wake_by_current_state:
-0202 18467cff sub temp ,gpio_disable ,null 
-0203 20628000 rtn zero 
-0204 20406ee6 call gpio_get_bit 
-0205 20208208 branch p_gpio_set_qdec_mode ,true 
+0227 18467cff sub temp ,gpio_disable ,null 
+0228 20628000 rtn zero 
+0229 20406ee6 call gpio_get_bit 
+022a 2020822d branch p_gpio_set_qdec_mode ,true 
 
 p_gpio_set_low_wake:
-0206 d9000003 arg 3 ,debug 
-0207 20206ebd branch gpio_set_wake_high 
+022b d9000003 arg 3 ,debug 
+022c 20206ebd branch gpio_set_wake_high 
 
 p_gpio_set_qdec_mode:
-0208 704b1d01 jam 1 ,mem_mouse_qdec_set_flag 
+022d 704b1d01 jam 1 ,mem_mouse_qdec_set_flag 
 
 p_mouse_qdec_lpm_cfg:
-0209 d9000006 arg 6 ,debug 
-020a 20206ebd branch gpio_set_wake_high 
+022e d9000006 arg 6 ,debug 
+022f 20206ebd branch gpio_set_wake_high 
 
 p_mouse_puchk_disable:
-020b 58000010 setarg 0x10 
+0230 58000010 setarg 0x10 
 
 p_mouse_puchk_set:
-020c 67f08141 store 1 ,core_puwakeup 
-
-p_mouse_wait_lpo:
-020d 37d98200 until null ,lpo_edge 
-020e 20600000 rtn 
-
-p_mouse_puchk_enable:
-020f 58000080 setarg 0x80 
-0210 2020020c branch p_mouse_puchk_set 
+0231 67f08141 store 1 ,core_puwakeup 
+0232 202023e2 branch lpm_write_wait 
 
 p_mouse_lpm_before_common:
-0211 2040048d call p_clear_wake 
-0212 704b1d00 jam 0 ,mem_mouse_qdec_set_flag 
-0213 2040550d call mouse_lpm_before_common + 1 
-0214 204054f9 call mouse_gpio_pd_idle 
+0233 2040046e call p_clear_wake 
+0234 704b1d00 jam 0 ,mem_mouse_qdec_set_flag 
+0235 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+0236 20406ef7 call gpio_out_active 
+0237 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+0238 20406ed3 call gpio_clr_wake 
+0239 2040550d call mouse_lpm_before_common + 1 
+023a 204054f9 call mouse_gpio_pd_idle 
 
 p_mouse_wheel_set_impedance:
-0215 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
-0216 20406f0f call gpio_set_high_impedance 
-0217 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
-0218 20206f0f branch gpio_set_high_impedance 
+023b 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
+023c 20406f0f call gpio_set_high_impedance 
+023d 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
+023e 20206f0f branch gpio_set_high_impedance 
 
 p_lpm_sleep:
-0219 6fe143e9 fetch 2 ,mem_cb_before_lpm_sleep 
-021a 20407d79 call callback_func 
 
 p_lpm_sleep_skip_cb_function:
-021b 6fe240ad fetch 4 ,mem_sleep_counter_all 
-021c 9840fe00 iadd temp ,pdata 
-021d 67e240ad store 4 ,mem_sleep_counter_all 
-021e 20400224 call p_lpm_save_context 
-021f 20400221 call p_mouse_puchk_set_check 
-0220 20202425 branch lpm_sleep_skip_cb_function + 4 
+023f 6fe240ad fetch 4 ,mem_sleep_counter_all 
+0240 9840fe00 iadd temp ,pdata 
+0241 67e240ad store 4 ,mem_sleep_counter_all 
+0242 20400249 call p_lpm_save_context 
+0243 20400245 call p_mouse_puchk_set_check 
+0244 20202425 branch lpm_sleep_skip_cb_function + 4 
 
 p_mouse_puchk_set_check:
-0221 6fe0cb1d fetch 1 ,mem_mouse_qdec_set_flag 
-0222 203a020b branch p_mouse_puchk_disable ,blank 
-0223 2020020f branch p_mouse_puchk_enable 
+0245 6fe0cb1d fetch 1 ,mem_mouse_qdec_set_flag 
+0246 203a0230 branch p_mouse_puchk_disable ,blank 
+
+p_mouse_puchk_enable:
+0247 58000080 setarg 0x80 
+0248 20200231 branch p_mouse_puchk_set 
 
 p_lpm_save_context:
-0224 600440e7 storer mark ,8 ,mem_saved_mark 
-0225 d8c08070 arg core_gpio_conf ,contr 
-0226 d8a040cc arg mem_saved_gpio ,contw 
-0227 20407c8f call memcpy16 
-0228 d8c080d4 arg core_gpio_conf_hi ,contr 
-0229 20407c89 call memcpy8 
-022a 6ff08080 fetch 1 ,core_spid_ctrl 
-022b 67e0c0ef store 1 ,mem_saved_spidctrl 
-022c 18422400 copy temp ,regb 
+0249 600440e7 storer mark ,8 ,mem_saved_mark 
+024a d8c08070 arg core_gpio_conf ,contr 
+024b d8a040cc arg mem_saved_gpio ,contw 
+024c 20407c8f call memcpy16 
+024d d8c080d4 arg core_gpio_conf_hi ,contr 
+024e 20407c89 call memcpy8 
+024f 6ff08080 fetch 1 ,core_spid_ctrl 
+0250 67e0c0ef store 1 ,mem_saved_spidctrl 
+0251 18422400 copy temp ,regb 
 
 p_lpm_write_gpio_wakeup:
-022d df20000c arg 12 ,loopcnt 
-022e da200016 arg mem_gpio_wakeup_cfg ,rega 
-022f da60814d arg core_gpio_wakeup_cfg ,regc 
-0230 37d98200 until null ,lpo_edge 
+0252 df20000c arg 12 ,loopcnt 
+0253 da200016 arg mem_gpio_wakeup_cfg ,rega 
+0254 da60814d arg core_gpio_wakeup_cfg ,regc 
+0255 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop:
-0231 efe08011 ifetch 1 ,rega 
-0232 e8408013 ifetcht 1 ,regc 
-0233 98467c00 isub temp ,null 
-0234 20228237 branch p_lpm_write_gpio_loop_next ,zero 
-0235 e7e08013 istore 1 ,regc 
-0236 37d98200 until null ,lpo_edge 
+0256 efe08011 ifetch 1 ,rega 
+0257 e8408013 ifetcht 1 ,regc 
+0258 98467c00 isub temp ,null 
+0259 2022825c branch p_lpm_write_gpio_loop_next ,zero 
+025a e7e08013 istore 1 ,regc 
+025b 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop_next:
-0237 1a20a201 increase 1 ,rega 
-0238 1a60a601 increase 1 ,regc 
-0239 c2000231 loop p_lpm_write_gpio_loop 
-023a 1a420400 copy regb ,temp 
-023b 20600000 rtn 
+025c 1a20a201 increase 1 ,rega 
+025d 1a60a601 increase 1 ,regc 
+025e c2000256 loop p_lpm_write_gpio_loop 
+025f 1a420400 copy regb ,temp 
+0260 20600000 rtn 
 
 p_otp_read_data:
-023c 20406b3a call enable_otp_read 
-023d 20406b75 call otp_read_data + 1 
-023e 20206b38 branch otp_disable_chgpump 
+0261 20406b3a call enable_otp_read 
+0262 20406b75 call otp_read_data + 1 
+0263 20206b38 branch otp_disable_chgpump 
 
 p_g24_reconn_dispatch:
-023f 6fe145e0 fetch 2 ,mem_24g_reconn_count 
-0240 d84001f8 arg 0x01f8 ,temp 
-0241 98417e00 iand temp ,pdata 
-0242 203a0247 branch p_g24_reconn_dispatch_next ,blank 
-0243 6fe145e0 fetch 2 ,mem_24g_reconn_count 
-0244 1fe0fe01 increase 1 ,pdata 
-0245 67e145e0 store 2 ,mem_24g_reconn_count 
-0246 20600000 rtn 
+0264 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+0265 d84001f8 arg 0x01f8 ,temp 
+0266 98417e00 iand temp ,pdata 
+0267 203a0269 branch p_g24_reconn_dispatch_next ,blank 
+0268 20203561 branch g24_reconn_dispatch + 5 
 
 p_g24_reconn_dispatch_next:
-0247 2040357f call g24_reconn_data_prep 
-0248 20403651 call g24_transmit_receive_ack 
-0249 242c3586 nbranch g24_reconn_device_fail ,sync 
-024a 2437b586 nbranch g24_reconn_device_fail ,user3 
-024b 2040366e call g24_ackpayload_parse 
-024c 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-024d 203a025c branch p_recv_addr_zero_skip ,blank 
+0269 2040357f call g24_reconn_data_prep 
+026a 20403651 call g24_transmit_receive_ack 
+026b 242c3586 nbranch g24_reconn_device_fail ,sync 
+026c 2437b586 nbranch g24_reconn_device_fail ,user3 
+026d 2040366e call g24_ackpayload_parse 
+026e 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+026f 203a0289 branch p_recv_addr_zero_skip ,blank 
 
 p_g24_reconn_dispatch_next_2:
-024e 6fe245cc fetch 4 ,mem_24g_pair_addr 
-024f 684a458f fetcht 4 ,mem_24g_addr 
-0250 98467c00 isub temp ,null 
-0251 20228253 branch p_g24_reconn_mode_judge ,zero 
-0252 2020356e branch g24_reconn_dispatch_next + 9 
+0270 6fe245cc fetch 4 ,mem_24g_pair_addr 
+0271 684a458f fetcht 4 ,mem_24g_addr 
+0272 98467c00 isub temp ,null 
+0273 20228275 branch p_g24_reconn_mode_judge ,zero 
+0274 2020356e branch g24_reconn_dispatch_next + 9 
 
 p_g24_reconn_mode_judge:
-0253 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0254 c2983291 bbit1 mouse_enable_auto_24g_paring ,g24_pair_start 
-0255 20203549 branch g24_reconn_receiver_addr 
+0275 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0276 c298604e bbit1 mouse_enable_auto_24g_paring ,mouse_24g_pair_mode_check 
+0277 20203549 branch g24_reconn_receiver_addr 
+
+p_g24_reconn_device_fail:
+0278 6fe0c5e3 fetch 1 ,mem_24g_fast_conn_enable 
+0279 203a3222 branch g24_ch ,blank 
+027a 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+027b 1fe0fe01 increase 1 ,pdata 
+027c 67e145e0 store 2 ,mem_24g_reconn_count 
+027d 2feffe09 isolate1 9 ,pdata 
+027e 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+027f c0028281 beq pair_and_receiver ,p_g24_reconn_pair_and_receiver 
+0280 2020358d branch g24_reconn_device_fail + 7 
+
+p_g24_reconn_pair_and_receiver:
+0281 2020b549 branch g24_reconn_receiver_addr ,true 
+0282 2020329c branch g24_pair_init_param 
 
 p_mouse_param_init:
-0256 2040543b call mouse_param_common_init 
-0257 58004a1d setarg mem_le_tx_buffer0_omemalloc_new 
-0258 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
-0259 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
-025a 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
-025b 2020544c branch mouse_param_init + 2 
+0283 2040543b call mouse_param_common_init 
+0284 58004a1d setarg mem_le_tx_buffer0_omemalloc_new 
+0285 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
+0286 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
+0287 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
+0288 2020544c branch mouse_param_init + 2 
 
 p_recv_addr_zero_skip:
-025c 6fe245e4 fetch 4 ,mem_24g_fast_conn_addr 
-025d 684a458f fetcht 4 ,mem_24g_addr 
-025e 98467c00 isub temp ,null 
-025f 2022824e branch p_g24_reconn_dispatch_next_2 ,zero 
-0260 6fe2455f fetch 4 ,mem_24g_rxpayload + 2 
-0261 207a0000 rtn blank 
-0262 2020024e branch p_g24_reconn_dispatch_next_2 
+0289 6fe245e4 fetch 4 ,mem_24g_fast_conn_addr 
+028a 684a458f fetcht 4 ,mem_24g_addr 
+028b 98467c00 isub temp ,null 
+028c 20228270 branch p_g24_reconn_dispatch_next_2 ,zero 
+028d 6fe2455f fetch 4 ,mem_24g_rxpayload + 2 
+028e 207a0000 rtn blank 
+028f 20200270 branch p_g24_reconn_dispatch_next_2 
 
 p_power_ctrl_start:
-0263 6fe0c437 fetch 1 ,mem_power_ctrl_disable 
-0264 247a0000 nrtn blank 
-0265 6fe144e9 fetch 2 ,mem_ui_state_map 
-0266 c3858000 rtnbit1 ui_state_ble_adv 
-0267 6a2145f0 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
-0268 204035b4 call rssi_average 
-0269 6048c624 storet 1 ,mem_rssi_avg_received 
-026a 6fe0c629 fetch 1 ,mem_rssi_dis_max_24g 
-026b c513026d bmark1 mark_24g ,p_power_ctrl_start_next 
-026c 6fe0c62c fetch 1 ,mem_rssi_dis_max_ble 
+0290 6fe0c437 fetch 1 ,mem_power_ctrl_disable 
+0291 247a0000 nrtn blank 
+0292 6fe144e9 fetch 2 ,mem_ui_state_map 
+0293 c3858000 rtnbit1 ui_state_ble_adv 
+0294 6a2145f0 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+0295 204035b4 call rssi_average 
+0296 6048c624 storet 1 ,mem_rssi_avg_received 
+0297 6fe0c629 fetch 1 ,mem_rssi_dis_max_24g 
+0298 c513029a bmark1 mark_24g ,p_power_ctrl_start_next 
+0299 6fe0c62c fetch 1 ,mem_rssi_dis_max_ble 
 
 p_power_ctrl_start_next:
-026d 98467c00 isub temp ,null 
-026e 24210287 nbranch p_power_ctrl_txpower_incrs_force ,positive 
-026f 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0270 1fe67c02 sub pdata ,2 ,null 
-0271 24210275 nbranch p_power_ctrl_txpower_decrs_check ,positive 
-0272 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0273 c0000288 beq 0 ,p_power_ctrl_txpower_incrs 
-0274 20600000 rtn 
+029a 98467c00 isub temp ,null 
+029b 242102b4 nbranch p_power_ctrl_txpower_incrs_force ,positive 
+029c 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+029d 1fe67c02 sub pdata ,2 ,null 
+029e 242102a2 nbranch p_power_ctrl_txpower_decrs_check ,positive 
+029f 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a0 c00002b5 beq 0 ,p_power_ctrl_txpower_incrs 
+02a1 20600000 rtn 
 
 p_power_ctrl_txpower_decrs_check:
-0275 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0276 6848c627 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
-0277 98467c00 isub temp ,null 
-0278 24628000 nrtn zero 
-0279 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+02a2 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a3 6848c627 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
+02a4 98467c00 isub temp ,null 
+02a5 24628000 nrtn zero 
+02a6 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_decrs:
-027a 6848c624 fetcht 1 ,mem_rssi_avg_received 
-027b 6fe0c628 fetch 1 ,mem_rssi_dis_min_24g 
-027c c513027e bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
-027d 6fe0c62b fetch 1 ,mem_rssi_dis_min_ble 
+02a7 6848c624 fetcht 1 ,mem_rssi_avg_received 
+02a8 6fe0c628 fetch 1 ,mem_rssi_dis_min_24g 
+02a9 c51302ab bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
+02aa 6fe0c62b fetch 1 ,mem_rssi_dis_min_ble 
 
 p_power_ctrl_txpower_decrs_next:
-027e 98467c00 isub temp ,null 
-027f 24610000 nrtn positive 
-0280 6fe0c625 fetch 1 ,mem_power_ctrl_level 
-0281 c0003715 beq 0 ,power_ctrl_decrs_level0 
-0282 1fe0ffff increase -1 ,pdata 
-0283 67e0c625 store 1 ,mem_power_ctrl_level 
-0284 c0010290 beq 2 ,p_power_ctrl_decrs_level2 
-0285 c000b70b beq 1 ,power_ctrl_decrs_level1 
-0286 20203715 branch power_ctrl_decrs_level0 
+02ab 98467c00 isub temp ,null 
+02ac 24610000 nrtn positive 
+02ad 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02ae c0003715 beq 0 ,power_ctrl_decrs_level0 
+02af 1fe0ffff increase -1 ,pdata 
+02b0 67e0c625 store 1 ,mem_power_ctrl_level 
+02b1 c00102bd beq 2 ,p_power_ctrl_decrs_level2 
+02b2 c000b70b beq 1 ,power_ctrl_decrs_level1 
+02b3 20203715 branch power_ctrl_decrs_level0 
 
 p_power_ctrl_txpower_incrs_force:
-0287 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+02b4 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_incrs:
-0288 6fe0c625 fetch 1 ,mem_power_ctrl_level 
-0289 c001828e beq 3 ,p_power_ctrl_incrs_level3 
-028a 1fe0fe01 increase 1 ,pdata 
-028b 67e0c625 store 1 ,mem_power_ctrl_level 
-028c c000b70b beq 1 ,power_ctrl_incrs_level1 
-028d c0010290 beq 2 ,p_power_ctrl_incrs_level2 
+02b5 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02b6 c00182bb beq 3 ,p_power_ctrl_incrs_level3 
+02b7 1fe0fe01 increase 1 ,pdata 
+02b8 67e0c625 store 1 ,mem_power_ctrl_level 
+02b9 c000b70b beq 1 ,power_ctrl_incrs_level1 
+02ba c00102bd beq 2 ,p_power_ctrl_incrs_level2 
 
 p_power_ctrl_incrs_level3:
-028e 70414105 jam tx_power_5db ,mem_tx_power 
-028f 20600000 rtn 
+02bb 70414105 jam tx_power_5db ,mem_tx_power 
+02bc 20600000 rtn 
 
 p_power_ctrl_decrs_level2:
 
 p_power_ctrl_incrs_level2:
-0290 70414103 jam tx_power_3db ,mem_tx_power 
-0291 20600000 rtn 
+02bd 70414103 jam tx_power_3db ,mem_tx_power 
+02be 20600000 rtn 
 
 p_mouse_cb_fuction:
-0292 58006235 setarg mouse_24g_short_sleep 
-0293 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
-0294 5800622b setarg mouse_24g_long_sleep 
-0295 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
-0296 580002a4 setarg p_mouse_24g_before_lpm_sleep 
-0297 67e143e9 store 2 ,mem_cb_before_lpm_sleep 
-0298 202053f3 branch mouse_cb_fuction + 7 
+02bf 58006235 setarg mouse_24g_short_sleep 
+02c0 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
+02c1 5800622b setarg mouse_24g_long_sleep 
+02c2 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
+02c3 202053f3 branch mouse_cb_fuction + 7 
 
 p_soft_reset:
-0299 2435a002 nbranch soft_reset + 1 ,wake 
-029a 37d98200 until null ,lpo_edge 
-029b 37d98200 until null ,lpo_edge 
-029c 20800000 clear_stack 
-029d 2055829f call p_mouse_wheel_init_set ,wake 
-029e 20202003 branch soft_reset + 2 
+02c4 2435a002 nbranch soft_reset + 1 ,wake 
+02c5 37d98200 until null ,lpo_edge 
+02c6 37d98200 until null ,lpo_edge 
+02c7 20800000 clear_stack 
+02c8 205582ca call p_mouse_wheel_init_set ,wake 
+02c9 20202003 branch soft_reset + 2 
 
 p_mouse_wheel_init_set:
-029f 2040020b call p_mouse_puchk_disable 
-02a0 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
-02a1 20406edd call gpio_config_input 
-02a2 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
-02a3 20206edd branch gpio_config_input 
+02ca 20400230 call p_mouse_puchk_disable 
+02cb 204058df call mouse_matrix_public_gpio_reset 
+02cc 20206004 branch mouse_wheel_gpio_init 
+
+p_mouse_default_init:
+02cd 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02ce 2feffe16 isolate1 mouse_enable_keyboard ,pdata 
+02cf 2040df08 call mouse_customer_key_enable ,true 
+02d0 2020542c branch mouse_default_parm_init 
+
+p_mouse_sensor_set_angle:
+02d1 6fe0c64f fetch 1 ,mem_sensor_angle_default 
+02d2 67e0c958 store 1 ,mem_config_sensor_angle 
+02d3 6fe0c64e fetch 1 ,mem_select_sensor_angle_gpio 
+02d4 c17f8000 rtneq gpio_disable 
+02d5 6fe0c64e fetch 1 ,mem_select_sensor_angle_gpio 
+02d6 20405946 call mouse_gpio_config_output_low 
+02d7 6fe0c65b fetch 1 ,mem_mouse_reuse_2ice_gpio 
+02d8 20405946 call mouse_gpio_config_output_low 
+02d9 6848c64d fetcht 1 ,mem_mouse_sensor_sdio_gpio 
+02da 204055b5 call mouse_gpio_config_input_pu 
+02db 6848c64d fetcht 1 ,mem_mouse_sensor_sdio_gpio 
+02dc 20406ee6 call gpio_get_bit 
+02dd 2440d473 ncall mouse_sensor_switch_angle ,true 
+02de 204055b1 call mouse_gpio_config_input_pd 
 
-p_mouse_24g_before_lpm_sleep:
-02a4 20600000 rtn 
+p_ice_gpio_set_float:
+02df 6848c64e fetcht 1 ,mem_select_sensor_angle_gpio 
+02e0 20406f0f call gpio_set_high_impedance 
+02e1 6848c65b fetcht 1 ,mem_mouse_reuse_2ice_gpio 
+02e2 20206f0f branch gpio_set_high_impedance 
 
 p_mouse_load_device_info_check:
-02a5 6fe0c141 fetch 1 ,mem_tx_power 
-02a6 67e0ca07 store 1 ,mem_normal_tx_power 
-02a7 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02a8 c289dd60 bbit1 mouse_enable_eeprom ,mouse_load_eeprom_info_check 
-02a9 c28a02ab bbit1 mouse_enable_otp ,p_mouse_load_otp_info_check 
-02aa 20600000 rtn 
+02e3 20400433 call p_mouse_store_normal_tx_power 
+02e4 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02e5 c289dd60 bbit1 mouse_enable_eeprom ,mouse_load_eeprom_info_check 
+02e6 c28a02e8 bbit1 mouse_enable_otp ,p_mouse_load_otp_info_check 
+02e7 20600000 rtn 
 
 p_mouse_load_otp_info_check:
-02ab 6fe0c666 fetch 1 ,mem_device_flag 
-02ac 67e0ca06 store 1 ,mem_mouse_device_flag_temp 
-02ad 20405e43 call mouse_read_otp_dpi 
-02ae 20405db4 call mouse_read_otp_device_flag 
-02af 204002c4 call p_mouse_device_flag_check 
-02b0 204002b3 call p_mouse_read_otp_device_info 
-02b1 204002cc call p_mouse_read_otp_le_addr_increase_count_info 
-02b2 20205daa branch mouse_otp_load_app_initflag 
-
-p_mouse_read_otp_device_info:
-02b3 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02b4 c29f5dd1 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_read_otp_le_device1 
-02b5 20205dcc branch mouse_read_otp_device_info 
+02e8 20405e43 call mouse_read_otp_dpi 
+02e9 204002ed call p_mouse_select_device_by_switch_check 
+02ea 20405dcc call mouse_read_otp_device_info 
+02eb 2040030c call p_mouse_read_otp_le_addr_increase_count_info 
+02ec 20205daa branch mouse_otp_load_app_initflag 
+
+p_mouse_select_device_by_switch_check:
+02ed 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02ee c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
+
+p_mouse_check_select_device_by_switch:
+02ef 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02f0 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
+02f1 c31f82fc bbit0 mouse_enable_switch_gpio_connect_vin ,p_mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_connect_vin_check:
+02f2 204002fe call p_mouse_switch_gpio_pd_set 
+02f3 204002f8 call p_mouse_switch_gpio_connect_vin 
+
+p_mouse_switch_gpio_pu_set:
+02f4 6848c65a fetcht 1 ,mem_device_switch_gpio 
+02f5 20406ef3 call gpio_out_inactive 
+02f6 6848c65a fetcht 1 ,mem_device_switch_gpio 
+02f7 202055b5 branch mouse_gpio_config_input_pu 
+
+p_mouse_switch_gpio_connect_vin:
+02f8 6848c65a fetcht 1 ,mem_device_switch_gpio 
+02f9 20406ee6 call gpio_get_bit 
+02fa 2420dec2 nbranch mouse_check_select_24g_device ,true 
+02fb 20205ebe branch mouse_select_btdevice 
+
+p_mouse_switch_gpio_connect_gnd:
+02fc 204002f4 call p_mouse_switch_gpio_pu_set 
+02fd 20405ebb call mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_pd_set:
+02fe 6848c65a fetcht 1 ,mem_device_switch_gpio 
+02ff 20406ef7 call gpio_out_active 
+0300 6848c65a fetcht 1 ,mem_device_switch_gpio 
+0301 202055b1 branch mouse_gpio_config_input_pd 
 
 p_mouse_app_initflag_check:
-02b6 6fe1468e fetch 2 ,mem_store_flag 
-02b7 d840aa55 arg eeprom_init_flag ,temp 
-02b8 98467c00 isub temp ,null 
-02b9 20228335 branch p_mouse_load_device_info ,zero 
-02ba 6049468e storet 2 ,mem_store_flag 
-02bb 20405c9c call mouse_ble_init_address 
-02bc 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
-02bd 67e0c666 store 1 ,mem_device_flag 
-02be 20405c8c call mouse_load_default_dpi 
-02bf 58001122 setarg 0x1122 
-02c0 67e14695 store 2 ,mem_random_addr_increase_count 
-
-p_mouse_device_flag_temp_load:
-02c1 6fe0ca06 fetch 1 ,mem_mouse_device_flag_temp 
-02c2 67e0c666 store 1 ,mem_device_flag 
-02c3 20600000 rtn 
-
-p_mouse_device_flag_check:
-02c4 6fe0c666 fetch 1 ,mem_device_flag 
-02c5 1fe67c00 sub pdata ,0 ,null 
-02c6 202282c1 branch p_mouse_device_flag_temp_load ,zero 
-02c7 1fe67c04 sub pdata ,4 ,null 
-02c8 202282ca branch p_mouse_24g_init ,zero 
-02c9 20610000 rtn positive 
-
-p_mouse_24g_init:
-02ca 70466600 jam mode_24g_device ,mem_device_flag 
-02cb 20600000 rtn 
+0302 6fe1468e fetch 2 ,mem_store_flag 
+0303 d840aa55 arg eeprom_init_flag ,temp 
+0304 98467c00 isub temp ,null 
+0305 20228338 branch p_mouse_load_device_info ,zero 
+0306 6049468e storet 2 ,mem_store_flag 
+0307 20405c9c call mouse_ble_init_address 
+0308 20405c8c call mouse_load_default_dpi 
+0309 58001122 setarg 0x1122 
+030a 67e14695 store 2 ,mem_random_addr_increase_count 
+030b 20205cac branch mouse_store_dpi_info_check 
 
 p_mouse_read_otp_le_addr_increase_count_info:
-02cc 6fe0c666 fetch 1 ,mem_device_flag 
-02cd c1000000 rtneq mode_24g_device 
-02ce 6a4149fe fetchr regb ,2 ,mem_otp_offset_le_addr_increase_count 
-02cf 1a422600 copy regb ,regc 
+030c 6fe0c666 fetch 1 ,mem_device_flag 
+030d c1000000 rtneq mode_24g_device 
+030e 6a4149fe fetchr regb ,2 ,mem_otp_offset_le_addr_increase_count 
+030f 1a422600 copy regb ,regc 
 
 p_mouse_read_otp_le_addr_increase_count_loop:
-02d0 20405e3d call mouse_read_otp_le_addr_increase_count_common 
-02d1 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
-02d2 203a02da branch p_mouse_le_addr_increase_count_load ,blank 
-02d3 67e149de store 2 ,mem_random_addr_increase_count_last 
-02d4 1a60a602 increase 2 ,regc 
-02d5 6fe14a00 fetch 2 ,mem_otp_offset_le_addr_increase_count_end 
-02d6 9a667c00 isub regc ,null 
-02d7 242102da nbranch p_mouse_le_addr_increase_count_load ,positive 
-02d8 1a622400 copy regc ,regb 
-02d9 202002d0 branch p_mouse_read_otp_le_addr_increase_count_loop 
+0310 20405e3d call mouse_read_otp_le_addr_increase_count_common 
+0311 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
+0312 203a031a branch p_mouse_le_addr_increase_count_load ,blank 
+0313 67e149de store 2 ,mem_random_addr_increase_count_last 
+0314 1a60a602 increase 2 ,regc 
+0315 6fe14a00 fetch 2 ,mem_otp_offset_le_addr_increase_count_end 
+0316 9a667c00 isub regc ,null 
+0317 2421031a nbranch p_mouse_le_addr_increase_count_load ,positive 
+0318 1a622400 copy regc ,regb 
+0319 20200310 branch p_mouse_read_otp_le_addr_increase_count_loop 
 
 p_mouse_le_addr_increase_count_load:
-02da 6fe149de fetch 2 ,mem_random_addr_increase_count_last 
-02db 67e14695 store 2 ,mem_random_addr_increase_count 
-02dc 20600000 rtn 
+031a 6fe149de fetch 2 ,mem_random_addr_increase_count_last 
+031b 20205e41 branch mouse_le_addr_increase_store 
 
 p_mouse_store_device_info:
-02dd 202002de branch p_mouse_store_otp_device_info 
+031c 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+031d c289dcb1 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+031e c28a0320 bbit1 mouse_enable_otp ,p_mouse_store_otp_device_info 
+031f 20600000 rtn 
 
 p_mouse_store_otp_device_info:
-02de 204002e1 call p_mouse_write_otp_locall_addr 
-02df 204002e6 call p_mouse_write_otp_device_flag 
-02e0 20205cc1 branch mouse_store_otp_device_info + 1 
+0320 20400322 call p_mouse_write_otp_locall_addr 
+0321 20205cc1 branch mouse_store_otp_device_info + 1 
 
 p_mouse_write_otp_locall_addr:
-02e1 6fe0c666 fetch 1 ,mem_device_flag 
-02e2 c1000000 rtneq mode_24g_device 
-02e3 c000830d beq mode_bt_device1 ,p_mouse_write_otp_le_locall_addr1 
-02e4 c0010321 beq mode_bt_device2 ,p_mouse_write_otp_le_locall_addr2 
-02e5 20600000 rtn 
-
-p_mouse_write_otp_device_flag:
-02e6 6a4149e2 fetchr regb ,2 ,mem_otp_offset_device_flag 
-02e7 1a422600 copy regb ,regc 
-
-p_mouse_write_otp_device_flag_loop:
-02e8 20405dc0 call mouse_read_otp_device_flag_common 
-02e9 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
-02ea 203a02f2 branch p_mouse_device_flag_store ,blank 
-02eb 67e0c9a0 store 1 ,mem_device_flag_last 
-02ec 1a60a601 increase 1 ,regc 
-02ed 6fe149e4 fetch 2 ,mem_otp_offset_device_flag_end 
-02ee 9a667c00 isub regc ,null 
-02ef 24610000 nrtn positive 
-02f0 1a622400 copy regc ,regb 
-02f1 202002e8 branch p_mouse_write_otp_device_flag_loop 
-
-p_mouse_device_flag_store:
-02f2 6fe0c9a0 fetch 1 ,mem_device_flag_last 
-02f3 1fe17ef0 and pdata ,0xf0 ,pdata 
-02f4 203a02fc branch p_mouse_device_flag_store_check ,blank 
-02f5 6fe0c666 fetch 1 ,mem_device_flag 
-02f6 2040030a call p_mouse_device_flag_otp_store_judge 
-02f7 67e0c9a2 store 1 ,mem_device_flag_value 
-
-p_mouse_device_flag_store_end:
-02f8 df200001 arg 1 ,loopcnt 
-02f9 1a622400 copy regc ,regb 
-02fa da2049a2 arg mem_device_flag_value ,rega 
-02fb 20206b45 branch otp_write 
-
-p_mouse_device_flag_store_check:
-02fc 6848c9a0 fetcht 1 ,mem_device_flag_last 
-02fd 6fe0c666 fetch 1 ,mem_device_flag 
-02fe 2040030a call p_mouse_device_flag_otp_store_judge 
-02ff 98467c00 isub temp ,null 
-0300 20628000 rtn zero 
-0301 1ff27e00 lshift4 pdata ,pdata 
-0302 9840fe00 iadd temp ,pdata 
-0303 67e0c9a2 store 1 ,mem_device_flag_value 
-0304 1a627e00 copy regc ,pdata 
-0305 684949e2 fetcht 2 ,mem_otp_offset_device_flag 
-0306 98467c00 isub temp ,null 
-0307 202282f8 branch p_mouse_device_flag_store_end ,zero 
-0308 1a60a7ff increase -1 ,regc 
-0309 202002f8 branch p_mouse_device_flag_store_end 
-
-p_mouse_device_flag_otp_store_judge:
-030a c1800000 rtnne mode_24g_device 
-030b 1fe0fe04 increase 4 ,pdata 
-030c 20600000 rtn 
+0322 6fe0c666 fetch 1 ,mem_device_flag 
+0323 c1808000 rtnne mode_bt_device1 
 
 p_mouse_write_otp_le_locall_addr1:
-030d 6a4149ee fetchr regb ,2 ,mem_otp_offset_le_locall_addr1 
-030e 1a422600 copy regb ,regc 
+0324 6a4149ee fetchr regb ,2 ,mem_otp_offset_le_locall_addr1 
+0325 1a422600 copy regb ,regc 
 
 p_mouse_write_otp_le_locall_addr1_loop:
-030f 20405df3 call mouse_read_otp_le_locall_addr1_common 
-0310 6fe349b5 fetch 6 ,mem_mouse_le_locall_addr1_temp 
-0311 203a0319 branch p_mouse_le_local_addr1_store ,blank 
-0312 67e349af store 6 ,mem_mouse_le_locall_addr1_last 
-0313 1a60a606 increase 6 ,regc 
-0314 6fe149f0 fetch 2 ,mem_otp_offset_le_locall_addr1_end 
-0315 9a667c00 isub regc ,null 
-0316 24610000 nrtn positive 
-0317 1a622400 copy regc ,regb 
-0318 2020030f branch p_mouse_write_otp_le_locall_addr1_loop 
+0326 20405df3 call mouse_read_otp_le_locall_addr1_common 
+0327 6fe349b5 fetch 6 ,mem_mouse_le_locall_addr1_temp 
+0328 203a0330 branch p_mouse_le_local_addr1_store ,blank 
+0329 67e349af store 6 ,mem_mouse_le_locall_addr1_last 
+032a 1a60a606 increase 6 ,regc 
+032b 6fe149f0 fetch 2 ,mem_otp_offset_le_locall_addr1_end 
+032c 9a667c00 isub regc ,null 
+032d 24610000 nrtn positive 
+032e 1a622400 copy regc ,regb 
+032f 20200326 branch p_mouse_write_otp_le_locall_addr1_loop 
 
 p_mouse_le_local_addr1_store:
-0319 6fe349af fetch 6 ,mem_mouse_le_locall_addr1_last 
-031a 684b466e fetcht 6 ,mem_device1_locall_addr 
-031b 98467c00 isub temp ,null 
-031c 20628000 rtn zero 
-031d df200006 arg 6 ,loopcnt 
-031e da20466e arg mem_device1_locall_addr ,rega 
-031f 1a622400 copy regc ,regb 
-0320 20206b45 branch otp_write 
-
-p_mouse_write_otp_le_locall_addr2:
-0321 6a4149f6 fetchr regb ,2 ,mem_otp_offset_le_locall_addr2 
-0322 1a422600 copy regb ,regc 
-
-p_mouse_write_otp_le_locall_addr2_loop:
-0323 20405e17 call mouse_read_otp_le_locall_addr2_common 
-0324 6fe349cd fetch 6 ,mem_mouse_le_locall_addr2_temp 
-0325 203a032d branch p_mouse_le_local_addr2_store ,blank 
-0326 67e349c7 store 6 ,mem_mouse_le_locall_addr2_last 
-0327 1a60a606 increase 6 ,regc 
-0328 6fe149f8 fetch 2 ,mem_otp_offset_le_locall_addr2_end 
-0329 9a667c00 isub regc ,null 
-032a 24610000 nrtn positive 
-032b 1a622400 copy regc ,regb 
-032c 20200323 branch p_mouse_write_otp_le_locall_addr2_loop 
-
-p_mouse_le_local_addr2_store:
-032d 6fe349c7 fetch 6 ,mem_mouse_le_locall_addr2_last 
-032e 684b467b fetcht 6 ,mem_device2_locall_addr 
-032f 98467c00 isub temp ,null 
-0330 20628000 rtn zero 
-0331 df200006 arg 6 ,loopcnt 
-0332 da20467b arg mem_device2_locall_addr ,rega 
-0333 1a622400 copy regc ,regb 
-0334 20206b45 branch otp_write 
+0330 6fe349af fetch 6 ,mem_mouse_le_locall_addr1_last 
+0331 684b466e fetcht 6 ,mem_device1_locall_addr 
+0332 98467c00 isub temp ,null 
+0333 20628000 rtn zero 
+0334 df200006 arg 6 ,loopcnt 
+0335 da20466e arg mem_device1_locall_addr ,rega 
+0336 1a622400 copy regc ,regb 
+0337 20206b45 branch otp_write 
 
 p_mouse_load_device_info:
-0335 2040036e call p_mouse_le_locall_addr_init_check 
-0336 20400386 call p_mouse_select_reconn_device 
-0337 20400339 call p_mouse_otp_load_dpi 
-0338 20205c90 branch mouse_load_device_info + 1 
+0338 2040036f call p_mouse_le_locall_addr_init_check 
+0339 2040037a call p_mouse_select_reconn_device 
+033a 2040033c call p_mouse_otp_load_dpi 
+033b 20205c90 branch mouse_load_device_info + 1 
 
 p_mouse_otp_load_dpi:
-0339 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-033a c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
-033b 6fe0c690 fetch 1 ,mem_mouse_dpi 
-033c c0005c94 beq 0 ,mouse_otp_load_dpi 
-033d c003033f beq 6 ,p_mouse_dpi_reinit 
-033e 20600000 rtn 
-
-p_mouse_dpi_reinit:
-033f 70469000 jam mouse_dpi_level1 ,mem_mouse_dpi 
-0340 20600000 rtn 
+033c 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+033d c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
+033e 6fe0c690 fetch 1 ,mem_mouse_dpi 
+033f c0005c94 beq 0 ,mouse_otp_load_dpi 
+0340 c0035742 beq 6 ,mouse_dpi_reinit_set 
+0341 20600000 rtn 
 
 p_mouse_store_dpi_info_check:
-0341 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0342 c289dcb5 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
-0343 c28a0345 bbit1 mouse_enable_otp ,p_mouse_store_otp_dpi 
-0344 20600000 rtn 
+0342 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0343 c289dcb5 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+0344 c28a0346 bbit1 mouse_enable_otp ,p_mouse_store_otp_dpi 
+0345 20600000 rtn 
 
 p_mouse_store_otp_dpi:
-0345 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0346 c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
-0347 6a4149fa fetchr regb ,2 ,mem_otp_offset_dpi 
-0348 1a422600 copy regb ,regc 
+0346 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0347 c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
+0348 6a4149fa fetchr regb ,2 ,mem_otp_offset_dpi 
+0349 1a422600 copy regb ,regc 
 
 p_mouse_otp_store_dpi_loop:
-0349 20405e51 call mouse_read_otp_dpi_common 
-034a 6fe0c9d4 fetch 1 ,mem_mouse_dpi_temp 
-034b 203a0353 branch p_mouse_otp_dpi_store ,blank 
-034c 67e0c9d3 store 1 ,mem_mouse_dpi_last 
-034d 1a60a601 increase 1 ,regc 
-034e 6fe149fc fetch 2 ,mem_otp_offset_dpi_end 
-034f 9a667c00 isub regc ,null 
-0350 24610000 nrtn positive 
-0351 1a622400 copy regc ,regb 
-0352 20200349 branch p_mouse_otp_store_dpi_loop 
+034a 20405e51 call mouse_read_otp_dpi_common 
+034b 6fe0c9d4 fetch 1 ,mem_mouse_dpi_temp 
+034c 203a0354 branch p_mouse_otp_dpi_store ,blank 
+034d 67e0c9d3 store 1 ,mem_mouse_dpi_last 
+034e 1a60a601 increase 1 ,regc 
+034f 6fe149fc fetch 2 ,mem_otp_offset_dpi_end 
+0350 9a667c00 isub regc ,null 
+0351 24610000 nrtn positive 
+0352 1a622400 copy regc ,regb 
+0353 2020034a branch p_mouse_otp_store_dpi_loop 
 
 p_mouse_otp_dpi_store:
-0353 6fe0c9d3 fetch 1 ,mem_mouse_dpi_last 
-0354 1fe17ef0 and pdata ,0xf0 ,pdata 
-0355 203a035d branch p_mouse_dpi_store_last_check ,blank 
-0356 6fe0c690 fetch 1 ,mem_mouse_dpi 
-0357 2040036b call p_mouse_dpi_otp_store_judge 
-0358 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
+0354 6fe0c9d3 fetch 1 ,mem_mouse_dpi_last 
+0355 1fe17ef0 and pdata ,0xf0 ,pdata 
+0356 203a035e branch p_mouse_dpi_store_last_check ,blank 
+0357 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0358 2040036c call p_mouse_dpi_otp_store_judge 
+0359 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
 
 p_mouse_dpi_store_end:
-0359 df200001 arg 1 ,loopcnt 
-035a 1a622400 copy regc ,regb 
-035b da2049d5 arg mem_mouse_otp_dpi_value ,rega 
-035c 20206b45 branch otp_write 
+035a df200001 arg 1 ,loopcnt 
+035b 1a622400 copy regc ,regb 
+035c da2049d5 arg mem_mouse_otp_dpi_value ,rega 
+035d 20206b45 branch otp_write 
 
 p_mouse_dpi_store_last_check:
-035d 6848c9d3 fetcht 1 ,mem_mouse_dpi_last 
-035e 6fe0c690 fetch 1 ,mem_mouse_dpi 
-035f 2040036b call p_mouse_dpi_otp_store_judge 
-0360 98467c00 isub temp ,null 
-0361 20628000 rtn zero 
-0362 1ff27e00 lshift4 pdata ,pdata 
-0363 9840fe00 iadd temp ,pdata 
-0364 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
-0365 1a627e00 copy regc ,pdata 
-0366 684949fa fetcht 2 ,mem_otp_offset_dpi 
-0367 98467c00 isub temp ,null 
-0368 20228359 branch p_mouse_dpi_store_end ,zero 
-0369 1a60a7ff increase -1 ,regc 
-036a 20200359 branch p_mouse_dpi_store_end 
+035e 6848c9d3 fetcht 1 ,mem_mouse_dpi_last 
+035f 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0360 2040036c call p_mouse_dpi_otp_store_judge 
+0361 98467c00 isub temp ,null 
+0362 20628000 rtn zero 
+0363 1ff27e00 lshift4 pdata ,pdata 
+0364 9840fe00 iadd temp ,pdata 
+0365 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
+0366 1a627e00 copy regc ,pdata 
+0367 684949fa fetcht 2 ,mem_otp_offset_dpi 
+0368 98467c00 isub temp ,null 
+0369 2022835a branch p_mouse_dpi_store_end ,zero 
+036a 1a60a7ff increase -1 ,regc 
+036b 2020035a branch p_mouse_dpi_store_end 
 
 p_mouse_dpi_otp_store_judge:
-036b c1800000 rtnne mouse_dpi_level1 
-036c 1fe0fe06 increase 6 ,pdata 
-036d 20600000 rtn 
+036c c1800000 rtnne mouse_dpi_level1 
+036d 1fe0fe06 increase 6 ,pdata 
+036e 20600000 rtn 
 
 p_mouse_le_locall_addr_init_check:
-036e 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-036f c29f0375 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_le_addr1_init_check 
-0370 6fe0c666 fetch 1 ,mem_device_flag 
-0371 c1000000 rtneq mode_24g_device 
-0372 c0008375 beq mode_bt_device1 ,p_mouse_le_addr1_init_check 
-0373 c001037c beq mode_bt_device2 ,p_mouse_le_addr2_init_check 
-0374 20600000 rtn 
+036f 6fe0c666 fetch 1 ,mem_device_flag 
+0370 c1008000 rtneq mode_bt_device1 
 
 p_mouse_le_addr1_init_check:
-0375 6fe3466e fetch 6 ,mem_device1_locall_addr 
-0376 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
-0377 98467c00 isub temp ,null 
-0378 24628000 nrtn zero 
-0379 6fe342db fetch 6 ,mem_le_lap 
-037a 67e3466e store 6 ,mem_device1_locall_addr 
-037b 20600000 rtn 
-
-p_mouse_le_addr2_init_check:
-037c 6fe3466e fetch 6 ,mem_device1_locall_addr 
-037d 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
-037e 98467c00 isub temp ,null 
-037f 24628000 nrtn zero 
-0380 6fe342db fetch 6 ,mem_le_lap 
-0381 1fe0ff00 add pdata ,0x0100 ,pdata 
-0382 67e3466e store 6 ,mem_device1_locall_addr 
-0383 20600000 rtn 
+0371 6fe3466e fetch 6 ,mem_device1_locall_addr 
+0372 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
+0373 98467c00 isub temp ,null 
+0374 24628000 nrtn zero 
+0375 6fe342db fetch 6 ,mem_le_lap 
+0376 67e3466e store 6 ,mem_device1_locall_addr 
+0377 20600000 rtn 
 
 p_mouse_buletooth_fast_conn_end:
-0384 20400386 call p_mouse_select_reconn_device 
-0385 20205a9c branch mouse_buletooth_fast_conn_end + 2 
+0378 2040037a call p_mouse_select_reconn_device 
+0379 20205a9c branch mouse_buletooth_fast_conn_end + 2 
 
 p_mouse_select_reconn_device:
-0386 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0387 c30a5c6f bbit0 mouse_enable_otp ,mouse_select_reconn_device 
-0388 c29f038e bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_load_le_device1 
+037a 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+037b c30a5c6f bbit0 mouse_enable_otp ,mouse_select_reconn_device 
 
 p_mouse_select_reconn_device_start:
-0389 6fe0c666 fetch 1 ,mem_device_flag 
-038a c1000000 rtneq mode_24g_device 
-038b c000838e beq mode_bt_device1 ,p_mouse_load_le_device1 
-038c c0010393 beq mode_bt_device2 ,p_mouse_load_le_device2 
-038d 20600000 rtn 
+037c 6fe0c666 fetch 1 ,mem_device_flag 
+037d c1008000 rtneq mode_bt_device1 
 
 p_mouse_load_le_device1:
-038e 6fe34668 fetch 6 ,mem_device1_addr 
-038f 67e34116 store 6 ,mem_hci_plap 
-0390 6fe3466e fetch 6 ,mem_device1_locall_addr 
-0391 67e342db store 6 ,mem_le_lap 
-0392 20600000 rtn 
-
-p_mouse_load_le_device2:
-0393 6fe34675 fetch 6 ,mem_device2_addr 
-0394 67e34116 store 6 ,mem_hci_plap 
-0395 6fe3467b fetch 6 ,mem_device2_locall_addr 
-0396 67e342db store 6 ,mem_le_lap 
-0397 20600000 rtn 
+037e 6fe34668 fetch 6 ,mem_device1_addr 
+037f 67e34116 store 6 ,mem_hci_plap 
+0380 6fe3466e fetch 6 ,mem_device1_locall_addr 
+
+p_mouse_le_lap_store:
+0381 67e342db store 6 ,mem_le_lap 
+0382 20600000 rtn 
 
 p_mouse_store_remote_bdaddr:
-0398 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0399 c4010000 rtnbit0 mouse_store_eeprom_flag 
-039a c30a5c43 bbit0 mouse_enable_otp ,mouse_store_remote_bdaddr + 1 
-039b d8e00002 arg mouse_store_eeprom_flag ,queue 
-039c 20405f04 call mouse_disable_function_flag 
-039d 20405c4a call mouse_check_device_addr 
-039e 204003a0 call p_mouse_before_store_reconn_info 
-039f 20205ca3 branch mouse_store_device_info_delay 
+0383 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0384 c4010000 rtnbit0 mouse_store_eeprom_flag 
+0385 c30a5c43 bbit0 mouse_enable_otp ,mouse_store_remote_bdaddr + 1 
+0386 d8e00002 arg mouse_store_eeprom_flag ,queue 
+0387 20405f04 call mouse_disable_function_flag 
+0388 20405c4a call mouse_check_device_addr 
+0389 2040038b call p_mouse_before_store_reconn_info 
+038a 20205ca3 branch mouse_store_device_info_delay 
 
 p_mouse_before_store_reconn_info:
-03a0 6fe0c666 fetch 1 ,mem_device_flag 
-03a1 c00083a4 beq mode_bt_device1 ,p_mouse_store_le_device1 
-03a2 c00103a9 beq mode_bt_device2 ,p_mouse_store_le_device2 
-03a3 20600000 rtn 
+038b 6fe0c666 fetch 1 ,mem_device_flag 
+038c c1808000 rtnne mode_bt_device1 
 
 p_mouse_store_le_device1:
-03a4 6fe30178 fetch 6 ,mem_le_plap 
-03a5 67e34668 store 6 ,mem_device1_addr 
-03a6 6fe342db fetch 6 ,mem_le_lap 
-03a7 67e3466e store 6 ,mem_device1_locall_addr 
-03a8 20600000 rtn 
-
-p_mouse_store_le_device2:
-03a9 6fe30178 fetch 6 ,mem_le_plap 
-03aa 67e34675 store 6 ,mem_device2_addr 
-03ab 6fe342db fetch 6 ,mem_le_lap 
-03ac 67e3467b store 6 ,mem_device2_locall_addr 
-03ad 20600000 rtn 
+038d 6fe30178 fetch 6 ,mem_le_plap 
+038e 67e34668 store 6 ,mem_device1_addr 
+038f 6fe342db fetch 6 ,mem_le_lap 
+0390 67e3466e store 6 ,mem_device1_locall_addr 
+0391 20600000 rtn 
 
 p_mouse_bb_event_timer:
-03ae 204003c2 call p_mouse_le_send_conn_param_update_timer 
-03af 2040614d call mouse_low_voltage_led_timer 
-03b0 2040553d call mouse_adc_read 
-03b1 20406110 call mouse_logo_led_on_timer 
-03b2 204061b1 call mouse_led_multi_timer 
-03b3 2040611e call mouse_dpi_led_blink_delay_timer 
-03b4 2040328e call g24_pair_timeout_timer 
-03b5 20403531 call g24_reconn_timeout_timer 
-03b6 20405fdd call mouse_24g_long_sleep_param_update_timer 
-03b7 2040572c call mouse_dpi_key_check_long_press 
-03b8 20405b9b call mouse_bt_discovery_check 
-03b9 20405bab call mouse_commbination_key_process 
-03ba 20405bce call mouse_check_discovery_timeout_timer 
-03bb 20405bd3 call mouse_check_direct_timeout_timer 
-03bc 20405be1 call mouse_le_enable_att_list_timer 
-03bd 20405bee call mouse_le_battery_updata_timer 
-03be 20405be4 call mouse_le_send_smp_security_request_timer 
-03bf 20405bfb call mouse_check_reconnect_delay_long_sleep 
-03c0 204003c5 call p_mouse_current_mult_update_timer 
-03c1 20205b98 branch mouse_bb_event_timer_next 
+0392 204003a8 call p_mouse_le_send_conn_param_update_timer 
+0393 2040614d call mouse_low_voltage_led_timer 
+0394 2040553d call mouse_adc_read 
+0395 20406110 call mouse_logo_led_on_timer 
+0396 204061b1 call mouse_led_multi_timer 
+0397 2040611e call mouse_dpi_led_blink_delay_timer 
+0398 2040328e call g24_pair_timeout_timer 
+0399 20403531 call g24_reconn_timeout_timer 
+039a 20405fdd call mouse_24g_long_sleep_param_update_timer 
+039b 2040572c call mouse_dpi_key_check_long_press 
+039c 20405b9b call mouse_bt_discovery_check 
+039d 20405bab call mouse_commbination_key_process 
+039e 20405bce call mouse_check_discovery_timeout_timer 
+039f 20405bd3 call mouse_check_direct_timeout_timer 
+03a0 20405be1 call mouse_le_enable_att_list_timer 
+03a1 20405bee call mouse_le_battery_updata_timer 
+03a2 20405be4 call mouse_le_send_smp_security_request_timer 
+03a3 20405bfb call mouse_check_reconnect_delay_long_sleep 
+03a4 204003ab call p_mouse_current_mult_update_timer 
+03a5 204056b6 call mouse_wheel_trigger_timer 
+03a6 20405c0e call mouse_store_information_delay_timer 
+03a7 20205c05 branch mouse_check_no_data_timeout_timer 
 
 p_mouse_le_send_conn_param_update_timer:
-03c2 da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
-03c3 da405aef arg mouse_updata_le_param ,regb 
-03c4 202042e0 branch timer_single_step 
+03a8 da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
+03a9 da405aef arg mouse_updata_le_param ,regb 
+03aa 202042e0 branch timer_single_step 
 
 p_mouse_current_mult_update_timer:
-03c5 da60477e arg mem_mouse_current_mult_timer ,regc 
-03c6 da4003c8 arg p_mouse_current_mult_reinit ,regb 
-03c7 202042e0 branch timer_single_step 
+03ab da60477e arg mem_mouse_current_mult_timer ,regc 
+03ac da4003ae arg p_mouse_current_mult_reinit ,regb 
+03ad 202042e0 branch timer_single_step 
 
 p_mouse_current_mult_reinit:
-03c8 6fe0c96b fetch 1 ,mem_lpm_mult_init 
-03c9 67e0c0c0 store 1 ,mem_lpm_mult 
-03ca 70477d03 jam 3 ,mem_mouse_long_mult_flag 
-03cb 20600000 rtn 
+03ae 6fe0c96b fetch 1 ,mem_lpm_mult_init 
+03af 67e0c0c0 store 1 ,mem_lpm_mult 
+03b0 70477d03 jam 3 ,mem_mouse_long_mult_flag 
+03b1 20600000 rtn 
 
 p_mouse_start_discovery:
-03cc 204059ed call mouse_sensor_powerdown 
-03cd 20205c1b branch mouse_start_discovery + 1 
+03b2 204059ed call mouse_sensor_powerdown 
+03b3 20205c1b branch mouse_start_discovery + 1 
 
 p_mouse_priority_bb_event:
-03ce 1a627e00 copy regc ,pdata 
-03cf c02003e3 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-03d0 c00a83e8 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-03d1 c01903da beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-03d2 c01e0406 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-03d3 c01c8417 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-03d4 c01d041a beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-03d5 c00a03d7 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-03d6 20205ac3 branch mouse_priority_bb_event + 2 
+03b4 1a627e00 copy regc ,pdata 
+03b5 c02003c9 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+03b6 c00a83ce beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+03b7 c01903c0 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+03b8 c01e03eb beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+03b9 c01c83fb beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+03ba c01d0400 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+03bb c00a03bd beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+03bc 20205ac3 branch mouse_priority_bb_event + 2 
 
 p_mouse_le_bb_event_connected:
-03d7 58000000 setarg 0 
-03d8 67e24c56 store 4 ,mem_le_conn_first_rcv 
-03d9 20205ad0 branch mouse_le_bb_event_connected 
+03bd 58000000 setarg 0 
+03be 67e24c58 store 4 ,mem_le_conn_first_rcv 
+03bf 20205ad0 branch mouse_le_bb_event_connected 
 
 p_mouse_le_ll_start_encryt:
-03da 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
-03db c00083de beq 1 ,p_mouse_le_ll_reconn_start_encryt 
-03dc 70484414 jam 20 ,mem_le_start_encrypt_timer 
-03dd 202003e0 branch p_mouse_le_ll_reconn_start_encryt_new 
+03c0 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+03c1 c00083c4 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+03c2 70484414 jam 20 ,mem_le_start_encrypt_timer 
+03c3 202003c6 branch p_mouse_le_ll_reconn_start_encryt_new 
 
 p_mouse_le_ll_reconn_start_encryt:
-03de 20405aef call mouse_updata_le_param 
-03df 70484405 jam 5 ,mem_le_start_encrypt_timer 
+03c4 20405aef call mouse_updata_le_param 
+03c5 70484405 jam 5 ,mem_le_start_encrypt_timer 
 
 p_mouse_le_ll_reconn_start_encryt_new:
-03e0 6fe0cc55 fetch 1 ,mem_le_conn_rcv_new 
-03e1 67e0cc56 store 1 ,mem_le_conn_first_rcv 
-03e2 20205af6 branch mouse_le_ll_enable_start_enc_flag 
+03c6 6fe0cc57 fetch 1 ,mem_le_conn_rcv_new 
+03c7 67e0cc58 store 1 ,mem_le_conn_first_rcv 
+03c8 20205af6 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_conn_param_update_rsp_recieved:
-03e3 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
-03e4 247a0000 nrtn blank 
-03e5 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
-03e6 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
-03e7 20600000 rtn 
+03c9 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
+03ca 247a0000 nrtn blank 
+03cb 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
+03cc 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
+03cd 20600000 rtn 
 
 p_mouse_le_bb_disconnected:
-03e8 58000000 setarg 0 
-03e9 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
-03ea 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
-03eb 58000000 setarg 0 
-03ec 67e147c0 store 2 ,mem_le_battery_level_updata_timer 
-03ed 70479400 jam 0 ,mem_mouse_le_bb_connected_flag 
-03ee d8400006 arg le_interval_7_5ms ,temp 
-03ef 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-03f0 c28d83f2 bbit1 mouse_enable_bt_125hz ,p_mouse_le_bb_disconnected_next 
-03f1 d8400007 arg le_interval_8_75ms ,temp 
+03ce 58000000 setarg 0 
+03cf 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
+03d0 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
+03d1 58000000 setarg 0 
+03d2 67e147c0 store 2 ,mem_le_battery_level_updata_timer 
+03d3 70479400 jam 0 ,mem_mouse_le_bb_connected_flag 
+03d4 d8400006 arg le_interval_7_5ms ,temp 
+03d5 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03d6 c28d83d8 bbit1 mouse_enable_bt_125hz ,p_mouse_le_bb_disconnected_next 
+03d7 d8400007 arg le_interval_8_75ms ,temp 
 
 p_mouse_le_bb_disconnected_next:
-03f2 604942d3 storet 2 ,mem_le_interval_min 
-03f3 604942d5 storet 2 ,mem_le_interval_min + 2 
-03f4 7047c200 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
-03f5 70495600 jam 0 ,mem_mouse_clear_sensor_data_flag 
-03f6 204029cb call le_clr_config_more_data 
-03f7 202003f8 branch p_mouse_bb_disconnected 
+03d8 604942d3 storet 2 ,mem_le_interval_min 
+03d9 604942d5 storet 2 ,mem_le_interval_min + 2 
+03da 7047c200 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+03db 70495600 jam 0 ,mem_mouse_clear_sensor_data_flag 
+03dc 204029cb call le_clr_config_more_data 
 
 p_mouse_bb_disconnected:
-03f8 20405b7b call mouse_bb_discon_clear_stack 
-03f9 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
-03fa c28383fd bbit1 app_disc_ble ,p_mouse4_0_event_bb_disconn 
-03fb c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
-03fc 20205c1a branch mouse_start_discovery 
+03dd 20405b7b call mouse_bb_discon_clear_stack 
+03de 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+03df c28383e2 bbit1 app_disc_ble ,p_mouse4_0_event_bb_disconn 
+03e0 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+03e1 20205c1a branch mouse_start_discovery 
 
 p_mouse4_0_event_bb_disconn:
-03fd 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
-03fe c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
-03ff 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-0400 1fe17e03 and pdata ,0x03 ,pdata 
-0401 20405b21 call mouse_le_clean_connect_flag 
-0402 c081d4a9 bne 0x03 ,mouse_start_reconnect 
-0403 6fe0cc59 fetch 1 ,mem_le_check_retransmit_discon_flag 
-0404 243a54a9 nbranch mouse_start_reconnect ,blank 
-0405 202054cd branch mouse_app_enter_hibernate 
+03e2 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+03e3 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+03e4 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+03e5 1fe17e03 and pdata ,0x03 ,pdata 
+03e6 20405b21 call mouse_le_clean_connect_flag 
+03e7 c081d4a9 bne 0x03 ,mouse_start_reconnect 
+03e8 6fe0cc5b fetch 1 ,mem_le_check_retransmit_discon_flag 
+03e9 243a54a9 nbranch mouse_start_reconnect ,blank 
+03ea 202054cd branch mouse_app_enter_hibernate 
 
 p_mouse_24g_attempt_success:
-0406 6fe2458f fetch 4 ,mem_24g_addr 
-0407 67e245e8 store 4 ,mem_24g_receiver_addr 
-0408 67e24691 store 4 ,mem_mouse_24g_addr 
-0409 2040355a call g24_ch_syncword_crc8_init 
-040a 20405c0b call mouse_no_data_timer_init 
-040b 2040618e call mouse_device_poweron_led_config 
-040c 20405a73 call mouse_init_sensor_reset 
-040d 70477d00 jam 0 ,mem_mouse_long_mult_flag 
-040e 7045fc00 jam 0 ,mem_24g_conn_sm 
-040f 7045e200 jam 0 ,mem_24g_reconn_type 
-0410 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
-0411 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-0412 98467c00 isub temp ,null 
-0413 20628000 rtn zero 
-0414 20406016 call mouse_soft_agc_disable 
-0415 20400453 call p_mouse_fetch_normal_tx_power 
-0416 20206042 branch mouse_24g_first_store_reconn_info 
+03eb 6fe2458f fetch 4 ,mem_24g_addr 
+03ec 67e245e8 store 4 ,mem_24g_receiver_addr 
+03ed 67e24691 store 4 ,mem_mouse_24g_addr 
+03ee 2040355a call g24_ch_syncword_crc8_init 
+03ef 20405c0b call mouse_no_data_timer_init 
+03f0 2040618e call mouse_device_poweron_led_config 
+03f1 20405a73 call mouse_init_sensor_reset 
+03f2 70477d00 jam 0 ,mem_mouse_long_mult_flag 
+03f3 7045fc00 jam 0 ,mem_24g_conn_sm 
+03f4 7045e200 jam 0 ,mem_24g_reconn_type 
+03f5 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
+03f6 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+03f7 98467c00 isub temp ,null 
+03f8 20628000 rtn zero 
+03f9 204003fd call p_mouse_fetch_normal_tx_power 
+03fa 20206042 branch mouse_24g_first_store_reconn_info 
 
 p_mouse_24g_pairing_complete:
-0417 20406016 call mouse_soft_agc_disable 
-0418 20400453 call p_mouse_fetch_normal_tx_power 
-0419 20206084 branch mouse_24g_pairing_complete 
+03fb 204003fd call p_mouse_fetch_normal_tx_power 
+03fc 20206084 branch mouse_24g_pairing_complete 
+
+p_mouse_fetch_normal_tx_power:
+03fd 6fe0ca07 fetch 1 ,mem_normal_tx_power 
+03fe 67e0c141 store 1 ,mem_tx_power 
+03ff 20206016 branch mouse_soft_agc_disable 
 
 p_mouse_24g_attempt_fail:
-041a 20406016 call mouse_soft_agc_disable 
-041b 20400453 call p_mouse_fetch_normal_tx_power 
-041c 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
-041d c1008000 rtneq dpi_button_state_down 
-041e 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
-041f 243a5ff2 nbranch mouse_24g_hibernate_set ,blank 
-0420 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
-0421 c0020425 beq pair_and_3_0_addr ,p_mouse_24g_auto_pair_attempt_fail 
-0422 c000e05f beq fast_conn_and_receiver ,mouse_24g_fast_conn_attempt_fail 
-0423 c001842c beq receiver_and_3_0_addr ,p_mouse_reconn_dongle_attempt_fail 
-0424 20206055 branch mouse_24g_attempt_fail + 2 
+0400 204003fd call p_mouse_fetch_normal_tx_power 
+0401 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
+0402 c1008000 rtneq dpi_button_state_down 
+0403 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
+0404 243a5ff2 nbranch mouse_24g_hibernate_set ,blank 
+0405 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+0406 c0028411 beq pair_and_receiver ,p_mouse_24g_auto_pair_attempt_fail 
+0407 c000840a beq fast_conn_and_receiver ,p_mouse_24g_fast_conn_attempt_fail 
+0408 c0018418 beq receiver_and_3_0_addr ,p_mouse_reconn_dongle_attempt_fail 
+0409 20206055 branch mouse_24g_attempt_fail + 2 
+
+p_mouse_24g_fast_conn_attempt_fail:
+040a 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+040b c298040d bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_start_auto_pair 
+040c 20206062 branch mouse_24g_fast_conn_attempt_fail + 3 
+
+p_mouse_24g_start_auto_pair:
+040d 6fe145d6 fetch 2 ,mem_24g_pair_timeout_init 
+040e 67e145de store 2 ,mem_24g_reconn_timeout 
+040f 7045e205 jam pair_and_receiver ,mem_24g_reconn_type 
+0410 20203534 branch g24_reconn_start 
 
 p_mouse_24g_auto_pair_attempt_fail:
-0425 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0426 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
-0427 6fe0c71b fetch 1 ,mem_device_number 
-0428 c000e059 beq 1 ,mouse_24g_attempt_fail_enter_hibernate 
+0411 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0412 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+0413 6fe0c71b fetch 1 ,mem_device_number 
+0414 c000e059 beq 1 ,mouse_24g_attempt_fail_enter_hibernate 
 
 p_mouse_24g_first_bluetooth_reconnect:
-0429 20406018 call mouse_24g_stop 
-042a 70466601 jam mode_bt_device1 ,mem_device_flag 
-042b 20205491 branch mouse_le_fast_conn_judge 
+0415 20406018 call mouse_24g_stop 
+0416 70466601 jam mode_bt_device1 ,mem_device_flag 
+0417 20205491 branch mouse_le_fast_conn_judge 
 
 p_mouse_reconn_dongle_attempt_fail:
-042c 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-042d c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
-042e c289e059 bbit1 mouse_enable_eeprom ,mouse_24g_attempt_fail_enter_hibernate 
-042f c28a6059 bbit1 mouse_enable_otp ,mouse_24g_attempt_fail_enter_hibernate 
-0430 20206034 branch mouse_24g_start_auto_pair 
+0418 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0419 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+041a c289e059 bbit1 mouse_enable_eeprom ,mouse_24g_attempt_fail_enter_hibernate 
+041b c28a6059 bbit1 mouse_enable_otp ,mouse_24g_attempt_fail_enter_hibernate 
+041c 2020040d branch p_mouse_24g_start_auto_pair 
 
 p_mouse_start_work:
-0431 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0432 c29f0436 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_first_start_auto_pair_mode 
-0433 6fe0c666 fetch 1 ,mem_device_flag 
-0434 c000043d beq mode_24g_device ,p_mouse_24g_start_mode 
-0435 20205491 branch mouse_le_fast_conn_judge 
+041d 6fe0c666 fetch 1 ,mem_device_flag 
+041e c000042b beq mode_24g_device ,p_mouse_24g_start_mode 
+041f 20205491 branch mouse_le_fast_conn_judge 
 
 p_mouse_24g_first_start_auto_pair_mode:
-0436 204054ac call mouse_wakeup_from_power_check 
-0437 20340439 branch p_mouse_24g_first_start_reconn ,user 
-0438 2020602f branch mouse_24g_reconn_general_dongle 
+0420 204054ac call mouse_wakeup_from_power_check 
+0421 20340427 branch p_mouse_24g_first_start_reconn ,user 
+
+p_mouse_24g_reconn_general_dongle:
+0422 70466600 jam mode_24g_device ,mem_device_flag 
+0423 6fe14721 fetch 2 ,mem_mouse_24g_power_on_fast_conn_timer 
+0424 67e145de store 2 ,mem_24g_reconn_timeout 
+0425 7045e201 jam fast_conn_and_receiver ,mem_24g_reconn_type 
+0426 20203534 branch g24_reconn_start 
 
 p_mouse_24g_first_start_reconn:
-0439 6fe0c666 fetch 1 ,mem_device_flag 
-043a c0006067 beq mode_24g_device ,mouse_24g_reconn_dongle_start 
-043b 20405aa8 call mouse_bluetooth_fast_conn_disable 
-043c 20200429 branch p_mouse_24g_first_bluetooth_reconnect 
+0427 6fe0c666 fetch 1 ,mem_device_flag 
+0428 c0006067 beq mode_24g_device ,mouse_24g_reconn_dongle_start 
+0429 20405aa8 call mouse_bluetooth_fast_conn_disable 
+042a 20200415 branch p_mouse_24g_first_bluetooth_reconnect 
 
 p_mouse_24g_start_mode:
-043d 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-043e c308e02a bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
-043f 20406195 call mouse_device_24g_pair_led_config 
-0440 204054ac call mouse_wakeup_from_power_check 
-0441 20346067 branch mouse_24g_reconn_dongle_start ,user 
-0442 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0443 c298044e bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_reconn_general_dongle 
-0444 c318e02f bbit0 mouse_enable_24g_power_on_pairing ,mouse_24g_reconn_general_dongle 
-0445 20405883 call mouse_key_check_once 
-0446 1a217e07 and rega ,0x07 ,pdata 
-0447 6848c728 fetcht 1 ,mem_mouse_commbination_key_24g 
-0448 98467c00 isub temp ,null 
-0449 2022844b branch p_mouse_24g_start_pair_mode ,zero 
-044a 2020602f branch mouse_24g_reconn_general_dongle 
-
-p_mouse_24g_start_pair_mode:
-044b 70463ea0 jam tx_power_f40db ,mem_mouse_24g_pair_tx_power 
-044c 7045d1a0 jam tx_power_f40db ,mem_24g_pair_tx_power 
-044d 20206047 branch mouse_24g_start_pair_mode 
-
-p_mouse_24g_reconn_general_dongle:
-044e 70466600 jam mode_24g_device ,mem_device_flag 
-044f 6fe14721 fetch 2 ,mem_mouse_24g_power_on_fast_conn_timer 
-0450 67e145de store 2 ,mem_24g_reconn_timeout 
-0451 7045e201 jam fast_conn_and_receiver ,mem_24g_reconn_type 
-0452 20203534 branch g24_reconn_start 
-
-p_mouse_fetch_normal_tx_power:
-0453 6fe0ca07 fetch 1 ,mem_normal_tx_power 
-0454 67e0c141 store 1 ,mem_tx_power 
-0455 20600000 rtn 
+042b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+042c c308e02a bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
+042d 20406195 call mouse_device_24g_pair_led_config 
+042e 204054ac call mouse_wakeup_from_power_check 
+042f 20346067 branch mouse_24g_reconn_dongle_start ,user 
+0430 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0431 c2980422 bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_reconn_general_dongle 
+0432 20206023 branch mouse_24g_start_mode + 7 
+
+p_mouse_store_normal_tx_power:
+0433 6fe0c141 fetch 1 ,mem_tx_power 
+0434 67e0ca07 store 1 ,mem_normal_tx_power 
+0435 20600000 rtn 
 
 p_mouse_idle:
-0456 2040620e call mouse_low_voltage_led_no_enter_lpm 
-0457 204078aa call ui_check_paring_button 
-0458 2040045a call p_mouse_20ms_event_timer 
-0459 20205e61 branch mouse_idle + 4 
+0436 2040620e call mouse_low_voltage_led_no_enter_lpm 
+0437 204078aa call ui_check_paring_button 
+0438 2040043a call p_mouse_20ms_event_timer 
+0439 20205e61 branch mouse_idle + 4 
 
 p_mouse_20ms_event_timer:
-045a d8e0000d arg 13 ,queue 
-045b 20407cef call timer_check 
-045c 247a0000 nrtn blank 
-045d 20400461 call p_mouse_dpi_check 
+043a d8e0000d arg 13 ,queue 
+043b 20407cef call timer_check 
+043c 247a0000 nrtn blank 
+043d 20400443 call p_mouse_dpi_check 
 
 p_mouse_20ms_event_timer_init:
-045e d8e0000d arg 13 ,queue 
-045f 58000020 setarg 32 
-0460 20207ce1 branch timer_init 
+043e d8e0000d arg 13 ,queue 
+043f 58000020 setarg 32 
+0440 20207ce1 branch timer_init 
+
+p_mouse_dpi_check_retransmit:
+0441 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0442 c4140000 rtnbit0 mouse_enable_select_device_by_dpi_button 
 
 p_mouse_dpi_check:
-0461 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-0462 c17f8000 rtneq gpio_disable 
-0463 2040046a call p_mouse_dpi_ghost_check 
-0464 20740000 rtn user 
-0465 da200000 arg 0 ,rega 
-0466 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
-0467 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-0468 20400471 call p_mouse_dpi_key_check 
-0469 202056c1 branch mouse_dpi_check_next 
+0443 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+0444 c17f8000 rtneq gpio_disable 
+0445 2040044c call p_mouse_dpi_ghost_check 
+0446 20740000 rtn user 
+0447 da200000 arg 0 ,rega 
+0448 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
+0449 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+044a 20400453 call p_mouse_dpi_key_check 
+044b 202056c1 branch mouse_dpi_check_next 
 
 p_mouse_dpi_ghost_check:
-046a 78547c00 disable user 
-046b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-046c c3958000 rtnbit1 mouse_enable_dpi_key_connect_gnd 
-046d 6fe1c96f fetch 3 ,mem_mouse_lkey_press_status 
-046e 207a0000 rtn blank 
-046f 70497400 jam 0 ,mem_mouse_dpikey_press_status 
-0470 20207dba branch enable_user 
+044c 78547c00 disable user 
+044d 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+044e c3958000 rtnbit1 mouse_enable_dpi_key_connect_gnd 
+044f 6fe1c96f fetch 3 ,mem_mouse_lkey_press_status 
+0450 207a0000 rtn blank 
+0451 70497400 jam 0 ,mem_mouse_dpikey_press_status 
+0452 20207dba branch enable_user 
 
 p_mouse_dpi_key_check:
-0471 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0472 c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-0473 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
-0474 1fe22600 copy pdata ,regc 
-0475 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
-0476 c07f8478 beq gpio_disable ,p_mouse_3io6key_dpi_check 
-0477 202056ce branch mouse_dpi_key_check_next 
+0453 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0454 c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+0455 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
+0456 1fe22600 copy pdata ,regc 
+0457 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
+0458 c07f845a beq gpio_disable ,p_mouse_3io6key_dpi_check 
+0459 202056ce branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-0478 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-0479 20405946 call mouse_gpio_config_output_low 
-047a 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-047b 2020047c branch p_mouse_3io6key_check 
+045a 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+045b 20405946 call mouse_gpio_config_output_low 
+045c 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+045d 2020045e branch p_mouse_3io6key_check 
 
 p_mouse_3io6key_check:
-047c 1a627e00 copy regc ,pdata 
-047d 67e0c978 store 1 ,mem_mouse_key_status 
-047e 1fe3fe00 lshift pdata ,pdata 
-047f 1fe22400 copy pdata ,regb 
-0480 18422600 copy temp ,regc 
-0481 204055b1 call mouse_gpio_config_input_pd 
-0482 1a620400 copy regc ,temp 
-0483 20406ee6 call gpio_get_bit 
-0484 7d20a400 nsetflag true ,0 ,regb 
-0485 2040593d call mouse_check_press 
-0486 20205929 branch mouse_check_key_connect_gnd_1 
+045e 1a627e00 copy regc ,pdata 
+045f 67e0c978 store 1 ,mem_mouse_key_status 
+0460 1fe3fe00 lshift pdata ,pdata 
+0461 1fe22400 copy pdata ,regb 
+0462 18422600 copy temp ,regc 
+0463 204055b1 call mouse_gpio_config_input_pd 
+0464 1a620400 copy regc ,temp 
+0465 20406ee6 call gpio_get_bit 
+0466 7d20a400 nsetflag true ,0 ,regb 
+0467 2040593d call mouse_check_press 
+0468 20205929 branch mouse_check_key_connect_gnd_1 
 
 p_g24_short_sleep:
-0487 204036b4 call g24_lpm_wait 
-0488 24740000 nrtn user 
-0489 204036be call g24_setgpio_lpm_before 
-048a 2040048d call p_clear_wake 
-048b 6fe1c608 fetch 3 ,mem_24g_short_sleep_set 
-048c 20203622 branch g24_long_seep2 
+0469 204036b4 call g24_lpm_wait 
+046a 24740000 nrtn user 
+046b 204036be call g24_setgpio_lpm_before 
+046c 2040046e call p_clear_wake 
+046d 2020361b branch g24_short_sleep_next 
 
 p_clear_wake:
-048d 58000000 setarg 0 
-048e 79207e15 set1 21 ,pdata 
-048f 67e40016 store 8 ,mem_gpio_wakeup_cfg 
-0490 58000000 setarg 0 
-0491 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
-0492 20600000 rtn 
+046e 58000000 setarg 0 
+046f 67e40016 store 8 ,mem_gpio_wakeup_cfg 
+0470 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
+0471 20600000 rtn 
 
 p_mouse_24g_hibernate_set:
-0493 70460000 jam 0 ,mem_24g_attempt_fail_flag 
-0494 20403647 call g24_transmit_next_packet 
-0495 5fffffff setarg -1 
-0496 67e245af store 4 ,mem_24g_enter_hibernate 
-0497 58000000 setarg 0 
-0498 67e3c846 store 7 ,mem_mouse_key 
-0499 70473f01 jam 1 ,mem_sensor_shutdown_flag 
-049a 204059ed call mouse_sensor_powerdown 
-049b 2020622b branch mouse_24g_long_sleep 
+0472 70460000 jam 0 ,mem_24g_attempt_fail_flag 
+0473 20403647 call g24_transmit_next_packet 
+0474 5fffffff setarg -1 
+0475 67e245af store 4 ,mem_24g_enter_hibernate 
+0476 58000000 setarg 0 
+0477 67e3c846 store 7 ,mem_mouse_key 
+0478 70473f01 jam 1 ,mem_sensor_shutdown_flag 
+0479 204059ed call mouse_sensor_powerdown 
+047a 2020622b branch mouse_24g_long_sleep 
 
 p_mouse_setgpio_hibernate:
-049c 20405a92 call mouse_set_sdio_high 
-049d 2040048d call p_clear_wake 
-049e 204056a9 call mouse_before_hibernate_wheel_gpio_set 
-049f 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-04a0 20406ef7 call gpio_out_active 
-04a1 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-04a2 20406ed3 call gpio_clr_wake 
-04a3 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
-04a4 20405943 call mouse_gpio_config_output_high 
-04a5 6848c65a fetcht 1 ,mem_device_switch_gpio 
-04a6 204055ab call mouse_gpio_set_pupd_by_input 
-04a7 d8400015 arg 21 ,temp 
-04a8 204055b5 call mouse_gpio_config_input_pu 
-04a9 2040611a call mouse_logo_led_off 
-04aa 2040550c call mouse_lpm_before_common 
-04ab 204054f9 call mouse_gpio_pd_idle 
-04ac 20400215 call p_mouse_wheel_set_impedance 
-04ad 202054e2 branch mouse_setgpio_hibernate_next 
+047b 20405a92 call mouse_set_sdio_high 
+047c 2040046e call p_clear_wake 
+047d 204056a9 call mouse_before_hibernate_wheel_gpio_set 
+047e 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
+047f 20405943 call mouse_gpio_config_output_high 
+0480 6848c65a fetcht 1 ,mem_device_switch_gpio 
+0481 204055ab call mouse_gpio_set_pupd_by_input 
+0482 d8400015 arg 21 ,temp 
+0483 204055b5 call mouse_gpio_config_input_pu 
+0484 2040611a call mouse_logo_led_off 
+0485 20400233 call p_mouse_lpm_before_common 
+0486 202054e2 branch mouse_setgpio_hibernate_next 
 
 p_mouse_24g_package_data:
-04ae c6930000 rtnmark0 mark_24g 
-04af 20405601 call mouse_motion 
-04b0 24740000 nrtn user 
-04b1 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
-04b2 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
-04b3 245a04c3 ncall p_mouse_24g_short_sleep_clear_wake ,blank 
-04b4 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-04b5 c30b04b8 bbit0 mouse_enable_keyboard ,p_mouse_24g_mouse_package_data 
-04b6 6fe0c96c fetch 1 ,mem_customer_key 
-04b7 243a60b6 nbranch mouse_24g_keyboard_package_data ,blank 
+0487 c6930000 rtnmark0 mark_24g 
+0488 20405601 call mouse_motion 
+0489 24740000 nrtn user 
+048a 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
+048b 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
+048c 245a049c ncall p_mouse_24g_short_sleep_clear_wake ,blank 
+048d 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+048e c30b0491 bbit0 mouse_enable_keyboard ,p_mouse_24g_mouse_package_data 
+048f 6fe0c96c fetch 1 ,mem_customer_key 
+0490 243a60b6 nbranch mouse_24g_keyboard_package_data ,blank 
 
 p_mouse_24g_mouse_package_data:
-04b8 204004ba call p_mouse_data_xy_release 
-04b9 202060a2 branch mouse_24g_mouse_package_data + 1 
+0491 20400493 call p_mouse_data_xy_release 
+0492 202060a2 branch mouse_24g_mouse_package_data + 1 
 
 p_mouse_data_xy_release:
-04ba 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
-04bb c1ff8000 rtnne gpio_disable 
-04bc 6fe0c77d fetch 1 ,mem_mouse_long_mult_flag 
-04bd 207a0000 rtn blank 
-04be 1fe0ffff increase -1 ,pdata 
-04bf 67e0c77d store 1 ,mem_mouse_long_mult_flag 
-04c0 58000000 setarg 0 
-04c1 67e24847 store 4 ,mem_mouse_x 
-04c2 20205a73 branch mouse_init_sensor_reset 
+0493 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+0494 c1ff8000 rtnne gpio_disable 
+0495 6fe0c77d fetch 1 ,mem_mouse_long_mult_flag 
+0496 207a0000 rtn blank 
+0497 1fe0ffff increase -1 ,pdata 
+0498 67e0c77d store 1 ,mem_mouse_long_mult_flag 
+0499 58000000 setarg 0 
+049a 67e24847 store 4 ,mem_mouse_x 
+049b 20205a73 branch mouse_init_sensor_reset 
 
 p_mouse_24g_short_sleep_clear_wake:
-04c3 2040048d call p_clear_wake 
-04c4 2020022d branch p_lpm_write_gpio_wakeup 
+049c 2040046e call p_clear_wake 
+049d 20200252 branch p_lpm_write_gpio_wakeup 
 
 p_mouse_init_sensor:
-04c5 20405958 call mouse_read_sensor_id 
-04c6 c01804ca beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-04c7 c018d9c6 beq p3065_id1 ,mouse_init_p3065 
-04c8 c02c04d8 beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
-04c9 20205952 branch mouse_init_sensor + 5 
+049e 20405958 call mouse_read_sensor_id 
+049f c01804a3 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+04a0 c018d9c6 beq p3065_id1 ,mouse_init_p3065 
+04a1 c02c04b1 beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
+04a2 20205952 branch mouse_init_sensor + 5 
 
 p_mouse_init_p32xx_id2_judge:
-04ca 6fe0c85a fetch 1 ,mem_sensor_id2 
-04cb c02d04d0 beq p_mx8650 ,p_mouse_sensor_read_id3 
-04cc c06c84ce beq p3065gx_id2 ,p_mouse_p3065gx_init_param 
-04cd 20205961 branch mouse_init_p32xx_id2_judge + 2 
+04a3 6fe0c85a fetch 1 ,mem_sensor_id2 
+04a4 c02d04a9 beq p_mx8650 ,p_mouse_sensor_read_id3 
+04a5 c06c84a7 beq p3065gx_id2 ,p_mouse_p3065gx_init_param 
+04a6 20205961 branch mouse_init_p32xx_id2_judge + 2 
 
 p_mouse_p3065gx_init_param:
-04ce 7049570e jam p3065gx ,mem_config_sensor_type 
-04cf 20600000 rtn 
+04a7 7049570e jam p3065gx ,mem_config_sensor_type 
+04a8 20600000 rtn 
 
 p_mouse_sensor_read_id3:
-04d0 5800007a setarg 0x7a 
-04d1 204069e5 call twspi_read 
-04d2 c06104d4 beq p8670 ,p_mouse_sg8670_parm_init 
-04d3 2020596e branch mouse_mx8650_init_param 
+04a9 5800007a setarg 0x7a 
+04aa 204069e5 call twspi_read 
+04ab c06104ad beq p8670 ,p_mouse_sg8670_parm_init 
+04ac 2020596e branch mouse_mx8650_init_param 
 
 p_mouse_sg8670_parm_init:
-04d4 7049570d jam sg8670 ,mem_config_sensor_type 
-04d5 da604b1e arg mem_sensor_sg8670_init ,regc 
-04d6 20405995 call mouse_sensor_wr_seq 
-04d7 20205747 branch mouse_setting_sensor_type 
+04ad 7049570d jam sg8670 ,mem_config_sensor_type 
+04ae da604b20 arg mem_sensor_sg8670_init ,regc 
+04af 20405995 call mouse_sensor_wr_seq 
+04b0 202004d5 branch p_mouse_setting_sensor_type 
 
 p_mouse_ka8g2_id2_judge:
-04d8 204059e7 call mouse_sensor_poweron 
-04d9 6fe0c85a fetch 1 ,mem_sensor_id2 
-04da c02c84dc beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
-04db 2020595f branch mouse_init_p32xx_id2_judge 
+04b1 204059e7 call mouse_sensor_poweron 
+04b2 6fe0c85a fetch 1 ,mem_sensor_id2 
+04b3 c02c84b5 beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
+04b4 2020595f branch mouse_init_p32xx_id2_judge 
 
 p_mouse_ka8g2_init_param:
-04dc 7049570b jam ka8g2 ,mem_config_sensor_type 
-04dd da604a0b arg mem_sensor_ka8g2_init_new ,regc 
-04de 20205995 branch mouse_sensor_wr_seq 
+04b5 7049570b jam ka8g2 ,mem_config_sensor_type 
+04b6 da604a0b arg mem_sensor_ka8g2_init_new ,regc 
+04b7 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_check_sensor_data:
-04df 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
-04e0 c1800000 rtnne flash_sm_no_buys 
-04e1 6fe0c957 fetch 1 ,mem_config_sensor_type 
-04e2 c00584e4 beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
-04e3 202059f8 branch mouse_check_sensor_data + 2 
+04b8 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
+04b9 c1800000 rtnne flash_sm_no_buys 
+04ba 6fe0c957 fetch 1 ,mem_config_sensor_type 
+04bb c00584bd beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
+04bc 202059f8 branch mouse_check_sensor_data + 2 
 
 p_mouse_pka8g2_sensor_motion:
-04e4 20405a6d call mouse_clear_sensor_data 
-04e5 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
-04e6 c07f84ea beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
-04e7 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
-04e8 20406ee6 call gpio_get_bit 
-04e9 24608000 nrtn true 
+04bd 20405a6d call mouse_clear_sensor_data 
+04be 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+04bf c07f84c3 beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
+04c0 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
+04c1 20406ee6 call gpio_get_bit 
+04c2 24608000 nrtn true 
 
 p_mouse_pka8g2_sensor_motion_1:
-04ea 58000000 setarg pan_reg_pid_l 
-04eb 204069e5 call twspi_read 
-04ec c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
-04ed 20205a2f branch mouse_p3212_sensor_motion_2 
+04c3 58000000 setarg pan_reg_pid_l 
+04c4 204069e5 call twspi_read 
+04c5 c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
+04c6 20205a2f branch mouse_p3212_sensor_motion_2 
 
 p_mouse_dpi_process:
-04ee 6fe0c957 fetch 1 ,mem_config_sensor_type 
-04ef c00704f1 beq p3065gx ,p_mouse_dpi_level_4_set 
-04f0 202056fa branch mouse_dpi_process + 3 
+04c7 6fe0c957 fetch 1 ,mem_config_sensor_type 
+04c8 c00704ca beq p3065gx ,p_mouse_dpi_level_4_set 
+04c9 202056fa branch mouse_dpi_process + 3 
 
 p_mouse_dpi_level_4_set:
-04f1 6fe0c690 fetch 1 ,mem_mouse_dpi 
-04f2 1fe0fe01 increase 1 ,pdata 
-04f3 67e0c690 store 1 ,mem_mouse_dpi 
-04f4 1fe67c04 sub pdata ,4 ,null 
-04f5 2042fdca call set_pdata_0 ,zero 
-04f6 20205701 branch mouse_dpi_level_store 
+04ca 6fe0c690 fetch 1 ,mem_mouse_dpi 
+04cb 1fe0fe01 increase 1 ,pdata 
+04cc 67e0c690 store 1 ,mem_mouse_dpi 
+04cd 1fe67c04 sub pdata ,4 ,null 
+04ce 2042fdca call set_pdata_0 ,zero 
+04cf 20205701 branch mouse_dpi_level_store 
 
 p_mouse_setting_dpi:
-04f7 204004f9 call p_mouse_setting_dpi_4_level 
-04f8 20205746 branch mouse_setting_dpi + 2 
+04d0 204004d2 call p_mouse_setting_dpi_4_level 
+04d1 20205746 branch mouse_setting_dpi + 2 
 
 p_mouse_setting_dpi_4_level:
-04f9 6fe0c957 fetch 1 ,mem_config_sensor_type 
-04fa c1070000 rtneq p3065gx 
-04fb 2020573e branch mouse_setting_dpi_4_level 
+04d2 6fe0c957 fetch 1 ,mem_config_sensor_type 
+04d3 c1070000 rtneq p3065gx 
+04d4 2020573e branch mouse_setting_dpi_4_level 
 
 p_mouse_setting_sensor_type:
-04fc 6fe0c957 fetch 1 ,mem_config_sensor_type 
-04fd c0068500 beq sg8670 ,p_mouse_seting_sg8670_dpi 
-04fe c007050b beq p3065gx ,p_mouse_seting_p3065gx_dpi 
-04ff 20205748 branch mouse_setting_sensor_type + 1 
+04d5 6fe0c957 fetch 1 ,mem_config_sensor_type 
+04d6 c00684d9 beq sg8670 ,p_mouse_seting_sg8670_dpi 
+04d7 c00704e4 beq p3065gx ,p_mouse_seting_p3065gx_dpi 
+04d8 20205748 branch mouse_setting_sensor_type + 1 
 
 p_mouse_seting_sg8670_dpi:
-0500 6fe0c690 fetch 1 ,mem_mouse_dpi 
-0501 c0000505 beq mouse_dpi_level1 ,p_mouse_set_sg8670_dpi_1 
-0502 c0008507 beq mouse_dpi_level2 ,p_mouse_set_sg8670_dpi_2 
-0503 c0010509 beq mouse_dpi_level3 ,p_mouse_set_sg8670_dpi_4 
-0504 20600000 rtn 
+04d9 6fe0c690 fetch 1 ,mem_mouse_dpi 
+04da c00004de beq mouse_dpi_level1 ,p_mouse_set_sg8670_dpi_1 
+04db c00084e0 beq mouse_dpi_level2 ,p_mouse_set_sg8670_dpi_2 
+04dc c00104e2 beq mouse_dpi_level3 ,p_mouse_set_sg8670_dpi_4 
+04dd 20600000 rtn 
 
 p_mouse_set_sg8670_dpi_1:
-0505 da604b58 arg mem_sensor_sg8670_dpi_1200 ,regc 
-0506 20205995 branch mouse_sensor_wr_seq 
+04de da604b5a arg mem_sensor_sg8670_dpi_1200 ,regc 
+04df 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_set_sg8670_dpi_2:
-0507 da604b68 arg mem_sensor_sg8670_dpi_1600 ,regc 
-0508 20205995 branch mouse_sensor_wr_seq 
+04e0 da604b6a arg mem_sensor_sg8670_dpi_1600 ,regc 
+04e1 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_set_sg8670_dpi_4:
-0509 da604b48 arg mem_sensor_sg8670_dpi_800 ,regc 
-050a 20205995 branch mouse_sensor_wr_seq 
+04e2 da604b4a arg mem_sensor_sg8670_dpi_800 ,regc 
+04e3 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_seting_p3065gx_dpi:
-050b 6fe0c690 fetch 1 ,mem_mouse_dpi 
-050c c0000511 beq mouse_dpi_level1 ,p_mouse_set_3056gx_dpi_0 
-050d c0008513 beq mouse_dpi_level2 ,p_mouse_set_3056gx_dpi_1 
-050e c0010515 beq mouse_dpi_level3 ,p_mouse_set_3056gx_dpi_2 
-050f c0018517 beq mouse_dpi_level4 ,p_mouse_set_3056gx_dpi_3 
-0510 20600000 rtn 
+04e4 6fe0c690 fetch 1 ,mem_mouse_dpi 
+04e5 c00004ea beq mouse_dpi_level1 ,p_mouse_set_3056gx_dpi_0 
+04e6 c00084ec beq mouse_dpi_level2 ,p_mouse_set_3056gx_dpi_1 
+04e7 c00104ee beq mouse_dpi_level3 ,p_mouse_set_3056gx_dpi_2 
+04e8 c00184f0 beq mouse_dpi_level4 ,p_mouse_set_3056gx_dpi_3 
+04e9 20600000 rtn 
 
 p_mouse_set_3056gx_dpi_0:
-0511 6848cb78 fetcht 1 ,mem_sensor_3056gx_dpi_0 
-0512 2020575e branch mouse_dpi_write 
+04ea 6848cb7a fetcht 1 ,mem_sensor_3056gx_dpi_0 
+04eb 2020575e branch mouse_dpi_write 
 
 p_mouse_set_3056gx_dpi_1:
-0513 6848cb79 fetcht 1 ,mem_sensor_3056gx_dpi_1 
-0514 2020575e branch mouse_dpi_write 
+04ec 6848cb7b fetcht 1 ,mem_sensor_3056gx_dpi_1 
+04ed 2020575e branch mouse_dpi_write 
 
 p_mouse_set_3056gx_dpi_2:
-0515 6848cb7a fetcht 1 ,mem_sensor_3056gx_dpi_2 
-0516 2020575e branch mouse_dpi_write 
+04ee 6848cb7c fetcht 1 ,mem_sensor_3056gx_dpi_2 
+04ef 2020575e branch mouse_dpi_write 
 
 p_mouse_set_3056gx_dpi_3:
-0517 6848cb7b fetcht 1 ,mem_sensor_3056gx_dpi_3 
-0518 2020575e branch mouse_dpi_write 
+04f0 6848cb7d fetcht 1 ,mem_sensor_3056gx_dpi_3 
+04f1 2020575e branch mouse_dpi_write 
 
 p_mouse_dpi_led_blink_init:
-0519 6fe0c957 fetch 1 ,mem_config_sensor_type 
-051a c0076131 beq p3065gx ,mouse_dpi_led_blink_init_another 
-051b 20206123 branch mouse_dpi_led_blink_init + 2 
-
-p_mouse_init:
-051c 20407396 call enable_authrom 
-051d 2040051f call p_mouse_setting_config 
-051e 202053e2 branch mouse_init + 2 
-
-p_mouse_setting_config:
-051f 20758000 rtn wake 
-0520 204035f0 call g24_transmit_init 
-0521 2040325b call g24_chmap_param_init 
-0522 204062aa call mouse_24g_send_time_long_wake 
-0523 20405589 call mouse_gpio_init 
-0524 204055c6 call mouse_le_name_modify 
-0525 2040544a call mouse_param_init 
-0526 2040052b call p_mouse_sensor_set_angle 
-0527 6848c64d fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0528 20406edd call gpio_config_input 
-0529 2040053b call p_ice_gpio_set_float 
-052a 20205417 branch mouse_setting_config + 7 
-
-p_mouse_sensor_set_angle:
-052b 6fe0c64f fetch 1 ,mem_sensor_angle_default 
-052c 67e0c958 store 1 ,mem_config_sensor_angle 
-052d 6fe0c64e fetch 1 ,mem_select_sensor_angle_gpio 
-052e c17f8000 rtneq gpio_disable 
-052f 6fe0c64e fetch 1 ,mem_select_sensor_angle_gpio 
-0530 d840003e arg gpcfg_output_low ,temp 
-0531 20406f21 call gpio_config_function_int 
-0532 6fe0c65b fetch 1 ,mem_mouse_reuse_2ice_gpio 
-0533 d840003e arg gpcfg_output_low ,temp 
-0534 20406f21 call gpio_config_function_int 
-0535 6848c64d fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0536 204055b5 call mouse_gpio_config_input_pu 
-0537 6848c64d fetcht 1 ,mem_mouse_sensor_sdio_gpio 
-0538 20406ee6 call gpio_get_bit 
-0539 2440d473 ncall mouse_sensor_switch_angle ,true 
-053a 202055b1 branch mouse_gpio_config_input_pd 
-
-p_ice_gpio_set_float:
-053b 6848c64e fetcht 1 ,mem_select_sensor_angle_gpio 
-053c 20406f0f call gpio_set_high_impedance 
-053d 6848c65b fetcht 1 ,mem_mouse_reuse_2ice_gpio 
-053e 20206f0f branch gpio_set_high_impedance 
+04f2 6fe0c957 fetch 1 ,mem_config_sensor_type 
+04f3 c0076131 beq p3065gx ,mouse_dpi_led_blink_init_another 
+04f4 20206123 branch mouse_dpi_led_blink_init + 2 
 
 p_mouse_motion:
-053f 78547c00 disable user 
-0540 58000000 setarg 0 
-0541 67e34847 store 6 ,mem_mouse_x 
-0542 204004df call p_mouse_check_sensor_data 
-0543 58000089 setarg 0x0089 
-0544 204069e4 call twspi_write 
-0545 20405747 call mouse_setting_sensor_type 
-0546 20405612 call mouse_zwheel 
-0547 20405617 call mouse_t_zwheel 
-0548 2040054a call p_mouse_key 
-0549 2020560c branch mouse_motion + 11 
+04f5 78547c00 disable user 
+04f6 58000000 setarg 0 
+04f7 67e34847 store 6 ,mem_mouse_x 
+04f8 204004b8 call p_mouse_check_sensor_data 
+04f9 58000089 setarg 0x0089 
+04fa 204069e4 call twspi_write 
+04fb 20405747 call mouse_setting_sensor_type 
+04fc 20405612 call mouse_zwheel 
+04fd 20405617 call mouse_t_zwheel 
+04fe 20400503 call p_mouse_key 
+04ff 2020560c branch mouse_motion + 11 
+
+p_mouse_drawing_optima:
+0500 6fe0c957 fetch 1 ,mem_config_sensor_type 
+0501 c1058000 rtneq ka8g2 
+0502 20205f27 branch mouse_drawing_optima + 1 
 
 p_mouse_key:
-054a 2040584c call mouse_check_firekey_gpio 
-054b 6fe0c987 fetch 1 ,mem_fire_key_flag 
-054c 243a5860 nbranch fire_key_press ,blank 
-054d 6fe0c982 fetch 1 ,mem_fire_key_status 
-054e 243a585f nbranch fire_key_process ,blank 
-054f 20405888 call mouse_check_key_gpio 
-0550 20400552 call p_mouse_ghost_key_check 
-0551 202057ad branch mouse_key + 7 
+0503 2040584c call mouse_check_firekey_gpio 
+0504 6fe0c987 fetch 1 ,mem_fire_key_flag 
+0505 243a5860 nbranch fire_key_press ,blank 
+0506 6fe0c982 fetch 1 ,mem_fire_key_status 
+0507 243a585f nbranch fire_key_process ,blank 
+0508 20405888 call mouse_check_key_gpio 
+0509 2040050b call p_mouse_ghost_key_check 
+050a 202057ad branch mouse_key + 7 
 
 p_mouse_ghost_key_check:
-0552 70497900 jam 0 ,mem_mouse_matrix_key_cow_count 
-0553 70497a00 jam 0 ,mem_mouse_matrix_key_row_count 
-0554 70497b00 jam 0 ,mem_mouse_ghost_flag 
-0555 1fe22400 copy pdata ,regb 
+050b 70497900 jam 0 ,mem_mouse_matrix_key_cow_count 
+050c 70497a00 jam 0 ,mem_mouse_matrix_key_row_count 
+050d 70497b00 jam 0 ,mem_mouse_ghost_flag 
+050e 1fe22400 copy pdata ,regb 
+050f 6848c644 fetcht 1 ,mem_lbutton_gpio 
+0510 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0511 98467c00 isub temp ,null 
+0512 2022851d branch p_mouse_matrix_ghost_key_l_bk ,zero 
+0513 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+0514 98467c00 isub temp ,null 
+0515 20228523 branch p_mouse_matrix_ghost_key_l_fw ,zero 
+0516 6848c645 fetcht 1 ,mem_mbutton_gpio 
+0517 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0518 98467c00 isub temp ,null 
+0519 2022852c branch p_mouse_ghost_key_mbk_rfw ,zero 
 
 p_mouse_ghost_key_mfw_rbk:
-0556 204057fb call mouse_ghost_key_check_m_fw 
+051a 204057fb call mouse_ghost_key_check_m_fw 
 
 p_mouse_ghost_key_rbk:
-0557 20400559 call p_mouse_ghost_key_check_r_bk 
-0558 202057e5 branch mouse_ghost_key_check_next 
+051b 20400531 call p_mouse_ghost_key_check_r_bk 
+051c 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_matrix_ghost_key_l_bk:
+051d 6848c645 fetcht 1 ,mem_mbutton_gpio 
+051e 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+051f 98467c00 isub temp ,null 
+0520 2022d7d6 branch mouse_ghost_key_lbk_mfw ,zero 
+
+p_mouse_ghost_key_lbk_rfw:
+0521 204057ef call mouse_ghost_key_check_l_bk 
+0522 2020052d branch p_mouse_ghost_key_rfw 
+
+p_mouse_matrix_ghost_key_l_fw:
+0523 6848c645 fetcht 1 ,mem_mbutton_gpio 
+0524 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0525 98467c00 isub temp ,null 
+0526 20228529 branch p_mouse_ghost_key_lfw_mbk ,zero 
+
+p_mouse_ghost_key_lfw_rbk:
+0527 20400533 call p_mouse_ghost_key_check_l_fw 
+0528 2020051b branch p_mouse_ghost_key_rbk 
+
+p_mouse_ghost_key_lfw_mbk:
+0529 20400533 call p_mouse_ghost_key_check_l_fw 
+052a 2040052f call p_mouse_ghost_key_check_m_bk 
+052b 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_mbk_rfw:
+052c 2040052f call p_mouse_ghost_key_check_m_bk 
+
+p_mouse_ghost_key_rfw:
+052d 20400535 call p_mouse_ghost_key_check_r_fw 
+052e 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_check_m_bk:
+052f 1a417e12 and regb ,mouse_m_bk_button ,pdata 
+0530 202057f3 branch mouse_ghost_key_check_m_bk + 1 
 
 p_mouse_ghost_key_check_r_bk:
-0559 1a417e0a and regb ,mouse_r_bk_button ,pdata 
-055a 202057f6 branch mouse_ghost_key_check_r_bk + 1 
+0531 1a417e0a and regb ,mouse_r_bk_button ,pdata 
+0532 202057f6 branch mouse_ghost_key_check_r_bk + 1 
+
+p_mouse_ghost_key_check_l_fw:
+0533 1a417e11 and regb ,mouse_l_fw_button ,pdata 
+0534 202057f9 branch mouse_ghost_key_check_l_fw + 1 
+
+p_mouse_ghost_key_check_r_fw:
+0535 1a417e12 and regb ,mouse_r_fw_button ,pdata 
+0536 202057ff branch mouse_ghost_key_check_r_fw + 1 
               org 0x2000
 
 start:
@@ -2309,6 +2291,8 @@
 2166 2000003c nop 60 
 2167 708a2020 jam 0x20 ,0x8a20 
 2168 708a23fd jam 0xfd ,0x8a23 
+
+set_sync_on_next:
 2169 708a2412 jam 0x12 ,0x8a24 
 216a 708a2410 jam 0x10 ,0x8a24 
 216b 2000003c nop 60 
@@ -3007,7 +2991,7 @@
 2396 793ffe05 set0 gpio_latch ,pdata 
 2397 67f08132 store 1 ,core_lpm_isogate 
 2398 2435a39d nbranch boot_load ,wake 
-2399 20407d74 call clean_smem 
+2399 20000001 nop 1 
 239a 6602069d storer alarm ,4 ,mem_saved_gpio_in 
 239b 20600000 rtn 
 
@@ -9243,6 +9227,8 @@
 3618 24740000 nrtn user 
 3619 204036be call g24_setgpio_lpm_before 
 361a 20407de2 call clear_wake 
+
+g24_short_sleep_next:
 361b 6fe1c608 fetch 3 ,mem_24g_short_sleep_set 
 361c 20203622 branch g24_long_seep2 
 
@@ -20498,6 +20484,8 @@
 56f7 44bdc00f bpatch patch0f_3 ,mem_patch0f 
 56f8 20405728 call mouse_dpi_ghost_check 
 56f9 20740000 rtn user 
+
+mouse_dpi_process_next:
 56fa 6fe0c690 fetch 1 ,mem_mouse_dpi 
 56fb 1fe20400 copy pdata ,temp 
 56fc 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
@@ -20610,6 +20598,8 @@
 573f c38e0000 rtnbit1 mouse_enable_dpi_level_4 
 5740 6fe0c690 fetch 1 ,mem_mouse_dpi 
 5741 c1818000 rtnne mouse_dpi_level4 
+
+mouse_dpi_reinit_set:
 5742 70469000 jam mouse_dpi_level1 ,mem_mouse_dpi 
 5743 20600000 rtn 
 
@@ -21418,6 +21408,8 @@
 596f 204059da call mouse_sensor_reset 
 5970 20407c95 call delay_10ms 
 5971 da6048d6 arg mem_sensor_8650_init ,regc 
+
+mouse_sensor_init_end:
 5972 20405995 call mouse_sensor_wr_seq 
 5973 20205747 branch mouse_setting_sensor_type 
 
@@ -22184,8 +22176,6 @@
 5b95 20405be4 call mouse_le_send_smp_security_request_timer 
 5b96 20405bfb call mouse_check_reconnect_delay_long_sleep 
 5b97 20405bfe call mouse_current_mult_update_timer 
-
-mouse_bb_event_timer_next:
 5b98 204056b6 call mouse_wheel_trigger_timer 
 5b99 20405c0e call mouse_store_information_delay_timer 
 5b9a 20205c05 branch mouse_check_no_data_timeout_timer 
@@ -23123,6 +23113,8 @@
 
 mouse_le_addr_increase_count_load:
 5e40 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
+
+mouse_le_addr_increase_store:
 5e41 67e14695 store 2 ,mem_random_addr_increase_count 
 5e42 20600000 rtn 
 
@@ -23289,10 +23281,10 @@
 5eb6 44c84012 bpatch patch12_0 ,mem_patch12 
 5eb7 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
 5eb8 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
-
-mouse_switch_gpio_connect_gnd:
 5eb9 6848c65a fetcht 1 ,mem_device_switch_gpio 
 5eba 204055b5 call mouse_gpio_config_input_pu 
+
+mouse_switch_gpio_connect_gnd:
 5ebb 6848c65a fetcht 1 ,mem_device_switch_gpio 
 5ebc 20406ee6 call gpio_get_bit 
 5ebd 2020dec2 branch mouse_check_select_24g_device ,true 
@@ -23880,6 +23872,8 @@
 604b 58000000 setarg 0 
 604c 67e145de store 2 ,mem_24g_reconn_timeout 
 604d 20405c39 call mouse_stop_discovery 
+
+mouse_24g_pair_mode_check:
 604e 70458901 jam type_ms ,mem_24g_data_type 
 604f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
 6050 c30b3291 bbit0 mouse_enable_keyboard ,g24_pair_start 
@@ -24110,6 +24104,8 @@
 60ff 20407cef call timer_check 
 6100 247a0000 nrtn blank 
 6101 20406106 call mouse_dpi_check_once 
+
+mouse_g24_retransmit_event_set:
 6102 2040572c call mouse_dpi_key_check_long_press 
 
 mouse_g24_retransmit_100ms_timer_init:
Index: output/romcode.rom
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/romcode.rom	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/romcode.rom	(working copy)
@@ -919,7 +919,7 @@
 793ffe05
 67f08132
 2435a39d
-20407d74
+20000001
 6602069d
 20600000
 204023a0
@@ -24573,4 +24573,4 @@
 00000000
 00000000
 00000000
-0000def0
\ No newline at end of file
+0000c0a6
\ No newline at end of file
Index: output/sched.rom
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/sched.rom	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/output/sched.rom	(working copy)
@@ -3,7 +3,7 @@
 00   #mem_patch01
 33   #mem_patch02
 07   #mem_patch03
-20   #mem_patch04
+a0   #mem_patch04
 00   #mem_patch05
 00   #mem_patch06
 00   #mem_patch07
@@ -12,16 +12,16 @@
 00   #mem_patch0a
 00   #mem_patch0b
 00   #mem_patch0c
-53   #mem_patch0d
+f7   #mem_patch0d
 18   #mem_patch0e
 bc   #mem_patch0f
 f2   #mem_patch10
 7d   #mem_patch11
-60   #mem_patch12
+69   #mem_patch12
 01   #mem_patch13
 00   #mem_patch14
 00   #mem_patch15
-02   #mem_patch16
+00   #mem_patch16
 00   #mem_patch17
 20   #mem_patch18
 00   #mem_patch19
@@ -35,7 +35,7 @@
 00   #mem_patch21
 10   #mem_patch22
 04   #mem_patch23
-60   #mem_patch24
+70   #mem_patch24
 00   #mem_patch25
 00   #mem_patch26
 06   #mem_patch27
@@ -49,7 +49,7 @@
 00   #mem_patch2f
 00   #mem_patch30
 00   #mem_patch31
-41   #mem_patch32
+45   #mem_patch32
 a4   #mem_patch33
 00   #mem_patch34
 00   #mem_patch35
@@ -234,31 +234,14 @@
 mem_device2_type:
 34
 #ff ff ff ff ff ff			#eeprom need
-mem_device3_type:
-33
+#mem_device3_type:
+#34
 #ff ff ff ff ff ff			#eeprom need
 
-# #adc
-# mem_mouse_vdd_full_vol:dc 05		#1.5V
-# 84 03#mem_mouse_vdd_empty_vol  :0.9V
-# e8 03#mem_mouse_vdd_low_vol   :1.0V
-#mem_mouse_vdd_full_vol:e4 0c		#3.3V
-#b8 0b#mem_mouse_vdd_empty_vol  :3.0V
-#80 0c#mem_mouse_vdd_low_vol   :3.2V
-
-mem_adc_channel_gpio:04
-#04
-#02
-#01
-#03
-#00
-#05
-#06
-#07
-
 #bit0:mouse_key_l    bit1:mouse_key_r  bit2:mouse_key_m
 mem_mouse_commbination_key_24g:03
 mem_mouse_commbination_key_bt:07
+mem_mouse_commbination_key_dpi:ff
 
 mem_mouse_compare_addr:00 00 00 00 00 00#ff ff ff ff ff ff 		#otp/flash=0	eeprom=ff
 
@@ -273,7 +256,7 @@
 mem_mouse_sleep_deal_type:00	#00:old version	01 new version	
 mem_24g_rx_window:c0 12     #400us  ## e0 2e#1ms #transmitter long range min:520us
 
-mem_mouse_24g_short_sleep_set_4ms:ee 4d 00	#1662us
+mem_mouse_24g_short_sleep_set_4ms:d0 52 00#f0 55 00
 mem_mouse_24g_long_sleep_set_4ms:80 bb 00
 mem_mouse_24g_fast_hop_count_4ms:05
 mem_mouse_24g_tsniff_4ms:80 bb 00 00
@@ -344,28 +327,22 @@
 mem_eeprom_block_size:80
 
 #otp write info offset
-mem_otp_offset_dpi:b9 1a										#6841 begin		3level:99count	----------info begin	
-mem_otp_offset_dpi_end:ea 1a								#6890 end
-
-mem_otp_offset_device_flag:eb 1a							#6891 begin		400 count
-mem_otp_offset_device_flag_end:b2 1b						#7090 end
+mem_otp_offset_dpi:21 1c										#7201 begin		3level:99count	----------info begin	
+mem_otp_offset_dpi_end:52 1c								#7250 end
 
-mem_otp_offset_24g_addr:b3 1b								#7091 begin		30 count
-mem_otp_offset_24g_addr_end:2a 1c						#7210 end
+mem_otp_offset_device_flag:53 1c							#7251 begin		400 count
+mem_otp_offset_device_flag_end:1a 1d						#7450 end
 
-mem_otp_offset_le_addr1:2b 1c								#7211 begin		30 count
-mem_otp_offset_le_addr1_end:de 1c							#7390 end
+mem_otp_offset_24g_addr:1b 1d								#7451 begin		30 count
+mem_otp_offset_24g_addr_end:92 1d						#7570 end
 
-mem_otp_offset_le_locall_addr1:df 1c						#7391 begin		30 count
-mem_otp_offset_le_locall_addr1_end:92 1d				#7570 end
+mem_otp_offset_le_addr1:93 1d								#7571 begin		30 count
+mem_otp_offset_le_addr1_end:46 1e						#7750 end
 
-mem_otp_offset_le_addr2:93 1d								#7571 begin		30 count
-mem_otp_offset_le_addr2_end:46 1e						#7750 end
+mem_otp_offset_le_locall_addr1:47 1e						#7751 begin		30 count
+mem_otp_offset_le_locall_addr1_end:fa 1e					#7930 end
 
-mem_otp_offset_le_locall_addr2:47 1e						#7751 begin		30 count
-mem_otp_offset_le_locall_addr2_end:fa 1e					#7930  end
-
-mem_otp_offset_le_addr_increase_count:fb 1e			#7931 begin		100 count
+mem_otp_offset_le_addr_increase_count:fb 1e			#7931 begin		89 count
 mem_otp_offset_le_addr_increase_count_end:ac 1f		#8108 end					----------info over	
 
 mem_otp_offset_app_initflag:ae 1f		#8110 end
@@ -474,7 +451,7 @@
 
 mem_sensor_ka8g2_init_new:
 09 a5
-26 34
+46 34
 19 04
 60 07
 69 04
@@ -490,12 +467,12 @@
 09 00
 ff ff
 
-# mem_sensor_3205_init:
-# 09 5a
-# 0d 10
-# 1d ed
-# 7d 80
-# ff ff
+mem_sensor_3205_init:
+09 5a
+0d 10
+1d ed
+7d 80
+ff ff
 
 #mem_sensor_ka8g2_init:
 #09 a5
@@ -545,22 +522,22 @@
 09 00
 ff ff
 
-# mem_sensor_ka8ul_init:
-# 09 5a
-# 0d 10
-# 0e c5
-# 5b 9a
-# 10 38
-# 11 42
-# 28 28
-# 41 23
-# 49 39
-# 4a b0
-# 4b a0
-# 4c 90
-# 4d 70
-# 09 00
-# ff ff
+mem_sensor_ka8ul_init:
+09 5a
+0d 10
+0e c5
+5b 9a
+10 38
+11 42
+28 28
+41 23
+49 39
+4a b0
+4b a0
+4c 90
+4d 70
+09 00
+ff ff
 
 mem_sensor_8009_init:
 09 5a
@@ -578,7 +555,7 @@
 #01 ADC_CONFIG_HVIN
 #02 ADC_CONFIG_GPIO
 mem_adc_clkdiv:0a
-mem_adc_channel:09
+mem_adc_channel:00
 #00 ADC_CH_VBAT
 #01 ADC_CH_VDCDC5V
 #06 ADC_CH_GPIO18
@@ -591,9 +568,21 @@
 #0d ADC_CH_GPIO22
 #0e ADC_CH_GPIO13
 
-# mem_mouse_vdd_full_vol:a4 01		#4.2V
-# 18 01#mem_mouse_vdd_empty_vol  :2.8V
-# 2c 01#mem_mouse_vdd_low_vol   :3.0V
+#adc
+#mem_mouse_vdd_full_vol:4a 01		#3.3V
+#2c 01#mem_mouse_vdd_empty_vol  :3.0V
+#40 01#mem_mouse_vdd_low_vol   :3.2V
+
+#mem_adc_channel_gpio:04
+#04
+#02
+#01
+#03
+#00
+#05
+#06
+#07
+
 
 # rf debug
 #bit7:0 means disable rf debug function
Index: program/app_mouse.prog
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/app_mouse.prog	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/app_mouse.prog	(working copy)
@@ -1085,6 +1085,7 @@
 	bpatch patch0f_3,mem_patch0f
 	call mouse_dpi_ghost_check
 	rtn user
+mouse_dpi_process_next:
 	fetch 1,mem_mouse_dpi
 	
 	copy pdata,temp
@@ -1196,6 +1197,7 @@
 	rtnbit1 MOUSE_ENABLE_DPI_LEVEL_4
 	fetch 1,mem_mouse_dpi
 	rtnne MOUSE_DPI_LEVEL4
+mouse_dpi_reinit_set:
 	jam MOUSE_DPI_LEVEL1,mem_mouse_dpi
 	rtn
 	
@@ -1996,6 +1998,7 @@
 	call mouse_sensor_reset
 	call delay_10ms
 	arg mem_sensor_8650_init,regc
+mouse_sensor_init_end:
 	call mouse_sensor_wr_seq
 	branch mouse_setting_sensor_type
 
@@ -2764,7 +2767,6 @@
 	//bt
 	call mouse_check_reconnect_delay_long_sleep		//delete 3.0,reconnect fail
 	call mouse_current_mult_update_timer
-mouse_bb_event_timer_next:
 	call mouse_wheel_trigger_timer
 	call mouse_store_information_delay_timer
 	branch mouse_check_no_data_timeout_timer
@@ -3716,6 +3718,7 @@
 	
 mouse_le_addr_increase_count_load:
 	fetch 2,mem_random_addr_increase_count_temp
+mouse_le_addr_increase_store:
 	store 2,mem_random_addr_increase_count
 	rtn
 
@@ -3881,9 +3884,9 @@
 	bpatch patch12_0,mem_patch12
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
-mouse_switch_gpio_connect_gnd:
 	fetcht 1,mem_device_switch_gpio
 	call mouse_gpio_config_input_pu
+mouse_switch_gpio_connect_gnd:
 	fetcht 1,mem_device_switch_gpio
 	call gpio_get_bit
 	branch mouse_check_select_24g_device,true
@@ -4450,6 +4453,7 @@
 	setarg 0
 	store 2,mem_24g_reconn_timeout	
 	call mouse_stop_discovery
+mouse_24g_pair_mode_check:
 	jam TYPE_MS,mem_24g_data_type
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit0 MOUSE_ENABLE_KEYBOARD,g24_pair_start
@@ -4681,6 +4685,7 @@
 	call timer_check
 	nrtn blank
 	call mouse_dpi_check_once
+mouse_g24_retransmit_event_set:
 	call mouse_dpi_key_check_long_press
 mouse_g24_retransmit_100ms_timer_init:
 	arg 12,queue
Index: program/bt.prog
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/bt.prog	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/bt.prog	(working copy)
@@ -19,7 +19,7 @@
 //define COMPILE_WECHAT
 //define COMPLIE_TEST
 define COMPLIE_ADPCM
-
+define YC1121SB
 INCLUDE "bt_format"
 
 org 0x0000		// start from patch ram address start
@@ -543,7 +543,8 @@
 	jam 0x00,0x8a26 
 	nop 60
 	jam 0x20,0x8a20 
-	jam 0xfd,0x8a23 
+	jam 0xfd,0x8a23
+set_sync_on_next:
 	jam 0x12,0x8a24 
 	jam 0x10,0x8a24 
 	nop 60
@@ -1275,7 +1276,11 @@
 	set0 gpio_latch,pdata			// enable gpio normal function after load gpio configuration
 	store 1,core_lpm_isogate		
 	nbranch boot_load,wake		// wakeup from hibernate
+ifdef YC1121SB
+	nop 1
+else
 	call clean_smem
+endif
 	storer alarm,4,mem_saved_gpio_in
 	rtn
 
Index: program/g24_protocol_stack/24g_transmitter.prog
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/g24_protocol_stack/24g_transmitter.prog	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/g24_protocol_stack/24g_transmitter.prog	(working copy)
@@ -56,6 +56,7 @@
 	nrtn user
 	call g24_setgpio_lpm_before
 	call clear_wake
+g24_short_sleep_next:
 	fetch 3,mem_24g_short_sleep_set
 	branch g24_long_seep2
 
Index: program/patch.prog
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/patch.prog	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/program/patch.prog	(working copy)
@@ -1,12 +1,15 @@
 
-//define AUTO_TEST
 //define PWM_SET
-//define SELECT_ANGLE
+//define SELECT_ANGLE_MZ
+define ICE_SELECT_ANGLE
 define POWER_CTRL
 //define MORE_POWER_CTRL
 //define ADC_1121SB
 //define ADC_1121SB_1V8_MODE
-define YJX_ICE_SELECT_ANGLE
+//define XTAL_CALP_SET
+//define COMMBINATION_DPI
+//define XTAL_FREQ_16M
+define MULTI_MODE
 
 	bbit1 8,pf_patch_ext
 	beq patch00_0,p_soft_reset
@@ -15,16 +18,31 @@
 	beq patch02_1,p_set_sync_on
 	beq patch02_4,p_set_lemode
 	beq patch02_5,p_rf_rx_enable
+ifdef XTAL_FREQ_16M
+	beq patch02_6,p_calc_freq
+endif
 	beq patch03_0,p_txon
 	beq patch03_1,p_set_tx_power
 	beq patch03_2,p_initialize_radio_cont
 	beq patch04_5,p_lpm_sleep
+	beq patch04_7,p_lpm_adjust_clk
 	beq patch0d_0,p_mouse_cb_fuction
 	beq patch0d_1,p_mouse_load_device_info_check
+	beq patch0d_2,p_mouse_default_init
 	beq patch0d_4,p_mouse_param_init
+ifdef SELECT_ANGLE_MZ
+	beq patch0d_5,p_mouse_sensor_set_angle
+endif
+ifdef ICE_SELECT_ANGLE
+	beq patch0d_5,p_mouse_sensor_set_angle
+endif
 	beq patch0d_6,p_mouse_start_work
+	beq patch0d_7,mouse4_0_check_reconn_target
 	beq patch0e_3,p_mouse_setgpio_hibernate
 	beq patch0e_4,p_mouse_lpm_before_common
+ifdef ADC_1121SB	
+	beq patch0e_7,p_mouse_adc_read_start
+endif
 	beq patch0f_2,p_mouse_motion
 	beq patch0f_3,p_mouse_dpi_process
 	beq patch0f_4,p_mouse_setting_dpi
@@ -41,11 +59,13 @@
 	beq patch11_4,p_mouse_store_device_info
 	beq patch11_5,p_mouse_store_dpi_info_check
 	beq patch11_6,p_mouse_idle
-//	beq patch12_0,p_mouse_check_select_device_by_switch
+ifdef MULTI_MODE
+	beq patch12_0,p_mouse_check_select_device_by_switch
+endif
+	beq patch12_3,p_mouse_drawing_optima
 	beq patch12_5,p_mouse_24g_hibernate_set
 	beq patch12_6,p_mouse_24g_package_data
 	beq patch13_0,p_mouse_dpi_led_blink_init
-	beq patch16_1,p_mouse_init
 	beq patch18_5,p_otp_read_data
 	beq patch1a_5,p_gpio_set_wake_by_current_state	
 	beq patch1a_6,p_gpio_set_wake
@@ -59,7 +79,8 @@
 
 pf_patch_ext:
 	beq patch22_4,p_le_slave_match
-	beq patch23_2,p_le_got_first_packet
+	beq patch23_2,p_le_got_first_packet_new	//p_le_got_first_packet
+	beq patch24_4,p_le_receive_rxon
 	beq patch24_5,p_le_rx_dec
 	beq patch24_6,p_le_rx_nopayload
 	beq patch27_1,p_le_parse
@@ -67,6 +88,7 @@
 	beq patch29_4,p_le_adv_not_match
 	beq patch29_5,p_le_init_adv
 	beq patch32_0,p_g24_reconn_dispatch
+	beq patch32_2,p_g24_reconn_device_fail
 	beq patch32_6,p_g24_short_sleep
 	beq patch33_2,p_mouse_g24_retransmit
 	beq patch33_5,p_g24_transmit_hop_process
@@ -104,12 +126,24 @@
 	nop 60
 	jam 0x20,0x8a20 
 	jam 0xf5,0x8a23 
-	jam 0x12,0x8a24 
-	jam 0x10,0x8a24 
-	nop 60
-	jam 0x60,0x8a12 
-	jam 0xdd,0x8a23 
-	rtn
+	branch set_sync_on_next
+
+ifdef XTAL_FREQ_16M
+p_calc_freq:
+	setarg 2400
+	iadd temp,pdata
+	copy pdata, rega
+	fetcht 1,mem_fcomp_div
+	rshift temp,temp
+	idiv temp
+//	mul32 pdata,12,rega
+	call wait_div_end
+	quotient pdata
+	rshift8 pdata,queue
+	storer queue, 1,0x890a
+	store 1,0x8909
+	branch calc_freq+10
+endif
 
 p_initialize_radio_cont:
 	jam 0,mem_le_testtype
@@ -156,14 +190,43 @@
 	call p_rfpll_aac_ghpc
 	call p_set_xtal_cap
 	jam SYSTEM_CLK_12M,mem_system_clk
-	branch sadc_calibration
+p_sadc_calibration:
+	rtn wake
+	jam 0x77,core_gpadc_ctrl
+	jam 0xc9,core_gpadc_cfg0
+	jam 0x01,core_gpadc_cfg3
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	nop 3000
+	call p_sadc_read
+	jam 0xc1,core_gpadc_cfg0
+	fetchr regb,1,mem_spi_write_addr
+	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
+	call sadc_cal_read+1
+	fetch 1,mem_spi_write_addr
+	store 1,mem_adc_cal_c7
+	storer regb,1,mem_spi_write_addr
+	rtn
+
+p_sadc_read:
+	jam 0x03,core_sadc_ctrl
+p_sadc_read_wait:
+	fetch 1,core_perf_status
+	bbit0 SARADC_DONE,p_sadc_read_wait
+	fetcht 2,core_sadc_data
+	storet 2,mem_adc_current_value
+	jam 0x00,core_sadc_ctrl
+	rtn
 	
 p_set_xtal_cap:
+ifndef XTAL_CALP_SET 
 	rtn wake
+endif
 	until null,lpo_edge
 	fetch 1,mem_xtal_c_sel
+p_set_xtal_cap_next:
 	store 1,core_xtal_cap
-	branch p_mouse_wait_lpo
+	branch lpm_write_wait
 	
 p_dpll_on:
 	fetch 1,mem_fcomp_div
@@ -266,13 +329,22 @@
 p_mouse_g24_retransmit:
 	fetch 1,mem_mouse_need_soft_reset
 	nrtn blank
-	call p_mouse_retransmit_select_device_by_pb_button
-	branch mouse_g24_retransmit+3
-
+//	call p_mouse_retransmit_select_device_by_pb_button
+	call p_mouse_select_device_by_dpi_button_once
+	branch g24_retransmit0
+/*
 p_mouse_retransmit_select_device_by_pb_button:
 	fetch 1,mem_config_select_device_button_gpio
 	rtneq GPIO_DISABLE
 	branch mouse_retransmit_select_device_by_pb_button
+*/
+
+p_mouse_select_device_by_dpi_button_once:
+	arg 12,queue
+	call timer_check
+	nrtn blank
+	call p_mouse_dpi_check_retransmit
+	branch mouse_g24_retransmit_event_set
 
 p_g24_transmit_hop_process:
 	fetcht 1,mem_24g_retry
@@ -305,34 +377,24 @@
 p_set_tx_power:	
 	fetch 1,mem_tx_power
 	beq TX_POWER_6DB,set_tx_power_7db
-	beq TX_POWER_10DB,p_set_tx_power_10db
 	beq TX_POWER_F30DB,p_set_tx_power_f30db
 	// beq TX_POWER_F35DB,p_set_tx_power_f35db
 	beq TX_POWER_F40DB,p_set_tx_power_f40db
-	// beq TX_POWER_F45DB,p_set_tx_power_f45db
 	beq TX_POWER_F50DB,p_set_tx_power_f50db
-	// beq TX_POWER_F60DB,p_set_tx_power_f60db
 	beq TX_POWER_FACTORY,p_set_tx_power_factory
 	branch set_tx_power+2
-	
-p_set_tx_power_10db:
-	jam 0x25,0x8a14 
-	setarg 0xa93f3f
-	store 3,0x8a60
-	jam 0x1f,0x8a63 
-	rtn
 
 p_set_tx_power_factory:
 	jam 0x17,0x8a14 
 	fetch 3,mem_tx_power_factory_param_new
+p_mouse_tx_power_set:
 	store 3,0x8a60
 	branch set_tx_power_8a63_28
 
 p_set_tx_power_f30db:
 	jam 0x17,0x8a14 
 	setarg 0x250300
-	store 3,0x8a60
-	branch set_tx_power_8a63_28
+	branch p_mouse_tx_power_set
 /*
 p_set_tx_power_f35db:
 	jam 0x17,0x8a14 
@@ -435,36 +497,6 @@
 	rtn wake
 	branch rfpll_aac_ghpc+1
 
-p_sadc_calibration:
-	rtn wake
-	jam 0x77,core_gpadc_ctrl
-	jam 0xc9,core_gpadc_cfg0
-	jam 0x01,core_gpadc_cfg3
-	fetch 1,mem_adc_clkdiv
-	store 1,core_sadc_clkdiv
-	nop 3000
-	call p_sadc_read
-	jam 0xc1,core_gpadc_cfg0
-	fetchr regb,1,mem_spi_write_addr
-	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
-	call sadc_cal_read+1
-	fetch 1,mem_spi_write_addr
-	store 1,mem_adc_cal_c7
-	storer regb,1,mem_spi_write_addr
-	rtn
-
-
-p_sadc_read:
-	jam 0x03,core_sadc_ctrl
-p_sadc_read_wait:
-	fetch 1,core_perf_status
-	bbit0 SARADC_DONE,p_sadc_read_wait
-	fetcht 2,core_sadc_data
-	storet 2,mem_adc_current_value
-	jam 0x00,core_sadc_ctrl
-	rtn
-	
-
 p_set_lemode:
 	jam 0x11,0x8a82
 	jam 0x12,0x8a8d
@@ -505,8 +537,7 @@
 	arg 256,regc
 	iadd regc,pdata
 	rtn
-p_le_got_first_packet:
-	branch p_le_got_first_packet_new
+	
 p_le_slave_match:
 	call p_le_check_retransmit
 	branch le_slave_match+1
@@ -550,15 +581,7 @@
 	fetch 1,mem_le_conn_rcv_new			//lpm  use retention mem
 	increase 1,pdata
 	store 1,mem_le_conn_rcv_new
-	fetch 1,mem_le_state
-	rtnbit1 lestate_got_first_packet
-	set1 lestate_got_first_packet,pdata
-	store 1,mem_le_state
-	fetch 2,mem_le_init_superto
-	store 2,mem_le_superto
-	setarg 0
-	store 4,mem_le_transmit_window	
-	rtn
+	branch le_got_first_packet+4
 	
 p_le_rx_dec:
 	call le_check_retransmit	
@@ -597,6 +620,65 @@
 	set0 mark_ble_crc_fail,mark	
 	branch le_init_adv+1
 
+p_le_receive_rxon:
+	call le_prep
+	bmark0 mark_ble_lr,p_le_receive_nolr
+	pulse dewhiten_code_calc
+	nop 30
+	call le_prep
+	lshift3 timeup,timeup
+p_le_receive_nolr:
+	disable match
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	copy timeup,stop_watch
+	correlate null,timeout
+	branch p_le_receive_on_attempt,attempt
+	copy clke,temp
+	storet 6,mem_sync_clke
+p_le_receive_on_attempt:
+	nbranch le_unsync_end,sync
+	enable swfine
+	fetch 1,mem_le_tx_ifs_defference
+	arg PARAM_20MS_INIT,temp
+	iadd temp,temp
+	fetch 1,mem_system_clk
+	imul32 temp,stop_watch
+	call rf_debug_rx_sync_line	//L-H
+	branch le_receive_skip,attempt
+	call p_calc_clke_all_modem
+	fetch 1,mem_le_state
+	bbit0 lestate_got_first_packet,le_receive_skip
+	call lpm_adjust_clk,wake
+	branch le_receive_skip
+
+p_calc_clke_all_modem:
+	fetcht  6,mem_sync_clke
+	copy clke,pdata
+	call clk_diff
+	copy pdata,temp
+
+	call calc_clke_all_modem
+	copy clke,rege
+	copy clke_rt,pdata
+	iadd temp,pdata
+	copy pdata,clke_rt	
+	rtn
+
+p_lpm_adjust_clk:
+	bmark0 mark_context,lpm_clear_counter
+	fetcht 4,mem_sleep_counter_all
+	arg 0x600,pdata
+	isub temp,null
+	rtn positive				// interval too small
+	copy temp,rega
+	fetcht 6,mem_sync_clke
+	deposit rege
+	call clk_diff_rt
+	copy rega,temp
+	branch lpm_adjust_clk+6
+
 p_le_adv_not_match:
 	call shutdown_radio
 	jam 0,0x8900
@@ -708,17 +790,15 @@
 	setarg 0x10			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable 
 p_mouse_puchk_set:
 	store 1,core_puwakeup
-p_mouse_wait_lpo:
-	until null,lpo_edge
-	rtn
-
-p_mouse_puchk_enable:
-	setarg 0x80			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable 
-	branch p_mouse_puchk_set
+	branch lpm_write_wait
 
 p_mouse_lpm_before_common:
 	call p_clear_wake
 	jam 0,mem_mouse_qdec_set_flag
+	fetcht 1,mem_matrix_public_gpio		// enable b4/b5/dpi wakeup
+	call gpio_out_active
+	fetcht 1,mem_matrix_public_gpio
+	call gpio_clr_wake
 	call mouse_lpm_before_common+1
 	call mouse_gpio_pd_idle
 p_mouse_wheel_set_impedance:
@@ -729,8 +809,12 @@
 	
 p_lpm_sleep:
 	//call xtal_fast_wake
-	fetch 2,mem_cb_before_lpm_sleep
-	call callback_func
+//	fetch 2,mem_cb_before_lpm_sleep
+//	call callback_func
+ifdef XTAL_CALP_SET
+	setarg 0x12
+	call p_set_xtal_cap_next
+endif
 p_lpm_sleep_skip_cb_function:
 	fetch 4,mem_sleep_counter_all	// sleep total time, 32k unit
 	iadd temp,pdata
@@ -742,7 +826,9 @@
 p_mouse_puchk_set_check:
 	fetch 1,mem_mouse_qdec_set_flag
 	branch p_mouse_puchk_disable,blank
-	branch p_mouse_puchk_enable
+p_mouse_puchk_enable:
+	setarg 0x80			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable 
+	branch p_mouse_puchk_set
 
 p_lpm_save_context:
 	storer mark,8,mem_saved_mark
@@ -783,10 +869,7 @@
 	arg 0x01f8,temp
 	iand temp,pdata
 	branch p_g24_reconn_dispatch_next,blank
-	fetch 2,mem_24g_reconn_count
-	increase 1,pdata
-	store 2,mem_24g_reconn_count
-	rtn
+	branch g24_reconn_dispatch+5
 
 p_g24_reconn_dispatch_next:
 	call g24_reconn_data_prep
@@ -805,25 +888,32 @@
 
 p_g24_reconn_mode_judge:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,g24_pair_start
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_pair_mode_check
 	branch g24_reconn_receiver_addr
 
+p_g24_reconn_device_fail:
+	fetch 1,mem_24g_fast_conn_enable
+	branch g24_ch,blank
+	fetch 2,mem_24g_reconn_count
+	increase 1,pdata
+	store 2,mem_24g_reconn_count
+	isolate1 9,pdata
+	fetch 1,mem_24g_reconn_type
+	beq PAIR_AND_RECEIVER,p_g24_reconn_pair_and_receiver
+	branch g24_reconn_device_fail+7
+
+p_g24_reconn_pair_and_receiver:
+	branch g24_reconn_receiver_addr,true
+	branch g24_pair_init_param
+
 p_mouse_param_init:
 	call mouse_param_common_init
-//	call p_mouse_le_buff_modify
 	setarg mem_le_tx_buffer0_omemalloc_new
 	store 2,mem_ble_l2cap_tx_buff0_ptr
 	setarg MOUSE_BLE_L2CAP_TXBUFF_SIZE_NEW
 	store 2,mem_ble_l2cap_tx_buff_size_ptr
 	branch mouse_param_init+2
 
-//p_mouse_le_buff_modify:
-//	setarg mem_le_tx_buffer0_omemalloc_new
-//	store 2,mem_ble_l2cap_tx_buff0_ptr
-//	setarg MOUSE_BLE_L2CAP_TXBUFF_SIZE_NEW
-//	store 2,mem_ble_l2cap_tx_buff_size_ptr
-//	rtn
-
 p_recv_addr_zero_skip:
 	fetch 4,mem_24g_fast_conn_addr
 	fetcht 4,mem_24g_addr
@@ -918,8 +1008,8 @@
 	store 2,mem_cb_24g_transmit_short_sleep
 	setarg mouse_24g_long_sleep
 	store 2,mem_cb_24g_transmit_long_sleep
-	setarg p_mouse_24g_before_lpm_sleep
-	store 2,mem_cb_before_lpm_sleep
+//	setarg p_mouse_24g_before_lpm_sleep
+//	store 2,mem_cb_before_lpm_sleep
 	branch mouse_cb_fuction+7
 
 p_soft_reset:
@@ -932,74 +1022,97 @@
 
 p_mouse_wheel_init_set:
 	call p_mouse_puchk_disable
-	fetcht 1,mem_whee_a_data_gpio		//reinit gpio pu after disable wheel wakeup
-	call gpio_config_input
-	fetcht 1,mem_whee_b_data_gpio
-	branch gpio_config_input
+	call mouse_matrix_public_gpio_reset
+	branch mouse_wheel_gpio_init
+//	fetcht 1,mem_whee_a_data_gpio		//reinit gpio pu after disable wheel wakeup
+//	call gpio_config_input
+//	fetcht 1,mem_whee_b_data_gpio
+//	branch gpio_config_input
 	
-p_mouse_24g_before_lpm_sleep:
-	rtn
+	
+//p_mouse_24g_before_lpm_sleep:
+//	rtn
 //	fetch 1,mem_device_flag
 //	rtnne MODE_24G_DEVICE
 //	branch mouse_24g_before_lpm_sleep+2	
 
+p_mouse_default_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_KEYBOARD,pdata
+	call mouse_customer_key_enable,true
+	branch mouse_default_parm_init
 
-ifdef SELECT_ANGLE	
-p_mouse_select_angle:
+ifdef SELECT_ANGLE_MZ
+p_mouse_sensor_set_angle:
+	fetch 1,mem_sensor_angle_default
+	store 1,mem_config_sensor_angle
 	fetch 1,mem_select_sensor_angle_gpio
 	rtneq GPIO_DISABLE
+	call p_mouse_select_angle
+p_mouse_set_sensor_gpio_sleep: 
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_3CLK_ANGLE,p_mouse_set_sensor_gnd_set
+	beq MOUSE_12CLK_ANGLE,p_mouse_set_sensor_vin_set
+	rtn
+
+p_mouse_set_sensor_gnd_set:
+	fetch 1,mem_select_sensor_angle_gpio
+	call mouse_gpio_config_output_low
+	fetcht 1,mem_select_sensor_angle_gpio
+	branch mouse_gpio_config_input_pd
 	
-	arg gpcfg_pullup,temp
-	call gpio_config_function_int
+p_mouse_set_sensor_vin_set:
+	fetch 1,mem_select_sensor_angle_gpio
+	call mouse_gpio_config_output_high
+	fetcht 1,mem_select_sensor_angle_gpio
+	branch mouse_gpio_config_input_pu
+	
+p_mouse_select_angle:
+	call p_mouse_set_sensor_vin_set
 	fetcht 1,mem_select_sensor_angle_gpio
 	call gpio_get_bit
 	branch p_mouse_set_sensor_angle_gnd,true
 
-	fetch 1,mem_select_sensor_angle_gpio
-	arg gpcfg_pulldown,temp
-	call gpio_config_function_int
+	call p_mouse_set_sensor_gnd_set
 	fetcht 1,mem_select_sensor_angle_gpio
 	call gpio_get_bit
 	branch p_mouse_set_sensor_angle_float,true	
-	branch p_mouse_set_sensor_angle_vin
-
+p_mouse_set_sensor_angle_vin:
+	jam MOUSE_12CLK_ANGLE,mem_config_sensor_angle
+	rtn
 p_mouse_set_sensor_angle_gnd:
 	jam MOUSE_3CLK_ANGLE,mem_config_sensor_angle
 	rtn
-
 p_mouse_set_sensor_angle_float:
 	jam MOUSE_6CLK_ANGLE,mem_config_sensor_angle
 	rtn
-	
-p_mouse_set_sensor_angle_vin:
-	jam MOUSE_12CLK_ANGLE,mem_config_sensor_angle
-	rtn
+endif
 
-p_mouse_set_sensor_gpio_sleep:
+ifdef ICE_SELECT_ANGLE
+p_mouse_sensor_set_angle:
+	fetch 1,mem_sensor_angle_default
+	store 1,mem_config_sensor_angle
 	fetch 1,mem_select_sensor_angle_gpio
 	rtneq GPIO_DISABLE
-	
-	fetch 1,mem_config_sensor_angle
-	beq MOUSE_3CLK_ANGLE,p_mouse_set_sensor_gnd_low_level
-	beq MOUSE_12CLK_ANGLE,p_mouse_set_sensor_input_pu
-	rtn
-
-p_mouse_set_sensor_gnd_low_level:
-	fetcht 1,mem_select_sensor_angle_gpio
-	branch gpio_out_active
-	
-p_mouse_set_sensor_input_pu:
-	fetcht 1,mem_select_sensor_angle_gpio
-	branch mouse_gpio_config_input_pu	
+	fetch 1,mem_select_sensor_angle_gpio
+	call mouse_gpio_config_output_low
+	fetch 1,mem_mouse_reuse_2ice_gpio
+ 	call mouse_gpio_config_output_low
+ 	fetcht 1,mem_mouse_sensor_sdio_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_mouse_sensor_sdio_gpio
+	call gpio_get_bit
+	ncall mouse_sensor_switch_angle,true
+	call mouse_gpio_config_input_pd	
+p_ice_gpio_set_float:
+ 	fetcht 1,mem_select_sensor_angle_gpio
+	call gpio_set_high_impedance
+	fetcht 1,mem_mouse_reuse_2ice_gpio
+	branch gpio_set_high_impedance
 endif
 
 p_mouse_load_device_info_check:
-ifdef SELECT_ANGLE
-	call p_mouse_select_angle
-	call p_mouse_set_sensor_gpio_sleep
-endif
-	fetch 1,mem_tx_power
-	store 1,mem_normal_tx_power
+	call p_mouse_store_normal_tx_power
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit1 MOUSE_ENABLE_EEPROM,mouse_load_eeprom_info_check
 //	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_check
@@ -1007,34 +1120,48 @@
 	rtn
 
 p_mouse_load_otp_info_check:
-//	call p_mouse_device_flag_temp_store
-	fetch 1,mem_device_flag
-	store 1,mem_mouse_device_flag_temp
 	call mouse_read_otp_dpi
-	call mouse_read_otp_device_flag
-	
-	call p_mouse_device_flag_check		//reinit to load info
-
-//	call p_mouse_select_device_by_switch_check
-
-	call p_mouse_read_otp_device_info
+//	call mouse_read_otp_device_flag
+ifdef MULTI_MODE
+	call p_mouse_select_device_by_switch_check
+endif	
+	call mouse_read_otp_device_info
 	call p_mouse_read_otp_le_addr_increase_count_info
 	branch mouse_otp_load_app_initflag
-/*
+
+ifdef MULTI_MODE
 p_mouse_select_device_by_switch_check:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
-	call p_mouse_check_select_device_by_switch
-*/
-//p_mouse_device_flag_temp_store:		//can remove:before start work check once again
-//	fetch 1,mem_device_flag
-//	store 1,mem_mouse_device_flag_temp
-//	rtn	
-
-p_mouse_read_otp_device_info:
+p_mouse_check_select_device_by_switch:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_read_otp_le_device1
-	branch mouse_read_otp_device_info
+	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
+	bbit0 MOUSE_ENABLE_SWITCH_GPIO_CONNECT_VIN,p_mouse_switch_gpio_connect_gnd
+p_mouse_switch_gpio_connect_vin_check:
+	call p_mouse_switch_gpio_pd_set
+	call p_mouse_switch_gpio_connect_vin
+p_mouse_switch_gpio_pu_set:
+	fetcht 1,mem_device_switch_gpio
+	call gpio_out_inactive
+	fetcht 1,mem_device_switch_gpio
+	branch mouse_gpio_config_input_pu
+	
+p_mouse_switch_gpio_connect_vin:
+	fetcht 1,mem_device_switch_gpio
+	call gpio_get_bit
+	nbranch mouse_check_select_24g_device,true
+	branch mouse_select_btdevice
+
+p_mouse_switch_gpio_connect_gnd:
+	call p_mouse_switch_gpio_pu_set
+	call mouse_switch_gpio_connect_gnd
+p_mouse_switch_gpio_pd_set:
+	fetcht 1,mem_device_switch_gpio
+	call gpio_out_active
+	fetcht 1,mem_device_switch_gpio
+	branch mouse_gpio_config_input_pd
+
+endif
 
 p_mouse_app_initflag_check:
 	fetch 2,mem_store_flag
@@ -1044,27 +1171,10 @@
 //	call mouse_app_initflag_check_next
 	storet 2,mem_store_flag
 	call mouse_ble_init_address
-	fetch 1,mem_device_flag_temp
-	store 1,mem_device_flag
 	call mouse_load_default_dpi
-	
 	setarg 0x1122
 	store 2,mem_random_addr_increase_count
-p_mouse_device_flag_temp_load:
-	fetch 1,mem_mouse_device_flag_temp		//reinit device flag
-	store 1,mem_device_flag
-	rtn
-
-p_mouse_device_flag_check:
-	fetch 1,mem_device_flag
-	sub pdata,0,null
-	branch p_mouse_device_flag_temp_load,zero
-	sub pdata,4,null
-	branch p_mouse_24g_init,zero
-	rtn positive
-p_mouse_24g_init:
-	jam MODE_24G_DEVICE,mem_device_flag
-	rtn
+	branch mouse_store_dpi_info_check
 
 p_mouse_read_otp_le_addr_increase_count_info:
 	fetch 1,mem_device_flag
@@ -1085,85 +1195,23 @@
 
 p_mouse_le_addr_increase_count_load:
 	fetch 2,mem_random_addr_increase_count_last
-	store 2,mem_random_addr_increase_count
-	rtn
+	branch mouse_le_addr_increase_store
 
 
 p_mouse_store_device_info:
-	branch p_mouse_store_otp_device_info
-	// fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	// bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eeprom_device_info
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eeprom_device_info
 //	bbit1 MOUSE_ENABLE_FLASH,mouse_store_flash_device_info
-	// bbit1 MOUSE_ENABLE_OTP,p_mouse_store_otp_device_info
-	// rtn
+	bbit1 MOUSE_ENABLE_OTP,p_mouse_store_otp_device_info
+	rtn
 
 p_mouse_store_otp_device_info:
 	call p_mouse_write_otp_locall_addr
-	call p_mouse_write_otp_device_flag
 	branch mouse_store_otp_device_info+1
 
 p_mouse_write_otp_locall_addr:
 	fetch 1,mem_device_flag
-	rtneq MODE_24G_DEVICE
-	beq MODE_BT_DEVICE1,p_mouse_write_otp_le_locall_addr1
-	beq MODE_BT_DEVICE2,p_mouse_write_otp_le_locall_addr2
-	rtn
-
-p_mouse_write_otp_device_flag:
-	fetchr regb,2,mem_otp_offset_device_flag
-	copy regb,regc
-p_mouse_write_otp_device_flag_loop:
-	call mouse_read_otp_device_flag_common
-	fetch 1,mem_device_flag_temp
-	branch p_mouse_device_flag_store,blank
-	store 1,mem_device_flag_last
-	increase 1,regc
-	fetch 2,mem_otp_offset_device_flag_end
-	isub regc,null
-	nrtn positive
-	copy regc,regb
-	branch p_mouse_write_otp_device_flag_loop
-
-p_mouse_device_flag_store:
-	fetch 1,mem_device_flag_last
-	and pdata,0xf0,pdata
-	branch p_mouse_device_flag_store_check,blank
-	fetch 1,mem_device_flag
-	
-	call p_mouse_device_flag_otp_store_judge			// add device_flag check
-	
-	store 1,mem_device_flag_value
-p_mouse_device_flag_store_end:	
-	arg 1,loopcnt
-	copy regc,regb
-	arg mem_device_flag_value,rega
-	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
-
-p_mouse_device_flag_store_check:
-	fetcht 1,mem_device_flag_last
-	fetch 1,mem_device_flag
-	call p_mouse_device_flag_otp_store_judge
-	isub temp,null
-	rtn zero
-	lshift4 pdata,pdata
-	iadd temp,pdata
-	store 1,mem_device_flag_value
-	
-	copy regc,pdata
-	fetcht 2,mem_otp_offset_device_flag
-	isub temp,null
-	branch p_mouse_device_flag_store_end,zero
-	
-	increase -1,regc
-	branch p_mouse_device_flag_store_end
-
-p_mouse_device_flag_otp_store_judge:
-	rtnne MODE_24G_DEVICE
-	increase 4,pdata
-	rtn
-
-/**************store le local addr start**********/
-
+	rtnne MODE_BT_DEVICE1
 p_mouse_write_otp_le_locall_addr1:
 	fetchr regb,2,mem_otp_offset_le_locall_addr1
 	copy regb,regc
@@ -1189,31 +1237,6 @@
 	copy regc,regb
 	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
 
-p_mouse_write_otp_le_locall_addr2:
-	fetchr regb,2,mem_otp_offset_le_locall_addr2
-	copy regb,regc
-p_mouse_write_otp_le_locall_addr2_loop:
-	call mouse_read_otp_le_locall_addr2_common
-	fetch 6,mem_mouse_le_locall_addr2_temp
-	branch p_mouse_le_local_addr2_store,blank	
-	store 6,mem_mouse_le_locall_addr2_last
-	increase 6,regc
-	fetch 2,mem_otp_offset_le_locall_addr2_end
-	isub regc,null
-	nrtn positive	//if read end,retention last value
-	copy regc,regb
-	branch p_mouse_write_otp_le_locall_addr2_loop
-
-p_mouse_le_local_addr2_store:
-	fetch 6,mem_mouse_le_locall_addr2_last
-	fetcht 6,mem_device2_locall_addr
-	isub temp,null
-	rtn zero
-	arg 6,loopcnt
-	arg mem_device2_locall_addr,rega
-	copy regc,regb
-	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
-
 /**************store le local addr end**********/
 
 p_mouse_load_device_info:
@@ -1227,11 +1250,7 @@
 	rtnbit0 MOUSE_ENABLE_LOAD_AND_STORE_DPI
 	fetch 1,mem_mouse_dpi
 	beq 0,mouse_otp_load_dpi
-	beq 6,p_mouse_dpi_reinit
-	rtn
-	
-p_mouse_dpi_reinit:
-	jam MOUSE_DPI_LEVEL1,mem_mouse_dpi
+	beq 6,mouse_dpi_reinit_set
 	rtn
 
 p_mouse_store_dpi_info_check:
@@ -1296,14 +1315,8 @@
 	rtn
 
 p_mouse_le_locall_addr_init_check:
-	fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_le_addr1_init_check
 	fetch 1,mem_device_flag
-	rtneq MODE_24G_DEVICE
-	beq MODE_BT_DEVICE1,p_mouse_le_addr1_init_check
-	beq MODE_BT_DEVICE2,p_mouse_le_addr2_init_check
-	rtn
-
+	rtneq MODE_BT_DEVICE1
 p_mouse_le_addr1_init_check:
 	fetch 6,mem_device1_locall_addr
 	fetcht 6,mem_mouse_compare_addr
@@ -1313,16 +1326,6 @@
 	store 6,mem_device1_locall_addr
 	rtn
 
-p_mouse_le_addr2_init_check:
-	fetch 6,mem_device1_locall_addr
-	fetcht 6,mem_mouse_compare_addr
-	isub temp,null
-	nrtn zero
-	fetch 6,mem_le_lap
-	add pdata,0x0100,pdata
-	store 6,mem_device1_locall_addr
-	rtn
-
 p_mouse_buletooth_fast_conn_end:
 	call p_mouse_select_reconn_device
 	branch mouse_buletooth_fast_conn_end+2
@@ -1330,29 +1333,14 @@
 p_mouse_select_reconn_device:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit0 MOUSE_ENABLE_OTP,mouse_select_reconn_device			//linkkey 16 byte delete,need add
-	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_load_le_device1
 p_mouse_select_reconn_device_start:
 	fetch 1,mem_device_flag
-	rtneq MODE_24G_DEVICE
-	beq MODE_BT_DEVICE1,p_mouse_load_le_device1
-	beq MODE_BT_DEVICE2,p_mouse_load_le_device2
-	rtn
-	
+	rtneq MODE_BT_DEVICE1
 p_mouse_load_le_device1:
 	fetch 6,mem_device1_addr
 	store 6,mem_hci_plap
-//	arg mem_le_ltk,contw
-//	call memcpy16
 	fetch 6,mem_device1_locall_addr
-	store 6,mem_le_lap
-	rtn
-
-p_mouse_load_le_device2:
-	fetch 6,mem_device2_addr
-	store 6,mem_hci_plap
-//	arg mem_le_ltk,contw
-//	call memcpy16
-	fetch 6,mem_device2_locall_addr
+p_mouse_le_lap_store:
 	store 6,mem_le_lap
 	rtn
 
@@ -1368,10 +1356,7 @@
 
 p_mouse_before_store_reconn_info:
 	fetch 1,mem_device_flag
-	beq MODE_BT_DEVICE1,p_mouse_store_le_device1
-	beq MODE_BT_DEVICE2,p_mouse_store_le_device2
-	rtn
-
+	rtnne MODE_BT_DEVICE1
 p_mouse_store_le_device1:
 	fetch 6,mem_le_plap
 	store 6,mem_device1_addr
@@ -1379,14 +1364,6 @@
 	store 6,mem_device1_locall_addr
 	rtn
 
-p_mouse_store_le_device2:
-	fetch 6,mem_le_plap
-	store 6,mem_device2_addr
-	fetch 6,mem_le_lap
-	store 6,mem_device2_locall_addr
-	rtn
-
-
 p_mouse_bb_event_timer:
 	call p_mouse_le_send_conn_param_update_timer
 	call mouse_low_voltage_led_timer
@@ -1399,6 +1376,9 @@
 	call g24_pair_timeout_timer
 	call g24_reconn_timeout_timer
 	call mouse_24g_long_sleep_param_update_timer
+ifdef COMMBINATION_DPI
+	call p_mouse_commbination_dpi_check_timer
+endif
 	//poll
 	call mouse_dpi_key_check_long_press
 	call mouse_bt_discovery_check
@@ -1412,7 +1392,34 @@
 	//bt
 	call mouse_check_reconnect_delay_long_sleep		//delete 3.0,reconnect fail
 	call p_mouse_current_mult_update_timer
-	branch mouse_bb_event_timer_next
+	call mouse_wheel_trigger_timer
+	call mouse_store_information_delay_timer
+	branch mouse_check_no_data_timeout_timer
+
+ifdef COMMBINATION_DPI
+p_mouse_commbination_dpi_check_timer:
+	fetch 1,mem_mouse_commbination_key_dpi
+	rtneq GPIO_DISABLE
+	fetch 2,mem_mouse_discovery_timer
+	nrtn blank
+	fetch 2,mem_24g_pair_timeout
+	nrtn blank
+	fetch 2,mem_24g_reconn_timeout
+	nrtn blank
+	fetch 1,mem_mouse_multi_led_powon_timer
+	nrtn blank
+	call mouse_check_key_gpio
+	and rega,0x07,pdata
+	fetcht 1,mem_mouse_commbination_key_dpi
+	isub temp,null
+	branch p_mouse_commbination_dpi_check,zero
+	jam 0x1e,mem_commbination_dpi_timer
+	rtn
+p_mouse_commbination_dpi_check:	
+	arg mem_commbination_dpi_timer,regc
+	arg mouse_dpi_process_next,regb		//skip gost key
+	branch timer_single_step
+endif
 	
 p_mouse_le_send_conn_param_update_timer:
 	arg mem_mouse_le_send_conn_param_update_timer,regc
@@ -1488,7 +1495,7 @@
 	jam LE_LPM_ENABLE,mem_mouse_le_conn_param_reject
 	jam 0,mem_mouse_clear_sensor_data_flag
 	call le_clr_config_more_data
-	branch p_mouse_bb_disconnected
+//	branch p_mouse_bb_disconnected
 p_mouse_bb_disconnected:
 	call mouse_bb_discon_clear_stack
 	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
@@ -1521,30 +1528,45 @@
 	fetcht 4,mem_24g_fast_conn_addr
 	isub temp,null
 	rtn zero
-	call mouse_soft_agc_disable
 	call p_mouse_fetch_normal_tx_power
 	branch mouse_24g_first_store_reconn_info
 	
 p_mouse_24g_pairing_complete:
-	call mouse_soft_agc_disable
 	call p_mouse_fetch_normal_tx_power
 	branch mouse_24g_pairing_complete
 
+p_mouse_fetch_normal_tx_power:
+	fetch 1,mem_normal_tx_power
+	store 1,mem_tx_power
+	branch mouse_soft_agc_disable
+
 p_mouse_24g_attempt_fail:
-	call mouse_soft_agc_disable
 	call p_mouse_fetch_normal_tx_power
 	fetch 1,mem_mouse_dpi_button_state
 	rtneq DPI_BUTTON_STATE_DOWN
 	fetch 1,mem_24g_attempt_fail_flag
 	nbranch mouse_24g_hibernate_set,blank
 	fetch 1,mem_24g_reconn_type
-	beq PAIR_AND_3_0_ADDR,p_mouse_24g_auto_pair_attempt_fail
-	beq FAST_CONN_AND_RECEIVER,mouse_24g_fast_conn_attempt_fail
+//	beq PAIR_AND_3_0_ADDR,p_mouse_24g_auto_pair_attempt_fail
+	beq PAIR_AND_RECEIVER,p_mouse_24g_auto_pair_attempt_fail
+	beq FAST_CONN_AND_RECEIVER,p_mouse_24g_fast_conn_attempt_fail
 	beq RECEIVER_AND_3_0_ADDR,p_mouse_reconn_dongle_attempt_fail
 	branch mouse_24g_attempt_fail+2
 
-p_mouse_24g_auto_pair_attempt_fail:
+p_mouse_24g_fast_conn_attempt_fail:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
+//	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_24g_start_auto_pair
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,p_mouse_24g_start_auto_pair
+	branch mouse_24g_fast_conn_attempt_fail+3
+
+p_mouse_24g_start_auto_pair:
+	fetch 2,mem_24g_pair_timeout_init
+	store 2,mem_24g_reconn_timeout
+	jam PAIR_AND_RECEIVER,mem_24g_reconn_type
+	branch g24_reconn_start
+
+p_mouse_24g_auto_pair_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit0 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_attempt_fail_enter_hibernate
 	fetch 1,mem_device_number
 	beq 1,mouse_24g_attempt_fail_enter_hibernate		//24g first mode and only 2.4g device
@@ -1559,12 +1581,11 @@
 	bbit1 MOUSE_ENABLE_EEPROM,mouse_24g_attempt_fail_enter_hibernate
 	bbit1 MOUSE_ENABLE_OTP,mouse_24g_attempt_fail_enter_hibernate
 //	bbit1 MOUSE_ENABLE_FLASH,mouse_24g_attempt_fail_enter_hibernate
-	branch mouse_24g_start_auto_pair
+	branch p_mouse_24g_start_auto_pair
 
 p_mouse_start_work:
-	// call app_param_init
-	fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_24g_first_start_auto_pair_mode
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_24g_first_start_auto_pair_mode
 	fetch 1,mem_device_flag
 	beq MODE_24G_DEVICE,p_mouse_24g_start_mode
 	branch mouse_le_fast_conn_judge
@@ -1572,7 +1593,12 @@
 p_mouse_24g_first_start_auto_pair_mode:	
 	call mouse_wakeup_from_power_check
 	branch p_mouse_24g_first_start_reconn,user 
-	branch mouse_24g_reconn_general_dongle
+p_mouse_24g_reconn_general_dongle:
+	jam MODE_24G_DEVICE,mem_device_flag
+	fetch 2,mem_mouse_24g_power_on_fast_conn_timer
+	store 2,mem_24g_reconn_timeout
+	jam FAST_CONN_AND_RECEIVER,mem_24g_reconn_type
+	branch g24_reconn_start
 
 p_mouse_24g_first_start_reconn:
 	fetch 1,mem_device_flag
@@ -1588,30 +1614,11 @@
 	branch mouse_24g_reconn_dongle_start,user
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,p_mouse_24g_reconn_general_dongle
-	// branch mouse_24g_start_mode+7
-	bbit0 MOUSE_ENABLE_24G_POWER_ON_PAIRING,mouse_24g_reconn_general_dongle
-	call mouse_key_check_once
-	and rega,0x07,pdata
-	fetcht 1,mem_mouse_commbination_key_24g
-	isub temp,null
-	branch p_mouse_24g_start_pair_mode,zero
-	branch mouse_24g_reconn_general_dongle
-p_mouse_24g_start_pair_mode:
-	jam TX_POWER_F40DB,mem_mouse_24g_pair_tx_power
-	jam TX_POWER_F40DB,mem_24g_pair_tx_power
-	branch mouse_24g_start_pair_mode
-
-
-p_mouse_24g_reconn_general_dongle:
-	jam MODE_24G_DEVICE,mem_device_flag
-	fetch 2,mem_mouse_24g_power_on_fast_conn_timer
-	store 2,mem_24g_reconn_timeout
-	jam FAST_CONN_AND_RECEIVER,mem_24g_reconn_type
-	branch g24_reconn_start
+	branch mouse_24g_start_mode+7
 	
-p_mouse_fetch_normal_tx_power:
-	fetch 1,mem_normal_tx_power
-	store 1,mem_tx_power
+p_mouse_store_normal_tx_power:
+	fetch 1,mem_tx_power
+	store 1,mem_normal_tx_power
 	rtn
 	
 p_mouse_idle:
@@ -1631,6 +1638,9 @@
 	setarg 32
 	branch timer_init
 
+p_mouse_dpi_check_retransmit:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
 p_mouse_dpi_check:
 	fetch 1,mem_dpi_button_gpio
 	rtneq GPIO_DISABLE
@@ -1684,15 +1694,12 @@
 	nrtn user
 	call g24_setgpio_lpm_before
 	call p_clear_wake
-	fetch 3,mem_24g_short_sleep_set
-	branch g24_long_seep2
+	branch g24_short_sleep_next
 	
 
 p_clear_wake:
 	setarg 0
-	set1 21,pdata
 	store 8,mem_gpio_wakeup_cfg	//gpio5(ice)enable wake
-	setarg 0
 	store 4,mem_gpio_wakeup_cfg+8
 	rtn
 	
@@ -1712,10 +1719,6 @@
 	call mouse_set_sdio_high
 	call p_clear_wake
 	call mouse_before_hibernate_wheel_gpio_set
-	fetcht 1,mem_matrix_public_gpio		// enable b4/b5/dpi wakeup
-	call gpio_out_active
-	fetcht 1,mem_matrix_public_gpio
-	call gpio_clr_wake
 	fetch 1,mem_mouse_sensor_sdio_gpio
 	call mouse_gpio_config_output_high
 	
@@ -1725,14 +1728,11 @@
 	call mouse_gpio_config_input_pu
 	
 	call mouse_logo_led_off
-	call mouse_lpm_before_common
-	call mouse_gpio_pd_idle
-	call p_mouse_wheel_set_impedance
+	call p_mouse_lpm_before_common
 //	fetcht 1,mem_mouse_reuse_2ice_gpio
 //	call mouse_gpio_config_input_pu
 //	call p_mouse_gpio_set_high_impedance
 	branch mouse_setgpio_hibernate_next
-	
 /*
 p_mouse_gpio_set_high_impedance:
 	fetch 3,mem_mouse_set_high_impedance_bit_set
@@ -1791,9 +1791,9 @@
 	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
 	bbit0 MOUSE_ENABLE_SWITCH_GPIO_CONNECT_VIN,p_mouse_switch_gpio_connect_gnd
 p_mouse_switch_gpio_connect_vin_check:
-	fetcht 1,mem_device_switch_gpio
-	call gpio_out_active
+	call p_mouse_switch_gpio_pd_set
 	call p_mouse_switch_gpio_connect_vin
+p_mouse_switch_gpio_pu_set:
 	fetcht 1,mem_device_switch_gpio
 	call gpio_out_inactive
 	fetcht 1,mem_device_switch_gpio
@@ -1801,16 +1801,14 @@
 	
 p_mouse_switch_gpio_connect_vin:
 	fetcht 1,mem_device_switch_gpio
-	call mouse_gpio_config_input_pd
-	fetcht 1,mem_device_switch_gpio
 	call gpio_get_bit
 	nbranch mouse_check_select_24g_device,true
 	branch mouse_select_btdevice
 
 p_mouse_switch_gpio_connect_gnd:
-	fetcht 1,mem_device_switch_gpio
-	call gpio_out_inactive
+	call p_mouse_switch_gpio_pu_set
 	call mouse_switch_gpio_connect_gnd
+p_mouse_switch_gpio_pd_set:
 	fetcht 1,mem_device_switch_gpio
 	call gpio_out_active
 	fetcht 1,mem_device_switch_gpio
@@ -1843,7 +1841,7 @@
 	jam SG8670,mem_config_sensor_type
 	arg mem_sensor_sg8670_init,regc
 	call mouse_sensor_wr_seq
-	branch mouse_setting_sensor_type
+	branch p_mouse_setting_sensor_type
 
 p_mouse_ka8g2_id2_judge:
 	call mouse_sensor_poweron
@@ -1952,100 +1950,6 @@
 	beq P3065GX,mouse_dpi_led_blink_init_another	//result:    level3: 1  2  3     level4: 2  3  4  1
 	branch mouse_dpi_led_blink_init+2
 
-p_mouse_init:
-	call enable_authrom
-	call p_mouse_setting_config
-	branch mouse_init+2
-
-p_mouse_setting_config:
-	rtn wake
-	call g24_transmit_init
-	call g24_chmap_param_init
-	call mouse_24g_send_time_long_wake
-	call mouse_gpio_init
-	call mouse_le_name_modify
-	call mouse_param_init
-ifdef YJX_ICE_SELECT_ANGLE
-	call p_mouse_sensor_set_angle
-	fetcht 1,mem_mouse_sensor_sdio_gpio
-	call gpio_config_input
-	call p_ice_gpio_set_float
-endif
-	branch mouse_setting_config+7
-
-ifdef YJX_ICE_SELECT_ANGLE
-p_mouse_sensor_set_angle:
-	fetch 1,mem_sensor_angle_default
-	store 1,mem_config_sensor_angle
-	fetch 1,mem_select_sensor_angle_gpio
-	rtneq GPIO_DISABLE
-	fetch 1,mem_select_sensor_angle_gpio
-	arg gpcfg_output_low,temp
- 	call gpio_config_function_int
- 	fetch 1,mem_mouse_reuse_2ice_gpio
-	arg gpcfg_output_low,temp
- 	call gpio_config_function_int
- 	fetcht 1,mem_mouse_sensor_sdio_gpio
-	call mouse_gpio_config_input_pu
-	fetcht 1,mem_mouse_sensor_sdio_gpio
-	call gpio_get_bit
-	ncall mouse_sensor_switch_angle,true
-	branch mouse_gpio_config_input_pd
-
-p_ice_gpio_set_float:
- 	fetcht 1,mem_select_sensor_angle_gpio
-	call gpio_set_high_impedance
-	fetcht 1,mem_mouse_reuse_2ice_gpio
-	branch gpio_set_high_impedance
-endif
-	
-ifdef AUTO_TEST
-p_mouse_motion:
-	disable user
-	setarg 0
-	store 6,mem_mouse_x
-	fetch 1,0X4FF0
-	increase 1,pdata
-	store 1,0X4FF0
-	sub pdata,50,null
-	branch p_ms_x_right,positive
-
-	sub pdata,100,null
-	branch p_ms_y_up,positive
-
-	sub pdata,150,null
-	branch p_ms_x_left,positive
-	sub pdata,200,null
-	branch p_ms_y_down,positive
-	rtn
-
-p_ms_x_right:
-	setarg 5
-	store 2,mem_mouse_x
-p_data:
-	enable user
-	branch mouse_no_data_timer_init
-
-p_ms_y_up:
-	setarg 5
-	store 2,mem_mouse_y
-	branch p_data
-
-p_ms_x_left:
-	setarg -5
-	store 2,mem_mouse_x
-	branch p_data
-p_ms_y_down:
-	fetch 1,0X4FF0
-	beq 200,p_mem_usb_data_square_cnt_set0
-	setarg -5
-	store 2,mem_mouse_y
-	branch p_data
-p_mem_usb_data_square_cnt_set0:
-	jam 0,0X4FF0
-	branch p_ms_y_down+2
-
-else
 p_mouse_motion:
 	disable user
 	setarg 0
@@ -2059,6 +1963,11 @@
 	call p_mouse_key
 	branch mouse_motion+11
 
+p_mouse_drawing_optima:
+	fetch 1,mem_config_sensor_type
+	rtneq KA8G2
+	branch mouse_drawing_optima+1
+
 p_mouse_key:
 	call mouse_check_firekey_gpio
 	fetch 1,mem_fire_key_flag
@@ -2070,25 +1979,82 @@
 	call p_mouse_ghost_key_check
 	branch mouse_key+7
 
-p_mouse_ghost_key_check:			//mfw rbk
+p_mouse_ghost_key_check:			//lbk_mfw
 	jam 0,mem_mouse_matrix_key_cow_count
 	jam 0,mem_mouse_matrix_key_row_count
 	jam 0,mem_mouse_ghost_flag
 	copy pdata,regb
+	fetcht 1,mem_lbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch p_mouse_matrix_ghost_key_L_BK,zero
+	fetch 1,mem_fw_button_gpio
+	isub temp,null
+	branch p_mouse_matrix_ghost_key_L_FW,zero
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch p_mouse_ghost_key_MBK_RFW,zero
 p_mouse_ghost_key_MFW_RBK:
 	call mouse_ghost_key_check_M_FW
 p_mouse_ghost_key_RBK:
 	call p_mouse_ghost_key_check_R_BK
 	branch mouse_ghost_key_check_next
 
+p_mouse_matrix_ghost_key_L_BK:
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_fw_button_gpio
+	isub temp,null
+	branch mouse_ghost_key_LBK_MFW,zero
+p_mouse_ghost_key_LBK_RFW:
+	call mouse_ghost_key_check_L_BK
+	branch p_mouse_ghost_key_RFW
+
+p_mouse_matrix_ghost_key_L_FW:
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch p_mouse_ghost_key_LFW_MBK,zero
+p_mouse_ghost_key_LFW_RBK:
+	call p_mouse_ghost_key_check_L_FW
+	branch p_mouse_ghost_key_RBK
+
+p_mouse_ghost_key_LFW_MBK:
+	call p_mouse_ghost_key_check_L_FW
+	call p_mouse_ghost_key_check_M_BK
+	branch mouse_ghost_key_check_next
+	
+p_mouse_ghost_key_MBK_RFW:
+	call p_mouse_ghost_key_check_M_BK
+p_mouse_ghost_key_RFW:
+	call p_mouse_ghost_key_check_R_FW
+	branch mouse_ghost_key_check_next
+
+p_mouse_ghost_key_check_M_BK:
+	and regb,MOUSE_M_BK_BUTTON,pdata
+	branch mouse_ghost_key_check_M_BK+1
+
 p_mouse_ghost_key_check_R_BK:
 	and regb,MOUSE_R_BK_BUTTON,pdata
 	branch mouse_ghost_key_check_R_BK+1
-//	beq MOUSE_R_BK_BUTTON,mouse_matrix_cow_more_than_one_key
-//	rtn
-endif
+
+p_mouse_ghost_key_check_L_FW:
+	and regb,MOUSE_L_FW_BUTTON,pdata
+	branch mouse_ghost_key_check_L_FW+1
+
+p_mouse_ghost_key_check_R_FW:
+	and regb,MOUSE_R_FW_BUTTON,pdata
+	branch mouse_ghost_key_check_R_FW+1
 
 ifdef ADC_1121SB
+p_mouse_adc_read_start:
+	call enable_adc
+	call vdd_calculate_by_mode
+	div pdata,10
+	call get_div_result
+	store 2,mem_mouse_vdd_now_vol
+	branch mouse_adc_data_process
+
 p_adc_init_data:
 	fetch 8,mem_otp_adc
 	branch adc_init_cal_data_default,blank
@@ -2277,15 +2243,7 @@
 	jam 0x77,core_gpadc_ctrl
 	jam 0x41,core_gpadc_cfg0
 	jam 0x14,0x8ac6			//div2
-	jam 0x00,core_gpadc_cfg3
-	call sadc_channel
-	fetch 1,mem_adc_clkdiv
-	store 1,core_sadc_clkdiv
-	call sadc_read
-
-	jam 0x00,core_sadc_clkdiv
-	jam 0x00,0x8ac6
-	rtn
+	branch p_mouse_adc_reference_source_set
 	
 p_enable_adc_reference_source_inter1p8V_vdcdc:
 	call p_sadc_cal_write
@@ -2295,11 +2253,12 @@
 	jam 0x77,core_gpadc_ctrl
 	jam 0x41,core_gpadc_cfg0
 	jam 0x10,0x8ac6			//not div2
+p_mouse_adc_reference_source_set:
 	jam 0x00,core_gpadc_cfg3
 	call sadc_channel
 	fetch 1,mem_adc_clkdiv
 	store 1,core_sadc_clkdiv
-	call  sadc_read
+	call sadc_read
 	
 	jam 0x00,core_sadc_clkdiv
 	jam 0x00,0x8ac6
Index: sched/mouse.dat
===================================================================
--- /1121s/branch/mouse/YJX_Project/mouse_public_yjx/sched/mouse.dat	(revision 2911)
+++ /1121s/branch/mouse/YJX_Project/mouse_public_yjx/sched/mouse.dat	(working copy)
@@ -167,31 +167,14 @@
 mem_device2_type:
 34
 #ff ff ff ff ff ff			#eeprom need
-mem_device3_type:
-33
+#mem_device3_type:
+#34
 #ff ff ff ff ff ff			#eeprom need
 
-# #adc
-# mem_mouse_vdd_full_vol:dc 05		#1.5V
-# 84 03#mem_mouse_vdd_empty_vol  :0.9V
-# e8 03#mem_mouse_vdd_low_vol   :1.0V
-#mem_mouse_vdd_full_vol:e4 0c		#3.3V
-#b8 0b#mem_mouse_vdd_empty_vol  :3.0V
-#80 0c#mem_mouse_vdd_low_vol   :3.2V
-
-mem_adc_channel_gpio:04
-#04
-#02
-#01
-#03
-#00
-#05
-#06
-#07
-
 #bit0:mouse_key_l    bit1:mouse_key_r  bit2:mouse_key_m
 mem_mouse_commbination_key_24g:03
 mem_mouse_commbination_key_bt:07
+mem_mouse_commbination_key_dpi:ff
 
 mem_mouse_compare_addr:00 00 00 00 00 00#ff ff ff ff ff ff 		#otp/flash=0	eeprom=ff
 
@@ -206,7 +189,7 @@
 mem_mouse_sleep_deal_type:00	#00:old version	01 new version	
 mem_24g_rx_window:c0 12     #400us  ## e0 2e#1ms #transmitter long range min:520us
 
-mem_mouse_24g_short_sleep_set_4ms:ee 4d 00	#1662us
+mem_mouse_24g_short_sleep_set_4ms:d0 52 00#f0 55 00
 mem_mouse_24g_long_sleep_set_4ms:80 bb 00
 mem_mouse_24g_fast_hop_count_4ms:05
 mem_mouse_24g_tsniff_4ms:80 bb 00 00
@@ -277,28 +260,22 @@
 mem_eeprom_block_size:80
 
 #otp write info offset
-mem_otp_offset_dpi:b9 1a										#6841 begin		3level:99count	----------info begin	
-mem_otp_offset_dpi_end:ea 1a								#6890 end
-
-mem_otp_offset_device_flag:eb 1a							#6891 begin		400 count
-mem_otp_offset_device_flag_end:b2 1b						#7090 end
+mem_otp_offset_dpi:21 1c										#7201 begin		3level:99count	----------info begin	
+mem_otp_offset_dpi_end:52 1c								#7250 end
 
-mem_otp_offset_24g_addr:b3 1b								#7091 begin		30 count
-mem_otp_offset_24g_addr_end:2a 1c						#7210 end
+mem_otp_offset_device_flag:53 1c							#7251 begin		400 count
+mem_otp_offset_device_flag_end:1a 1d						#7450 end
 
-mem_otp_offset_le_addr1:2b 1c								#7211 begin		30 count
-mem_otp_offset_le_addr1_end:de 1c							#7390 end
+mem_otp_offset_24g_addr:1b 1d								#7451 begin		30 count
+mem_otp_offset_24g_addr_end:92 1d						#7570 end
 
-mem_otp_offset_le_locall_addr1:df 1c						#7391 begin		30 count
-mem_otp_offset_le_locall_addr1_end:92 1d				#7570 end
+mem_otp_offset_le_addr1:93 1d								#7571 begin		30 count
+mem_otp_offset_le_addr1_end:46 1e						#7750 end
 
-mem_otp_offset_le_addr2:93 1d								#7571 begin		30 count
-mem_otp_offset_le_addr2_end:46 1e						#7750 end
+mem_otp_offset_le_locall_addr1:47 1e						#7751 begin		30 count
+mem_otp_offset_le_locall_addr1_end:fa 1e					#7930 end
 
-mem_otp_offset_le_locall_addr2:47 1e						#7751 begin		30 count
-mem_otp_offset_le_locall_addr2_end:fa 1e					#7930  end
-
-mem_otp_offset_le_addr_increase_count:fb 1e			#7931 begin		100 count
+mem_otp_offset_le_addr_increase_count:fb 1e			#7931 begin		89 count
 mem_otp_offset_le_addr_increase_count_end:ac 1f		#8108 end					----------info over	
 
 mem_otp_offset_app_initflag:ae 1f		#8110 end
@@ -407,7 +384,7 @@
 
 mem_sensor_ka8g2_init_new:
 09 a5
-26 34
+46 34
 19 04
 60 07
 69 04
@@ -423,12 +400,12 @@
 09 00
 ff ff
 
-# mem_sensor_3205_init:
-# 09 5a
-# 0d 10
-# 1d ed
-# 7d 80
-# ff ff
+mem_sensor_3205_init:
+09 5a
+0d 10
+1d ed
+7d 80
+ff ff
 
 #mem_sensor_ka8g2_init:
 #09 a5
@@ -478,22 +455,22 @@
 09 00
 ff ff
 
-# mem_sensor_ka8ul_init:
-# 09 5a
-# 0d 10
-# 0e c5
-# 5b 9a
-# 10 38
-# 11 42
-# 28 28
-# 41 23
-# 49 39
-# 4a b0
-# 4b a0
-# 4c 90
-# 4d 70
-# 09 00
-# ff ff
+mem_sensor_ka8ul_init:
+09 5a
+0d 10
+0e c5
+5b 9a
+10 38
+11 42
+28 28
+41 23
+49 39
+4a b0
+4b a0
+4c 90
+4d 70
+09 00
+ff ff
 
 mem_sensor_8009_init:
 09 5a
@@ -511,7 +488,7 @@
 #01 ADC_CONFIG_HVIN
 #02 ADC_CONFIG_GPIO
 mem_adc_clkdiv:0a
-mem_adc_channel:09
+mem_adc_channel:00
 #00 ADC_CH_VBAT
 #01 ADC_CH_VDCDC5V
 #06 ADC_CH_GPIO18
@@ -524,9 +501,21 @@
 #0d ADC_CH_GPIO22
 #0e ADC_CH_GPIO13
 
-# mem_mouse_vdd_full_vol:a4 01		#4.2V
-# 18 01#mem_mouse_vdd_empty_vol  :2.8V
-# 2c 01#mem_mouse_vdd_low_vol   :3.0V
+#adc
+#mem_mouse_vdd_full_vol:4a 01		#3.3V
+#2c 01#mem_mouse_vdd_empty_vol  :3.0V
+#40 01#mem_mouse_vdd_low_vol   :3.2V
+
+#mem_adc_channel_gpio:04
+#04
+#02
+#01
+#03
+#00
+#05
+#06
+#07
+
 
 # rf debug
 #bit7:0 means disable rf debug function
