Index: do.bat
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/do.bat	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/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/RongLian_Project/RL_mouse_public_1M/format/app_mouse.format	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/format/app_mouse.format	(working copy)
@@ -428,10 +428,11 @@
 64 mem_le_tx_buffer1_omemalloc_new
 64 mem_le_tx_buffer2_omemalloc_new
 64 mem_le_tx_buffer3_omemalloc_new
+
 1 mem_mouse_qdec_set_flag
-1 mem_mouse_wheel_temp_gpio
-1 mem_sensor_read_count
-1 mem_sensor_param_change_count
+//commbination_dpi
+1 mem_commbination_dpi_timer
+1 mem_mouse_commbination_key_dpi
 
 )
 
Index: format/g24_protocol_stack/24g_reconn.format
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/format/g24_protocol_stack/24g_reconn.format	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/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/eeprom.dat
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/output/eeprom.dat	(revision 1881)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/output/eeprom.dat	(working copy)
@@ -1,5670 +1,4932 @@
 00
 02
-9c
-5d
-b6
-54
-18
-5d
-b0
-31
-13
-12
-5a
-f2
-4d
-84
-4d
+8f
+ab
+f1
+00
+3c
+ae
+c6
+03
+78
 5c
+8d
+07
+e0
+71
+35
+1e
 aa
 55
-70
-11
-6b
-ff
-54
-46
-ea
-1b
-8e
-31
-65
-bf
-fa
-c0
+f0
 12
-7b
-99
-8d
-57
-e2
-72
-ec
-4c
-76
-d8
-91
-93
-40
-b6
-11
 4e
-b0
-28
-b4
-b1
-08
-c6
-64
-52
-01
-64
-15
-46
-af
-d3
-70
-bf
+06
+a3
 17
-8e
-84
-0a
-0a
-e3
+a2
 a1
-d3
-f6
-e0
-5e
-08
+1a
+63
+23
+16
+29
+8b
+50
+e2
+3b
+f2
+04
+50
+c7
+34
+27
+04
+c7
+1a
+53
+b3
+aa
+0a
+ae
+4a
+7a
+c1
 5f
+16
+cf
+78
+41
+0b
+59
+9a
 32
-71
+eb
+3c
+73
+42
+ec
+fb
+50
+21
+34
+55
+d0
+54
+74
 8e
-6e
-c9
-65
-b0
-ee
-ae
+e4
+9e
+af
+86
+77
+6f
+e2
+3b
+ed
+04
 57
-76
-e3
-7e
-67
-bb
-9c
-b4
-2a
-b0
-35
-f1
-f2
-5b
-69
-e0
-18
-f1
-3c
-3e
-52
-c9
-26
-38
-9f
-95
-45
-5d
-ca
-43
-c0
 2d
-d3
-e6
+fa
+35
+5a
 d4
-79
-98
-78
-25
-0a
-56
-14
-3a
-f4
-5c
+cf
 fb
-34
-b9
+f0
+24
+5b
+61
+67
+7a
+18
 9a
+2a
+65
+65
+f7
+dc
+c2
+db
+ca
+91
+eb
+95
+f6
+83
 7e
-40
-50
-88
-26
 3e
-66
-39
-92
-e5
+0d
+c5
+0f
+b8
+50
+fe
+9c
+5d
+6f
+32
 dd
+34
+f3
 0f
-7a
-fc
-36
-d4
-69
-1a
-d8
-2d
-24
-70
-3d
-14
-2b
-d4
-bd
+1c
 8f
-26
-25
-3b
-f1
-2f
+2b
+56
+51
+ef
+9d
+8f
+55
+f8
+6a
+dc
+4f
+1e
+8b
+0f
+8b
+be
+9b
+d4
+1f
+c9
+79
+d3
+96
+de
+28
+23
+6e
+43
+bc
+c2
+63
+c3
+41
+16
+1e
+36
+ad
+40
 85
-fc
-91
-b2
+d1
+43
+39
+ce
+4e
+59
+a9
+fa
+27
+c6
+32
+78
+34
+b9
+83
+d4
+06
+87
+b0
+4b
 c7
-f2
-f2
-47
-2e
-1f
-af
 bd
-c0
-5f
-32
-a2
-31
+78
+1f
 44
-ef
-ef
-de
-ef
-c5
-d2
-5b
+5f
+a4
+e8
+1f
 37
-04
-bb
-c7
-03
-ab
-c5
-a0
+96
+b1
+7f
+9f
+f9
 0d
-94
-1c
-88
-fa
-e4
-f8
-01
-ae
-3c
-ee
-15
-c5
-79
-60
-58
-b4
-37
-dd
-77
-05
-9d
+7a
+04
+a2
+cd
+5a
+f3
+6f
+b7
+55
+d9
+c2
+63
+7b
+99
+40
+13
+82
 3d
+c8
+ff
+de
+c6
+d6
+a1
+33
 2f
-8f
-69
-0e
-af
-17
-81
-27
-34
-97
-55
-1c
-f6
-05
-d1
+8c
+a5
 d4
-5e
-aa
-02
-43
-22
-45
-3c
-b3
-c0
-02
-b7
+54
+3e
+ad
 66
-ba
-2b
-0c
-58
-9a
-2c
-3d
-1c
-bf
-e7
-7f
-1c
-81
-0e
-3a
-b1
-e9
-d3
-74
-05
-40
+7b
+f7
+a8
+54
+0f
+c5
+4f
+6e
+ad
 29
+c5
+4b
+85
+5e
+8a
+f6
+df
+48
+2f
+20
+5f
+af
+e2
+58
+59
 fd
-ed
-82
-27
+fd
+66
+2e
 be
-7f
-51
-c1
-51
+f7
+5d
 47
-3f
-8f
-b2
-92
-78
-ea
+fa
 a5
-b4
-35
+e7
+b3
+9e
+42
+90
+27
+1b
+15
+38
 3f
-77
-1e
-76
-31
-1e
-bd
+8e
+44
+19
+40
+b6
+b8
+86
+c6
+95
+41
+01
+98
+40
+8f
+88
+42
+d4
+ad
+80
 78
-63
+a0
+20
+fc
+ca
+6b
+66
+c0
+fa
+e7
+7b
+24
+05
+26
+a8
+eb
 1b
+f7
+ac
+0a
+98
 5a
-2c
+9a
+5e
+06
+5c
 9e
-d1
-04
+4e
+46
+85
+ed
+41
+15
+2b
+13
+35
+3d
+12
+61
+58
+b2
+69
 db
+94
+97
+80
+2b
+79
+09
+f6
+d1
+b5
+de
 45
-f3
-75
-36
-c9
-fd
+8b
+d0
+1f
+59
+fe
+ce
+db
+2c
 0d
+49
+e1
 8e
-1a
-b5
-19
-18
-3d
-ec
-f2
+0a
+b9
+bd
 d7
-91
-ea
-8b
-50
-a7
-50
-6b
-54
-3a
-a1
-a7
-cd
-d8
-cd
-46
-63
-00
+cf
+e8
+22
 d9
-19
-52
-ac
-9c
-47
+15
 b4
-58
-af
-7b
-bc
-ac
-aa
+cd
+2a
+49
+4c
+1c
+2f
+75
+3c
 88
-3a
-ec
-30
-4a
-9d
-3d
-73
-73
-ec
-c1
-96
-19
-b8
-17
-01
-b9
-f7
-11
-18
+86
+06
+10
+ed
+ef
+de
+34
+38
 0a
-09
-7e
-a8
-81
-54
-a2
-e2
-a8
-ff
-5d
+76
+c7
+9e
 be
-0f
-a4
-d2
-31
-d0
-32
+8c
+fb
+98
+71
+0c
+ce
+b2
+55
+a5
+5e
+40
+ed
 b7
-99
-2c
-7e
-e0
+81
+a3
+9c
+61
+02
+9f
+cf
 be
-0f
-07
-d6
-bc
-09
-50
-7a
-bb
-b9
-40
-0c
-3b
-d9
-53
+ee
+27
+66
+26
+42
+75
+c4
+9a
 86
 b7
-23
-95
-a4
-bd
-d0
-71
-2a
-36
-fa
-41
-fe
-b1
-0b
-2b
+76
+58
+78
+11
+22
+a3
+01
+48
+c1
 a6
-5d
-64
-aa
-8d
-0a
-c0
-46
-96
-de
-6c
-5f
-f1
-d2
-82
-b8
-5b
-84
-e8
-6c
-5e
-84
-f6
-ef
-07
-41
-ca
-47
-78
-fa
-51
-41
-cf
-c6
-8a
-10
-66
-ca
-7b
-f7
-72
-f7
-28
-3a
-db
+7d
+b3
+09
+6a
+d8
+71
+64
+fc
+f8
 da
-c6
-cb
+52
+05
+71
+ae
+48
+98
+1f
+9a
+c9
+d5
+96
+68
+f2
+f9
 a7
-8a
-a3
+a1
+45
 91
-87
-b0
-10
-43
-c3
-6e
-d2
-59
-94
-3a
-4b
-c3
-65
-7f
-02
-06
-97
-ab
-9f
-6b
-93
-a7
-8a
-50
-e3
+0b
+fd
+91
+7b
+91
+17
+47
 36
-2d
-44
-0e
-9a
-13
-f6
-f8
-14
+e2
+59
+a9
+f1
+53
+9e
+9c
+18
+4c
+35
+21
+34
 f3
 de
-c1
-c1
-dd
-95
-cb
-52
-d4
-a2
-f5
-aa
-17
-d9
-af
-41
-b2
-e6
-cd
-da
-dd
-17
-d7
-83
-60
-8f
-d9
+97
+87
+87
+b9
+e8
+70
+c5
 1f
-f8
-d7
+be
+05
+9e
 88
-f3
-31
-36
-31
-e6
-6a
+98
+a9
+4f
+df
+bd
+d1
 4a
-81
+40
+2c
+48
 70
-7b
-03
-bd
-14
-93
-07
-32
+4f
 72
-0f
-7b
-89
-d5
-03
-8a
-2f
-de
-92
-8e
-b0
+62
+27
+5b
+52
+da
+97
+71
+e1
+3d
+2e
+45
+59
 c1
-76
-e2
-d1
-e6
-aa
-02
-82
-ae
-b6
-f1
-d7
-ac
-b9
-00
-d2
-5f
-44
-f0
-b4
-6e
-e0
-32
-fd
-bc
-ca
-bc
-6c
+45
+9a
+e9
+f7
+53
 b3
 52
+f6
+60
+c2
 9f
-ea
-12
-1b
+af
+15
+5d
+67
+e1
+da
+6a
+50
+be
+26
 8b
-4a
-2c
-c3
-3a
-a5
-43
-5b
-ac
-0d
-39
-78
-eb
-5d
-24
-1d
-35
-c5
-67
-4b
-e5
-25
-c1
-63
-c7
+f2
+b6
+12
+4e
+cd
+f5
+55
 46
-00
-f4
-19
-29
-3f
-e3
-b8
-75
+d1
+79
+ad
+df
+1b
+8f
+01
 9b
-b9
-a2
-9e
-93
-3c
-fb
-bf
-63
-50
-9a
-c5
-16
-96
-c9
-be
-3e
-54
-4f
-4d
-36
-e5
-f7
-ce
-2a
-42
-36
-30
-bc
-47
-a2
-58
-b4
-96
-c0
-b9
-f3
-1c
-25
-74
-c1
 6f
-06
-fd
-7c
-6a
-a4
-d8
-dc
-84
-9f
-e1
-d3
-4b
-05
-bd
-c0
-9b
-9e
-57
-5b
-75
-c3
+52
+02
 f9
-a3
-21
 cb
-52
-70
-83
-65
+03
+a5
+a3
+d1
+07
+ad
+8c
+cd
+b5
+19
+d3
+b9
+ea
+0f
+76
+66
+f0
+9c
+75
+b3
 0b
-43
+ba
 85
-ae
-1b
-5b
-b3
-9f
+44
+c4
+dc
+31
+71
+86
+aa
+81
+46
+e3
+bb
+01
+56
+8e
+d5
+7d
+74
+f0
+2a
+48
+f0
+9d
 f6
-7a
-97
-e1
-ce
-2f
-cc
+0d
+c3
+ab
+4f
+e3
+58
+62
+de
+0d
+1f
+ea
+2d
+a8
+39
+0d
+c3
+c5
+8a
+01
 ca
-b0
-5c
+99
+ff
+2b
+9b
 ac
-45
-37
-b2
+46
+31
+a8
+13
+9f
+1d
+4b
+99
+f3
+33
+61
+54
 9a
-8d
-b2
-92
-98
-1b
 c4
-16
-7b
-c8
-53
-8b
-29
-6a
-45
-bc
-3e
-32
-9c
-ad
-78
-d8
-a0
-fc
-17
-fb
-fc
-12
-b0
-70
-22
-81
-07
-a0
-71
-c0
-80
-d1
-7c
-08
-ba
-5f
-32
-3c
-98
-00
-ac
-85
-00
-fd
+e1
 55
-c2
-27
-d2
-af
+2e
+15
+ac
+60
+86
+57
+1c
+72
+15
+26
+31
+a5
+99
+da
+0b
 96
-fe
-9c
-94
-fd
-db
-17
-a3
+51
+4a
+1d
+88
+70
 f7
-7a
-32
-62
-72
-bc
-fc
-42
-f8
 9c
-f8
-0c
-85
-cf
-11
-c9
-76
-64
-7f
+72
+57
+f3
+ca
+07
+36
+bf
+2f
 98
-0a
-73
-52
-44
-50
-a7
-9e
+06
+e1
+ed
+2d
+d5
+63
+f7
+0e
+57
+e9
+ff
+c0
+33
+da
+b0
+72
+33
+a9
+24
+a1
+97
+fd
+5f
+06
+1b
+3b
+89
+49
+bb
+3d
+36
+cb
+68
+4d
+1c
+30
+b1
+7b
+be
+a4
+04
+a6
+b0
+25
+7d
+69
+c7
+1b
+13
+01
 08
-2a
+d9
+02
+c7
+ef
 4f
-35
-e6
 5b
-1c
-70
-14
-09
-72
+bd
+95
+21
+df
+3f
+f0
+98
+85
 5a
-03
-13
+15
+20
+12
+0d
+4f
+37
+b0
+95
 47
-11
-66
-68
-e1
-85
-b6
-b8
-19
-9e
-6e
-ce
-62
-dd
 ed
-22
-ce
-54
-95
-d0
-7a
-81
-a7
-2f
-1f
-5f
-54
-36
-7c
-4b
-6f
-bc
-2c
-ff
-95
-d8
-1d
-28
-39
-de
-e0
-69
-32
-eb
-22
-74
-4a
-62
+38
 4a
-50
-9c
+40
+ae
+9f
+c1
+56
+53
+a6
+2d
+68
+e4
+fc
+e9
+b6
+a0
 c8
+75
+90
 6c
-5c
-3f
-8a
-20
+ec
+fa
+92
 a3
-e4
-03
-e8
-dd
-4b
-30
-8c
-f9
-48
-22
-d2
-df
-b7
-88
-e4
-68
-2e
-3d
-91
-f4
-bd
-36
-a2
-5b
-1b
-3d
-84
-1e
-39
-19
-15
-6c
-86
-83
 6d
-62
-4a
-77
-40
+dd
+8e
 ad
-41
-1c
-d1
-23
-df
-9d
-7a
-db
-3c
-3b
 50
-15
-fe
-82
+4d
+34
+ed
+ef
+84
+8b
+21
+10
+f4
+93
+b2
+01
+63
+d7
+20
+dc
+6b
+b2
+12
+91
+18
+67
+32
+b9
+9e
+53
+65
+a4
+b8
+05
+75
 14
-25
-24
-c9
-70
-bf
-44
-35
-f2
-62
-a7
-5d
-47
-16
-b5
-13
-2a
-e9
-15
-71
-0f
-30
-87
-a0
-bb
-b0
+fa
+57
+db
+0d
+77
+83
+4b
+d0
+88
+0a
 41
-d3
 e5
-cf
-40
+a1
+1f
+f3
+88
+8a
+7b
+a8
+63
+a8
+f3
+ac
+c4
+7f
 a7
-3e
-a2
-37
-a5
-db
-ba
-b4
-ab
-fd
-75
-e0
-99
-0e
-29
+bf
+f0
+8a
+03
+c9
+bc
+f3
 6f
+36
 e7
-88
-21
-bc
-74
-17
-dc
-30
-f7
-2c
-28
-1c
-b9
-59
-0c
-41
-a3
-9e
-93
-95
-55
-31
-77
+18
+ad
 82
-98
-7c
-e7
-6f
-3a
+a4
+08
+95
+15
+0f
+ef
+91
 a5
+20
+78
+e4
+73
+b6
+7b
+6d
+20
+04
+63
 1b
-d1
-23
+b7
+f8
+b8
+6f
+bb
+63
 71
-b0
-04
-40
-75
-84
-d0
-04
-9c
-a9
-0e
-f5
-bf
-8f
-c9
-6b
-d0
-f5
-cd
-47
-ce
-24
-d2
-ed
-15
-fa
-07
-24
-a4
+a6
+6a
+08
+92
+7b
 bd
+07
+89
+06
+ef
+01
+ec
 b2
+b4
+c0
+e5
+23
+4b
+61
+8d
+ed
+79
+ee
+11
+3f
+bf
+e3
+8a
+31
+ab
+03
+26
+05
+21
+8a
+68
+5b
+cd
+5e
+22
+6c
+b8
+a2
+2b
+a3
+72
+63
+96
+2b
 45
-f8
-cb
+14
+dd
 e9
-0f
-0d
-8f
-d2
-2f
-80
-d9
-96
-ec
-9b
-7c
-f1
-b3
-fb
-3d
-3a
+f9
+91
 f6
-35
-48
-a7
-4a
-e6
+40
+ea
 cb
-b0
-da
-3b
-f7
-a8
+1a
+7d
+98
+b3
+74
+4a
+58
+86
+d4
+d1
+85
+ba
+4b
+16
+1a
+25
+be
+18
+e2
+d8
+dd
 f2
-5b
-5d
-e5
-f9
-c1
-c7
-f5
-51
-a9
-8a
-32
-32
-2e
-0f
-54
+39
+3a
 c6
-60
-c3
-30
-cd
-57
-79
-36
-89
-89
-9e
-51
-41
-f9
-ef
-a3
-8f
+18
+72
+de
+61
+99
+09
+46
+7b
+a2
+ed
+75
+98
+52
+90
+ce
+56
 9a
-2b
-48
-29
-b0
-8c
-5a
+17
+43
+8b
+fa
+d8
+ec
+51
+a1
+bb
+90
+1b
+d5
+77
+ae
+cc
+09
+07
+e0
+17
+aa
 48
-20
-d6
-47
-73
-a3
-a0
+37
+8d
+19
+b1
+bc
+6f
+36
+cc
+12
 7e
-c1
-67
-04
-85
-b7
-0e
-0b
-5f
-a0
-74
+9c
+2c
+ab
+fb
+c2
+b1
+4f
+1b
+37
+b6
+ed
+e9
 a5
+c4
 3f
-05
-b2
-0d
-eb
-37
-a0
-44
-50
-d7
-6e
-07
-04
-8f
-f8
-a1
-31
-e4
-76
-0e
-b8
-4b
-df
-3a
-7d
-34
-60
 d6
-47
+75
 31
-32
-6c
-e3
-a7
-76
-ac
-db
-fc
-94
-df
-45
-a6
-34
-fe
-7f
+01
+36
 07
-7a
-64
-0a
-f3
-ce
-92
-89
-bf
-22
+ee
 21
-02
-fa
-55
-0f
-3b
-81
-c4
-20
-87
-27
-d1
-b1
-f1
-7f
 7d
-cd
-a3
-3e
-05
-6b
-2b
-dc
-15
-22
-42
-48
-58
-fc
-d1
-a5
-b8
-b0
-f6
-d3
-46
-d5
-42
-d0
 0a
-1a
-fb
-6e
-8f
-de
-17
-5f
-d2
-eb
-76
-42
-d6
-33
-24
-68
-ef
-8a
-21
-db
-ac
-35
-db
-8d
-ea
-ad
-d5
-32
-7f
-1d
-91
-32
-11
-ff
 45
-b3
+66
+e6
+f4
+2e
+34
+41
+91
+7d
+8c
+d1
+74
+23
+75
+40
 ee
-17
-3d
+5b
+cb
+af
+bb
+dd
+41
+33
+ee
+e1
 33
+62
+c6
+9d
+0a
+ce
+64
+f9
+61
+f8
+94
+ed
+44
+eb
+87
 b1
-b5
+f1
+75
+53
+0f
+66
+dc
+e3
+ed
+1e
+a9
+38
+c4
+69
+64
+da
+f0
+c0
+e6
+6d
+72
 10
-ce
+28
+72
+a3
 32
-7a
 0a
-dc
-df
-b5
-5d
-de
-f3
-8f
-3d
-06
+2f
+d6
+5f
+c5
+f1
+c1
+e4
+0b
+09
+0a
+7a
+33
+c2
+ac
+c7
+3f
+63
+2f
+74
+da
+71
+6e
+0d
+8d
+20
+63
+be
+78
+43
+18
+2c
+b0
 5e
-cd
-40
-41
+66
+cb
+9b
+9d
+59
+a2
+82
+aa
+0c
+17
+07
+18
+c3
+ad
+ce
+e9
+74
+07
+ca
 d1
-9c
-ef
-98
-68
-d7
-ab
-f8
-2e
-36
-5f
+3e
+a3
+13
+14
+a6
+db
+5b
+bc
+93
+f7
+c2
 4c
-ea
-e5
-58
 bc
-1f
-c7
-60
-04
+9b
+96
+15
+4d
+ab
+17
+9b
+85
+34
+97
 c4
-bc
-d5
-05
-42
-13
-92
-91
+5b
+6d
+59
 2a
-fc
-8d
-62
-27
-00
-9c
-69
-72
-7f
-8d
-4c
-bb
-60
-39
-cd
-30
-5f
-46
-e5
-c8
-4a
-f2
-2d
-9f
-9a
-58
-fd
-5f
-2b
+2a
+74
+6d
+3f
+20
 ea
-94
-a9
-c8
-75
-2d
-58
-c2
+8f
+fe
+00
+f8
+28
 b4
 92
-72
+51
 c8
-6b
-fc
-e9
-10
-e1
-a6
-b1
-14
-b0
-cd
-28
-46
-14
-9c
-6b
-18
-71
+62
+70
+d1
+02
+77
+f7
+a0
+b9
+a8
+ea
+9f
+d8
 c5
-39
+e6
+8b
+a1
+e8
+2e
+9c
+a1
+bc
+83
 da
-62
-6b
-0f
-b3
-82
-f1
+47
+3c
+4b
+8d
+9f
+46
+d1
+51
+5c
+d9
 31
-3b
-2a
-a9
-8f
-88
-7d
-06
-eb
-9a
-25
+e0
+b9
+a6
+a6
 11
-07
-51
-24
-9f
-60
-0e
-3a
-49
-0b
-7c
-0d
-2c
-1f
-71
-ce
-3f
-dd
-35
-83
-77
-e9
-c0
-20
-66
-6f
-8e
-08
-56
-64
-a9
-80
-68
-a7
+d0
+45
+74
+02
+cc
+42
+d9
+6a
+46
 15
-76
+88
+ee
+ca
+26
+e3
+f7
+b8
+a2
+f8
+de
+54
+56
+6e
+18
+d7
 d0
-bc
-9e
-fd
-dc
-fc
-7c
+1d
+b2
+04
 7b
-47
-bd
-3a
-ce
-d8
-c4
-cb
-ae
-ab
-0f
+1e
 25
-1a
-97
-09
-7f
-13
-d7
-37
-8a
+12
+36
 6f
-59
-49
-26
-b1
-7e
-7a
-05
-ac
-b9
-ae
-f0
-4d
-2b
-0d
-c0
-99
-dc
-52
-37
-dc
-42
-2b
+6b
+62
+ee
 69
-f8
-f3
-d8
-b9
-33
-48
-72
-d2
-87
-ca
-e6
-0f
-06
-c1
-da
-71
-6d
-2b
-0a
+e0
+31
+9e
+36
+cf
+f6
+1e
+bf
+e2
+10
+95
+0b
+09
+73
+95
 de
-6a
-38
-b1
-b5
-65
-24
-d4
+8e
+91
+ca
+d2
+41
+96
+d1
+ee
+5f
+e9
+4b
+43
+5f
+5c
+78
+47
 4d
-1a
+26
+87
+d0
+42
+6c
+04
+46
+67
 0c
+0a
 a2
-24
-26
-97
-e4
-a4
-88
-53
-8c
-da
-ad
-1f
-56
-05
-52
-7a
-8e
-e0
-b4
-2c
-e8
-13
-fe
-6f
-8e
-2d
-dd
-19
-e4
-11
-b4
-93
-a7
-b9
-86
-84
-0d
-ae
-69
-96
-b3
-3c
-62
-a7
-85
-71
-7f
-3a
-e1
-61
-1d
-71
-fb
-e1
-3d
-7d
+32
+cb
+60
+c4
 d5
-0f
-f0
-70
-1b
-b0
-f6
-b5
-15
-1c
-7c
-d4
-db
-91
+cd
+6b
+71
+3b
+bb
+9c
+17
+f3
+5a
+d7
+4b
+8d
+3b
+eb
+dd
+fc
+a9
 10
-27
-2b
-38
-ec
-bd
-42
-61
+a8
 eb
-9a
-2d
-36
-7a
-70
-0a
-42
-1a
-78
-3b
-8b
-4d
-e5
-43
-7a
-c2
-c1
-dc
-c5
-5c
-23
-e2
-83
-a6
-c5
-99
-1e
-55
-5d
-c9
-7d
-b3
+4c
+bb
+41
+ad
+3a
 c0
-ca
-b7
-da
-91
-e5
-4b
-e6
-55
-6f
-b8
-ec
-21
+cc
+ef
+60
+f4
 35
-92
+75
 78
-7f
+86
+84
+09
+28
+31
+b6
 a2
-f1
-79
-43
+a8
+3b
+58
+40
+f9
+a5
+84
+05
 e3
+f6
+ba
+94
+91
+65
+63
+1b
+c9
+36
 67
-cc
-fa
+c9
+aa
+16
+ab
 f2
-9d
-2f
-7d
-5c
-eb
-25
-c2
 0c
-44
+ec
+5a
+19
+42
+de
+83
+32
+65
 50
-09
-3a
-b5
-e8
-75
-a8
-82
-b0
-d3
-c6
-9f
-ac
+f7
+08
+71
+2c
+93
+70
 69
-56
-25
-a3
-c8
-8c
-bd
-c0
-29
-ba
-4b
-e2
-a3
+80
+91
 7f
-4a
-ce
-5f
-cd
-fc
-bf
-8b
-fd
-ce
-13
-f0
+63
+0b
+4e
+0f
+59
+a9
+b0
+7f
+22
 44
-70
-54
-ae
-1e
-d6
-7a
-7c
-ad
-8e
-c6
-24
 87
-63
-36
-f4
-b4
-ef
-9b
-76
-5e
-df
-f8
-8e
-44
-68
-ca
-4a
-24
-b1
-c2
+d9
+a9
+1a
+01
+fd
+84
+43
+39
+fb
 56
-24
-95
-78
-31
-ee
-9a
-7b
-29
+c8
+15
+70
+e6
+e0
+97
+ff
+73
+5b
+7c
+c4
+fc
+af
+a5
+be
+6c
+ab
+1f
 c0
-f8
-2b
-b1
-49
-53
-74
-78
-3b
-fd
-ea
-08
-67
-5c
-38
-50
-42
-b7
-83
-79
+e8
+4f
+b0
+be
+26
+64
+d4
+ec
 2f
-8c
-19
-85
-a4
-ee
-3b
-3f
-6a
-47
-d9
-a2
-a9
-6e
-9b
-f5
-e9
-9d
-8c
-fa
-72
-1e
-1b
-e9
-e4
-cd
 a3
-18
-9b
-ac
-87
-55
-8c
-df
-ee
-89
-2a
+50
+e6
+16
+24
+32
+17
+43
+de
+72
 3d
-e2
-67
-f6
-09
-f9
-1c
-f5
-36
-b2
-8c
-a8
-df
-af
-07
-66
-02
-82
-78
-d7
+d4
+53
+26
+84
+b9
+0b
+da
+45
+0f
+4e
+eb
+5e
+79
+3c
 2b
-5c
-10
+81
+b9
+08
+14
+49
+ea
+d9
+fe
+a0
 7c
-00
-f5
-f1
-2f
-9b
-f5
-ec
-b2
-9a
-5b
-5e
-84
-dc
-c3
-44
-64
-7b
-ba
-43
-e1
-37
-40
-5c
-7b
-9c
-16
-a6
-19
-15
-7d
-48
-6e
-a6
+99
+ef
+d3
+ee
+73
+ab
 1a
+5f
+81
+29
+65
 32
-df
-06
+05
+33
+e9
+b0
+fe
+5f
+ad
+cc
+36
+5a
+0c
+f4
+c5
+40
+1d
+ed
+1d
+e4
+c2
 bd
-55
-e7
-d7
-7a
-f5
-d0
-eb
 c8
-1c
-64
-7f
+c4
 7d
 68
+de
+2a
+ad
+13
+b8
 77
-c7
-a7
-8a
-7c
-45
-b1
-6d
-ac
-b9
-77
-70
-c6
-b1
-be
-df
-be
-26
-0e
-c9
-45
-d7
-42
-9c
-0e
-5b
-6d
-43
-5d
-34
-e5
-f2
-ad
-f2
-fc
-d2
-3f
-b5
-20
-e0
-60
-1e
-dd
-37
-7f
-c6
-b6
+e4
+db
+f0
+e1
+6a
+48
+b2
+ff
+79
+1b
+7b
 81
-56
-73
-24
-d7
-a2
-a7
-80
-98
-d6
-40
+97
+59
+7d
 5c
-06
+8b
+13
 c3
-77
-4e
-ea
+47
+43
+c4
+ed
+a3
+2a
+a5
+5c
 45
-63
-4d
-b8
-0a
-12
-e5
-88
-54
-52
+b0
+ee
+ba
+2c
+4e
+49
+2b
+36
+34
 c3
-b3
+20
+64
+78
+fe
 59
-49
-a3
-87
-26
+79
+70
+73
 83
-40
-9e
-8f
-39
-fb
-80
-7b
-f7
-de
-05
-c3
-69
-7f
-11
-5f
-8f
+1e
+63
+35
+3a
+c8
+ea
+d5
+da
+0b
+7a
+c4
 23
-66
-d3
-42
-1f
 98
-ae
-a2
-40
-06
-2a
-26
-22
-eb
+fd
+a1
+e8
 19
-42
-9e
-0f
-86
-59
-47
-a4
+fc
+cf
+c6
+b4
 24
-de
-ae
-7a
-99
-a4
-73
-d0
-b3
-ab
-6f
-fb
+78
+5f
+2c
+be
+93
+fd
+24
+07
+81
+44
+66
+d9
+96
+aa
+b6
+64
+c2
+70
+b1
+11
+20
+0d
+0b
+2f
+d4
+d7
+06
+3b
+a6
+fc
+44
+18
 4a
-6f
-73
-de
-f4
-7e
-92
-57
-ba
-b3
+f6
+cb
+b9
+27
+e5
+a9
+ec
+d1
+0e
+33
+49
+c4
+7a
 81
-42
-02
-79
-07
-55
+1a
+c1
+8e
+b7
+1a
 37
-15
-3d
-68
-2a
-d6
-af
+0c
+aa
+f9
+1b
+65
+e7
+24
+da
+76
+9d
+46
+45
+f7
+38
 14
-b0
-00
-77
-42
-e1
-7c
-af
-b6
-5b
-fa
-ab
-89
-9f
-c6
-1f
-7e
-06
-47
-dd
-bf
-e9
-7c
-e2
 b4
+e0
+b7
+99
+ac
+ab
+16
+61
+ca
+cf
+9d
+2b
+53
+61
+c2
+18
+ff
+3a
+fb
+17
+3a
+7f
+13
+ce
+7b
+38
 b0
+03
+26
+c2
+4e
+ce
+47
+bd
+87
+76
+71
+13
+64
+40
+bc
+09
+52
+2c
+8d
+6e
+73
+cb
 41
-af
+4e
 1e
-45
-ca
-35
-34
-c5
-69
-56
-96
-79
+b0
+a9
+f6
+ce
+1a
+df
+2a
 71
-5b
-9d
+41
 06
 fa
-d7
-48
+ce
+f5
+86
 7e
-1d
-1d
-40
-b8
-67
-6b
-4d
-69
-ca
-3c
-c0
-94
-49
+99
+71
+55
+14
+59
+59
+48
+da
+9d
 ba
-d4
-c8
-32
-8e
-68
-e1
-ec
-e4
-d9
+7a
+27
 8a
-ac
-65
-a2
-95
-c6
-1f
-bd
-39
-48
-7e
-ff
-52
-2f
-4c
-d3
-c0
+b6
+0b
+4f
+07
+23
+f5
+a4
+fc
 c2
-7c
-63
-d8
-65
-cd
-cf
-54
-d2
-70
-40
-94
-fb
-71
-3d
-01
-93
-c8
-43
-85
-d2
-6f
-3e
-03
-e0
-1c
-44
-7b
-6f
-9b
-ca
-d1
-66
-aa
-0e
-90
-81
-6a
-a5
-b0
-b8
-65
-8f
-be
 a2
-3f
-f2
+87
 b3
-fc
-4f
-ad
-da
-02
-73
+40
+e4
+6b
+75
+14
+38
+d3
 ff
-f9
-e9
-a2
-81
-f8
-4d
-85
-c9
-17
-61
-12
+1d
+23
+bc
 45
-aa
-f6
+2a
+d1
+d5
+e2
 da
-f6
-1a
-44
-1c
-f7
-21
-62
+a5
+87
+3d
+39
+7d
+ba
 bb
-81
-ae
-26
-81
-e6
-b2
-1b
-12
-fb
-c1
 ef
-c0
-ba
-63
-f4
-d2
-43
-c9
-f8
-37
-3e
-79
-c3
-fd
-7b
-b1
-57
-77
-8e
-cf
-1b
-5a
-02
-86
-7f
-a5
-2f
+0d
+5b
+c2
+f2
+42
 03
-36
-70
-84
-ed
-5c
-af
-54
-0a
-08
-99
-57
-b7
-1a
-4e
-a3
-c0
-14
-10
-e0
-b6
-10
-33
-a2
-6c
-9b
-f5
-b5
-7a
-1f
-83
-b2
-7a
-7b
-54
-46
-f3
-7f
-0c
-d7
-0b
-00
-37
+48
+d9
+31
+88
+8a
 c9
-14
-7a
-e3
-59
-5a
-c1
-9e
-77
-ab
-f6
-33
-7b
-2d
-b9
-d3
-9d
+c2
+38
+2a
 c7
-48
-4d
-ea
-9a
+c9
 8d
-3a
-18
-4d
-c6
-8e
-af
-24
-4a
-56
-db
-09
-0e
-0a
-55
-73
-5f
-fd
-e7
 58
-f2
-c7
-10
-45
-c6
-a7
-8c
+30
 10
+3d
 f2
-42
-cb
-20
-33
-9f
-17
-64
-75
-d1
-b3
-b3
-c3
-3a
-f7
-7d
-f0
-ab
-ed
-f5
-60
-e7
-57
-3c
-3c
-42
-0d
-6c
-cd
-73
-52
-d0
-45
-b9
-13
-a8
-52
-2b
-bd
-ed
+5b
+79
 4b
-22
-a3
-ad
-bf
-4c
-61
+e2
+8f
+2c
+76
+74
+13
+89
+9a
+cc
+71
+07
+20
 59
-22
-96
-7d
-cb
-c0
-7d
-38
-79
-2f
-fe
-52
-fd
-1d
-e0
-01
-12
+59
+ce
+a9
+d6
+1b
+8d
+cf
+c5
+48
+10
+04
+88
+de
+81
+86
+de
+6b
+09
+15
+67
+50
+8f
+a2
+67
+08
+76
+4c
+7a
+4b
+a2
+d8
 cc
-36
-54
-2a
-d0
-f8
+77
+31
+00
+41
+65
 b5
-53
-88
-2e
+cc
+af
+96
+a0
+a9
+09
+12
 0b
-48
+ad
+ca
+06
+d7
+e8
+34
+b7
 d4
-1e
-64
-00
-db
-7b
-9c
-f8
-94
-ca
-d1
-e4
-c2
-2f
-00
-c9
-91
-d1
-ca
-56
-15
-6c
-f3
-9c
-1f
-51
-69
-00
-6f
-58
-8a
-3c
-9e
-84
-9b
-bc
-fb
-67
-8a
-48
-4a
-b1
-2f
-d0
-01
-b7
-d9
+a6
+05
+2d
+da
+5f
+40
+7e
+2d
+13
+0c
+20
+d8
+25
 17
-86
-52
+6a
+df
 04
-24
-6c
-9c
-71
-21
-62
-72
-ac
-2b
-8a
 c5
+04
+d8
+dd
+19
 58
-d2
-39
-97
-26
-89
-46
-4f
-cc
-e0
-60
-c3
-21
-0b
-fa
-fc
-87
-c8
-5a
-cc
-9b
-b6
-1d
-51
-06
-6a
-12
+68
+ff
+55
+66
+2c
+bc
+a1
 0e
-e0
-69
-e4
-e1
-c6
 fc
-7d
-8c
-04
+e9
+f1
+63
+b9
+41
+3c
+7e
+55
+5e
+03
+75
+e6
+1b
+30
+38
+eb
 97
-8b
-d4
-9b
-47
-8f
-3e
-a4
+93
+96
 6c
+64
+03
+6f
+70
+50
+dd
 2f
-f3
-a7
-06
-9c
-31
-73
-ef
-8e
-e8
-b0
+cd
+53
+8f
+61
+91
+e6
+86
+53
+81
+6e
+0c
+55
+7f
 09
-2f
-9b
-57
+cb
+eb
+c0
+87
+af
+32
+bf
 2c
-49
-ee
-cf
-4c
-71
-16
-2a
-21
-e1
+c8
+bc
+f2
+8e
+f0
+8c
+72
+2d
+6c
+52
+24
+72
+b8
 15
-31
-a4
-7a
-e5
-ca
+d4
+64
+9e
+6b
+74
+da
+c3
+ed
+c6
 c1
-d9
-70
-ec
-b5
-d8
-68
-19
-49
-35
+30
+cc
+73
+e0
+64
+ee
+25
+10
+3b
+76
 77
-f4
-4f
+14
+93
+ec
+4b
+40
+3c
+20
 7b
-e0
-49
-a8
+6d
+25
 7c
-60
-47
-c1
-eb
-c7
-b5
-62
-10
-b9
-67
-fb
-95
+f2
+af
+2f
+43
+ef
+1b
 f9
-d4
-b0
-2d
-8f
-79
-a5
-11
-5c
-3d
-2b
-df
-e6
-6e
-c3
-59
+dc
+25
+9d
+82
+25
+fb
+e2
+ee
+cb
+6d
+e2
+72
+67
+98
+36
+52
 34
-7b
-4e
-48
-05
-6f
-af
-d0
-08
-94
-0e
+f5
+89
+02
+c3
+b2
+61
+d9
 93
-3d
-49
-55
-41
-2e
-0e
-b3
-ec
+cb
+8e
+f6
+43
+40
+d6
+21
+e7
+d3
+9f
+39
+0b
+e5
+ff
+c0
+eb
+ef
+4e
 b4
-aa
-7f
+e7
+0e
+9c
+40
+f4
+7e
+e6
+f9
 3b
-2f
-fd
-08
-c9
-61
-62
-18
+35
 e0
-3e
-21
-49
-26
-de
-bc
-91
-7f
-5a
-4e
-e9
-44
-cc
 a6
-cf
-12
-49
-0b
-15
-7a
-c4
-c7
-eb
-71
-ca
+b7
+05
+7d
+ff
+3b
+a4
 5f
-8f
-78
-52
-85
+84
+27
+a9
+c2
+83
+c1
 a0
-fc
-77
+b7
+a7
+6a
+69
+48
+93
+f8
+6b
+c2
+37
+32
+16
 13
-ae
-91
-0e
-1f
-79
-03
-3c
+8b
+9d
 b7
-d1
-94
-65
-71
-f5
+cc
 7d
-7c
-00
-c3
-ac
-08
-d4
-b0
-a7
-01
-54
-2b
-10
-0e
-3d
-89
-6d
+19
 fc
-23
-7b
-f0
-e6
-56
-d1
+1b
+6b
 9d
-4f
-40
-c2
-77
+8c
+e6
+98
+ee
+ab
 c2
-4a
-3d
-75
-82
+be
 43
+8d
+15
+11
+0c
+d5
+04
+da
+e6
 f7
-28
-f7
-e8
-6b
-df
-a4
-47
-2c
-9a
-ab
+67
+9b
+f8
+49
 2a
-66
-26
-c2
+2c
+f4
 0d
-fc
-96
-42
-f7
-8a
-d8
-27
+d3
+15
+10
+89
+c9
+70
+51
+6c
 62
-e7
-aa
-e6
-1b
-db
-53
-ff
-80
-64
-90
-ee
-3a
-36
-10
-40
-24
-c2
-1f
-91
-96
-b4
-45
-57
-81
-19
-cf
-b5
+8a
+dc
+74
+a0
+af
+fe
+e3
+2a
+ef
+2a
 96
-45
-07
-12
-84
-ac
-7a
-67
-71
-a9
-8e
-41
-ad
+7f
 95
-e4
-e9
-ed
-1c
-13
-79
-64
-4b
-2c
-bd
-df
-6f
-ed
-12
-19
-ba
-35
-6a
-91
-ab
-e9
-f8
-7d
-34
-1d
-a3
-cb
-97
-c0
-ff
-87
-42
+16
+c7
+b9
+3d
+bc
+33
+ae
+30
 b4
-72
-99
-0e
-a7
-11
-9a
-43
-23
-89
-6d
-5e
-a0
-60
-6c
-3b
-c0
-59
+d5
+0a
+c6
+24
+7e
+c6
+1a
 bf
-48
-b1
-10
-f0
-4c
-49
-5a
-82
-b6
-70
-65
-be
-49
-f8
-aa
-9d
-8f
-c9
-98
-6e
-98
-8c
-b6
-ae
-aa
-1c
-7f
-d6
-71
-20
-f2
-3e
-7b
-63
-57
-15
-d3
-49
-b2
-cd
-94
-0c
-97
-77
-80
+85
+d1
 47
+c4
+40
+a3
+4a
+1f
 8a
-e6
-62
-7c
-ec
-11
-c3
-b0
-e7
-2e
-4e
-fb
-15
-9b
-44
+68
+5e
+f7
+da
 b0
-9b
-a6
-63
-a5
-b3
-a4
-81
-c0
-e9
-ca
-0b
-9c
-61
-32
-90
-9b
-76
-14
+ee
+f1
+5f
+ce
+2b
+66
 d9
+a1
+53
+db
+7a
+9d
+a1
+31
+39
+d0
 e8
-20
-ba
-fe
 6a
-85
+ab
+f1
+5c
+35
+45
+66
+da
+25
+32
+f4
+74
+95
+39
+dd
+38
+33
+eb
+c6
+6b
+6c
+00
+8e
+b8
+4c
+80
 1d
-09
-9c
-71
-10
-d8
-79
-92
-d0
-ef
+c1
+47
+ed
 76
-06
+4c
+56
+b8
+92
+a8
+25
+92
+cd
 9b
+78
+e1
+d2
+b2
+dc
+f2
+b1
+59
+f4
+13
 fa
-a9
-3f
-99
+1e
+34
+05
+2e
+00
+37
 c7
-ba
-d1
-a3
-1c
-bb
-eb
-84
-cf
-72
-ca
-da
-fe
-36
-45
-ca
-26
-63
-e4
+b4
+48
+4d
+2a
+b8
+2f
+85
+8d
+de
+2d
+22
+69
+e8
+fc
+13
+e6
+db
 d5
-33
-6d
-73
+36
 07
-a9
-25
-b6
-4e
-6f
-9a
-1b
-3e
-80
-e9
-28
-96
-c9
-32
+4c
+9c
+fb
+86
+a5
+50
+1f
 64
-70
-fd
-df
-c5
-b9
-e5
-e0
-e6
+55
+80
+67
 e3
-9b
-99
-ef
-e9
-e0
-96
-4e
-59
-bb
-82
-18
-73
-2b
-c3
-64
-b4
-6c
-fa
-3b
-47
-aa
-93
-75
-58
-00
-43
-aa
-fe
+17
+46
+60
+fd
+db
 fe
-a3
-8d
-64
+2f
+35
+27
+65
+c7
+45
+7b
+96
+bd
+05
+16
+7c
+e0
+60
+a8
+89
+05
 96
-82
-29
-48
-7d
-1c
-ec
-cb
-0c
-f2
-29
-8a
-81
-dc
-5a
-61
-da
-db
-50
 76
-d5
-dc
-a9
-f8
-ac
-fa
-3b
+26
+97
+2d
+8e
+07
+b7
+44
+f6
+93
+b7
 f9
-d2
-27
-2a
-d3
-47
-a5
-8d
-be
-54
-2a
-c9
-c7
-66
+2e
+e3
+25
+6e
+70
 47
-e1
-8f
-ef
-84
-85
-aa
-1e
-de
-94
-4b
-92
-8e
-2a
 9f
-35
-e5
-86
-c8
-a1
-43
-a9
+29
+a6
+cb
+31
 ba
-14
-36
-40
-59
-0b
-73
+ab
+3b
 df
-8e
+14
+e7
+7b
+44
+99
+ba
+45
+74
 0b
-d2
-09
-ee
-c3
-ce
-80
+f2
+69
 16
-34
-9d
+b5
 d2
-12
-d0
+11
+58
+d5
+af
+47
+08
+86
+a4
 d3
-a7
-d8
+f3
+6a
+e6
+b5
+20
+78
+61
+47
 cc
-27
-45
-a4
+db
+e2
+48
+ed
+e0
+b4
 4c
+0c
+8a
+9b
+7f
+6a
+e9
+4b
+85
+0c
+a8
+d7
+f8
+e5
+51
+0f
+66
+d6
+04
+08
+fc
+d6
+f6
+2c
+89
+3f
+06
+44
+08
+e0
+47
 fa
-81
-21
-9c
-fb
+ce
+b0
+63
+24
+8b
+0a
+26
+7a
 75
+1e
+0e
+71
+bc
+4b
+0f
+9b
+f7
+23
+5b
+04
+d5
+fa
+c9
+b7
+ff
+79
+3f
+d4
+30
+d9
+ec
+83
+af
+c6
+8a
+bd
+df
+9d
+3c
+47
+c6
+ef
+b5
+31
+56
+00
+f9
+88
+35
+1b
+b6
+70
+bb
+f8
+52
 5e
-18
+1f
+68
+e0
+d5
+2b
+54
+6b
+b5
+1a
+cb
 b8
-4d
-6c
-77
-82
-32
-55
-59
-98
-26
-81
-13
-a2
 1d
-e6
-3b
-f6
+24
+6b
+03
+85
+7e
+f9
+e1
+aa
+54
+48
+dc
 39
-6f
-a2
-ec
-92
-34
-9c
-08
-43
-d9
+be
 71
-69
-7e
-24
-af
-e3
-25
-a5
-90
-b8
-a5
-f5
-79
+e7
+9e
+4b
+7c
+92
+91
+22
 84
-e9
-6e
-09
-cc
-99
-2d
-bd
-a0
-3e
-1e
-05
-c7
-9a
-f0
-df
-1a
-f1
+0c
+fb
 41
-19
-8b
-30
-b4
+d0
+3f
+b1
+cb
 eb
-6f
-e5
-87
-15
-ac
-ea
+62
+59
+d3
+eb
+44
+b3
+09
+b7
+e6
+a5
+7c
+5f
+4d
+9a
+bd
+4e
 c2
+ad
+5b
+89
 81
-f4
-a9
-4f
-82
-46
-09
-8f
-dc
-4f
-23
-46
-72
-e8
-c3
-e3
-2a
-82
-b6
-d6
-9e
-f6
-93
-80
-b3
-c6
-02
-16
-ab
-12
-f8
-f9
-43
-52
-9f
-b6
-5f
-a2
-71
-df
-40
-29
-e3
-e3
-40
-4f
-b0
-eb
-3b
 36
-aa
-17
-f6
-c8
-98
 f3
-37
-73
-a6
-ab
+de
+70
+fc
+0a
+da
+89
+ff
+ec
+de
+41
+6f
+ba
+55
+53
 3c
-97
-8e
-7c
-27
+45
+55
+36
+18
+6b
+bc
+fe
+11
+08
+33
+5d
+2d
+b1
+09
 f2
-a0
-22
-85
-10
-29
-e0
+49
+62
+11
+18
+6b
+e4
+ff
+33
+b5
 3a
-ad
-4a
-08
-e3
+d3
+76
+58
+ec
+8a
 17
-89
-2d
-5a
-34
-93
-ac
+b7
+9b
+63
+33
+77
+59
+80
+58
 be
-7c
+db
 12
-cc
-ed
-0a
+8d
+82
+db
+92
 fa
-be
-52
-80
-23
-1f
-27
-a4
-ba
-54
-61
-2b
-a6
-77
+d2
+92
 bf
-f5
-f7
-0f
-8c
-3b
-80
-68
-b3
-64
-28
-a6
-0e
-99
-b6
+1e
+62
+be
+7b
+63
+43
 09
-c5
+3a
+d9
+e3
+dc
+b1
+a5
 16
+69
+2d
+bb
+4e
+a9
+52
+6a
+49
+a5
+a0
 39
-e9
+df
+b7
+b3
+18
+5a
+77
+47
+19
+de
+44
+4c
+31
+27
+03
+4e
+39
+dc
+58
+85
+64
+bc
+85
+dc
+bf
+de
 bd
-15
-02
+a0
+17
+87
+d3
+d9
+9b
 20
-24
+66
+37
+1d
+c9
+d0
+eb
+f9
+5a
+77
+d4
+76
+c6
+8b
+bc
+85
+97
+c1
+d3
+ff
+f0
+70
+22
+64
+6d
+e2
+b6
+ad
+29
+5a
+0a
+2a
+9a
 a8
+68
+6a
+3e
+28
+9f
+81
+90
+ff
+b6
+37
+6e
+3f
+fc
+0d
+9f
+75
+bc
 f2
-30
-c0
-39
-f3
-47
-e6
-5e
-16
-c7
-69
-79
-cc
-50
+b5
+fd
+bf
+f4
+81
+4c
+19
+86
+e9
 b6
-88
-6b
+c0
+20
+7e
+6c
+b9
+7e
+f1
+09
+9d
+66
+d0
+18
 8c
-75
-36
-b8
-11
+59
+d3
 4b
-16
-ed
-1a
-fc
-ee
-58
-51
+45
+66
+0d
+db
+18
+84
+64
+0f
+b0
+6f
+44
+a4
+ab
+5d
+c1
 cf
-d7
-11
-78
-d5
-96
-32
-15
+7d
+ee
+d9
+ea
+ab
+a4
+59
 04
-c1
-31
-3d
-32
+1d
+6a
+6d
+f5
+65
+9c
+14
+73
+3c
+c5
+18
+1b
 5a
-2c
-35
-66
-ed
-63
-2e
-64
-31
-56
-72
-d5
-ce
-0b
-80
+74
+78
+0f
 69
-ce
-08
-72
-60
-3e
-83
-42
-f9
-7e
-e0
-bd
-c4
-1b
-54
-e9
-81
-b8
-ef
-03
-30
-a6
-70
-90
-97
-08
-10
+12
+bb
+6e
+88
+d7
+95
+62
+de
+79
+09
 be
-3e
-51
-d5
-56
-1b
-b4
-f7
-a6
-9c
-33
-ce
-ec
-9d
-b9
-0a
-19
-56
-d8
-85
-08
+a1
+eb
+5d
+7f
 72
-e5
-ef
-7d
-30
-5e
-3b
-5f
-58
-8c
-ad
-3e
+c9
+a7
+fe
+29
 fd
-6f
-d5
-f1
-7d
-11
-f5
+f8
+15
+70
+47
+a2
 12
-9d
+9b
+74
+31
 06
-ea
-b2
-b2
-05
-a2
-fc
-88
-01
-1b
-a5
-b1
-55
-07
-7d
-4f
+99
+d7
+ed
+78
 61
-64
-2c
-b4
-fd
-e4
-b2
+d1
+21
+87
+19
+c6
+2e
+a5
+24
+34
+d7
 22
-e5
-d3
-ab
-a2
-b2
-eb
-93
-28
-35
-b7
-7a
-ca
-d0
-dc
+1d
+c7
 23
-ef
-d9
-24
-18
-d6
-f1
-be
-da
-6b
-7d
-4b
-35
+68
+42
+b3
+ba
+c8
+50
+ae
+25
+ae
+cc
+c0
+b9
+28
+48
+a4
+21
+07
+bd
+6a
+88
+d8
+3c
 6d
-2d
+9e
+2a
+29
+8f
+f1
+3d
+f7
+b6
 5f
+41
+20
+be
+7f
+b8
+62
+f1
+df
+a6
+e4
 18
-ad
+9e
+3d
+7a
+98
 a7
-0a
-24
-d4
-4a
+89
+83
+6d
+c8
+c4
+eb
+e8
+3d
+eb
+7d
+58
 b7
-bc
-8b
-4e
-c2
-75
-5a
 be
-bf
+7e
+45
+99
+f1
+b4
+26
+e9
+64
+b2
+1a
+73
+8c
+82
+e0
+07
+e8
+da
 f0
-d8
-6b
-05
-5e
-9c
-40
-06
+c0
+c9
 cf
-16
-b7
 b9
-3a
-2e
+8f
+9c
+1e
+30
+fc
+d2
+d0
+7e
+56
+20
 4f
-7f
-c5
-bc
+8d
+6a
+33
+bb
+d5
+5c
+4d
+7d
+82
+08
+de
+27
 2a
-59
-e9
-89
-74
-94
-ee
-79
-d7
-49
-3d
-71
-95
-1a
-ce
-9b
-7b
-e9
+2c
+b7
+73
+85
+26
+76
+19
+f7
+2d
+6b
 64
-3b
-44
-7a
-3b
-b1
+18
+25
+91
+b3
+93
+49
+18
+a9
+b0
+60
+f6
+28
+de
 8a
-1c
-80
-22
-75
-b6
-d6
-59
-6f
-a7
-5e
-ca
-33
+82
 e3
-56
-98
-29
-c6
-3e
-70
-97
-cc
-9f
-2e
-8f
-4d
-a1
-4d
-7c
-a1
-c6
-b4
-99
+50
+ab
+27
+bf
+3b
+b7
+d3
+57
 d0
-d2
-f7
-e3
-ec
-8b
-4e
+24
+a3
+e7
+fa
+a3
+e1
+7f
+19
 a5
-90
-02
-b3
-fe
-95
-16
-81
-23
-3a
-eb
-43
-0b
-f3
-59
-34
-09
-b1
-4b
-39
-67
-2a
-d7
-26
-29
-6d
-a1
-f4
+2f
 ab
-a8
-5f
-05
-98
-17
-35
-56
-4d
-72
-41
-c2
-d5
-84
-91
-72
-40
-d9
-aa
+e4
 69
-8d
-f8
+69
+b7
+79
+75
 76
+2a
+92
+03
+b5
+13
+9e
+f0
+49
+11
+ef
+c9
+5b
+ce
+63
+04
+f4
+dd
+a4
+94
+22
+dc
+dd
+2a
+b5
+c6
+d4
+97
+98
+7d
+d3
+54
+3c
+45
+a4
+54
+fc
+9e
+a3
+09
+ed
 40
 c6
-c1
-9c
+7d
+1a
+22
+f0
+cd
+9a
+a8
+2b
+6a
+01
 2e
-37
-d2
-3e
+73
+e5
+41
+9f
+7c
+8f
+ae
+b4
+b6
+94
+f0
+fd
 df
-ce
-c4
-a2
-84
+f8
+70
 79
-db
-10
-37
-f3
-8d
-7e
-f4
-e1
-fa
-0d
-c5
-a9
+ba
+59
+92
+c9
 9b
-13
-c0
-ef
-70
+e5
+90
+b0
+5c
+49
+dc
+dc
+d0
+23
+99
+aa
+83
+f6
 72
-7f
-e4
-8f
-1f
-d9
-4f
-48
-86
-4b
-1f
-75
-5b
-66
-a3
+a0
+f6
+01
+c5
+f3
 2e
-5b
-ce
-de
-c3
-c8
-45
+2d
+e3
+80
+ad
+26
+4d
+48
+e5
+e3
+69
+46
 bb
-a5
-11
-d0
-58
-f9
-d0
-55
-68
-9b
-5b
-6d
-3c
-4c
-14
+18
+26
+49
+47
+1a
+49
+bb
+43
 e1
-a7
-cb
-93
-5c
-5d
-ee
-65
-f7
+78
+18
+e2
+a2
 dc
-86
-89
-dd
-d9
-87
-96
-00
-64
-bc
-3e
-7a
-15
-70
-24
-37
-09
+6a
+da
+49
+b7
+74
+da
+94
+9c
+0e
+bb
+72
+8e
 1d
-c1
-ab
+d0
+0e
+99
+2b
+6f
+9e
+6f
+76
+c7
+fd
+fa
+9a
 be
+9f
+ff
+5c
 f9
-2f
-4b
-d5
-38
-bc
-a1
-fb
-06
-58
-7b
-89
-e0
-45
-f4
-d7
-68
-33
-2a
-e6
-82
-30
-a9
-53
-89
-63
-eb
-a1
-d0
-44
-d6
-88
-d9
-9c
-36
-db
-9c
-f2
-8a
-69
-a6
-02
-9c
-70
-a4
-18
-03
-bf
-1c
-7a
-99
-0c
-c9
 16
-0b
-f8
-24
-f3
-e7
-42
-3f
-ce
-ea
-e1
-73
-09
-a5
-1d
-f9
-aa
+18
+a8
+51
+64
+b0
+84
 23
-25
-45
-c3
-b6
-ae
-05
-44
-00
-50
-2b
-cd
-57
-cf
 1b
-13
-b0
-ec
+27
+f1
+14
+31
+b9
+d0
+ad
+f6
+48
+d5
+72
+15
+d0
+ea
+21
+99
+71
+68
+ba
 f9
-8d
-ee
-45
-9b
-00
-ef
-c1
-ae
-0f
-9c
-2a
-2d
-e2
-22
-cf
-b8
-7e
+cc
+5c
+79
+62
+a7
+07
 57
-73
-6a
-9e
-be
-02
-0f
-30
-ba
-ee
-93
-42
-05
-23
-86
-65
-03
-bb
-58
 80
-70
-73
-d4
-9e
-9d
-1f
-b6
-a8
-f3
-dd
+ce
 7e
-aa
+79
+63
 f0
-0f
-c0
-2e
-e5
-b3
-81
-fe
-52
-89
-54
-07
-f4
-ba
-cf
-c3
-3e
-5c
-f1
+a8
+7c
 8b
-49
-d2
-32
-92
-7a
-16
-5d
-84
-b5
-4e
-f8
-1e
+bb
 b2
-5b
-ae
-96
-e1
-ac
-6e
-90
+31
+a7
+59
+97
+a8
+e8
 af
-61
-95
-46
-32
-f4
-9c
-fd
-47
-e4
-3a
-98
-db
-71
-ca
+b8
 e6
+4f
+2f
+ba
+4f
+9f
+64
+6e
+0c
+71
+bf
+cb
 07
-9d
-27
-c9
-c6
-6b
-c5
+9a
+8d
+4e
+89
+8b
+9e
 08
-27
-2d
-b1
-79
-e4
-46
-d8
-64
-e1
-50
-6c
+ee
+cb
 2a
-f0
-2c
-7f
-a3
-e2
-0d
-01
-99
-6b
-c3
-eb
-77
-8b
-ab
-80
-45
+8c
+50
+08
+f7
+53
+07
+30
+38
+ac
+a7
+a8
+82
+cd
+cc
+1b
+40
+d4
+53
+bd
+d3
+2e
+bb
+4d
+91
+19
+f6
+b5
+b6
+a4
+08
+1a
+e6
+05
+35
+46
 d6
-63
-25
+86
+ff
+1e
+91
+42
+51
+7c
+64
+e5
+d6
+f8
+93
+2a
+f4
+8e
+93
 f2
-c7
-54
-3c
+38
+9d
+2c
 58
-18
-67
-d4
-7c
-81
-1f
-63
-db
-e7
-55
-6c
+96
+c7
+ce
+5b
 e5
-b3
-bc
-4a
-26
-23
-8f
-97
-3e
-8c
-21
-1b
+b5
+f0
+6a
+bf
+ee
 a5
-29
-dd
-a4
-e0
-db
-29
+2a
+f2
+a9
+3a
+3e
+d6
+59
 ec
-3f
-04
-7f
-45
-e3
-71
-c4
-fd
-6b
-76
-7e
+6f
 9a
-b0
-2b
-d3
+7d
+d0
+bb
+48
+96
+12
+2f
+bc
+f0
+97
+74
+25
+f0
+48
 e9
-c7
-bf
-da
+5a
+16
+a0
+cd
+37
+db
+ef
+ad
+50
+88
+d0
+48
 0a
-4c
-5d
-6f
-af
-28
-73
+3a
+1f
+e9
+6e
+15
+0f
+0e
+c0
+6a
 9f
-2a
-17
-ae
-9a
-67
-62
-a9
-56
-2a
-cd
-f3
-20
-24
-fa
-30
-84
-3f
+82
+e0
+83
+50
+77
+90
+0d
+14
+86
+ef
+1e
+21
+b2
+41
+54
+a0
 6b
-23
-3f
-00
-4a
+3d
+b2
+c0
+9e
+6e
+49
+e4
+a3
+de
+42
 f2
-b0
-04
-e1
+e3
+7f
+d0
+83
+e4
+32
+30
+ee
 43
-1f
-da
-84
-7a
+2f
+17
+8a
+a3
+e5
+a9
+ea
+ff
+7f
+5d
+49
+90
+4a
 75
-e0
-e7
-6b
-d5
-6f
+e2
 81
-4c
-1a
-bb
-36
-14
-d0
-3d
-93
-5b
-b1
-7e
-73
-28
-91
-f1
-0f
-f9
-65
-ee
-fc
-e8
-c6
-d3
-97
-5b
-69
-b2
-98
-2b
-96
-9c
-a6
-06
-1c
-56
+af
+7b
+58
+25
 a1
-7a
-38
-71
-1a
-ff
-28
-ad
-79
-23
-c8
-33
-bd
-9f
+eb
+aa
 d8
-6e
+b1
+5c
+1d
+8d
+b8
+ac
+54
 da
-27
-bc
+a2
+ad
+5d
+38
+09
+84
+5d
+ef
+5e
+e8
+dd
+59
+35
+9b
+12
+e7
+3a
+85
+5c
+72
+b1
 80
-4a
-ca
-7b
-f9
+f8
+78
+b0
+7d
+32
+23
+5d
+f3
+3e
+b4
+e3
+dc
+8c
+92
+ad
+38
+00
+36
+05
 6c
-2e
-e0
+10
+83
+14
+e8
+83
+70
+12
+83
 0b
-98
-88
-16
-37
-e7
+75
+ca
+7c
 16
+fd
+06
+2f
+85
+b2
+54
+ce
+25
+53
 d6
-f4
-9b
-9d
-18
-c5
-c7
-d4
-9e
-8f
-d6
-f8
-9d
-32
-ff
-8f
-cc
-6c
-9e
-c4
-64
-9a
-02
-b1
-b3
-61
-40
-b0
-99
 90
-e0
-eb
-e4
-2f
-8e
-39
-67
-a1
-65
 e7
-be
-2a
-01
-a8
-b5
-77
-1f
-00
-42
-90
-f3
-ff
 fb
-f2
-be
-07
-c7
-72
-27
+71
+a0
+fa
+a1
+98
+f8
+60
+39
+98
+cc
+d2
+cb
+65
 6a
-33
+44
+59
+21
 f6
-35
-9a
-fd
-91
-45
-be
-32
-bc
-a4
 78
-14
-b6
-90
-a1
-95
-a8
-2d
-4c
-9d
+f1
+63
+f8
 c4
-3f
-15
-87
-88
-3a
-3c
-09
-a3
-15
-56
-90
-f7
-17
+0d
+b8
+99
+74
+f3
+bd
+a9
+45
+c9
+d1
+7f
 61
-f7
-ed
-dd
-4c
-f9
-43
-20
-e2
-27
-aa
-89
-70
-0a
-84
-8c
-d0
-a5
-89
-35
+fe
+09
+0f
+75
 5c
-6a
-40
-1d
-92
-3b
-68
-d0
-14
-51
-6b
-df
-33
 35
-a0
-3e
-cf
-b4
-42
-0e
-98
-0e
-39
-63
-06
-91
-7e
-03
-f8
-87
-c0
-19
-31
-29
-63
-29
-7d
-2f
-2b
-38
-93
-e5
-8f
-8f
-85
 1d
-06
-da
-a9
-e3
-a9
-79
-28
-1e
-81
-9a
-4f
-28
-9c
-83
-2b
-a8
+04
+7f
+c8
+3a
+31
+21
 29
-23
-16
-0c
-1c
-3c
-b1
-bd
-36
-dd
-8c
-0d
-0e
-d6
-1a
+cf
+7b
+fe
+54
+40
 af
-75
-41
-1b
-8a
-90
-c5
-9a
-f3
-3a
-b7
+2e
+ea
+31
+64
+23
+c3
 b9
+44
+75
+a8
+37
+01
+c4
+2f
+55
+24
+f8
 ef
-cd
-a0
-e1
-ee
-46
+9e
+6c
+22
+9c
 98
+6e
+e4
 46
-be
-fc
-34
-ed
-3e
-38
-bd
-ea
-55
 87
-36
-1a
-16
-91
-76
-fb
-20
-c5
+b3
+7f
+31
+b0
+de
+97
+b7
+9d
+e1
+d4
+59
+2b
+b8
+07
+ae
+43
+30
+1b
+00
+d4
+d7
 bc
-e5
-1a
-fd
-4f
-c6
-f8
+f5
+de
 84
-27
-38
-6e
-79
-fc
-b5
-35
+96
 50
-85
-55
-4e
-d8
-1c
-bd
-df
-51
-91
-02
-ee
-be
-0d
-45
-ac
-fb
-3c
-de
-de
-f5
-a7
-22
-4c
-47
-af
-a8
-a6
-d1
+56
+8d
+6d
+7e
+57
 0c
-ec
-3f
-c2
-93
-be
-d2
-4a
+38
+8b
+f3
+b1
+49
+5c
+28
+db
+30
+3e
+9d
+1e
 52
+6d
+de
+f7
+42
+e0
 a2
-26
+63
+0b
+4a
+e4
 07
-94
-3f
-91
-dc
-97
-2e
-d4
-8d
-32
+ea
+7e
+71
+e9
+7b
 5b
-f4
-b6
-08
-ff
-d2
-6c
-84
+74
+94
 ef
-4b
-04
-0c
-e9
 e3
-3c
-32
-49
-6b
-4b
-34
-da
-3b
-fa
-d5
-9e
-9f
-0d
-13
+a9
+c2
+1b
+7d
+64
+65
+10
+61
+d0
+26
+24
+28
+dd
+52
+fd
+a7
+8f
 ed
-9f
-4e
-23
-01
-95
-3d
-32
-b5
-a1
-2b
-0d
-51
-b3
-7c
-c6
-aa
-55
-40
-00
-00
-40
-05
-00
-33
-07
-20
-00
-00
-00
-00
-00
-00
-00
+b2
+b7
+3e
+35
+99
+d8
+4c
+5c
 00
-53
-18
-bc
+36
+67
+ab
+73
+ee
+6b
+84
+56
 f2
+cb
+89
+74
+1b
+c0
+28
 4d
-61
-00
-00
-00
-00
-00
-20
-00
-60
-04
-00
-00
-00
-00
-00
-00
-10
-04
-60
-00
-00
-06
-00
-30
-00
-00
-00
-00
-00
-00
-00
-00
-41
-a4
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-aa
-55
+65
+6d
+19
 08
-00
-13
-47
-04
-4b
-0a
-00
-02
-2a
-81
-1b
-aa
-55
-1e
-00
-44
-46
-14
-10
-11
-ff
-ff
-0f
-0c
-09
-01
-00
-ff
-02
-02
-00
-ff
-ff
-ff
-15
-ff
-ff
-ff
+97
 03
+dd
+75
+35
+ab
+c7
+85
 ff
-05
-ff
-8e
-8d
-8b
-ff
-ff
-aa
-55
-01
-00
-29
-47
-01
-aa
-55
-02
-00
-ff
+3f
+f3
+ab
+76
+28
+7d
+43
+23
+11
+1d
 46
-00
-14
-aa
-55
-03
-00
-02
-47
-05
-02
-05
-aa
-55
-01
-00
-07
-47
+a9
 14
-aa
-55
-01
-00
-05
-47
-02
-aa
-55
-02
-00
-0a
-47
-02
-06
-aa
-55
-01
-00
+7a
+82
+38
+27
+b7
+9f
+1f
+f9
+1c
+69
+a2
+f4
+de
+28
+1c
+85
+14
+2e
+25
+6c
+b4
+5d
+4c
+da
+65
 0d
-47
-0a
-aa
-55
-01
+79
+75
+16
+83
+89
+a3
+fe
+2b
+f9
+9a
+e9
+8b
+59
 00
-12
+77
+92
+90
+9e
+da
+2a
+b4
+56
+7f
+5e
 47
-0a
-aa
-55
-02
-00
-0f
+87
+44
 47
-58
-02
-aa
-55
-02
-00
-3a
-46
-58
-02
-aa
-55
+14
+e6
+40
+65
+a8
+98
+7a
+70
+f0
+63
+cf
+ed
+e9
+45
+30
+dd
+a7
+84
+1e
+7a
+80
+92
+6c
+37
 01
-00
-3d
-46
-64
-aa
-55
-02
-00
+0f
+af
+86
+43
+25
+f6
+39
+44
+44
+9d
+cf
+66
+d4
+95
+b9
+17
+e2
+87
+fa
+7f
+b7
+27
+bd
+16
+33
+69
+ac
+48
+93
+b6
+cd
+c4
+99
+07
+e7
+4c
+51
+4c
+17
+d5
+80
 21
+18
+e1
+8e
+76
+ac
+ec
+c9
+ba
+d4
+8d
+f9
+70
+66
+c0
+65
+2b
+43
+6f
+86
+ab
+52
+57
+60
+ea
+fd
+3a
+4a
+e1
+42
+74
 47
-05
-00
-aa
-55
-01
-00
-3c
-46
-64
-aa
-55
-02
-00
+21
 38
-46
-b0
-04
-aa
-55
-01
-00
-1e
-47
+fd
+2a
+d1
+75
+7f
+c2
 0a
-aa
-55
-02
-00
-25
-47
-70
-17
-aa
-55
-01
-00
-cb
-43
-08
-aa
-55
-01
-00
 1b
-47
-03
-aa
-55
-01
-00
-94
-40
-01
-aa
-55
-01
-00
-c0
-40
-20
-aa
-55
+73
+85
+d4
+d7
+e5
+b1
+98
+88
+09
+07
+05
+7b
+97
+52
+d7
+89
+87
+85
+7a
+0d
+1d
+19
+14
+a7
+09
+51
+94
+7a
+e8
+2a
+0c
+36
+8b
+b2
+6f
+bd
+9a
+ce
+0b
+38
+3f
+c1
+d0
+ac
+d4
+a8
+d8
+cb
+d8
+c2
+c9
+25
+fd
+21
+ae
+14
+4a
+3a
 01
-00
-6b
-49
-20
-aa
-55
-03
-00
-3c
-47
-00
-00
-00
-aa
-55
+b9
+6f
+a5
+b1
+c5
+90
+99
+29
+53
+19
+3b
+3e
+cb
+31
+30
+ce
 08
-00
-66
-46
-00
-34
-ff
-ff
-ff
-ff
-ff
-ff
-aa
-55
-07
-00
-74
-46
-34
-ff
-ff
-ff
-ff
-ff
-ff
-aa
-55
-07
-00
+98
+b1
+a1
+78
+6a
+cb
+a0
+d6
+ac
+57
+d2
+ce
+ac
+a5
+33
+0c
+0f
+29
+83
 81
+e7
+f6
+03
+78
+b9
+56
+83
+86
+85
+e4
+db
+3b
+3f
+36
+7a
+a5
+d3
+7e
+89
+bd
+75
+6f
+10
+fe
+bb
 46
+2f
+dd
+63
+60
+4b
+b7
+08
+1d
+c1
+19
+bf
+4d
+09
+9a
+92
+bc
+24
+a3
+bc
+f4
+5a
+b7
+0a
+03
+8e
+d2
+44
+c1
+e2
+0f
+d5
+9c
+48
+d0
+ab
+2c
+04
+de
+b9
 33
-ff
-ff
-ff
-ff
-ff
-ff
-aa
-55
-06
-00
-2d
+4e
+07
+2a
+92
+59
+ae
+9a
+a0
+70
+07
+d7
+6f
+a9
+3f
+c3
 46
-dc
-05
+a6
+db
+cd
+c7
+38
+23
+5e
 84
-03
-e8
-03
-aa
-55
+a6
+12
+6d
+30
+f3
+af
+fc
+7f
 01
-00
-35
-46
-04
-aa
-55
-01
-00
-28
-47
-03
-aa
-55
+2d
+11
+15
+5a
+58
+1b
+bf
+1b
+09
+54
+16
+2b
+35
+58
+70
+99
 01
-00
 27
-47
-07
-aa
-55
-06
-00
-e6
-46
-ff
-ff
-ff
-ff
-ff
+f4
+1e
+34
 ff
-aa
-55
-06
-00
-f1
-44
-02
-21
-26
+91
+85
+d9
+a3
+4d
+65
+8f
+8b
+32
+6a
+31
+23
+d6
+4a
+ba
+d3
+fc
+fc
+41
+a4
+9a
+25
+52
+c1
+10
+42
+ef
+53
+a3
+f3
+0e
+f4
+d6
+a5
+cb
+09
+8a
+20
+c4
 55
-51
+cf
+e7
+17
+ed
+b2
+a5
+6e
+62
+c7
+4c
+68
+d8
+38
+0c
+e3
+42
+38
+54
+be
+4c
+b1
+7d
+84
+a3
+9c
+60
 61
-aa
-55
-01
-00
-89
-45
-01
-aa
-55
-05
-00
+63
 e3
-45
-01
-0f
-0f
-0f
+b4
+ba
+b1
+30
+dd
+67
+5e
+31
+32
+99
+c0
 0f
-aa
-55
-01
-00
-b9
-45
-00
-aa
-55
-01
-00
-40
-47
-02
-aa
-55
-01
-00
-ca
+c2
+d8
+c8
+10
+71
+82
+c3
+eb
+85
+e9
+91
+2c
+68
+2e
+18
+df
+68
+4b
+92
+4c
+5c
+35
+e8
+ff
+7d
+72
+8d
+ea
+fc
+ee
+1a
+9a
+ea
+29
+f8
+e6
+76
+d0
+d8
+60
+b8
+dd
+03
+52
+e0
+49
+3b
+d0
+c0
+57
+d1
+68
+7a
+51
+b8
+0b
+4a
+bc
+ff
 45
-00
-aa
-55
-01
-00
-7b
 47
-00
-aa
-55
-02
-00
+73
+8f
+3e
+68
+0d
+b1
+59
+9a
+39
+7f
+b5
+19
 8b
-45
-c0
-12
-aa
-55
-07
-00
-43
-47
-ee
-4d
-00
-80
-bb
-00
-05
-aa
-55
-04
-00
-55
-47
+eb
+a4
+5f
+95
+68
+b1
+3a
+06
+35
+db
+a6
+89
+f4
+ad
+fb
+90
+a6
+28
+ca
+08
+d0
+9a
+79
+95
+90
+8e
+e4
+7b
 80
-bb
-00
-00
-aa
-55
-07
-00
+54
+ae
+65
+dd
+60
+3b
+e8
+d7
+fb
+8d
+89
 4a
-47
-a0
-00
-01
-00
-77
-01
-0b
-aa
-55
-04
-00
-59
-47
-00
+a5
+6f
+31
+b8
+df
+f4
+98
+70
+d9
+3a
+12
+b8
+fb
+de
+dd
 77
-01
-00
-aa
-55
-03
-00
-af
-45
-00
-48
-60
-aa
-55
-02
-00
-1d
-46
-2c
-01
-aa
-55
-02
-00
-1b
-46
-50
-00
-aa
-55
-02
-00
-23
-47
+e8
+b9
+d1
+c7
+ae
+c4
+66
+94
+a4
+7f
+9a
+b5
+81
+eb
+15
+4a
+b2
+dd
+b1
+20
+49
+3e
+4b
+ea
+8b
+ea
+0f
+09
+4b
+42
+c3
+32
+41
+06
+f2
+e3
 64
-00
-aa
-55
-01
-00
-f4
-46
 01
-aa
-55
-06
-00
-db
 42
-51
-81
-91
-a1
+c3
+7c
+e0
+c4
+e9
+d7
+7e
+79
+71
+b7
+9e
+f7
+4d
+58
+e1
+3e
+38
+6b
+e6
+49
+6c
+bf
 b3
-c1
-aa
-55
+c4
+b5
+4c
+74
+60
+31
+70
+bd
+88
+1f
+1f
+f4
+ac
+9c
+ab
+3d
+92
+3d
+53
 01
-00
+56
+d8
 93
-43
-07
+1a
+7b
+11
+0c
+6b
+f2
+63
+bb
+ac
+3e
+7a
+5a
+2f
+d9
+4b
+dc
+42
+38
+3e
+2d
+d2
+80
+56
+5f
+5e
 aa
-55
-08
-00
-c0
-43
-fb
-00
-48
-08
-fb
-00
-48
-08
-aa
-55
-02
-00
-be
-47
-96
-00
-aa
-55
-02
-00
-b5
-47
-15
-00
-aa
-55
-02
-00
-9b
-43
-19
-00
-aa
-55
-04
-00
-b7
-47
-1d
-00
-21
-00
-aa
-55
-02
-00
-32
-43
-2d
-00
-aa
-55
-02
-00
+2b
+5d
+bf
+df
+7f
+e0
+3c
 bb
-47
-30
-00
-aa
-55
+79
+61
+22
+7c
+fb
 0c
-00
-48
-43
-1f
-02
-01
-05
-03
-03
-12
+e4
+c7
+bf
+c4
+ef
+14
+b2
+7c
+38
 18
-03
-19
+95
+db
+f0
+5a
+bd
 c2
-03
-aa
-55
-14
-00
-a0
-47
-06
-ff
+ca
 06
-00
-03
-00
-80
-0c
-09
-42
-54
-35
-2e
-32
+48
+c4
+27
+3e
+05
+6a
+64
+df
+a5
+08
+76
+9e
+f0
+98
+d1
+ab
+31
+a6
+28
+57
+85
+91
+99
 20
-4d
-6f
-75
-73
-65
-aa
-55
-0e
-00
-68
-43
-1f
-0c
-09
-42
-54
-35
-2e
+a5
+2a
 32
-20
-4d
-6f
-75
-73
-65
-aa
-55
-0c
-00
-6b
-42
-0b
-42
-54
-35
+a9
+51
+0d
+c1
+7d
+3b
+69
+38
+69
+70
+c4
+23
+d7
 2e
-32
-20
-4d
-6f
-75
-73
-65
-aa
-55
-0c
-00
-8c
-49
-0b
-42
-54
+78
+2f
 35
-2e
-32
-20
-4d
-6f
-75
-73
-65
-aa
-55
-08
-00
-d3
-42
 06
-00
-09
-00
-20
-00
-2c
-01
+f2
+2f
+e5
+57
+cb
+ce
+80
+f1
+c0
+96
+69
+ad
+1f
+0a
+17
+ee
+de
+eb
+4b
+cc
+df
+0d
 aa
-55
-06
-00
+de
+f2
+7f
 9a
-47
-03
-12
-18
-ff
-00
-00
-aa
-55
-03
-00
-ec
-46
-00
+29
+21
+6e
+41
+af
+2c
+43
+09
+3e
+dd
+e2
+e5
+88
+77
+11
+e9
+83
+c7
+fb
+6d
 50
-00
-aa
-55
 02
-00
-eb
-43
-10
-00
-aa
-55
-01
-00
-f4
-43
-80
-aa
-55
-01
-00
-ec
-44
-ff
-aa
-55
-01
-00
+70
+af
+9d
+f9
+1e
+53
+24
+be
+5a
 eb
+72
+c2
 44
-1e
-aa
-55
-01
-00
+53
+b7
+ae
+5b
+a0
+2e
+c6
+ef
+db
+d6
+db
+ec
+b7
+67
+16
+93
 ee
-44
-00
-aa
-55
-01
-00
-41
-41
-03
-aa
-55
-01
-00
-3e
-46
-94
-aa
-55
-01
-00
+2b
+b4
+56
+7c
+3a
+eb
+de
+32
+9e
+bd
+e6
+9b
 d2
 45
+1d
+30
+64
+5e
+8e
 07
-aa
-55
-02
-00
-f0
-45
-83
-47
-aa
-55
-02
-00
-3f
-46
-85
-90
-aa
-55
-02
-00
-42
-46
-75
-80
-aa
-55
-01
-00
-41
-46
-63
-aa
-55
-01
-00
-27
+b2
+3c
+07
+84
+c3
+a7
 46
-7d
-aa
-55
-01
-00
-37
-44
-00
-aa
-55
-03
-00
-08
+9d
 4a
-00
-03
-25
-aa
-55
-01
-00
-6c
-08
-ff
-aa
-55
-11
-00
-68
-48
-03
-04
-01
-02
-20
-2a
-3f
+d1
+ea
 15
-14
-1b
-11
-0e
-8a
-8b
-83
-84
-88
-aa
-55
-08
-00
-4e
-49
-09
-a5
-0b
-f3
-09
-00
-ff
-ff
-aa
+54
+36
+ec
+be
+b0
 55
-08
-00
-46
-49
-09
-5a
-0b
-f3
-09
-00
-ff
-ff
+a7
+bc
+76
+ac
+fa
+71
 aa
-55
-0c
-00
-ff
-4b
+62
+74
+89
+a4
+21
+da
+94
+bb
+4d
+f9
+35
+be
+76
+60
+fe
+53
+e8
+f1
+b8
+13
+b0
+cb
+4e
+16
+b6
+cf
+de
+87
+60
+35
 09
-a5
-46
-34
+64
+9b
+25
+ae
+78
+d7
+d3
+25
+0e
+cd
+82
+67
+fa
+82
 6a
-c0
-69
-24
-09
-00
 ff
-ff
-aa
-55
-12
-00
-0b
-4a
-09
-a5
-26
-34
-19
-04
-60
-07
-69
-04
-7d
+bd
+b7
+4e
+8d
+c0
+c5
+11
+c0
+56
+52
 20
-7e
-00
-09
-00
-ff
-ff
-aa
-55
-0a
-00
-7c
-48
-09
-5a
-26
-34
-19
-04
-09
-00
-ff
-ff
 aa
-55
-0a
-00
-90
-48
-09
-5a
-0d
-10
+ad
+15
+0c
+c1
+98
+65
+bd
+9e
+ec
+56
+3b
+05
+d0
+95
+df
+a3
+e9
+24
+6f
+40
+61
 1d
-ed
-7d
-80
-ff
-ff
-aa
-55
-10
-00
-2a
-49
-09
-a5
-26
-34
-60
-07
-69
-04
-7d
+33
 20
-7e
-00
-09
-00
-ff
-ff
-aa
-55
-1a
-00
-d6
-48
-09
-5a
-ff
-27
-ab
-40
-be
-d1
+13
+3f
+a8
+b1
+b7
+83
+6b
+6c
+79
+85
+ea
+e2
+ac
 a0
-41
-a1
-12
-a7
-ff
-b6
-00
-b5
-c8
-a5
-af
-ff
-00
-09
-00
-ff
-ff
-aa
+be
+30
+c9
+a4
+9b
+01
+ef
 55
-2e
-00
-fc
-48
-09
-5a
-0d
-10
-0e
-c5
+6d
+ea
+5d
+3b
+bd
+c1
+aa
 5b
-9a
-10
-38
-11
-42
-28
+f0
+f3
+3a
+da
+33
 28
-41
-23
+c1
+2f
+ba
+f3
+b3
+14
+3a
+1a
+e6
 49
-39
-4a
-b0
+ba
+c0
+c4
+1a
+ef
+c7
+59
+e5
+67
+1f
 4b
+63
+32
+0e
+d2
+3a
+43
+ee
+68
+64
+0c
+5c
+da
+4e
+e6
+3c
+35
+54
+82
+79
+f0
+13
+89
+c5
+37
+2e
+70
+57
+35
+ef
+ce
+1a
+77
+56
+fa
+54
+ea
+c5
+d4
+de
+23
+e8
+75
+5d
+df
+f1
+7f
+28
+8d
+66
+ba
+3a
+ee
+72
+16
+f5
+56
+af
+5f
+25
+d2
+41
+10
+f5
+f6
+36
+59
+ca
+bc
+c9
+4f
+d9
+bc
+ea
+c9
+2e
+f1
+5c
+9a
+b9
+cc
+8f
+e6
+db
+20
+af
+13
 a0
-4c
+c1
+b1
+59
+ed
+fa
+1d
+a6
+8b
 90
-4d
-70
-09
-00
-ff
-ff
-09
-5a
-06
-02
-09
-69
+1d
+7c
+5e
+42
+7e
+86
+4a
+ad
+5b
+a0
+ed
+d7
+9e
+a4
 0d
-48
-0e
-9f
-0f
-ba
-09
-00
-ff
-ff
+b9
+6d
+93
+8c
+91
+d6
+7b
+77
+b9
+a6
 aa
 55
-01
+40
 00
-07
-44
-01
-aa
-55
-01
 00
-09
-44
-0a
-aa
-55
-01
+40
+05
 00
-08
-44
-09
-aa
-55
-06
+73
+07
+a0
 00
-2d
-46
-a4
-01
-18
-01
-2c
-01
-aa
-55
-01
 00
-48
-41
-0c
-aa
-55
-06
 00
-c3
-40
-35
-3f
-64
-db
-7b
-3b
-aa
-55
-01
 00
-a7
-40
-20
-aa
-55
-03
 00
-c9
-40
 00
-08
-b4
-aa
-55
-01
 00
-99
-40
+00
+d7
 18
-aa
-55
-01
+bc
+f2
+4d
+69
 00
-1c
-41
-7e
-aa
-55
-0c
 00
-16
 00
 00
 00
 20
 00
+60
+04
+00
+00
+00
+00
+00
+00
+10
+04
+70
+00
+00
+06
+00
+30
+00
+00
+00
+00
+00
+00
+00
+00
+45
+a4
+00
 00
 00
 00
@@ -5673,156 +4935,1180 @@
 00
 00
 00
-aa
-55
-05
 00
-5e
-41
-08
-0e
-05
-03
 00
-aa
-55
-01
 00
-68
-41
-20
 aa
 55
-02
+08
 00
-9a
-40
+13
+47
+04
+4b
+0a
 00
-0c
+02
+2a
+81
+1b
 aa
 55
+1e
+00
+44
+46
+14
+10
+11
+ff
+ff
+0f
+0c
+09
+01
+00
+ff
+02
+02
+00
+ff
+ff
+ff
+15
+ff
+ff
+ff
+03
+ff
 05
+ff
+8e
+8d
+8b
+ff
+ff
+aa
+55
+01
+00
+29
+47
+01
+aa
+55
+02
 00
-43
-41
 ff
-04
+46
 00
+14
+aa
+55
+03
 00
-08
+02
+47
+05
+02
+05
 aa
 55
 01
 00
-1c
+07
+47
+14
+aa
+55
+01
+00
+05
+47
 02
-5a
+aa
+55
+02
+00
+0a
+47
+02
+06
 aa
 55
 01
 00
-38
-44
-a0
+0d
+47
+0a
+aa
+55
+01
+00
+12
+47
+0a
 aa
 55
 02
 00
-3b
-44
-bc
+0f
+47
+58
 02
 aa
 55
 02
 00
-39
-44
-90
+3a
+46
+58
+02
+aa
+55
 01
+00
+3d
+46
+64
 aa
 55
 02
 00
-3d
-44
-03
-09
+21
+47
+05
+00
 aa
 55
 01
 00
-49
-41
-ff
+3c
+46
+64
 aa
 55
 02
 00
-9c
-40
-49
-41
+38
+46
+b0
+04
+aa
+55
+01
+00
+1e
+47
+0a
+aa
 55
+02
+00
+25
+47
+70
+17
 aa
+55
+01
+00
+cb
+43
+08
 aa
 55
-d2
-68
-f3
+01
+00
+1b
+47
+03
+aa
+55
+01
+00
+94
+40
+01
+aa
+55
+01
+00
+c0
+40
 20
+aa
+55
+01
+00
+6b
+49
+20
+aa
+55
+03
+00
+3c
+47
+00
+00
+00
+aa
+55
+08
+00
+66
+46
+00
+34
 ff
 ff
 ff
 ff
 ff
 ff
+aa
+55
+07
+00
+74
+46
+34
 ff
 ff
 ff
 ff
 ff
 ff
+aa
+55
+07
+00
+81
+46
+34
 ff
 ff
 ff
 ff
 ff
 ff
+aa
+55
+01
+00
+28
+47
+03
+aa
+55
+01
+00
+27
+47
+07
+aa
+55
+01
+00
+1f
+4b
 ff
+aa
+55
+06
+00
+e6
+46
 ff
 ff
 ff
 ff
 ff
 ff
+aa
+55
+06
+00
+f1
+44
+02
+21
+26
+55
+51
+61
+aa
+55
+01
+00
+89
+45
+01
+aa
+55
+05
+00
+e3
+45
+01
+0f
+0f
+0f
+0f
+aa
+55
+01
+00
+b9
+45
+00
+aa
+55
+01
+00
+40
+47
+02
+aa
+55
+01
+00
+ca
+45
+00
+aa
+55
+01
+00
+7b
+47
+00
+aa
+55
+02
+00
+8b
+45
+c0
+12
+aa
+55
+07
+00
+43
+47
+d0
+52
+00
+80
+bb
+00
+05
+aa
+55
+04
+00
+55
+47
+80
+bb
+00
+00
+aa
+55
+07
+00
+4a
+47
+70
+11
+01
+00
+77
+01
+0b
+aa
+55
+04
+00
+59
+47
+00
+77
+01
+00
+aa
+55
+03
+00
+af
+45
+00
+48
+60
+aa
+55
+02
+00
+1d
+46
+2c
+01
+aa
+55
+02
+00
+1b
+46
+50
+00
+aa
+55
+02
+00
+23
+47
+64
+00
+aa
+55
+01
+00
+f4
+46
+01
+aa
+55
+06
+00
+db
+42
+51
+81
+91
+a1
+b3
+c1
+aa
+55
+01
+00
+93
+43
+07
+aa
+55
+08
+00
+c0
+43
+fb
+00
+48
+08
+fb
+00
+48
+08
+aa
+55
+02
+00
+be
+47
+96
+00
+aa
+55
+02
+00
+b5
+47
+15
+00
+aa
+55
+02
+00
+9b
+43
+19
+00
+aa
+55
+04
+00
+b7
+47
+1d
+00
+21
+00
+aa
+55
+02
+00
+32
+43
+2d
+00
+aa
+55
+02
+00
+bb
+47
+30
+00
+aa
+55
+0c
+00
+48
+43
+1f
+02
+01
+05
+03
+03
+12
+18
+03
+19
+c2
+03
+aa
+55
+14
+00
+a0
+47
+06
 ff
+06
+00
+03
+00
+80
+0c
+09
+42
+54
+35
+2e
+32
+20
+4d
+6f
+75
+73
+65
+aa
+55
+0e
+00
+68
+43
+1f
+0c
+09
+42
+54
+35
+2e
+32
+20
+4d
+6f
+75
+73
+65
+aa
+55
+0c
+00
+6b
+42
+0b
+42
+54
+35
+2e
+32
+20
+4d
+6f
+75
+73
+65
+aa
+55
+0c
+00
+8c
+49
+0b
+42
+54
+35
+2e
+32
+20
+4d
+6f
+75
+73
+65
+aa
+55
+08
+00
+d3
+42
+06
+00
+09
+00
+20
+00
+2c
+01
+aa
+55
+06
+00
+9a
+47
+03
+12
+18
 ff
+00
+00
+aa
+55
+03
+00
+ec
+46
+00
+50
+00
+aa
+55
+02
+00
+eb
+43
+10
+00
+aa
+55
+01
+00
+f4
+43
+80
+aa
+55
+01
+00
+ec
+44
 ff
+aa
+55
+01
+00
+eb
+44
+1e
+aa
+55
+01
+00
+ee
+44
+00
+aa
+55
+01
+00
+41
+41
+03
+aa
+55
+01
+00
+3e
+46
+94
+aa
+55
+01
+00
+d2
+45
+07
+aa
+55
+02
+00
+f0
+45
+83
+47
+aa
+55
+02
+00
+3f
+46
+85
+90
+aa
+55
+02
+00
+42
+46
+75
+80
+aa
+55
+01
+00
+41
+46
+63
+aa
+55
+01
+00
+27
+46
+7d
+aa
+55
+01
+00
+37
+44
+00
+aa
+55
+03
+00
+08
+4a
+00
+03
+25
+aa
+55
+01
+00
+6c
+08
 ff
+aa
+55
+11
+00
+68
+48
+03
+04
+01
+02
+20
+2a
+3f
+15
+14
+1b
+11
+0e
+8a
+8b
+83
+84
+88
+aa
+55
+08
+00
+4e
+49
+09
+a5
+0b
+f3
+09
+00
 ff
 ff
+aa
+55
+08
+00
+46
+49
+09
+5a
+0b
+f3
+09
+00
 ff
 ff
+aa
+55
+0c
+00
+fe
+4b
+09
+a5
+46
+34
+6a
+c0
+69
+24
+09
+00
 ff
 ff
+aa
+55
+12
+00
+0b
+4a
+09
+a5
+46
+34
+19
+04
+60
+07
+69
+04
+7d
+20
+7e
+00
+09
+00
 ff
 ff
+aa
+55
+0a
+00
+7c
+48
+09
+5a
+26
+34
+19
+04
+09
+00
 ff
 ff
+aa
+55
+0a
+00
+90
+48
+09
+5a
+0d
+10
+1d
+ed
+7d
+80
 ff
 ff
+aa
+55
+1a
+00
+d6
+48
+09
+5a
 ff
+27
+ab
+40
+be
+d1
+a0
+41
+a1
+12
+a7
 ff
+b6
+00
+b5
+c8
+a5
+af
 ff
+00
+09
+00
 ff
 ff
+aa
+55
+2e
+00
+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
+02
+09
+69
+0d
+48
+0e
+9f
+0f
+ba
+09
+00
 ff
 ff
+aa
+55
+01
+00
+07
+44
+01
+aa
+55
+01
+00
+09
+44
+0a
+aa
+55
+01
+00
+08
+44
+00
+aa
+55
+01
+00
+48
+41
+0c
+aa
+55
+06
+00
+c3
+40
+35
+3f
+64
+db
+7b
+3b
+aa
+55
+01
+00
+a7
+40
+20
+aa
+55
+03
+00
+c9
+40
+00
+08
+b4
+aa
+55
+01
+00
+99
+40
+18
+aa
+55
+01
+00
+1c
+41
+3e
+aa
+55
+0c
+00
+16
+00
+00
+00
+20
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+05
+00
+5e
+41
+08
+0e
+05
+03
+00
+aa
+55
+01
+00
+68
+41
+20
+aa
+55
+02
+00
+9a
+40
+00
+0c
+aa
+55
+05
+00
+43
+41
 ff
+04
+00
+00
+08
+aa
+55
+01
+00
+1c
+02
+5a
+aa
+55
+01
+00
+38
+44
+a0
+aa
+55
+02
+00
+3b
+44
+bc
+02
+aa
+55
+02
+00
+39
+44
+90
+01
+aa
+55
+02
+00
+3d
+44
+03
+09
+aa
+55
+01
+00
+49
+41
 ff
+aa
+55
+02
+00
+9c
+40
+49
+41
+55
+aa
+aa
+55
+0d
+5e
+c6
+a3
 ff
 ff
 ff
@@ -7902,291 +8188,5 @@
 ff
 ff
 ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-51
-7c
+27
+4e
Index: output/memmap.format
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/output/memmap.format	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/output/memmap.format	(working copy)
@@ -1970,94 +1970,93 @@
 0x4a9d mem_le_tx_buffer2_omemalloc_new
 0x4add mem_le_tx_buffer3_omemalloc_new
 0x4b1d mem_mouse_qdec_set_flag
-0x4b1e mem_mouse_wheel_temp_gpio
-0x4b1f mem_sensor_read_count
-0x4b20 mem_sensor_param_change_count
-0x4b21 mem_24g_txpayload_buf
-0x4b31 mem_release_data_from_receiver_enable
-0x4b32 mem_release_data_from_transmiter_enable
-0x4b33 mem_flippen_key0_gpio
-0x4b34 mem_flippen_key1_gpio
-0x4b35 mem_flippen_key2_gpio
-0x4b36 mem_flippen_key3_gpio
-0x4b37 mem_flippen_key4_gpio
-0x4b38 mem_flippen_key5_gpio
-0x4b39 mem_flippen_key6_gpio
-0x4b3a mem_flippen_key7_gpio
-0x4b3b mem_flippen_key0_press_status
-0x4b3c mem_flippen_key1_press_status
-0x4b3d mem_flippen_key2_press_status
-0x4b3e mem_flippen_key3_press_status
-0x4b3f mem_flippen_key4_press_status
-0x4b40 mem_flippen_key5_press_status
-0x4b41 mem_flippen_key6_press_status
-0x4b42 mem_flippen_key7_press_status
-0x4b43 mem_key_press_data
-0x4b43 mem_key_pageup_data
-0x4b4c mem_key_pagedown_data
-0x4b55 mem_key_shift_f5_data
-0x4b5e mem_key_esc_data
-0x4b67 mem_key_b_data
-0x4b70 mem_key_tab
-0x4b79 mem_key_enter
-0x4b82 mem_key_alt_tab
-0x4b8b mem_key_alt_f4
-0x4b94 mem_key_play_pause
-0x4b9d mem_key_vol_up
-0x4ba6 mem_key_vol_down
-0x4baf mem_standard_key_release
-0x4bb8 mem_system_ctrl_key_release
-0x4bc1 mem_media_key_release
-0x4bca mem_key0_long_press_flag
-0x4bcb mem_key1_long_press_flag
-0x4bcc mem_key2_long_press_flag
-0x4bcd mem_key3_long_press_flag
-0x4bce mem_key4_long_press_flag
-0x4bcf mem_key0_long_press_event
-0x4bd0 mem_key1_long_press_event
-0x4bd1 mem_key2_long_press_event
-0x4bd2 mem_key3_long_press_event
-0x4bd3 mem_key4_long_press_event
-0x4bd4 mem_key0_short_press_flag
-0x4bd5 mem_key1_short_press_flag
-0x4bd6 mem_key2_short_press_flag
-0x4bd7 mem_key3_short_press_flag
-0x4bd8 mem_key4_short_press_flag
-0x4bd9 mem_key0_press_timer_count
-0x4bda mem_key1_press_timer_count
-0x4bdb mem_key2_press_timer_count
-0x4bdc mem_key3_press_timer_count
-0x4bdd mem_key4_press_timer_count
-0x4bde mem_combination_key_down_flag
-0x4bdf mem_combination_key_longpress_flag
-0x4be0 mem_key_disable_timer
-0x4be1 mem_24g_calculate_package_id_disable
-0x4be2 mem_24g_package_id_abandon_flag
-0x4be3 mem_24g_package_id
-0x4be4 mem_key_state
-0x4be5 mem_key_press_state
-0x4be6 mem_poweron_first_blank_data_enable
-0x4be7 mem_flippen_no_data_timeout
-0x4be9 mem_flippen_start_pair_no_data_timeout
-0x4beb mem_key_longpress_timer_init
-0x4bed mem_key_longpress_timer
-0x4bef mem_low_voltage_led_blink_flag
-0x4bf0 mem_low_voltage_led_blink_start_timer
-0x4bf1 mem_poweron_led_blink_flag
-0x4bf2 mem_24g_pair_enable_flag
-0x4bf3 mem_24g_ch_work
-0x4bf4 mem_24g_pair_key_down_flag
-0x4bf5 mem_24g_pairing_stop_flag
-0x4bf6 mem_longpress_24g_enter_hibernate_flag
-0x4bf7 mem_g24_connected_state
-0x4bf8 mem_g24_pairing_stop_flag
-0x4bf9 mem_send_package_before_check
-0x4bfa mem_le_conn_rcv_new
-0x4bfb mem_le_conn_first_rcv
-0x4bfc mem_le_check_retransmit_flag
-0x4bfd mem_le_retransmit_cnt
-0x4bfe mem_le_check_retransmit_discon_flag
-0x4bff mem_sensor_ka5857_init
+0x4b1e mem_commbination_dpi_timer
+0x4b1f mem_mouse_commbination_key_dpi
+0x4b20 mem_24g_txpayload_buf
+0x4b30 mem_release_data_from_receiver_enable
+0x4b31 mem_release_data_from_transmiter_enable
+0x4b32 mem_flippen_key0_gpio
+0x4b33 mem_flippen_key1_gpio
+0x4b34 mem_flippen_key2_gpio
+0x4b35 mem_flippen_key3_gpio
+0x4b36 mem_flippen_key4_gpio
+0x4b37 mem_flippen_key5_gpio
+0x4b38 mem_flippen_key6_gpio
+0x4b39 mem_flippen_key7_gpio
+0x4b3a mem_flippen_key0_press_status
+0x4b3b mem_flippen_key1_press_status
+0x4b3c mem_flippen_key2_press_status
+0x4b3d mem_flippen_key3_press_status
+0x4b3e mem_flippen_key4_press_status
+0x4b3f mem_flippen_key5_press_status
+0x4b40 mem_flippen_key6_press_status
+0x4b41 mem_flippen_key7_press_status
+0x4b42 mem_key_press_data
+0x4b42 mem_key_pageup_data
+0x4b4b mem_key_pagedown_data
+0x4b54 mem_key_shift_f5_data
+0x4b5d mem_key_esc_data
+0x4b66 mem_key_b_data
+0x4b6f mem_key_tab
+0x4b78 mem_key_enter
+0x4b81 mem_key_alt_tab
+0x4b8a mem_key_alt_f4
+0x4b93 mem_key_play_pause
+0x4b9c mem_key_vol_up
+0x4ba5 mem_key_vol_down
+0x4bae mem_standard_key_release
+0x4bb7 mem_system_ctrl_key_release
+0x4bc0 mem_media_key_release
+0x4bc9 mem_key0_long_press_flag
+0x4bca mem_key1_long_press_flag
+0x4bcb mem_key2_long_press_flag
+0x4bcc mem_key3_long_press_flag
+0x4bcd mem_key4_long_press_flag
+0x4bce mem_key0_long_press_event
+0x4bcf mem_key1_long_press_event
+0x4bd0 mem_key2_long_press_event
+0x4bd1 mem_key3_long_press_event
+0x4bd2 mem_key4_long_press_event
+0x4bd3 mem_key0_short_press_flag
+0x4bd4 mem_key1_short_press_flag
+0x4bd5 mem_key2_short_press_flag
+0x4bd6 mem_key3_short_press_flag
+0x4bd7 mem_key4_short_press_flag
+0x4bd8 mem_key0_press_timer_count
+0x4bd9 mem_key1_press_timer_count
+0x4bda mem_key2_press_timer_count
+0x4bdb mem_key3_press_timer_count
+0x4bdc mem_key4_press_timer_count
+0x4bdd mem_combination_key_down_flag
+0x4bde mem_combination_key_longpress_flag
+0x4bdf mem_key_disable_timer
+0x4be0 mem_24g_calculate_package_id_disable
+0x4be1 mem_24g_package_id_abandon_flag
+0x4be2 mem_24g_package_id
+0x4be3 mem_key_state
+0x4be4 mem_key_press_state
+0x4be5 mem_poweron_first_blank_data_enable
+0x4be6 mem_flippen_no_data_timeout
+0x4be8 mem_flippen_start_pair_no_data_timeout
+0x4bea mem_key_longpress_timer_init
+0x4bec mem_key_longpress_timer
+0x4bee mem_low_voltage_led_blink_flag
+0x4bef mem_low_voltage_led_blink_start_timer
+0x4bf0 mem_poweron_led_blink_flag
+0x4bf1 mem_24g_pair_enable_flag
+0x4bf2 mem_24g_ch_work
+0x4bf3 mem_24g_pair_key_down_flag
+0x4bf4 mem_24g_pairing_stop_flag
+0x4bf5 mem_longpress_24g_enter_hibernate_flag
+0x4bf6 mem_g24_connected_state
+0x4bf7 mem_g24_pairing_stop_flag
+0x4bf8 mem_send_package_before_check
+0x4bf9 mem_le_conn_rcv_new
+0x4bfa mem_le_conn_first_rcv
+0x4bfb mem_le_check_retransmit_flag
+0x4bfc mem_le_retransmit_cnt
+0x4bfd mem_le_check_retransmit_discon_flag
+0x4bfe mem_sensor_ka5857_init
 0x462d mem_remote_car_hard_soft_switch
 0x462e mem_remote_car_queue_each_size
 0x462f mem_remote_car_queue_length
Index: output/program.lis
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/output/program.lis	(revision 1881)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/output/program.lis	(working copy)
@@ -1,1464 +1,1615 @@
               include "bt_format "
               org 0x0000
-0000 c2840027 bbit1 8 ,pf_patch_ext 
-0001 c0000293 beq patch00_0 ,p_soft_reset 
-0002 c0010036 beq patch00_2 ,p_main_loop 
-0003 c008003f beq patch02_0 ,p_shutdown_radio 
-0004 c0088041 beq patch02_1 ,p_set_sync_on 
-0005 c00a013f beq patch02_4 ,p_set_lemode 
-0006 c00a80c1 beq patch02_5 ,p_rf_rx_enable 
-0007 c00c00e1 beq patch03_0 ,p_txon 
-0008 c00c80e8 beq patch03_1 ,p_set_tx_power 
-0009 c00d004f beq patch03_2 ,p_initialize_radio_cont 
-000a c0128213 beq patch04_5 ,p_lpm_sleep 
-000b c034028c beq patch0d_0 ,p_mouse_cb_fuction 
-000c c034829f beq patch0d_1 ,p_mouse_load_device_info_check 
-000d c0360255 beq patch0d_4 ,p_mouse_param_init 
-000e c0370364 beq patch0d_6 ,p_mouse_start_work 
-000f c03983b9 beq patch0e_3 ,p_mouse_setgpio_hibernate 
-0010 c03a020d beq patch0e_4 ,p_mouse_lpm_before_common 
-0011 c03d0456 beq patch0f_2 ,p_mouse_motion 
-0012 c03d841f beq patch0f_3 ,p_mouse_dpi_process 
-0013 c03e043c beq patch0f_4 ,p_mouse_setting_dpi 
-0014 c03e843e beq patch0f_5 ,p_mouse_setting_sensor_type 
-0015 c03f8399 beq patch0f_7 ,p_mouse_3io6key_check 
-0016 c0408404 beq patch10_1 ,p_mouse_init_sensor 
-0017 c04202b9 beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
-0018 c0428301 beq patch10_5 ,p_mouse_priority_bb_event 
-0019 c04301d6 beq patch10_6 ,p_mouse_le 
-001a c04382df beq patch10_7 ,p_mouse_bb_event_timer 
-001b c04402ff beq patch11_0 ,p_mouse_start_discovery 
-001c c04502ca beq patch11_2 ,p_mouse_store_remote_bdaddr 
-001d c04582a1 beq patch11_3 ,p_mouse_app_initflag_check 
-001e c0470383 beq patch11_6 ,p_mouse_idle 
-001f c04803f9 beq patch12_0 ,p_mouse_check_select_device_by_switch 
-0020 c04a83b0 beq patch12_5 ,p_mouse_24g_hibernate_set 
-0021 c04b03e2 beq patch12_6 ,p_mouse_24g_package_data 
-0022 c0628238 beq patch18_5 ,p_otp_read_data 
-0023 c06a81f5 beq patch1a_5 ,p_gpio_set_wake_by_current_state 
-0024 c06b01ee beq patch1a_6 ,p_gpio_set_wake 
-0025 c06d0128 beq patch1b_2 ,p_sadc_calibration 
-0026 2020235a branch assert 
+0000 c284002c bbit1 8 ,pf_patch_ext 
+0001 c00002c6 beq patch00_0 ,p_soft_reset 
+0002 c001003d beq patch00_2 ,p_main_loop 
+0003 c0080046 beq patch02_0 ,p_shutdown_radio 
+0004 c0088048 beq patch02_1 ,p_set_sync_on 
+0005 c00a014a beq patch02_4 ,p_set_lemode 
+0006 c00a80e4 beq patch02_5 ,p_rf_rx_enable 
+0007 c00b0051 beq patch02_6 ,p_calc_freq 
+0008 c00c010a beq patch03_0 ,p_txon 
+0009 c00c8111 beq patch03_1 ,p_set_tx_power 
+000a c00d005d beq patch03_2 ,p_initialize_radio_cont 
+000b c0128241 beq patch04_5 ,p_lpm_sleep 
+000c c01381d5 beq patch04_7 ,p_lpm_adjust_clk 
+000d c03402c1 beq patch0d_0 ,p_mouse_cb_fuction 
+000e c03482d3 beq patch0d_1 ,p_mouse_load_device_info_check 
+000f c03502cf beq patch0d_2 ,p_mouse_default_init 
+0010 c0360285 beq patch0d_4 ,p_mouse_param_init 
+0011 c03703b4 beq patch0d_6 ,p_mouse_start_work 
+0012 c037d4b6 beq patch0d_7 ,mouse4_0_check_reconn_target 
+0013 c0398404 beq patch0e_3 ,p_mouse_setgpio_hibernate 
+0014 c03a0235 beq patch0e_4 ,p_mouse_lpm_before_common 
+0015 c03d0478 beq patch0f_2 ,p_mouse_motion 
+0016 c03d8450 beq patch0f_3 ,p_mouse_dpi_process 
+0017 c03e045e beq patch0f_4 ,p_mouse_setting_dpi 
+0018 c03e8460 beq patch0f_5 ,p_mouse_setting_sensor_type 
+0019 c03f83e7 beq patch0f_7 ,p_mouse_3io6key_check 
+001a c0408438 beq patch10_1 ,p_mouse_init_sensor 
+001b c04202ed beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
+001c c042834a beq patch10_5 ,p_mouse_priority_bb_event 
+001d c043020a beq patch10_6 ,p_mouse_le 
+001e c0438328 beq patch10_7 ,p_mouse_bb_event_timer 
+001f c0440348 beq patch11_0 ,p_mouse_start_discovery 
+0020 c04502fd beq patch11_2 ,p_mouse_store_remote_bdaddr 
+0021 c04582d5 beq patch11_3 ,p_mouse_app_initflag_check 
+0022 c04703cf beq patch11_6 ,p_mouse_idle 
+0023 c0480425 beq patch12_0 ,p_mouse_check_select_device_by_switch 
+0024 c0498483 beq patch12_3 ,p_mouse_drawing_optima 
+0025 c04a83fb beq patch12_5 ,p_mouse_24g_hibernate_set 
+0026 c04b040e beq patch12_6 ,p_mouse_24g_package_data 
+0027 c0628263 beq patch18_5 ,p_otp_read_data 
+0028 c06a8229 beq patch1a_5 ,p_gpio_set_wake_by_current_state 
+0029 c06b0222 beq patch1a_6 ,p_gpio_set_wake 
+002a c06d0084 beq patch1b_2 ,p_sadc_calibration 
+002b 2020235a branch assert 
 
 pf_patch_ext:
-0027 c00a0160 beq patch22_4 ,p_le_slave_match 
-0028 c00d015f beq patch23_2 ,p_le_got_first_packet 
-0029 c012818f beq patch24_5 ,p_le_rx_dec 
-002a c0130194 beq patch24_6 ,p_le_rx_nopayload 
-002b c01c81a6 beq patch27_1 ,p_le_parse 
-002c c01d01b0 beq patch27_2 ,p_le_parse_l2cap 
-002d c02601ac beq patch29_4 ,p_le_adv_not_match 
-002e c02681aa beq patch29_5 ,p_le_init_adv 
-002f c048023b beq patch32_0 ,p_g24_reconn_dispatch 
-0030 c04b03a4 beq patch32_6 ,p_g24_short_sleep 
-0031 c04d00cf beq patch33_2 ,p_mouse_g24_retransmit 
-0032 c04e80d6 beq patch33_5 ,p_g24_transmit_hop_process 
-0033 c04f825d beq patch33_7 ,p_power_ctrl_start 
-0034 c17f8000 rtneq patch3f_7 
-0035 2020235a branch assert 
+002c c00a016a beq patch22_4 ,p_le_slave_match 
+002d c00d0189 beq patch23_2 ,p_le_got_first_packet_new 
+002e c01201ae beq patch24_4 ,p_le_receive_rxon 
+002f c0128191 beq patch24_5 ,p_le_rx_dec 
+0030 c0130196 beq patch24_6 ,p_le_rx_nopayload 
+0031 c01c81a8 beq patch27_1 ,p_le_parse 
+0032 c01d01e4 beq patch27_2 ,p_le_parse_l2cap 
+0033 c02601e0 beq patch29_4 ,p_le_adv_not_match 
+0034 c02681ac beq patch29_5 ,p_le_init_adv 
+0035 c0480266 beq patch32_0 ,p_g24_reconn_dispatch 
+0036 c049027a beq patch32_2 ,p_g24_reconn_device_fail 
+0037 c04b03f2 beq patch32_6 ,p_g24_short_sleep 
+0038 c04d00f2 beq patch33_2 ,p_mouse_g24_retransmit 
+0039 c04e80ff beq patch33_5 ,p_g24_transmit_hop_process 
+003a c04f8292 beq patch33_7 ,p_power_ctrl_start 
+003b c17f8000 rtneq patch3f_7 
+003c 2020235a branch assert 
 
 p_main_loop:
-0036 20407552 call sp_calc_sequence_256 
-0037 20407448 call sp_calc_sequence_256_check 
-0038 20402a45 call le_advertising_dispatch 
-0039 2040202a call idle_dispatch 
-003a 204042ad call app_process_idle 
-003b 20402018 call connection_dispatch 
-003c 2040310f call g24_dispatch 
-003d 2040248c call lpm_dispatch 
-003e 20200036 branch p_main_loop 
+003d 20407552 call sp_calc_sequence_256 
+003e 20407448 call sp_calc_sequence_256_check 
+003f 20402a45 call le_advertising_dispatch 
+0040 2040202a call idle_dispatch 
+0041 204042ad call app_process_idle 
+0042 20402018 call connection_dispatch 
+0043 2040310f call g24_dispatch 
+0044 2040248c call lpm_dispatch 
+0045 2020003d branch p_main_loop 
 
 p_shutdown_radio:
-003f 70890000 jam 0 ,0x8900 
-0040 20202153 branch shutdown_radio + 1 
+0046 70890000 jam 0 ,0x8900 
+0047 20202153 branch shutdown_radio + 1 
 
 p_set_sync_on:
-0041 708a0f60 jam 0x60 ,0x8a0f 
-0042 708a10aa jam 0xaa ,0x8a10 
-0043 708a127a jam 0x7a ,0x8a12 
-0044 708a2500 jam 0x00 ,0x8a25 
-0045 708a2600 jam 0x00 ,0x8a26 
-0046 2000003c nop 60 
-0047 708a2020 jam 0x20 ,0x8a20 
-0048 708a23f5 jam 0xf5 ,0x8a23 
-0049 708a2412 jam 0x12 ,0x8a24 
-004a 708a2410 jam 0x10 ,0x8a24 
-004b 2000003c nop 60 
-004c 708a1260 jam 0x60 ,0x8a12 
-004d 708a23dd jam 0xdd ,0x8a23 
-004e 20600000 rtn 
+0048 708a0f60 jam 0x60 ,0x8a0f 
+0049 708a10aa jam 0xaa ,0x8a10 
+004a 708a127a jam 0x7a ,0x8a12 
+004b 708a2500 jam 0x00 ,0x8a25 
+004c 708a2600 jam 0x00 ,0x8a26 
+004d 2000003c nop 60 
+004e 708a2020 jam 0x20 ,0x8a20 
+004f 708a23f5 jam 0xf5 ,0x8a23 
+0050 20202169 branch set_sync_on_next 
+
+p_calc_freq:
+0051 58000960 setarg 2400 
+0052 9840fe00 iadd temp ,pdata 
+0053 1fe22200 copy pdata ,rega 
+0054 6848c099 fetcht 1 ,mem_fcomp_div 
+0055 18430400 rshift temp ,temp 
+0056 9846fc00 idiv temp 
+0057 20407d62 call wait_div_end 
+0058 1807fe00 quotient pdata 
+0059 1fec8e00 rshift8 pdata ,queue 
+005a 60f0890a storer queue ,1 ,0x890a 
+005b 67f08909 store 1 ,0x8909 
+005c 202021da branch calc_freq + 10 
 
 p_initialize_radio_cont:
-004f 7001bb00 jam 0 ,mem_le_testtype 
-0050 7001bc00 jam 0 ,mem_cmd_le_create_conn 
-0051 37d98200 until null ,lpo_edge 
-0052 7089460d jam 0x0d ,0x8946 
-0053 70896f10 jam 0x10 ,0x896f 
-0054 708a13cd jam 0xcd ,0x8a13 
-0055 708a0610 jam 0x10 ,0x8a06 
-0056 708a844a jam 0x4a ,0x8a84 
-0057 708a8540 jam 0x40 ,0x8a85 
-0058 708a16fe jam 0xfe ,0x8a16 
-0059 20400095 call p_set_otp_config 
-005a 204070d7 call wdt_set_disable 
-005b 37d98200 until null ,lpo_edge 
-005c 70813b5f jam 0x5f ,0x813b 
-005d 37d98200 until null ,lpo_edge 
-005e 70813c88 jam 0x88 ,0x813c 
+005d 7001bb00 jam 0 ,mem_le_testtype 
+005e 7001bc00 jam 0 ,mem_cmd_le_create_conn 
 005f 37d98200 until null ,lpo_edge 
-0060 6fe0c099 fetch 1 ,mem_fcomp_div 
-0061 c008008a beq xtal_16m ,p_initialize_radio_16m 
-0062 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0063 1fe1fe04 or_into 0x04 ,pdata 
-0064 67f08a02 store 1 ,0x8a02 
-0065 70890f01 jam 0x01 ,0x890f 
-0066 708a8024 jam 0x24 ,0x8a80 
-0067 708a8162 jam 0x62 ,0x8a81 
-0068 58e61212 setarg 0xe61212 
-0069 67f18a73 store 3 ,0x8a73 
+0060 7089460d jam 0x0d ,0x8946 
+0061 70896f10 jam 0x10 ,0x896f 
+0062 708a13cd jam 0xcd ,0x8a13 
+0063 708a0610 jam 0x10 ,0x8a06 
+0064 708a844a jam 0x4a ,0x8a84 
+0065 708a8540 jam 0x40 ,0x8a85 
+0066 708a16fe jam 0xfe ,0x8a16 
+0067 204000b9 call p_set_otp_config 
+0068 204070d7 call wdt_set_disable 
+0069 37d98200 until null ,lpo_edge 
+006a 70813b5f jam 0x5f ,0x813b 
+006b 37d98200 until null ,lpo_edge 
+006c 70813c88 jam 0x88 ,0x813c 
+006d 37d98200 until null ,lpo_edge 
+006e 6fe0c099 fetch 1 ,mem_fcomp_div 
+006f c00800ae beq xtal_16m ,p_initialize_radio_16m 
+0070 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+0071 1fe1fe04 or_into 0x04 ,pdata 
+0072 67f08a02 store 1 ,0x8a02 
+0073 70890f01 jam 0x01 ,0x890f 
+0074 708a8024 jam 0x24 ,0x8a80 
+0075 708a8162 jam 0x62 ,0x8a81 
+0076 58e61212 setarg 0xe61212 
+0077 67f18a73 store 3 ,0x8a73 
 
 p_initialize_radio2:
-006a 708a8660 jam 0x60 ,0x8a86 
-006b 708a8b3b jam 0x3b ,0x8a8b 
-006c 2040007c call p_dpll_on 
-006d 70804300 jam 0 ,core_config 
-006e 70804205 jam clksel_dpll ,core_clksel 
-006f 58557474 setarg 0x557474 
-0070 67f18968 store 3 ,0x8968 
-0071 7089606e jam 0x6e ,0x8960 
-0072 204000fb call p_rx_dcoc 
-0073 20400126 call p_rfpll_aac_ghpc 
-0074 20400077 call p_set_xtal_cap 
-0075 7041480c jam system_clk_12m ,mem_system_clk 
-0076 20206f4e branch sadc_calibration 
+0078 708a8660 jam 0x60 ,0x8a86 
+0079 708a8b3b jam 0x3b ,0x8a8b 
+007a 204000a0 call p_dpll_on 
+007b 70804300 jam 0 ,core_config 
+007c 70804205 jam clksel_dpll ,core_clksel 
+007d 58557474 setarg 0x557474 
+007e 67f18968 store 3 ,0x8968 
+007f 7089606e jam 0x6e ,0x8960 
+0080 2040011d call p_rx_dcoc 
+0081 20400148 call p_rfpll_aac_ghpc 
+0082 2040009b call p_set_xtal_cap 
+0083 7041480c jam system_clk_12m ,mem_system_clk 
+
+p_sadc_calibration:
+0084 20758000 rtn wake 
+0085 708a0777 jam 0x77 ,core_gpadc_ctrl 
+0086 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+0087 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+0088 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0089 67f080cd store 1 ,core_sadc_clkdiv 
+008a 20000bb8 nop 3000 
+008b 20400094 call p_sadc_read 
+008c 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+008d 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+008e df200008 arg 8 ,loopcnt 
+008f 20406f58 call sadc_cal_read + 1 
+0090 6fe0c419 fetch 1 ,mem_spi_write_addr 
+0091 67e0c433 store 1 ,mem_adc_cal_c7 
+0092 6240c419 storer regb ,1 ,mem_spi_write_addr 
+0093 20600000 rtn 
+
+p_sadc_read:
+0094 7080cc03 jam 0x03 ,core_sadc_ctrl 
+
+p_sadc_read_wait:
+0095 6ff08129 fetch 1 ,core_perf_status 
+0096 c3028095 bbit0 saradc_done ,p_sadc_read_wait 
+0097 68590164 fetcht 2 ,core_sadc_data 
+0098 6049440a storet 2 ,mem_adc_current_value 
+0099 7080cc00 jam 0x00 ,core_sadc_ctrl 
+009a 20600000 rtn 
 
 p_set_xtal_cap:
-0077 37d98200 until null ,lpo_edge 
-0078 6fe0c11c fetch 1 ,mem_xtal_c_sel 
+009b 20758000 rtn wake 
+009c 37d98200 until null ,lpo_edge 
+009d 6fe0c11c fetch 1 ,mem_xtal_c_sel 
 
 p_set_xtal_cap_next:
-0079 67f0813a store 1 ,core_xtal_cap 
-007a 37d98200 until null ,lpo_edge 
-007b 20600000 rtn 
+009e 67f0813a store 1 ,core_xtal_cap 
+009f 202023e2 branch lpm_write_wait 
 
 p_dpll_on:
-007c 6fe0c099 fetch 1 ,mem_fcomp_div 
-007d c00c0082 beq xtal_24m ,p_dpll_on_24m 
-007e 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-007f 1fe1fe06 or_into 0x06 ,pdata 
-0080 67f08a02 store 1 ,0x8a02 
-0081 708a05e0 jam 0xe0 ,0x8a05 
+00a0 6fe0c099 fetch 1 ,mem_fcomp_div 
+00a1 c00c00a6 beq xtal_24m ,p_dpll_on_24m 
+00a2 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00a3 1fe1fe06 or_into 0x06 ,pdata 
+00a4 67f08a02 store 1 ,0x8a02 
+00a5 708a05e0 jam 0xe0 ,0x8a05 
 
 p_dpll_on_24m:
-0082 708a00d8 jam 0xd8 ,0x8a00 
-0083 2000003c nop 60 
-0084 708a01a0 jam 0xa0 ,0x8a01 
-0085 708a00df jam 0xdf ,0x8a00 
-0086 708a01fa jam 0xfa ,0x8a01 
-0087 20000014 nop 20 
-0088 708a009f jam 0x9f ,0x8a00 
-0089 20600000 rtn 
+00a6 708a00d8 jam 0xd8 ,0x8a00 
+00a7 2000003c nop 60 
+00a8 708a01a0 jam 0xa0 ,0x8a01 
+00a9 708a00df jam 0xdf ,0x8a00 
+00aa 708a01fa jam 0xfa ,0x8a01 
+00ab 20000014 nop 20 
+00ac 708a009f jam 0x9f ,0x8a00 
+00ad 20600000 rtn 
 
 p_initialize_radio_16m:
-008a 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-008b 1fe1fe06 or_into 0x06 ,pdata 
-008c 67f08a02 store 1 ,0x8a02 
-008d 70890f00 jam 0x00 ,0x890f 
-008e 708a8023 jam 0x23 ,0x8a80 
-008f 708a81b0 jam 0xb0 ,0x8a81 
-0090 58e40909 setarg 0xe40909 
-0091 67f18a73 store 3 ,0x8a73 
-0092 708a762a jam 0x2a ,0x8a76 
-0093 70890204 jam 0x04 ,0x8902 
-0094 2020006a branch p_initialize_radio2 
+00ae 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00af 1fe1fe06 or_into 0x06 ,pdata 
+00b0 67f08a02 store 1 ,0x8a02 
+00b1 70890f00 jam 0x00 ,0x890f 
+00b2 708a8023 jam 0x23 ,0x8a80 
+00b3 708a81b0 jam 0xb0 ,0x8a81 
+00b4 58e40909 setarg 0xe40909 
+00b5 67f18a73 store 3 ,0x8a73 
+00b6 708a762a jam 0x2a ,0x8a76 
+00b7 70890204 jam 0x04 ,0x8902 
+00b8 20200078 branch p_initialize_radio2 
 
 p_set_otp_config:
-0095 203580bd branch p_set_otp_config_wake ,wake 
-0096 6fe2020d fetch 4 ,mem_otp_core_ldo 
-0097 207a0000 rtn blank 
-0098 37d98200 until null ,lpo_edge 
-0099 6ff08136 fetch 1 ,0x8136 
-009a 1fe17ef0 and pdata ,0xf0 ,pdata 
-009b 6848820d fetcht 1 ,mem_otp_core_ldo 
-009c 9841fe00 ior temp ,pdata 
-009d 1fe0fffd increase -3 ,pdata 
-009e 67f08136 store 1 ,0x8136 
-009f 37d98200 until null ,lpo_edge 
-00a0 6ff08138 fetch 1 ,0x8138 
-00a1 1fe17e07 and pdata ,0x7 ,pdata 
-00a2 6848820e fetcht 1 ,mem_otp_verf_bg 
-00a3 18498400 lshift3 temp ,temp 
-00a4 9841fe00 ior temp ,pdata 
-00a5 67f08138 store 1 ,0x8138 
-00a6 37d98200 until null ,lpo_edge 
-
-p_set_otp_config2:
-00a7 6ff08acb fetch 1 ,0x8acb 
-00a8 1fe17ef0 and pdata ,0xf0 ,pdata 
-00a9 6848820f fetcht 1 ,mem_otp_charge_pump 
-00aa 6048c15b storet 1 ,mem_otp_charge_pump_x 
-00ab 9841fe00 ior temp ,pdata 
-00ac 67f08acb store 1 ,0x8acb 
-00ad 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-00ae 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
-00af 2feffe03 isolate1 3 ,pdata 
-00b0 6ff08a06 fetch 1 ,0x8a06 
-00b1 7920fe07 setflag true ,7 ,pdata 
-00b2 67f08a06 store 1 ,0x8a06 
-00b3 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-00b4 1fe10407 and pdata ,7 ,temp 
-00b5 18520400 lshift4 temp ,temp 
-00b6 18438400 lshift temp ,temp 
-00b7 6048c438 storet 1 ,mem_ring_ibias_trim 
-00b8 6ff08a02 fetch 1 ,0x8a02 
-00b9 1fe17e1f and pdata ,0x1f ,pdata 
-00ba 9841fe00 ior temp ,pdata 
-00bb 67f08a02 store 1 ,0x8a02 
-00bc 20600000 rtn 
+00b9 203580cb branch p_set_otp_config_wake ,wake 
+00ba 6fe2020d fetch 4 ,mem_otp_core_ldo 
+00bb 207a0000 rtn blank 
+00bc 37d98200 until null ,lpo_edge 
+00bd 6ff08136 fetch 1 ,0x8136 
+00be 1fe17ef0 and pdata ,0xf0 ,pdata 
+00bf 6848820d fetcht 1 ,mem_otp_core_ldo 
+00c0 9841fe00 ior temp ,pdata 
+00c1 1fe0fffd increase -3 ,pdata 
+00c2 67f08136 store 1 ,0x8136 
+00c3 37d98200 until null ,lpo_edge 
+00c4 6ff08138 fetch 1 ,0x8138 
+00c5 1fe17e07 and pdata ,0x7 ,pdata 
+00c6 6848820e fetcht 1 ,mem_otp_verf_bg 
+00c7 18498400 lshift3 temp ,temp 
+00c8 9841fe00 ior temp ,pdata 
+00c9 67f08138 store 1 ,0x8138 
+00ca 37d98200 until null ,lpo_edge 
 
 p_set_otp_config_wake:
-00bd 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
-00be 207a0000 rtn blank 
-00bf 67e1020f store 2 ,mem_otp_charge_pump 
-00c0 202000a7 branch p_set_otp_config2 
+00cb 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
+00cc 207a0000 rtn blank 
+00cd 67e1020f store 2 ,mem_otp_charge_pump 
+
+p_set_otp_config2:
+00ce 6ff08acb fetch 1 ,0x8acb 
+00cf 1fe17ef0 and pdata ,0xf0 ,pdata 
+00d0 6848820f fetcht 1 ,mem_otp_charge_pump 
+00d1 6048c15b storet 1 ,mem_otp_charge_pump_x 
+00d2 9841fe00 ior temp ,pdata 
+00d3 67f08acb store 1 ,0x8acb 
+00d4 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00d5 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
+00d6 2feffe03 isolate1 3 ,pdata 
+00d7 6ff08a06 fetch 1 ,0x8a06 
+00d8 7920fe07 setflag true ,7 ,pdata 
+00d9 67f08a06 store 1 ,0x8a06 
+00da 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00db 1fe10407 and pdata ,7 ,temp 
+00dc 18520400 lshift4 temp ,temp 
+00dd 18438400 lshift temp ,temp 
+00de 6048c438 storet 1 ,mem_ring_ibias_trim 
+00df 6ff08a02 fetch 1 ,0x8a02 
+00e0 1fe17e1f and pdata ,0x1f ,pdata 
+00e1 9841fe00 ior temp ,pdata 
+00e2 67f08a02 store 1 ,0x8a02 
+00e3 20600000 rtn 
 
 p_rf_rx_enable:
-00c1 2040686f call rf_debug_rx_gpio_high 
-00c2 204021ba call rf_rx_agc_set 
-00c3 18002a08 force 8 ,radio_ctrl 
-00c4 18002a00 force 0 ,radio_ctrl 
-00c5 580aaada setarg 0x0aaada 
-00c6 67f18a0f store 3 ,0x8a0f 
-00c7 708a2540 jam 0x40 ,0x8a25 
-00c8 708a2610 jam 0x10 ,0x8a26 
-00c9 2000003c nop 60 
-00ca 708a01fb jam 0xfb ,0x8a01 
-00cb 708a25ff jam 0xff ,0x8a25 
-00cc 708a2630 jam 0x30 ,0x8a26 
-00cd 708a16fe jam 0xfe ,0x8a16 
-00ce 202021b4 branch rf_rx_enable + 14 
+00e4 2040686f call rf_debug_rx_gpio_high 
+00e5 204021ba call rf_rx_agc_set 
+00e6 18002a08 force 8 ,radio_ctrl 
+00e7 18002a00 force 0 ,radio_ctrl 
+00e8 580aaada setarg 0x0aaada 
+00e9 67f18a0f store 3 ,0x8a0f 
+00ea 708a2540 jam 0x40 ,0x8a25 
+00eb 708a2610 jam 0x10 ,0x8a26 
+00ec 2000003c nop 60 
+00ed 708a01fb jam 0xfb ,0x8a01 
+00ee 708a25ff jam 0xff ,0x8a25 
+00ef 708a2630 jam 0x30 ,0x8a26 
+00f0 708a16fe jam 0xfe ,0x8a16 
+00f1 202021b4 branch rf_rx_enable + 14 
 
 p_mouse_g24_retransmit:
-00cf 6fe0c793 fetch 1 ,mem_mouse_need_soft_reset 
-00d0 247a0000 nrtn blank 
-00d1 204000d3 call p_mouse_retransmit_select_device_by_pb_button 
-00d2 202060fc branch mouse_g24_retransmit + 3 
+00f2 6fe0c793 fetch 1 ,mem_mouse_need_soft_reset 
+00f3 247a0000 nrtn blank 
+00f4 204000f7 call p_mouse_retransmit_select_device_by_pb_button 
+00f5 204000fa call p_mouse_select_device_by_dpi_button_once 
+00f6 20203662 branch g24_retransmit0 
 
 p_mouse_retransmit_select_device_by_pb_button:
-00d3 6fe0c655 fetch 1 ,mem_config_select_device_button_gpio 
-00d4 c17f8000 rtneq gpio_disable 
-00d5 20205e78 branch mouse_retransmit_select_device_by_pb_button 
+00f7 6fe0c655 fetch 1 ,mem_config_select_device_button_gpio 
+00f8 c17f8000 rtneq gpio_disable 
+00f9 20205e78 branch mouse_retransmit_select_device_by_pb_button 
+
+p_mouse_select_device_by_dpi_button_once:
+00fa d8e0000c arg 12 ,queue 
+00fb 20407cef call timer_check 
+00fc 247a0000 nrtn blank 
+00fd 204003d3 call p_mouse_dpi_check_retransmit 
+00fe 20206102 branch mouse_g24_retransmit_event_set 
 
 p_g24_transmit_hop_process:
-00d6 6848c601 fetcht 1 ,mem_24g_retry 
-00d7 6fe0c621 fetch 1 ,mem_24g_fast_hop_count 
-00d8 98467c00 isub temp ,null 
-00d9 242100db nbranch p_g24_tx_fast_hop ,positive 
-00da 20203681 branch g24_transmit_hop_process + 5 
+00ff 6848c601 fetcht 1 ,mem_24g_retry 
+0100 6fe0c621 fetch 1 ,mem_24g_fast_hop_count 
+0101 98467c00 isub temp ,null 
+0102 24210104 nbranch p_g24_tx_fast_hop ,positive 
+0103 20203681 branch g24_transmit_hop_process + 5 
 
 p_g24_tx_fast_hop:
-00db 6fe2458f fetch 4 ,mem_24g_addr 
-00dc 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-00dd 98467c00 isub temp ,null 
-00de 2022b222 branch g24_ch ,zero 
-00df 20400282 call p_power_ctrl_txpower_incrs 
-00e0 2020369b branch g24_tx_fast_hop + 1 
+0104 6fe2458f fetch 4 ,mem_24g_addr 
+0105 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+0106 98467c00 isub temp ,null 
+0107 2022b222 branch g24_ch ,zero 
+0108 204002b7 call p_power_ctrl_txpower_incrs 
+0109 2020369b branch g24_tx_fast_hop + 1 
 
 p_txon:
-00e1 580aaa7e setarg 0x0aaa7e 
-00e2 67f18a0f store 3 ,0x8a0f 
-00e3 2000003c nop 60 
-00e4 708a2500 jam 0x00 ,0x8a25 
-00e5 708a260d jam 0x0d ,0x8a26 
-00e6 708a16f6 jam 0xf6 ,0x8a16 
-00e7 20202203 branch txon + 7 
+010a 580aaa7e setarg 0x0aaa7e 
+010b 67f18a0f store 3 ,0x8a0f 
+010c 2000003c nop 60 
+010d 708a2500 jam 0x00 ,0x8a25 
+010e 708a260d jam 0x0d ,0x8a26 
+010f 708a16f6 jam 0xf6 ,0x8a16 
+0110 20202203 branch txon + 7 
 
 p_set_tx_power:
-00e8 6fe0c141 fetch 1 ,mem_tx_power 
-00e9 c0032225 beq tx_power_6db ,set_tx_power_7db 
-00ea c00500ee beq tx_power_10db ,p_set_tx_power_10db 
-00eb c04f00f7 beq tx_power_f30db ,p_set_tx_power_f30db 
-00ec c05500f3 beq tx_power_factory ,p_set_tx_power_factory 
-00ed 2020220e branch set_tx_power + 2 
-
-p_set_tx_power_10db:
-00ee 708a1425 jam 0x25 ,0x8a14 
-00ef 58a93f3f setarg 0xa93f3f 
-00f0 67f18a60 store 3 ,0x8a60 
-00f1 708a631f jam 0x1f ,0x8a63 
-00f2 20600000 rtn 
+0111 6fe0c141 fetch 1 ,mem_tx_power 
+0112 c0032225 beq tx_power_6db ,set_tx_power_7db 
+0113 c04f011a beq tx_power_f30db ,p_set_tx_power_f30db 
+0114 c0550116 beq tx_power_factory ,p_set_tx_power_factory 
+0115 2020220e branch set_tx_power + 2 
 
 p_set_tx_power_factory:
-00f3 708a1417 jam 0x17 ,0x8a14 
-00f4 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
-00f5 67f18a60 store 3 ,0x8a60 
-00f6 2020221a branch set_tx_power_8a63_28 
+0116 708a1417 jam 0x17 ,0x8a14 
+0117 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
+
+p_mouse_tx_power_set:
+0118 67f18a60 store 3 ,0x8a60 
+0119 2020221a branch set_tx_power_8a63_28 
 
 p_set_tx_power_f30db:
-00f7 708a1417 jam 0x17 ,0x8a14 
-00f8 58250300 setarg 0x250300 
-00f9 67f18a60 store 3 ,0x8a60 
-00fa 2020221a branch set_tx_power_8a63_28 
+011a 708a1417 jam 0x17 ,0x8a14 
+011b 58250300 setarg 0x250300 
+011c 20200118 branch p_mouse_tx_power_set 
 
 p_rx_dcoc:
-00fb 20758000 rtn wake 
-00fc 20402160 call set_sync_on 
-00fd d8400027 arg 39 ,temp 
-00fe 2040216f call set_freq_rx 
-00ff 204021a6 call rf_rx_enable 
-0100 708a257f jam 0x7f ,0x8a25 
-0101 708a301a jam 0x1a ,0x8a30 
-0102 708a3178 jam 0x78 ,0x8a31 
-0103 708a8fb2 jam 0xb2 ,0x8a8f 
-0104 708ac200 jam 0 ,0x8ac2 
-0105 708ac300 jam 0 ,0x8ac3 
-0106 d8e00006 arg 6 ,queue 
-0107 20400118 call p_rx_dcoc_avg 
-0108 2a2ffe0d isolate1 13 ,rega 
-0109 2040211d call qset_start 
-010a 2a4ffe0d isolate1 13 ,regb 
-010b 2040211e call qset_p 
-010c d8e00005 arg 5 ,queue 
+011d 20758000 rtn wake 
+011e 20402160 call set_sync_on 
+011f d8400027 arg 39 ,temp 
+0120 2040216f call set_freq_rx 
+0121 204021a6 call rf_rx_enable 
+0122 708a257f jam 0x7f ,0x8a25 
+0123 708a301a jam 0x1a ,0x8a30 
+0124 708a3178 jam 0x78 ,0x8a31 
+0125 708a8fb2 jam 0xb2 ,0x8a8f 
+0126 708ac200 jam 0 ,0x8ac2 
+0127 708ac300 jam 0 ,0x8ac3 
+0128 d8e00006 arg 6 ,queue 
+0129 2040013a call p_rx_dcoc_avg 
+012a 2a2ffe0d isolate1 13 ,rega 
+012b 2040211d call qset_start 
+012c 2a4ffe0d isolate1 13 ,regb 
+012d 2040211e call qset_p 
+012e d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-010d 2040211c call qset1_p 
-010e 2040211e call qset_p 
-010f 20400118 call p_rx_dcoc_avg 
-0110 d8a08ac2 arg 0x8ac2 ,contw 
-0111 1a31fe00 rshift4 rega ,pdata 
-0112 20402117 call qsetxor 
-0113 1a51fe00 rshift4 regb ,pdata 
-0114 20402117 call qsetxor 
-0115 18e08fff increase -1 ,queue 
-0116 2021010d branch p_rx_dcoc_loop2 ,positive 
-0117 2020214f branch rx_dcoc_loop2 + 10 
+012f 2040211c call qset1_p 
+0130 2040211e call qset_p 
+0131 2040013a call p_rx_dcoc_avg 
+0132 d8a08ac2 arg 0x8ac2 ,contw 
+0133 1a31fe00 rshift4 rega ,pdata 
+0134 20402117 call qsetxor 
+0135 1a51fe00 rshift4 regb ,pdata 
+0136 20402117 call qsetxor 
+0137 18e08fff increase -1 ,queue 
+0138 2021012f branch p_rx_dcoc_loop2 ,positive 
+0139 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-0118 2000003c nop 60 
-0119 58000f00 setarg mem_dcoc_buf 
-011a 67f10982 store 2 ,0x8982 
-011b 58000ff0 setarg mem_dcoc_buf_end 
-011c 67f10984 store 2 ,0x8984 
-011d 70898109 jam 0x9 ,0x8981 
-011e 70898103 jam 0x3 ,0x8981 
-011f 70898006 jam 0x6 ,0x8980 
-0120 2000003c nop 60 
-0121 da200000 arg 0 ,rega 
-0122 da400000 arg 0 ,regb 
-0123 df200010 arg 16 ,loopcnt 
-0124 d8c00f00 arg mem_dcoc_buf ,contr 
-0125 2020212d branch rx_dcoc_loop 
+013a 2000003c nop 60 
+013b 58000f00 setarg mem_dcoc_buf 
+013c 67f10982 store 2 ,0x8982 
+013d 58000ff0 setarg mem_dcoc_buf_end 
+013e 67f10984 store 2 ,0x8984 
+013f 70898109 jam 0x9 ,0x8981 
+0140 70898103 jam 0x3 ,0x8981 
+0141 70898006 jam 0x6 ,0x8980 
+0142 2000003c nop 60 
+0143 da200000 arg 0 ,rega 
+0144 da400000 arg 0 ,regb 
+0145 df200010 arg 16 ,loopcnt 
+0146 d8c00f00 arg mem_dcoc_buf ,contr 
+0147 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-0126 20758000 rtn wake 
-0127 20202272 branch rfpll_aac_ghpc + 1 
-
-p_sadc_calibration:
-0128 20758000 rtn wake 
-0129 708a0777 jam 0x77 ,core_gpadc_ctrl 
-012a 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-012b 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-012c 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-012d 67f080cd store 1 ,core_sadc_clkdiv 
-012e 20000bb8 nop 3000 
-012f 20400138 call p_sadc_read 
-0130 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-0131 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-0132 df200008 arg 8 ,loopcnt 
-0133 20406f58 call sadc_cal_read + 1 
-0134 6fe0c419 fetch 1 ,mem_spi_write_addr 
-0135 67e0c433 store 1 ,mem_adc_cal_c7 
-0136 6240c419 storer regb ,1 ,mem_spi_write_addr 
-0137 20600000 rtn 
-
-p_sadc_read:
-0138 7080cc03 jam 0x03 ,core_sadc_ctrl 
-
-p_sadc_read_wait:
-0139 6ff08129 fetch 1 ,core_perf_status 
-013a c3028139 bbit0 saradc_done ,p_sadc_read_wait 
-013b 68590164 fetcht 2 ,core_sadc_data 
-013c 6049440a storet 2 ,mem_adc_current_value 
-013d 7080cc00 jam 0x00 ,core_sadc_ctrl 
-013e 20600000 rtn 
+0148 20758000 rtn wake 
+0149 20202272 branch rfpll_aac_ghpc + 1 
 
 p_set_lemode:
-013f 708a8211 jam 0x11 ,0x8a82 
-0140 708a8d12 jam 0x12 ,0x8a8d 
-0141 708a8e0a jam 0x0a ,0x8a8e 
-0142 6fe0c099 fetch 1 ,mem_fcomp_div 
-0143 c0080158 beq xtal_16m ,p_set_lemode_2m_16m 
-0144 58005762 setarg 0x5762 
-0145 67f10907 store 2 ,0x8907 
-
-p_set_lemode_2m:
-0146 70890103 jam 3 ,0x8901 
-0147 70893003 jam 3 ,0x8930 
-0148 c6168000 rtnmark1 mark_ble_2m 
-0149 70890101 jam 1 ,0x8901 
-014a 708a8207 jam 0x07 ,0x8a82 
-014b 708a8d44 jam 0x44 ,0x8a8d 
+014a 708a8211 jam 0x11 ,0x8a82 
+014b 708a8d12 jam 0x12 ,0x8a8d 
 014c 708a8e0a jam 0x0a ,0x8a8e 
 014d 6fe0c099 fetch 1 ,mem_fcomp_div 
-014e c0080155 beq xtal_16m ,p_set_lemode_1m_16m 
-014f 58002bb1 setarg 0x2bb1 
+014e c0080163 beq xtal_16m ,p_set_lemode_2m_16m 
+014f 58005762 setarg 0x5762 
 0150 67f10907 store 2 ,0x8907 
 
+p_set_lemode_2m:
+0151 70890103 jam 3 ,0x8901 
+0152 70893003 jam 3 ,0x8930 
+0153 c6168000 rtnmark1 mark_ble_2m 
+0154 70890101 jam 1 ,0x8901 
+0155 708a8207 jam 0x07 ,0x8a82 
+0156 708a8d44 jam 0x44 ,0x8a8d 
+0157 708a8e0a jam 0x0a ,0x8a8e 
+0158 6fe0c099 fetch 1 ,mem_fcomp_div 
+0159 c0080160 beq xtal_16m ,p_set_lemode_1m_16m 
+015a 58002bb1 setarg 0x2bb1 
+015b 67f10907 store 2 ,0x8907 
+
 p_set_lemode_1m:
-0151 c6978000 rtnmark0 mark_ble_lr 
-0152 70893024 jam 0x24 ,0x8930 
-0153 70890105 jam 5 ,0x8901 
-0154 20600000 rtn 
+015c c6978000 rtnmark0 mark_ble_lr 
+015d 70893024 jam 0x24 ,0x8930 
+015e 70890105 jam 5 ,0x8901 
+015f 20600000 rtn 
 
 p_set_lemode_1m_16m:
-0155 58004189 setarg 0x4189 
-0156 67f10907 store 2 ,0x8907 
-0157 20200151 branch p_set_lemode_1m 
+0160 58004189 setarg 0x4189 
+0161 67f10907 store 2 ,0x8907 
+0162 2020015c branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-0158 58008312 setarg 0x8312 
-0159 67f10907 store 2 ,0x8907 
-015a 20200146 branch p_set_lemode_2m 
+0163 58008312 setarg 0x8312 
+0164 67f10907 store 2 ,0x8907 
+0165 20200151 branch p_set_lemode_2m 
 
 p_le_check_retransmit_timesout:
-015b 6fe0cbfa fetch 1 ,mem_le_conn_rcv_new 
-015c da600100 arg 256 ,regc 
-015d 9a60fe00 iadd regc ,pdata 
-015e 20600000 rtn 
-
-p_le_got_first_packet:
-015f 2020017f branch p_le_got_first_packet_new 
+0166 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0167 da600100 arg 256 ,regc 
+0168 9a60fe00 iadd regc ,pdata 
+0169 20600000 rtn 
 
 p_le_slave_match:
-0160 20400162 call p_le_check_retransmit 
-0161 20202563 branch le_slave_match + 1 
+016a 2040016c call p_le_check_retransmit 
+016b 20202563 branch le_slave_match + 1 
 
 p_le_check_retransmit:
-0162 6fe0cbfb fetch 1 ,mem_le_conn_first_rcv 
-0163 207a0000 rtn blank 
-0164 6fe0cbfc fetch 1 ,mem_le_check_retransmit_flag 
-0165 247a0000 nrtn blank 
-0166 6848cbfb fetcht 1 ,mem_le_conn_first_rcv 
-0167 6fe0cbfa fetch 1 ,mem_le_conn_rcv_new 
-0168 98467c00 isub temp ,null 
-0169 2441015b ncall p_le_check_retransmit_timesout ,positive 
-016a 98467e00 isub temp ,pdata 
-016b 1fe67c64 sub pdata ,100 ,null 
-016c 20210174 branch p_le_check_retransmit_count ,positive 
-016d 6fe0cbfd fetch 1 ,mem_le_retransmit_cnt 
-016e 1fe67c14 sub pdata ,20 ,null 
-016f 24410172 ncall p_app_ble_disconnect ,positive 
-0170 704bfc01 jam 1 ,mem_le_check_retransmit_flag 
-0171 20600000 rtn 
+016c 6fe0cbfa fetch 1 ,mem_le_conn_first_rcv 
+016d 207a0000 rtn blank 
+016e 6fe0cbfb fetch 1 ,mem_le_check_retransmit_flag 
+016f 247a0000 nrtn blank 
+0170 6848cbfa fetcht 1 ,mem_le_conn_first_rcv 
+0171 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0172 98467c00 isub temp ,null 
+0173 24410166 ncall p_le_check_retransmit_timesout ,positive 
+0174 98467e00 isub temp ,pdata 
+0175 1fe67c64 sub pdata ,100 ,null 
+0176 2021017e branch p_le_check_retransmit_count ,positive 
+0177 6fe0cbfc fetch 1 ,mem_le_retransmit_cnt 
+0178 1fe67c14 sub pdata ,20 ,null 
+0179 2441017c ncall p_app_ble_disconnect ,positive 
+017a 704bfb01 jam 1 ,mem_le_check_retransmit_flag 
+017b 20600000 rtn 
 
 p_app_ble_disconnect:
-0172 704bfe01 jam 1 ,mem_le_check_retransmit_discon_flag 
-0173 2020431f branch app_ble_disconnect 
+017c 704bfd01 jam 1 ,mem_le_check_retransmit_discon_flag 
+017d 2020431f branch app_ble_disconnect 
 
 p_le_check_retransmit_count:
-0174 6848817f fetcht 1 ,mem_le_arq 
-0175 6fe0804c fetch 1 ,mem_le_rxbuf_data_header 
-0176 1fe37e00 rshift pdata ,pdata 
-0177 9842fe00 ixor temp ,pdata 
-0178 2feffe02 isolate1 nesn ,pdata 
-0179 58000000 setarg 0 
-017a 6848cbfd fetcht 1 ,mem_le_retransmit_cnt 
-017b 7920fe00 setflag true ,0 ,pdata 
-017c 98408400 iadd temp ,temp 
-017d 6048cbfd storet 1 ,mem_le_retransmit_cnt 
-017e 20600000 rtn 
+017e 6848817f fetcht 1 ,mem_le_arq 
+017f 6fe0804c fetch 1 ,mem_le_rxbuf_data_header 
+0180 1fe37e00 rshift pdata ,pdata 
+0181 9842fe00 ixor temp ,pdata 
+0182 2feffe02 isolate1 nesn ,pdata 
+0183 58000000 setarg 0 
+0184 6848cbfc fetcht 1 ,mem_le_retransmit_cnt 
+0185 7920fe00 setflag true ,0 ,pdata 
+0186 98408400 iadd temp ,temp 
+0187 6048cbfc storet 1 ,mem_le_retransmit_cnt 
+0188 20600000 rtn 
 
 p_le_got_first_packet_new:
-017f 6fe08005 fetch 1 ,mem_le_conn_rcv 
-0180 1fe0fe01 increase 1 ,pdata 
-0181 67e08005 store 1 ,mem_le_conn_rcv 
-0182 24368186 nbranch p_le_got_first_packet_new + 7 ,match 
-0183 6fe0cbfa fetch 1 ,mem_le_conn_rcv_new 
-0184 1fe0fe01 increase 1 ,pdata 
-0185 67e0cbfa store 1 ,mem_le_conn_rcv_new 
-0186 6fe08168 fetch 1 ,mem_le_state 
-0187 c3818000 rtnbit1 lestate_got_first_packet 
-0188 79207e03 set1 lestate_got_first_packet ,pdata 
-0189 67e08168 store 1 ,mem_le_state 
-018a 6fe142f5 fetch 2 ,mem_le_init_superto 
-018b 67e10196 store 2 ,mem_le_superto 
-018c 58000000 setarg 0 
-018d 67e2431d store 4 ,mem_le_transmit_window 
-018e 20600000 rtn 
+0189 6fe08005 fetch 1 ,mem_le_conn_rcv 
+018a 1fe0fe01 increase 1 ,pdata 
+018b 67e08005 store 1 ,mem_le_conn_rcv 
+018c 24368190 nbranch p_le_got_first_packet_new + 7 ,match 
+018d 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+018e 1fe0fe01 increase 1 ,pdata 
+018f 67e0cbf9 store 1 ,mem_le_conn_rcv_new 
+0190 2020259b branch le_got_first_packet + 4 
 
 p_le_rx_dec:
-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 
+0191 2040281c call le_check_retransmit 
+0192 6a20804d fetchr rega ,1 ,mem_le_rxbuf_data_length 
+0193 1a20a3fc increase -4 ,rega 
+0194 242126fa nbranch le_crc_fail_consecutive ,positive 
+0195 2020268e branch le_rx_dec + 6 
 
 p_le_rx_nopayload:
-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 
+0196 09800018 parse demod ,bucket ,24 
+0197 1fef7e00 rshift32 pdata ,pdata 
+0198 1ff17e00 rshift16 pdata ,pdata 
+0199 e7e18005 istore 3 ,contw 
+019a 78287c00 enable swfine 
+019b 2040270d call le_set_until_tx_timer 
+019c 202326f6 branch le_crc_fail ,crc_failed 
+019d c59926af bmark0 mark_ble_encryption ,le_rx_match 
+019e 6fe0804d fetch 1 ,mem_le_rxbuf_data_length 
+019f 203a26af branch le_rx_match ,blank 
+01a0 1fe0fffc increase -4 ,pdata 
+01a1 67e0804d store 1 ,mem_le_rxbuf_data_length 
+01a2 204072cb call wait_ccm_done 
+01a3 6ff08108 fetch 1 ,core_misc_status 
+01a4 c303a6fa bbit0 7 ,le_crc_fail_consecutive 
+01a5 1800700c force regidx_result ,regext_index 
+01a6 65e20154 storer regext ,4 ,mem_le_peer_mic 
+01a7 202026af branch le_rx_match 
 
 p_le_parse:
-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 
+01a8 6fe0c334 fetch 1 ,mem_le_packet_llid 
+01a9 c1000000 rtneq llid_reserved 
+01aa c001b04a beq llid_le_ll ,le_parse_ll 
+01ab 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-01aa 793f8030 set0 mark_ble_crc_fail ,mark 
-01ab 20202af6 branch le_init_adv + 1 
+01ac 793f8030 set0 mark_ble_crc_fail ,mark 
+01ad 20202af6 branch le_init_adv + 1 
+
+p_le_receive_rxon:
+01ae 204025c2 call le_prep 
+01af c59781b4 bmark0 mark_ble_lr ,p_le_receive_nolr 
+01b0 783cfc00 pulse dewhiten_code_calc 
+01b1 2000001e nop 30 
+01b2 204025c2 call le_prep 
+01b3 19699600 lshift3 timeup ,timeup 
+
+p_le_receive_nolr:
+01b4 7856fc00 disable match 
+01b5 7826fc00 enable decode_fec0 
+01b6 7830fc00 enable is_rx 
+01b7 78507c00 disable is_tx 
+01b8 19623600 copy timeup ,stop_watch 
+01b9 37c18400 correlate null ,timeout 
+01ba 203701bd branch p_le_receive_on_attempt ,attempt 
+01bb 1b420400 copy clke ,temp 
+01bc 604b000f storet 6 ,mem_sync_clke 
+
+p_le_receive_on_attempt:
+01bd 242c26fa nbranch le_unsync_end ,sync 
+01be 78287c00 enable swfine 
+01bf 6fe0c167 fetch 1 ,mem_le_tx_ifs_defference 
+01c0 d8404e20 arg param_20ms_init ,temp 
+01c1 98408400 iadd temp ,temp 
+01c2 6fe0c148 fetch 1 ,mem_system_clk 
+01c3 984fb600 imul32 temp ,stop_watch 
+01c4 20406877 call rf_debug_rx_sync_line 
+01c5 20372677 branch le_receive_skip ,attempt 
+01c6 204001cb call p_calc_clke_all_modem 
+01c7 6fe08168 fetch 1 ,mem_le_state 
+01c8 c301a677 bbit0 lestate_got_first_packet ,le_receive_skip 
+01c9 2055a477 call lpm_adjust_clk ,wake 
+01ca 20202677 branch le_receive_skip 
+
+p_calc_clke_all_modem:
+01cb 684b000f fetcht 6 ,mem_sync_clke 
+01cc 1b427e00 copy clke ,pdata 
+01cd 20407d12 call clk_diff 
+01ce 1fe20400 copy pdata ,temp 
+01cf 204026ff call calc_clke_all_modem 
+01d0 1b425600 copy clke ,rege 
+01d1 1d227e00 copy clke_rt ,pdata 
+01d2 9840fe00 iadd temp ,pdata 
+01d3 1fe25200 copy pdata ,clke_rt 
+01d4 20600000 rtn 
+
+p_lpm_adjust_clk:
+01d5 c584a489 bmark0 mark_context ,lpm_clear_counter 
+01d6 684a40ad fetcht 4 ,mem_sleep_counter_all 
+01d7 dfe00600 arg 0x600 ,pdata 
+01d8 98467c00 isub temp ,null 
+01d9 20610000 rtn positive 
+01da 18422200 copy temp ,rega 
+01db 684b000f fetcht 6 ,mem_sync_clke 
+01dc 1d627e00 deposit rege 
+01dd 20407d10 call clk_diff_rt 
+01de 1a220400 copy rega ,temp 
+01df 2020247d branch lpm_adjust_clk + 6 
 
 p_le_adv_not_match:
-01ac 20402152 call shutdown_radio 
-01ad 70890000 jam 0 ,0x8900 
-01ae 793f8030 set0 mark_ble_crc_fail ,mark 
-01af 20202ae3 branch le_adv_not_match + 1 
+01e0 20402152 call shutdown_radio 
+01e1 70890000 jam 0 ,0x8900 
+01e2 793f8030 set0 mark_ble_crc_fail ,mark 
+01e3 20202ae3 branch le_adv_not_match + 1 
 
 p_le_parse_l2cap:
-01b0 efe10006 ifetch 2 ,contr 
-01b1 c00201b3 beq le_l2cap_cid_att ,p_le_parse_att 
-01b2 202028eb branch le_parse_l2cap_next + 2 
+01e4 efe10006 ifetch 2 ,contr 
+01e5 c00201e7 beq le_l2cap_cid_att ,p_le_parse_att 
+01e6 202028eb branch le_parse_l2cap_next + 2 
 
 p_le_parse_att:
-01b3 efe18006 ifetch 3 ,contr 
-01b4 67e1c397 store 3 ,mem_le_att_opcode 
-01b5 c00501b8 beq attop_read_request ,p_le_parse_att_read_request 
-01b6 c00901c7 beq attop_write_request ,p_le_parse_att_write_request 
-01b7 20202b96 branch le_parse_att2 
+01e7 efe18006 ifetch 3 ,contr 
+01e8 67e1c397 store 3 ,mem_le_att_opcode 
+01e9 c00501ec beq attop_read_request ,p_le_parse_att_read_request 
+01ea c00901fb beq attop_write_request ,p_le_parse_att_write_request 
+01eb 20202b96 branch le_parse_att2 
 
 p_le_parse_att_read_request:
-01b8 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01b9 c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
-01ba 20402dc7 call le_check_encrypt_state 
-01bb 68494398 fetcht 2 ,mem_le_att_handle 
-01bc 6fe0c321 fetch 1 ,mem_le_configuration 
-01bd c28181c2 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+01ec 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+01ed c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
+01ee 20402dc7 call le_check_encrypt_state 
+01ef 68494398 fetcht 2 ,mem_le_att_handle 
+01f0 6fe0c321 fetch 1 ,mem_le_configuration 
+01f1 c28181f6 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-01be 6fe14398 fetch 2 ,mem_le_att_handle 
-01bf c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
-01c0 68494398 fetcht 2 ,mem_le_att_handle 
-01c1 20202d1d branch le_send_att_read_response 
+01f2 6fe14398 fetch 2 ,mem_le_att_handle 
+01f3 c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
+01f4 68494398 fetcht 2 ,mem_le_att_handle 
+01f5 20202d1d branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-01c2 6fe14332 fetch 2 ,mem_le_pairing_handle 
-01c3 98467c00 isub temp ,null 
-01c4 242281be nbranch p_le_send_att_read_response ,zero 
-01c5 243401be nbranch p_le_send_att_read_response ,user 
-01c6 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01f6 6fe14332 fetch 2 ,mem_le_pairing_handle 
+01f7 98467c00 isub temp ,null 
+01f8 242281f2 nbranch p_le_send_att_read_response ,zero 
+01f9 243401f2 nbranch p_le_send_att_read_response ,user 
+01fa 20202d46 branch le_send_att_read_response_error_insufficient_auth 
 
 p_le_parse_att_write_request:
-01c7 18c22200 copy contr ,rega 
-01c8 6fe14335 fetch 2 ,mem_le_l2cap_size 
-01c9 1fe0a5fd add pdata ,-3 ,regb 
-01ca 20402929 call le_writeatt_cb 
-01cb 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-01cc c07fadac beq 0xff ,le_send_att_write_response_check_auth 
-01cd 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
-01ce 203a2dac branch le_send_att_write_response_check_auth ,blank 
-01cf 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-01d0 c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-01d1 5800001a setarg 0x001a 
-01d2 68494398 fetcht 2 ,mem_le_att_handle 
-01d3 98467c00 isub temp ,null 
-01d4 2422adac nbranch le_send_att_write_response_check_auth ,zero 
-01d5 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01fb 18c22200 copy contr ,rega 
+01fc 6fe14335 fetch 2 ,mem_le_l2cap_size 
+01fd 1fe0a5fd add pdata ,-3 ,regb 
+01fe 20402929 call le_writeatt_cb 
+01ff 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0200 c07fadac beq 0xff ,le_send_att_write_response_check_auth 
+0201 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+0202 203a2dac branch le_send_att_write_response_check_auth ,blank 
+0203 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+0204 c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0205 5800001a setarg 0x001a 
+0206 68494398 fetcht 2 ,mem_le_att_handle 
+0207 98467c00 isub temp ,null 
+0208 2422adac nbranch le_send_att_write_response_check_auth ,zero 
+0209 20202d46 branch le_send_att_read_response_error_insufficient_auth 
 
 p_mouse_le:
-01d6 20402a28 call le_fifo_check_nearly_full 
-01d7 247a0000 nrtn blank 
-01d8 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-01d9 c07f81e1 beq 0xff ,p_mouse_le_next 
-01da 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-01db 1fe17e03 and pdata ,0x03 ,pdata 
-01dc c1818000 rtnne 0x03 
-01dd 6fe0cbfc fetch 1 ,mem_le_check_retransmit_flag 
-01de 207a0000 rtn blank 
-01df 6fe0cbfe fetch 1 ,mem_le_check_retransmit_discon_flag 
-01e0 247a0000 nrtn blank 
+020a 20402a28 call le_fifo_check_nearly_full 
+020b 247a0000 nrtn blank 
+020c 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+020d c07f8215 beq 0xff ,p_mouse_le_next 
+020e 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+020f 1fe17e03 and pdata ,0x03 ,pdata 
+0210 c1818000 rtnne 0x03 
+0211 6fe0cbfb fetch 1 ,mem_le_check_retransmit_flag 
+0212 207a0000 rtn blank 
+0213 6fe0cbfd fetch 1 ,mem_le_check_retransmit_discon_flag 
+0214 247a0000 nrtn blank 
 
 p_mouse_le_next:
-01e1 6fe0c956 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-01e2 205a5a71 call mouse_clear_sensor_data_by_reset ,blank 
-01e3 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01e4 c280db5b bbit1 mouse_24g_pairing_flag ,mouse_le_send_empty_packet 
-01e5 c2805b5b bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
-01e6 c282db5b bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-01e7 c2835b5b bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_le_send_empty_packet 
-01e8 20405601 call mouse_motion 
-01e9 20405ab2 call mouse_check_125hz 
-01ea 24740000 nrtn user 
-01eb 20405abc call mouse_current_mult_update 
-01ec 204003ee call p_mouse_data_xy_release 
-01ed 20205b37 branch mouse_le_next + 12 
+0215 6fe0c956 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0216 205a5a71 call mouse_clear_sensor_data_by_reset ,blank 
+0217 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0218 c280db5b bbit1 mouse_24g_pairing_flag ,mouse_le_send_empty_packet 
+0219 c2805b5b bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+021a c282db5b bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+021b c2835b5b bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_le_send_empty_packet 
+021c 20405601 call mouse_motion 
+021d 20405ab2 call mouse_check_125hz 
+021e 24740000 nrtn user 
+021f 20405abc call mouse_current_mult_update 
+0220 2040041a call p_mouse_data_xy_release 
+0221 20205b37 branch mouse_le_next + 12 
 
 p_gpio_set_wake:
-01ee 18467cff sub temp ,ui_button_gpio_disable ,null 
-01ef 20628000 rtn zero 
-01f0 d9000004 arg 4 ,debug 
-01f1 284ffe07 isolate1 gpio_active_bit ,temp 
-01f2 2020eebd branch gpio_set_wake_high ,true 
-01f3 d9000003 arg 3 ,debug 
-01f4 20206ebd branch gpio_set_wake_high 
+0222 18467cff sub temp ,ui_button_gpio_disable ,null 
+0223 20628000 rtn zero 
+0224 d9000004 arg 4 ,debug 
+0225 284ffe07 isolate1 gpio_active_bit ,temp 
+0226 2020eebd branch gpio_set_wake_high ,true 
+0227 d9000003 arg 3 ,debug 
+0228 20206ebd branch gpio_set_wake_high 
 
 p_gpio_set_wake_by_current_state:
-01f5 18467cff sub temp ,gpio_disable ,null 
-01f6 20628000 rtn zero 
-01f7 6048cb1e storet 1 ,mem_mouse_wheel_temp_gpio 
-01f8 20406ee6 call gpio_get_bit 
-01f9 202081fe branch p_gpio_set_qdec_mode ,true 
-
-p_gpio_set_low_wake_disable_qdec:
-01fa 6848cb1e fetcht 1 ,mem_mouse_wheel_temp_gpio 
-01fb 20406f0f call gpio_set_high_impedance 
-01fc 6848cb1e fetcht 1 ,mem_mouse_wheel_temp_gpio 
-01fd 20200205 branch p_gpio_set_low_wake 
+0229 18467cff sub temp ,gpio_disable ,null 
+022a 20628000 rtn zero 
+022b 20406ee6 call gpio_get_bit 
+022c 2020822f branch p_gpio_set_qdec_mode ,true 
+
+p_gpio_set_low_wake:
+022d d9000003 arg 3 ,debug 
+022e 20206ebd branch gpio_set_wake_high 
 
 p_gpio_set_qdec_mode:
-01fe 704b1d01 jam 1 ,mem_mouse_qdec_set_flag 
-01ff 6848cb1e fetcht 1 ,mem_mouse_wheel_temp_gpio 
-0200 20406f0f call gpio_set_high_impedance 
-0201 6848cb1e fetcht 1 ,mem_mouse_wheel_temp_gpio 
-0202 20200203 branch p_mouse_qdec_lpm_cfg 
+022f 704b1d01 jam 1 ,mem_mouse_qdec_set_flag 
 
 p_mouse_qdec_lpm_cfg:
-0203 d9000006 arg 6 ,debug 
-0204 20206ebd branch gpio_set_wake_high 
-
-p_gpio_set_low_wake:
-0205 d9000003 arg 3 ,debug 
-0206 20206ebd branch gpio_set_wake_high 
+0230 d9000006 arg 6 ,debug 
+0231 20206ebd branch gpio_set_wake_high 
 
 p_mouse_puchk_disable:
-0207 58000010 setarg 0x10 
+0232 58000010 setarg 0x10 
 
 p_mouse_puchk_set:
-0208 67f08141 store 1 ,core_puwakeup 
-0209 37d98200 until null ,lpo_edge 
-020a 20600000 rtn 
-
-p_mouse_puchk_enable:
-020b 58000080 setarg 0x80 
-020c 20200208 branch p_mouse_puchk_set 
+0233 67f08141 store 1 ,core_puwakeup 
+0234 202023e2 branch lpm_write_wait 
 
 p_mouse_lpm_before_common:
-020d 204003aa call p_clear_wake 
-020e 704b1d00 jam 0 ,mem_mouse_qdec_set_flag 
-020f 2040550d call mouse_lpm_before_common + 1 
-0210 204054f9 call mouse_gpio_pd_idle 
-0211 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
-0212 20206ed3 branch gpio_clr_wake 
+0235 204003f7 call p_clear_wake 
+0236 704b1d00 jam 0 ,mem_mouse_qdec_set_flag 
+0237 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+0238 20406ef7 call gpio_out_active 
+0239 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+023a 20406ed3 call gpio_clr_wake 
+023b 2040550d call mouse_lpm_before_common + 1 
+023c 204054f9 call mouse_gpio_pd_idle 
+
+p_mouse_wheel_set_impedance:
+023d 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
+023e 20406f0f call gpio_set_high_impedance 
+023f 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
+0240 20206f0f branch gpio_set_high_impedance 
 
 p_lpm_sleep:
-0213 6fe143e9 fetch 2 ,mem_cb_before_lpm_sleep 
-0214 20407d79 call callback_func 
-0215 58000012 setarg 0x12 
-0216 20400079 call p_set_xtal_cap_next 
 
 p_lpm_sleep_skip_cb_function:
-0217 6fe240ad fetch 4 ,mem_sleep_counter_all 
-0218 9840fe00 iadd temp ,pdata 
-0219 67e240ad store 4 ,mem_sleep_counter_all 
-021a 20400220 call p_lpm_save_context 
-021b 2040021d call p_mouse_puchk_set_check 
-021c 20202425 branch lpm_sleep_skip_cb_function + 4 
+0241 6fe240ad fetch 4 ,mem_sleep_counter_all 
+0242 9840fe00 iadd temp ,pdata 
+0243 67e240ad store 4 ,mem_sleep_counter_all 
+0244 2040024b call p_lpm_save_context 
+0245 20400247 call p_mouse_puchk_set_check 
+0246 20202425 branch lpm_sleep_skip_cb_function + 4 
 
 p_mouse_puchk_set_check:
-021d 6fe0cb1d fetch 1 ,mem_mouse_qdec_set_flag 
-021e 203a0207 branch p_mouse_puchk_disable ,blank 
-021f 2020020b branch p_mouse_puchk_enable 
+0247 6fe0cb1d fetch 1 ,mem_mouse_qdec_set_flag 
+0248 203a0232 branch p_mouse_puchk_disable ,blank 
+
+p_mouse_puchk_enable:
+0249 58000080 setarg 0x80 
+024a 20200233 branch p_mouse_puchk_set 
 
 p_lpm_save_context:
-0220 600440e7 storer mark ,8 ,mem_saved_mark 
-0221 d8c08070 arg core_gpio_conf ,contr 
-0222 d8a040cc arg mem_saved_gpio ,contw 
-0223 20407c8f call memcpy16 
-0224 d8c080d4 arg core_gpio_conf_hi ,contr 
-0225 20407c89 call memcpy8 
-0226 6ff08080 fetch 1 ,core_spid_ctrl 
-0227 67e0c0ef store 1 ,mem_saved_spidctrl 
-0228 18422400 copy temp ,regb 
+024b 600440e7 storer mark ,8 ,mem_saved_mark 
+024c d8c08070 arg core_gpio_conf ,contr 
+024d d8a040cc arg mem_saved_gpio ,contw 
+024e 20407c8f call memcpy16 
+024f d8c080d4 arg core_gpio_conf_hi ,contr 
+0250 20407c89 call memcpy8 
+0251 6ff08080 fetch 1 ,core_spid_ctrl 
+0252 67e0c0ef store 1 ,mem_saved_spidctrl 
+0253 18422400 copy temp ,regb 
 
 p_lpm_write_gpio_wakeup:
-0229 df20000c arg 12 ,loopcnt 
-022a da200016 arg mem_gpio_wakeup_cfg ,rega 
-022b da60814d arg core_gpio_wakeup_cfg ,regc 
-022c 37d98200 until null ,lpo_edge 
+0254 df20000c arg 12 ,loopcnt 
+0255 da200016 arg mem_gpio_wakeup_cfg ,rega 
+0256 da60814d arg core_gpio_wakeup_cfg ,regc 
+0257 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop:
-022d efe08011 ifetch 1 ,rega 
-022e e8408013 ifetcht 1 ,regc 
-022f 98467c00 isub temp ,null 
-0230 20228233 branch p_lpm_write_gpio_loop_next ,zero 
-0231 e7e08013 istore 1 ,regc 
-0232 37d98200 until null ,lpo_edge 
+0258 efe08011 ifetch 1 ,rega 
+0259 e8408013 ifetcht 1 ,regc 
+025a 98467c00 isub temp ,null 
+025b 2022825e branch p_lpm_write_gpio_loop_next ,zero 
+025c e7e08013 istore 1 ,regc 
+025d 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop_next:
-0233 1a20a201 increase 1 ,rega 
-0234 1a60a601 increase 1 ,regc 
-0235 c200022d loop p_lpm_write_gpio_loop 
-0236 1a420400 copy regb ,temp 
-0237 20600000 rtn 
+025e 1a20a201 increase 1 ,rega 
+025f 1a60a601 increase 1 ,regc 
+0260 c2000258 loop p_lpm_write_gpio_loop 
+0261 1a420400 copy regb ,temp 
+0262 20600000 rtn 
 
 p_otp_read_data:
-0238 20406b3a call enable_otp_read 
-0239 20406b75 call otp_read_data + 1 
-023a 20206b38 branch otp_disable_chgpump 
+0263 20406b3a call enable_otp_read 
+0264 20406b75 call otp_read_data + 1 
+0265 20206b38 branch otp_disable_chgpump 
 
 p_g24_reconn_dispatch:
-023b 6fe145e0 fetch 2 ,mem_24g_reconn_count 
-023c d84001f8 arg 0x01f8 ,temp 
-023d 98417e00 iand temp ,pdata 
-023e 203a0243 branch p_g24_reconn_dispatch_next ,blank 
-023f 6fe145e0 fetch 2 ,mem_24g_reconn_count 
-0240 1fe0fe01 increase 1 ,pdata 
-0241 67e145e0 store 2 ,mem_24g_reconn_count 
-0242 20600000 rtn 
+0266 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+0267 d84001f8 arg 0x01f8 ,temp 
+0268 98417e00 iand temp ,pdata 
+0269 203a026b branch p_g24_reconn_dispatch_next ,blank 
+026a 20203561 branch g24_reconn_dispatch + 5 
 
 p_g24_reconn_dispatch_next:
-0243 2040357f call g24_reconn_data_prep 
-0244 20403651 call g24_transmit_receive_ack 
-0245 242c3586 nbranch g24_reconn_device_fail ,sync 
-0246 2437b586 nbranch g24_reconn_device_fail ,user3 
-0247 2040366e call g24_ackpayload_parse 
-0248 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-0249 203a0252 branch p_recv_addr_zero_skip ,blank 
+026b 2040357f call g24_reconn_data_prep 
+026c 20403651 call g24_transmit_receive_ack 
+026d 242c3586 nbranch g24_reconn_device_fail ,sync 
+026e 2437b586 nbranch g24_reconn_device_fail ,user3 
+026f 2040366e call g24_ackpayload_parse 
+0270 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+0271 203a028b branch p_recv_addr_zero_skip ,blank 
 
 p_g24_reconn_dispatch_next_2:
-024a 6fe245cc fetch 4 ,mem_24g_pair_addr 
-024b 684a458f fetcht 4 ,mem_24g_addr 
-024c 98467c00 isub temp ,null 
-024d 2022824f branch p_g24_reconn_mode_judge ,zero 
-024e 2020356e branch g24_reconn_dispatch_next + 9 
+0272 6fe245cc fetch 4 ,mem_24g_pair_addr 
+0273 684a458f fetcht 4 ,mem_24g_addr 
+0274 98467c00 isub temp ,null 
+0275 20228277 branch p_g24_reconn_mode_judge ,zero 
+0276 2020356e branch g24_reconn_dispatch_next + 9 
 
 p_g24_reconn_mode_judge:
-024f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0250 c2983291 bbit1 mouse_enable_auto_24g_paring ,g24_pair_start 
-0251 20203549 branch g24_reconn_receiver_addr 
-
-p_recv_addr_zero_skip:
-0252 6fe2455f fetch 4 ,mem_24g_rxpayload + 2 
-0253 207a0000 rtn blank 
-0254 2020024a branch p_g24_reconn_dispatch_next_2 
+0277 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0278 c298604e bbit1 mouse_enable_auto_24g_paring ,mouse_24g_pair_mode_check 
+0279 20203549 branch g24_reconn_receiver_addr 
+
+p_g24_reconn_device_fail:
+027a 6fe0c5e3 fetch 1 ,mem_24g_fast_conn_enable 
+027b 203a3222 branch g24_ch ,blank 
+027c 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+027d 1fe0fe01 increase 1 ,pdata 
+027e 67e145e0 store 2 ,mem_24g_reconn_count 
+027f 2feffe09 isolate1 9 ,pdata 
+0280 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+0281 c0028283 beq pair_and_receiver ,p_g24_reconn_pair_and_receiver 
+0282 2020358d branch g24_reconn_device_fail + 7 
+
+p_g24_reconn_pair_and_receiver:
+0283 2020b549 branch g24_reconn_receiver_addr ,true 
+0284 2020329c branch g24_pair_init_param 
 
 p_mouse_param_init:
-0255 2040543b call mouse_param_common_init 
-0256 20400258 call p_mouse_le_buff_modify 
-0257 2020544c branch mouse_param_init + 2 
-
-p_mouse_le_buff_modify:
-0258 58004a1d setarg mem_le_tx_buffer0_omemalloc_new 
-0259 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
-025a 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
-025b 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
-025c 20600000 rtn 
+0285 2040543b call mouse_param_common_init 
+0286 58004a1d setarg mem_le_tx_buffer0_omemalloc_new 
+0287 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
+0288 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
+0289 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
+028a 2020544c branch mouse_param_init + 2 
+
+p_recv_addr_zero_skip:
+028b 6fe245e4 fetch 4 ,mem_24g_fast_conn_addr 
+028c 684a458f fetcht 4 ,mem_24g_addr 
+028d 98467c00 isub temp ,null 
+028e 20228272 branch p_g24_reconn_dispatch_next_2 ,zero 
+028f 6fe2455f fetch 4 ,mem_24g_rxpayload + 2 
+0290 207a0000 rtn blank 
+0291 20200272 branch p_g24_reconn_dispatch_next_2 
 
 p_power_ctrl_start:
-025d 6fe0c437 fetch 1 ,mem_power_ctrl_disable 
-025e 247a0000 nrtn blank 
-025f 6fe144e9 fetch 2 ,mem_ui_state_map 
-0260 c3858000 rtnbit1 ui_state_ble_adv 
-0261 6a2145f0 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
-0262 204035b4 call rssi_average 
-0263 6048c624 storet 1 ,mem_rssi_avg_received 
-0264 6fe0c629 fetch 1 ,mem_rssi_dis_max_24g 
-0265 c5130267 bmark1 mark_24g ,p_power_ctrl_start_next 
-0266 6fe0c62c fetch 1 ,mem_rssi_dis_max_ble 
+0292 6fe0c437 fetch 1 ,mem_power_ctrl_disable 
+0293 247a0000 nrtn blank 
+0294 6fe144e9 fetch 2 ,mem_ui_state_map 
+0295 c3858000 rtnbit1 ui_state_ble_adv 
+0296 6a2145f0 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+0297 204035b4 call rssi_average 
+0298 6048c624 storet 1 ,mem_rssi_avg_received 
+0299 6fe0c629 fetch 1 ,mem_rssi_dis_max_24g 
+029a c513029c bmark1 mark_24g ,p_power_ctrl_start_next 
+029b 6fe0c62c fetch 1 ,mem_rssi_dis_max_ble 
 
 p_power_ctrl_start_next:
-0267 98467c00 isub temp ,null 
-0268 24210281 nbranch p_power_ctrl_txpower_incrs_force ,positive 
-0269 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-026a 1fe67c02 sub pdata ,2 ,null 
-026b 2421026f nbranch p_power_ctrl_txpower_decrs_check ,positive 
-026c 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-026d c0000282 beq 0 ,p_power_ctrl_txpower_incrs 
-026e 20600000 rtn 
+029c 98467c00 isub temp ,null 
+029d 242102b6 nbranch p_power_ctrl_txpower_incrs_force ,positive 
+029e 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+029f 1fe67c02 sub pdata ,2 ,null 
+02a0 242102a4 nbranch p_power_ctrl_txpower_decrs_check ,positive 
+02a1 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a2 c00002b7 beq 0 ,p_power_ctrl_txpower_incrs 
+02a3 20600000 rtn 
 
 p_power_ctrl_txpower_decrs_check:
-026f 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0270 6848c627 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
-0271 98467c00 isub temp ,null 
-0272 24628000 nrtn zero 
-0273 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+02a4 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a5 6848c627 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
+02a6 98467c00 isub temp ,null 
+02a7 24628000 nrtn zero 
+02a8 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_decrs:
-0274 6848c624 fetcht 1 ,mem_rssi_avg_received 
-0275 6fe0c628 fetch 1 ,mem_rssi_dis_min_24g 
-0276 c5130278 bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
-0277 6fe0c62b fetch 1 ,mem_rssi_dis_min_ble 
+02a9 6848c624 fetcht 1 ,mem_rssi_avg_received 
+02aa 6fe0c628 fetch 1 ,mem_rssi_dis_min_24g 
+02ab c51302ad bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
+02ac 6fe0c62b fetch 1 ,mem_rssi_dis_min_ble 
 
 p_power_ctrl_txpower_decrs_next:
-0278 98467c00 isub temp ,null 
-0279 24610000 nrtn positive 
-027a 6fe0c625 fetch 1 ,mem_power_ctrl_level 
-027b c0003715 beq 0 ,power_ctrl_decrs_level0 
-027c 1fe0ffff increase -1 ,pdata 
-027d 67e0c625 store 1 ,mem_power_ctrl_level 
-027e c001028a beq 2 ,p_power_ctrl_decrs_level2 
-027f c000b70b beq 1 ,power_ctrl_decrs_level1 
-0280 20203715 branch power_ctrl_decrs_level0 
+02ad 98467c00 isub temp ,null 
+02ae 24610000 nrtn positive 
+02af 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02b0 c0003715 beq 0 ,power_ctrl_decrs_level0 
+02b1 1fe0ffff increase -1 ,pdata 
+02b2 67e0c625 store 1 ,mem_power_ctrl_level 
+02b3 c00102bf beq 2 ,p_power_ctrl_decrs_level2 
+02b4 c000b70b beq 1 ,power_ctrl_decrs_level1 
+02b5 20203715 branch power_ctrl_decrs_level0 
 
 p_power_ctrl_txpower_incrs_force:
-0281 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+02b6 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_incrs:
-0282 6fe0c625 fetch 1 ,mem_power_ctrl_level 
-0283 c0018288 beq 3 ,p_power_ctrl_incrs_level3 
-0284 1fe0fe01 increase 1 ,pdata 
-0285 67e0c625 store 1 ,mem_power_ctrl_level 
-0286 c000b70b beq 1 ,power_ctrl_incrs_level1 
-0287 c001028a beq 2 ,p_power_ctrl_incrs_level2 
+02b7 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02b8 c00182bd beq 3 ,p_power_ctrl_incrs_level3 
+02b9 1fe0fe01 increase 1 ,pdata 
+02ba 67e0c625 store 1 ,mem_power_ctrl_level 
+02bb c000b70b beq 1 ,power_ctrl_incrs_level1 
+02bc c00102bf beq 2 ,p_power_ctrl_incrs_level2 
 
 p_power_ctrl_incrs_level3:
-0288 70414105 jam tx_power_5db ,mem_tx_power 
-0289 20600000 rtn 
+02bd 70414105 jam tx_power_5db ,mem_tx_power 
+02be 20600000 rtn 
 
 p_power_ctrl_decrs_level2:
 
 p_power_ctrl_incrs_level2:
-028a 70414103 jam tx_power_3db ,mem_tx_power 
-028b 20600000 rtn 
+02bf 70414103 jam tx_power_3db ,mem_tx_power 
+02c0 20600000 rtn 
 
 p_mouse_cb_fuction:
-028c 58006235 setarg mouse_24g_short_sleep 
-028d 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
-028e 5800622b setarg mouse_24g_long_sleep 
-028f 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
-0290 5800029e setarg p_mouse_24g_before_lpm_sleep 
-0291 67e143e9 store 2 ,mem_cb_before_lpm_sleep 
-0292 202053f3 branch mouse_cb_fuction + 7 
+02c1 58006235 setarg mouse_24g_short_sleep 
+02c2 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
+02c3 5800622b setarg mouse_24g_long_sleep 
+02c4 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
+02c5 202053f3 branch mouse_cb_fuction + 7 
 
 p_soft_reset:
-0293 2435a002 nbranch soft_reset + 1 ,wake 
-0294 37d98200 until null ,lpo_edge 
-0295 37d98200 until null ,lpo_edge 
-0296 20800000 clear_stack 
-0297 20558299 call p_mouse_wheel_init_set ,wake 
-0298 20202003 branch soft_reset + 2 
+02c6 2435a002 nbranch soft_reset + 1 ,wake 
+02c7 37d98200 until null ,lpo_edge 
+02c8 37d98200 until null ,lpo_edge 
+02c9 20800000 clear_stack 
+02ca 205582cc call p_mouse_wheel_init_set ,wake 
+02cb 20202003 branch soft_reset + 2 
 
 p_mouse_wheel_init_set:
-0299 20400207 call p_mouse_puchk_disable 
-029a 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
-029b 20406edd call gpio_config_input 
-029c 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
-029d 20206edd branch gpio_config_input 
-
-p_mouse_24g_before_lpm_sleep:
-029e 20600000 rtn 
+02cc 20400232 call p_mouse_puchk_disable 
+02cd 204058df call mouse_matrix_public_gpio_reset 
+02ce 20206004 branch mouse_wheel_gpio_init 
+
+p_mouse_default_init:
+02cf 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02d0 2feffe16 isolate1 mouse_enable_keyboard ,pdata 
+02d1 2040df08 call mouse_customer_key_enable ,true 
+02d2 2020542c branch mouse_default_parm_init 
 
 p_mouse_load_device_info_check:
-029f 2040037d call p_mouse_store_normal_tx_power 
-02a0 204002ab call p_mouse_load_eeprom_info_check 
+02d3 204003cc call p_mouse_store_normal_tx_power 
+02d4 204002df call p_mouse_load_eeprom_info_check 
 
 p_mouse_app_initflag_check:
-02a1 204002b2 call p_mouse_load_device_flag_check 
-02a2 6fe1468e fetch 2 ,mem_store_flag 
-02a3 d840aa55 arg eeprom_init_flag ,temp 
-02a4 98467c00 isub temp ,null 
-02a5 202282b7 branch p_mouse_load_device_info ,zero 
-02a6 6049468e storet 2 ,mem_store_flag 
-02a7 20405c9c call mouse_ble_init_address 
-02a8 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
-02a9 67e0c666 store 1 ,mem_device_flag 
-02aa 20205c8c branch mouse_load_default_dpi 
+02d5 204002e6 call p_mouse_load_device_flag_check 
+02d6 6fe1468e fetch 2 ,mem_store_flag 
+02d7 d840aa55 arg eeprom_init_flag ,temp 
+02d8 98467c00 isub temp ,null 
+02d9 202282eb branch p_mouse_load_device_info ,zero 
+02da 6049468e storet 2 ,mem_store_flag 
+02db 20405c9c call mouse_ble_init_address 
+02dc 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
+02dd 67e0c666 store 1 ,mem_device_flag 
+02de 20205c8c branch mouse_load_default_dpi 
 
 p_mouse_load_eeprom_info_check:
-02ab 20406cbc call iicd_read_init_pin 
-02ac 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02ad 2feffe09 isolate1 mouse_enable_2k_eeprom ,pdata 
-02ae 2440ecc4 ncall clear_eeprom_size_2k ,true 
-02af 2040ecc1 call set_eeprom_size_2k ,true 
-02b0 20405d66 call mouse_eeprom_load_recon_info 
-02b1 20205c80 branch mouse_app_initflag_check 
+02df 20406cbc call iicd_read_init_pin 
+02e0 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02e1 2feffe09 isolate1 mouse_enable_2k_eeprom ,pdata 
+02e2 2440ecc4 ncall clear_eeprom_size_2k ,true 
+02e3 2040ecc1 call set_eeprom_size_2k ,true 
+02e4 20405d66 call mouse_eeprom_load_recon_info 
+02e5 20205c80 branch mouse_app_initflag_check 
 
 p_mouse_load_device_flag_check:
-02b2 6fe0c666 fetch 1 ,mem_device_flag 
-02b3 1fe67c03 sub pdata ,3 ,null 
-02b4 20610000 rtn positive 
-02b5 70466600 jam mode_24g_device ,mem_device_flag 
-02b6 20600000 rtn 
+02e6 6fe0c666 fetch 1 ,mem_device_flag 
+02e7 1fe67c03 sub pdata ,3 ,null 
+02e8 20610000 rtn positive 
+02e9 70466600 jam mode_24g_device ,mem_device_flag 
+02ea 20600000 rtn 
 
 p_mouse_load_device_info:
-02b7 204002bb call p_mouse_select_reconn_device 
-02b8 20205c90 branch mouse_load_device_info + 1 
+02eb 204002ef call p_mouse_select_reconn_device 
+02ec 20205c90 branch mouse_load_device_info + 1 
 
 p_mouse_buletooth_fast_conn_end:
-02b9 204002bb call p_mouse_select_reconn_device 
-02ba 20205a9c branch mouse_buletooth_fast_conn_end + 2 
+02ed 204002ef call p_mouse_select_reconn_device 
+02ee 20205a9c branch mouse_buletooth_fast_conn_end + 2 
 
 p_mouse_select_reconn_device:
-02bb 6fe0c666 fetch 1 ,mem_device_flag 
-02bc c1000000 rtneq mode_24g_device 
-02bd c00082c0 beq mode_bt_device1 ,p_mouse_load_le_device1 
-02be c00102c5 beq mode_bt_device2 ,p_mouse_load_le_device2 
-02bf 20600000 rtn 
+02ef 6fe0c666 fetch 1 ,mem_device_flag 
+02f0 c1000000 rtneq mode_24g_device 
+02f1 c00082f4 beq mode_bt_device1 ,p_mouse_load_le_device1 
+02f2 c00102f9 beq mode_bt_device2 ,p_mouse_load_le_device2 
+02f3 20600000 rtn 
 
 p_mouse_load_le_device1:
-02c0 6fe34668 fetch 6 ,mem_device1_addr 
-02c1 67e34116 store 6 ,mem_hci_plap 
-02c2 6fe3466e fetch 6 ,mem_device1_locall_addr 
-02c3 67e342db store 6 ,mem_le_lap 
-02c4 20600000 rtn 
+02f4 6fe34668 fetch 6 ,mem_device1_addr 
+02f5 67e34116 store 6 ,mem_hci_plap 
+02f6 6fe3466e fetch 6 ,mem_device1_locall_addr 
+
+p_mouse_le_lap_store:
+02f7 67e342db store 6 ,mem_le_lap 
+02f8 20600000 rtn 
 
 p_mouse_load_le_device2:
-02c5 6fe34675 fetch 6 ,mem_device2_addr 
-02c6 67e34116 store 6 ,mem_hci_plap 
-02c7 6fe3467b fetch 6 ,mem_device2_locall_addr 
-02c8 67e342db store 6 ,mem_le_lap 
-02c9 20600000 rtn 
+02f9 6fe34675 fetch 6 ,mem_device2_addr 
+02fa 67e34116 store 6 ,mem_hci_plap 
+02fb 6fe3467b fetch 6 ,mem_device2_locall_addr 
+02fc 202002f7 branch p_mouse_le_lap_store 
 
 p_mouse_store_remote_bdaddr:
-02ca 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02cb c4010000 rtnbit0 mouse_store_eeprom_flag 
-02cc d8e00002 arg mouse_store_eeprom_flag ,queue 
-02cd 20405f04 call mouse_disable_function_flag 
-02ce 20405c4a call mouse_check_device_addr 
-02cf 204002d1 call p_mouse_before_store_reconn_info 
-02d0 20205ca3 branch mouse_store_device_info_delay 
+02fd 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02fe c4010000 rtnbit0 mouse_store_eeprom_flag 
+02ff d8e00002 arg mouse_store_eeprom_flag ,queue 
+0300 20405f04 call mouse_disable_function_flag 
+0301 20400304 call p_mouse_check_device_addr 
+0302 20400312 call p_mouse_before_store_reconn_info 
+0303 20205ca3 branch mouse_store_device_info_delay 
+
+p_mouse_check_device_addr:
+0304 6fe08032 fetch 1 ,mem_record_bt_mode 
+0305 c19a0000 rtnne rec_4_mode 
+0306 67e0c95a store 1 ,mem_device_addr_temp 
+0307 6fe30178 fetch 6 ,mem_le_plap 
+0308 67e3495b store 6 ,mem_device_addr_temp + 1 
+0309 6fe3c95a fetch 7 ,mem_device_addr_temp 
+030a d8c04667 arg mem_device1_type ,contr 
+030b df200003 arg 3 ,loopcnt 
+
+p_mouse_check_device_addr_end:
+030c e8438006 ifetcht 7 ,contr 
+030d 98467c00 isub temp ,null 
+030e 2022dc69 branch mouse_clean_addr ,zero 
+030f 18c08c07 increase 7 ,contr 
+0310 c200030c loop p_mouse_check_device_addr_end 
+0311 20600000 rtn 
 
 p_mouse_before_store_reconn_info:
-02d1 6fe0c666 fetch 1 ,mem_device_flag 
-02d2 c00082d5 beq mode_bt_device1 ,p_mouse_store_le_device1 
-02d3 c00102da beq mode_bt_device2 ,p_mouse_store_le_device2 
-02d4 20600000 rtn 
+0312 da204667 arg mem_device1_type ,rega 
+0313 6fe0c666 fetch 1 ,mem_device_flag 
+0314 1fe0ffff increase -1 ,pdata 
+0315 1feffe0d mul32 pdata ,13 ,pdata 
+0316 9a20a200 iadd rega ,rega 
+0317 6fe08032 fetch 1 ,mem_record_bt_mode 
+0318 e7e08011 istore 1 ,rega 
+0319 c19a0000 rtnne rec_4_mode 
+031a 6fe0c666 fetch 1 ,mem_device_flag 
+031b c000831e beq mode_bt_device1 ,p_mouse_store_le_device1 
+031c c0010323 beq mode_bt_device2 ,p_mouse_store_le_device2 
+031d 20600000 rtn 
 
 p_mouse_store_le_device1:
-02d5 6fe30178 fetch 6 ,mem_le_plap 
-02d6 67e34668 store 6 ,mem_device1_addr 
-02d7 6fe342db fetch 6 ,mem_le_lap 
-02d8 67e3466e store 6 ,mem_device1_locall_addr 
-02d9 20600000 rtn 
+031e 6fe30178 fetch 6 ,mem_le_plap 
+031f 67e34668 store 6 ,mem_device1_addr 
+0320 6fe342db fetch 6 ,mem_le_lap 
+0321 67e3466e store 6 ,mem_device1_locall_addr 
+0322 20600000 rtn 
 
 p_mouse_store_le_device2:
-02da 6fe30178 fetch 6 ,mem_le_plap 
-02db 67e34675 store 6 ,mem_device2_addr 
-02dc 6fe342db fetch 6 ,mem_le_lap 
-02dd 67e3467b store 6 ,mem_device2_locall_addr 
-02de 20600000 rtn 
+0323 6fe30178 fetch 6 ,mem_le_plap 
+0324 67e34675 store 6 ,mem_device2_addr 
+0325 6fe342db fetch 6 ,mem_le_lap 
+0326 67e3467b store 6 ,mem_device2_locall_addr 
+0327 20600000 rtn 
 
 p_mouse_bb_event_timer:
-02df 204002f5 call p_mouse_le_send_conn_param_update_timer 
-02e0 2040614d call mouse_low_voltage_led_timer 
-02e1 2040553d call mouse_adc_read 
-02e2 20406110 call mouse_logo_led_on_timer 
-02e3 204061b1 call mouse_led_multi_timer 
-02e4 2040611e call mouse_dpi_led_blink_delay_timer 
-02e5 2040328e call g24_pair_timeout_timer 
-02e6 20403531 call g24_reconn_timeout_timer 
-02e7 20405fdd call mouse_24g_long_sleep_param_update_timer 
-02e8 2040572c call mouse_dpi_key_check_long_press 
-02e9 20405b9b call mouse_bt_discovery_check 
-02ea 20405bab call mouse_commbination_key_process 
-02eb 20405bce call mouse_check_discovery_timeout_timer 
-02ec 20405bd3 call mouse_check_direct_timeout_timer 
-02ed 20405be1 call mouse_le_enable_att_list_timer 
-02ee 20405bee call mouse_le_battery_updata_timer 
-02ef 20405be4 call mouse_le_send_smp_security_request_timer 
-02f0 20405bfb call mouse_check_reconnect_delay_long_sleep 
-02f1 204002f8 call p_mouse_current_mult_update_timer 
-02f2 204056b6 call mouse_wheel_trigger_timer 
-02f3 20405c0e call mouse_store_information_delay_timer 
-02f4 20205c05 branch mouse_check_no_data_timeout_timer 
+0328 2040033e call p_mouse_le_send_conn_param_update_timer 
+0329 2040614d call mouse_low_voltage_led_timer 
+032a 2040553d call mouse_adc_read 
+032b 20406110 call mouse_logo_led_on_timer 
+032c 204061b1 call mouse_led_multi_timer 
+032d 2040611e call mouse_dpi_led_blink_delay_timer 
+032e 2040328e call g24_pair_timeout_timer 
+032f 20403531 call g24_reconn_timeout_timer 
+0330 20405fdd call mouse_24g_long_sleep_param_update_timer 
+0331 2040572c call mouse_dpi_key_check_long_press 
+0332 20405b9b call mouse_bt_discovery_check 
+0333 20405bab call mouse_commbination_key_process 
+0334 20405bce call mouse_check_discovery_timeout_timer 
+0335 20405bd3 call mouse_check_direct_timeout_timer 
+0336 20405be1 call mouse_le_enable_att_list_timer 
+0337 20405bee call mouse_le_battery_updata_timer 
+0338 20405be4 call mouse_le_send_smp_security_request_timer 
+0339 20405bfb call mouse_check_reconnect_delay_long_sleep 
+033a 20400341 call p_mouse_current_mult_update_timer 
+033b 204056b6 call mouse_wheel_trigger_timer 
+033c 20405c0e call mouse_store_information_delay_timer 
+033d 20205c05 branch mouse_check_no_data_timeout_timer 
 
 p_mouse_le_send_conn_param_update_timer:
-02f5 da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
-02f6 da405aef arg mouse_updata_le_param ,regb 
-02f7 202042e0 branch timer_single_step 
+033e da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
+033f da405aef arg mouse_updata_le_param ,regb 
+0340 202042e0 branch timer_single_step 
 
 p_mouse_current_mult_update_timer:
-02f8 da60477e arg mem_mouse_current_mult_timer ,regc 
-02f9 da4002fb arg p_mouse_current_mult_reinit ,regb 
-02fa 202042e0 branch timer_single_step 
+0341 da60477e arg mem_mouse_current_mult_timer ,regc 
+0342 da400344 arg p_mouse_current_mult_reinit ,regb 
+0343 202042e0 branch timer_single_step 
 
 p_mouse_current_mult_reinit:
-02fb 6fe0c96b fetch 1 ,mem_lpm_mult_init 
-02fc 67e0c0c0 store 1 ,mem_lpm_mult 
-02fd 70477d03 jam 3 ,mem_mouse_long_mult_flag 
-02fe 20600000 rtn 
+0344 6fe0c96b fetch 1 ,mem_lpm_mult_init 
+0345 67e0c0c0 store 1 ,mem_lpm_mult 
+0346 70477d03 jam 3 ,mem_mouse_long_mult_flag 
+0347 20600000 rtn 
 
 p_mouse_start_discovery:
-02ff 204059ed call mouse_sensor_powerdown 
-0300 20205c1b branch mouse_start_discovery + 1 
+0348 204059ed call mouse_sensor_powerdown 
+0349 20205c1b branch mouse_start_discovery + 1 
 
 p_mouse_priority_bb_event:
-0301 1a627e00 copy regc ,pdata 
-0302 c0200316 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-0303 c00a831b beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-0304 c019030d beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-0305 c01e0339 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-0306 c01c834a beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-0307 c01d034d beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-0308 c00a030a beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-0309 20205ac3 branch mouse_priority_bb_event + 2 
+034a 1a627e00 copy regc ,pdata 
+034b c020035f beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+034c c00a8364 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+034d c0190356 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+034e c01e0381 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+034f c01c8391 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0350 c01d0396 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0351 c00a0353 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0352 20205ac3 branch mouse_priority_bb_event + 2 
 
 p_mouse_le_bb_event_connected:
-030a 58000000 setarg 0 
-030b 67e24bfb store 4 ,mem_le_conn_first_rcv 
-030c 20205ad0 branch mouse_le_bb_event_connected 
+0353 58000000 setarg 0 
+0354 67e24bfa store 4 ,mem_le_conn_first_rcv 
+0355 20205ad0 branch mouse_le_bb_event_connected 
 
 p_mouse_le_ll_start_encryt:
-030d 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
-030e c0008311 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
-030f 70484414 jam 20 ,mem_le_start_encrypt_timer 
-0310 20200313 branch p_mouse_le_ll_reconn_start_encryt_new 
+0356 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+0357 c000835a beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+0358 70484414 jam 20 ,mem_le_start_encrypt_timer 
+0359 2020035c branch p_mouse_le_ll_reconn_start_encryt_new 
 
 p_mouse_le_ll_reconn_start_encryt:
-0311 20405aef call mouse_updata_le_param 
-0312 70484405 jam 5 ,mem_le_start_encrypt_timer 
+035a 20405aef call mouse_updata_le_param 
+035b 70484405 jam 5 ,mem_le_start_encrypt_timer 
 
 p_mouse_le_ll_reconn_start_encryt_new:
-0313 6fe0cbfa fetch 1 ,mem_le_conn_rcv_new 
-0314 67e0cbfb store 1 ,mem_le_conn_first_rcv 
-0315 20205af6 branch mouse_le_ll_enable_start_enc_flag 
+035c 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+035d 67e0cbfa store 1 ,mem_le_conn_first_rcv 
+035e 20205af6 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_conn_param_update_rsp_recieved:
-0316 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
-0317 247a0000 nrtn blank 
-0318 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
-0319 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
-031a 20600000 rtn 
+035f 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
+0360 247a0000 nrtn blank 
+0361 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
+0362 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
+0363 20600000 rtn 
 
 p_mouse_le_bb_disconnected:
-031b 58000000 setarg 0 
-031c 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
-031d 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
-031e 58000000 setarg 0 
-031f 67e147c0 store 2 ,mem_le_battery_level_updata_timer 
-0320 70479400 jam 0 ,mem_mouse_le_bb_connected_flag 
-0321 d8400006 arg le_interval_7_5ms ,temp 
-0322 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0323 c28d8325 bbit1 mouse_enable_bt_125hz ,p_mouse_le_bb_disconnected_next 
-0324 d8400007 arg le_interval_8_75ms ,temp 
+0364 58000000 setarg 0 
+0365 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
+0366 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
+0367 58000000 setarg 0 
+0368 67e147c0 store 2 ,mem_le_battery_level_updata_timer 
+0369 70479400 jam 0 ,mem_mouse_le_bb_connected_flag 
+036a d8400006 arg le_interval_7_5ms ,temp 
+036b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+036c c28d836e bbit1 mouse_enable_bt_125hz ,p_mouse_le_bb_disconnected_next 
+036d d8400007 arg le_interval_8_75ms ,temp 
 
 p_mouse_le_bb_disconnected_next:
-0325 604942d3 storet 2 ,mem_le_interval_min 
-0326 604942d5 storet 2 ,mem_le_interval_min + 2 
-0327 7047c200 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
-0328 70495600 jam 0 ,mem_mouse_clear_sensor_data_flag 
-0329 204029cb call le_clr_config_more_data 
-032a 2020032b branch p_mouse_bb_disconnected 
+036e 604942d3 storet 2 ,mem_le_interval_min 
+036f 604942d5 storet 2 ,mem_le_interval_min + 2 
+0370 7047c200 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+0371 70495600 jam 0 ,mem_mouse_clear_sensor_data_flag 
+0372 204029cb call le_clr_config_more_data 
 
 p_mouse_bb_disconnected:
-032b 20405b7b call mouse_bb_discon_clear_stack 
-032c 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
-032d c2838330 bbit1 app_disc_ble ,p_mouse4_0_event_bb_disconn 
-032e c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
-032f 20205c1a branch mouse_start_discovery 
+0373 20405b7b call mouse_bb_discon_clear_stack 
+0374 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0375 c2838378 bbit1 app_disc_ble ,p_mouse4_0_event_bb_disconn 
+0376 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0377 20205c1a branch mouse_start_discovery 
 
 p_mouse4_0_event_bb_disconn:
-0330 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
-0331 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
-0332 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-0333 1fe17e03 and pdata ,0x03 ,pdata 
-0334 20405b21 call mouse_le_clean_connect_flag 
-0335 c081d4a9 bne 0x03 ,mouse_start_reconnect 
-0336 6fe0cbfe fetch 1 ,mem_le_check_retransmit_discon_flag 
-0337 243a54a9 nbranch mouse_start_reconnect ,blank 
-0338 202054cd branch mouse_app_enter_hibernate 
+0378 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0379 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+037a 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+037b 1fe17e03 and pdata ,0x03 ,pdata 
+037c 20405b21 call mouse_le_clean_connect_flag 
+037d c081d4a9 bne 0x03 ,mouse_start_reconnect 
+037e 6fe0cbfd fetch 1 ,mem_le_check_retransmit_discon_flag 
+037f 243a54a9 nbranch mouse_start_reconnect ,blank 
+0380 202054cd branch mouse_app_enter_hibernate 
 
 p_mouse_24g_attempt_success:
-0339 6fe2458f fetch 4 ,mem_24g_addr 
-033a 67e245e8 store 4 ,mem_24g_receiver_addr 
-033b 67e24691 store 4 ,mem_mouse_24g_addr 
-033c 2040355a call g24_ch_syncword_crc8_init 
-033d 20405c0b call mouse_no_data_timer_init 
-033e 2040618e call mouse_device_poweron_led_config 
-033f 20405a73 call mouse_init_sensor_reset 
-0340 70477d00 jam 0 ,mem_mouse_long_mult_flag 
-0341 7045fc00 jam 0 ,mem_24g_conn_sm 
-0342 7045e200 jam 0 ,mem_24g_reconn_type 
-0343 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
-0344 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-0345 98467c00 isub temp ,null 
-0346 20628000 rtn zero 
-0347 20406016 call mouse_soft_agc_disable 
-0348 20400380 call p_mouse_fetch_normal_tx_power 
-0349 20206042 branch mouse_24g_first_store_reconn_info 
+0381 6fe2458f fetch 4 ,mem_24g_addr 
+0382 67e245e8 store 4 ,mem_24g_receiver_addr 
+0383 67e24691 store 4 ,mem_mouse_24g_addr 
+0384 2040355a call g24_ch_syncword_crc8_init 
+0385 20405c0b call mouse_no_data_timer_init 
+0386 2040618e call mouse_device_poweron_led_config 
+0387 20405a73 call mouse_init_sensor_reset 
+0388 70477d00 jam 0 ,mem_mouse_long_mult_flag 
+0389 7045fc00 jam 0 ,mem_24g_conn_sm 
+038a 7045e200 jam 0 ,mem_24g_reconn_type 
+038b 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
+038c 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+038d 98467c00 isub temp ,null 
+038e 20628000 rtn zero 
+038f 20400393 call p_mouse_fetch_normal_tx_power 
+0390 20206042 branch mouse_24g_first_store_reconn_info 
 
 p_mouse_24g_pairing_complete:
-034a 20406016 call mouse_soft_agc_disable 
-034b 20400380 call p_mouse_fetch_normal_tx_power 
-034c 20206084 branch mouse_24g_pairing_complete 
+0391 20400393 call p_mouse_fetch_normal_tx_power 
+0392 20206084 branch mouse_24g_pairing_complete 
+
+p_mouse_fetch_normal_tx_power:
+0393 6fe0ca07 fetch 1 ,mem_normal_tx_power 
+0394 67e0c141 store 1 ,mem_tx_power 
+0395 20206016 branch mouse_soft_agc_disable 
 
 p_mouse_24g_attempt_fail:
-034d 20406016 call mouse_soft_agc_disable 
-034e 20400380 call p_mouse_fetch_normal_tx_power 
-034f 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
-0350 c1008000 rtneq dpi_button_state_down 
-0351 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
-0352 243a03b0 nbranch p_mouse_24g_hibernate_set ,blank 
-0353 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
-0354 c0020358 beq pair_and_3_0_addr ,p_mouse_24g_auto_pair_attempt_fail 
-0355 c000e05f beq fast_conn_and_receiver ,mouse_24g_fast_conn_attempt_fail 
-0356 c001835f beq receiver_and_3_0_addr ,p_mouse_reconn_dongle_attempt_fail 
-0357 20206055 branch mouse_24g_attempt_fail + 2 
+0396 20400393 call p_mouse_fetch_normal_tx_power 
+0397 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
+0398 c1008000 rtneq dpi_button_state_down 
+0399 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
+039a 243a5ff2 nbranch mouse_24g_hibernate_set ,blank 
+039b 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+039c c00283a8 beq pair_and_receiver ,p_mouse_24g_auto_pair_attempt_fail 
+039d c00083a0 beq fast_conn_and_receiver ,p_mouse_24g_fast_conn_attempt_fail 
+039e c00183af beq receiver_and_3_0_addr ,p_mouse_reconn_dongle_attempt_fail 
+039f 20206055 branch mouse_24g_attempt_fail + 2 
+
+p_mouse_24g_fast_conn_attempt_fail:
+03a0 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03a1 c29f03a4 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_start_auto_pair 
+03a2 c29803a4 bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_start_auto_pair 
+03a3 20206062 branch mouse_24g_fast_conn_attempt_fail + 3 
+
+p_mouse_24g_start_auto_pair:
+03a4 6fe145d6 fetch 2 ,mem_24g_pair_timeout_init 
+03a5 67e145de store 2 ,mem_24g_reconn_timeout 
+03a6 7045e205 jam pair_and_receiver ,mem_24g_reconn_type 
+03a7 20203534 branch g24_reconn_start 
 
 p_mouse_24g_auto_pair_attempt_fail:
-0358 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0359 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
-035a 6fe0c71b fetch 1 ,mem_device_number 
-035b c000e059 beq 1 ,mouse_24g_attempt_fail_enter_hibernate 
+03a8 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03a9 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+03aa 6fe0c71b fetch 1 ,mem_device_number 
+03ab c000e059 beq 1 ,mouse_24g_attempt_fail_enter_hibernate 
 
 p_mouse_24g_first_bluetooth_reconnect:
-035c 20406018 call mouse_24g_stop 
-035d 70466601 jam mode_bt_device1 ,mem_device_flag 
-035e 202054a0 branch mouse_start_reconnect_device 
+03ac 20406018 call mouse_24g_stop 
+03ad 70466601 jam mode_bt_device1 ,mem_device_flag 
+03ae 20205491 branch mouse_le_fast_conn_judge 
 
 p_mouse_reconn_dongle_attempt_fail:
-035f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0360 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
-0361 c289e059 bbit1 mouse_enable_eeprom ,mouse_24g_attempt_fail_enter_hibernate 
-0362 c2896059 bbit1 mouse_enable_flash ,mouse_24g_attempt_fail_enter_hibernate 
-0363 20206034 branch mouse_24g_start_auto_pair 
+03af 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03b0 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+03b1 c289e059 bbit1 mouse_enable_eeprom ,mouse_24g_attempt_fail_enter_hibernate 
+03b2 c2896059 bbit1 mouse_enable_flash ,mouse_24g_attempt_fail_enter_hibernate 
+03b3 202003a4 branch p_mouse_24g_start_auto_pair 
 
 p_mouse_start_work:
-0364 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0365 c29f0369 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_first_start_auto_pair_mode 
-0366 6fe0c666 fetch 1 ,mem_device_flag 
-0367 c0000370 beq mode_24g_device ,p_mouse_24g_start_mode 
-0368 20205491 branch mouse_le_fast_conn_judge 
+03b4 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03b5 c29f03b9 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_first_start_auto_pair_mode 
+03b6 6fe0c666 fetch 1 ,mem_device_flag 
+03b7 c00003c4 beq mode_24g_device ,p_mouse_24g_start_mode 
+03b8 20205491 branch mouse_le_fast_conn_judge 
 
 p_mouse_24g_first_start_auto_pair_mode:
-0369 204054ac call mouse_wakeup_from_power_check 
-036a 2034036c branch p_mouse_24g_first_start_reconn ,user 
-036b 2020602f branch mouse_24g_reconn_general_dongle 
+03b9 204054ac call mouse_wakeup_from_power_check 
+03ba 203403c0 branch p_mouse_24g_first_start_reconn ,user 
+
+p_mouse_24g_reconn_general_dongle:
+03bb 70466600 jam mode_24g_device ,mem_device_flag 
+03bc 6fe14721 fetch 2 ,mem_mouse_24g_power_on_fast_conn_timer 
+03bd 67e145de store 2 ,mem_24g_reconn_timeout 
+03be 7045e201 jam fast_conn_and_receiver ,mem_24g_reconn_type 
+03bf 20203534 branch g24_reconn_start 
 
 p_mouse_24g_first_start_reconn:
-036c 6fe0c666 fetch 1 ,mem_device_flag 
-036d c0006067 beq mode_24g_device ,mouse_24g_reconn_dongle_start 
-036e 20405aa8 call mouse_bluetooth_fast_conn_disable 
-036f 2020035c branch p_mouse_24g_first_bluetooth_reconnect 
+03c0 6fe0c666 fetch 1 ,mem_device_flag 
+03c1 c0006067 beq mode_24g_device ,mouse_24g_reconn_dongle_start 
+03c2 20405aa8 call mouse_bluetooth_fast_conn_disable 
+03c3 202003ac branch p_mouse_24g_first_bluetooth_reconnect 
 
 p_mouse_24g_start_mode:
-0370 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0371 c308e02a bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
-0372 20406195 call mouse_device_24g_pair_led_config 
-0373 204054ac call mouse_wakeup_from_power_check 
-0374 20346067 branch mouse_24g_reconn_dongle_start ,user 
-0375 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0376 c2980378 bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_reconn_general_dongle 
-0377 20206023 branch mouse_24g_start_mode + 7 
-
-p_mouse_24g_reconn_general_dongle:
-0378 70466600 jam mode_24g_device ,mem_device_flag 
-0379 6fe14721 fetch 2 ,mem_mouse_24g_power_on_fast_conn_timer 
-037a 67e145de store 2 ,mem_24g_reconn_timeout 
-037b 7045e201 jam fast_conn_and_receiver ,mem_24g_reconn_type 
-037c 20203534 branch g24_reconn_start 
+03c4 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03c5 c308e02a bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
+03c6 20406195 call mouse_device_24g_pair_led_config 
+03c7 204054ac call mouse_wakeup_from_power_check 
+03c8 20346067 branch mouse_24g_reconn_dongle_start ,user 
+03c9 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03ca c29803bb bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_reconn_general_dongle 
+03cb 20206023 branch mouse_24g_start_mode + 7 
 
 p_mouse_store_normal_tx_power:
-037d 6fe0c141 fetch 1 ,mem_tx_power 
-037e 67e0ca07 store 1 ,mem_normal_tx_power 
-037f 20600000 rtn 
-
-p_mouse_fetch_normal_tx_power:
-0380 6fe0ca07 fetch 1 ,mem_normal_tx_power 
-0381 67e0c141 store 1 ,mem_tx_power 
-0382 20600000 rtn 
+03cc 6fe0c141 fetch 1 ,mem_tx_power 
+03cd 67e0ca07 store 1 ,mem_normal_tx_power 
+03ce 20600000 rtn 
 
 p_mouse_idle:
-0383 2040620e call mouse_low_voltage_led_no_enter_lpm 
-0384 204078aa call ui_check_paring_button 
-0385 20400387 call p_mouse_dpi_check 
-0386 20205e61 branch mouse_idle + 4 
+03cf 2040620e call mouse_low_voltage_led_no_enter_lpm 
+03d0 204078aa call ui_check_paring_button 
+03d1 204003d5 call p_mouse_dpi_check 
+03d2 20205e61 branch mouse_idle + 4 
+
+p_mouse_dpi_check_retransmit:
+03d3 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03d4 c4140000 rtnbit0 mouse_enable_select_device_by_dpi_button 
 
 p_mouse_dpi_check:
-0387 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-0388 c17f8000 rtneq gpio_disable 
-0389 da200000 arg 0 ,rega 
-038a 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
-038b 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-038c 2040038e call p_mouse_dpi_key_check 
-038d 202056c1 branch mouse_dpi_check_next 
+03d5 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+03d6 c17f8000 rtneq gpio_disable 
+03d7 da200000 arg 0 ,rega 
+03d8 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
+03d9 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+03da 204003dc call p_mouse_dpi_key_check 
+03db 202056c1 branch mouse_dpi_check_next 
 
 p_mouse_dpi_key_check:
-038e 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-038f c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-0390 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
-0391 1fe22600 copy pdata ,regc 
-0392 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
-0393 c07f8395 beq gpio_disable ,p_mouse_3io6key_dpi_check 
-0394 202056ce branch mouse_dpi_key_check_next 
+03dc 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03dd c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+03de 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
+03df 1fe22600 copy pdata ,regc 
+03e0 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
+03e1 c07f83e3 beq gpio_disable ,p_mouse_3io6key_dpi_check 
+03e2 202056ce branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-0395 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-0396 20405946 call mouse_gpio_config_output_low 
-0397 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-0398 20200399 branch p_mouse_3io6key_check 
+03e3 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+03e4 20405946 call mouse_gpio_config_output_low 
+03e5 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+03e6 202003e7 branch p_mouse_3io6key_check 
 
 p_mouse_3io6key_check:
-0399 1a627e00 copy regc ,pdata 
-039a 67e0c978 store 1 ,mem_mouse_key_status 
-039b 1fe3fe00 lshift pdata ,pdata 
-039c 1fe22400 copy pdata ,regb 
-039d 18422600 copy temp ,regc 
-039e 204055b1 call mouse_gpio_config_input_pd 
-039f 1a620400 copy regc ,temp 
-03a0 20406ee6 call gpio_get_bit 
-03a1 7d20a400 nsetflag true ,0 ,regb 
-03a2 2040593d call mouse_check_press 
-03a3 20205929 branch mouse_check_key_connect_gnd_1 
+03e7 1a627e00 copy regc ,pdata 
+03e8 67e0c978 store 1 ,mem_mouse_key_status 
+03e9 1fe3fe00 lshift pdata ,pdata 
+03ea 1fe22400 copy pdata ,regb 
+03eb 18422600 copy temp ,regc 
+03ec 204055b1 call mouse_gpio_config_input_pd 
+03ed 1a620400 copy regc ,temp 
+03ee 20406ee6 call gpio_get_bit 
+03ef 7d20a400 nsetflag true ,0 ,regb 
+03f0 2040593d call mouse_check_press 
+03f1 20205929 branch mouse_check_key_connect_gnd_1 
 
 p_g24_short_sleep:
-03a4 204036b4 call g24_lpm_wait 
-03a5 24740000 nrtn user 
-03a6 204036be call g24_setgpio_lpm_before 
-03a7 204003aa call p_clear_wake 
-03a8 6fe1c608 fetch 3 ,mem_24g_short_sleep_set 
-03a9 20203622 branch g24_long_seep2 
+03f2 204036b4 call g24_lpm_wait 
+03f3 24740000 nrtn user 
+03f4 204036be call g24_setgpio_lpm_before 
+03f5 204003f7 call p_clear_wake 
+03f6 2020361b branch g24_short_sleep_next 
 
 p_clear_wake:
-03aa 58000000 setarg 0 
-03ab 79207e15 set1 21 ,pdata 
-03ac 67e40016 store 8 ,mem_gpio_wakeup_cfg 
-03ad 58000000 setarg 0 
-03ae 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
-03af 20600000 rtn 
+03f7 58000000 setarg 0 
+03f8 67e40016 store 8 ,mem_gpio_wakeup_cfg 
+03f9 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
+03fa 20600000 rtn 
 
 p_mouse_24g_hibernate_set:
-03b0 70460000 jam 0 ,mem_24g_attempt_fail_flag 
-03b1 20403647 call g24_transmit_next_packet 
-03b2 5fffffff setarg -1 
-03b3 67e245af store 4 ,mem_24g_enter_hibernate 
-03b4 58000000 setarg 0 
-03b5 67e3c846 store 7 ,mem_mouse_key 
-03b6 70473f01 jam 1 ,mem_sensor_shutdown_flag 
-03b7 204059ed call mouse_sensor_powerdown 
-03b8 2020622b branch mouse_24g_long_sleep 
+03fb 70460000 jam 0 ,mem_24g_attempt_fail_flag 
+03fc 20403647 call g24_transmit_next_packet 
+03fd 5fffffff setarg -1 
+03fe 67e245af store 4 ,mem_24g_enter_hibernate 
+03ff 58000000 setarg 0 
+0400 67e3c846 store 7 ,mem_mouse_key 
+0401 70473f01 jam 1 ,mem_sensor_shutdown_flag 
+0402 204059ed call mouse_sensor_powerdown 
+0403 2020622b branch mouse_24g_long_sleep 
 
 p_mouse_setgpio_hibernate:
-03b9 20405a92 call mouse_set_sdio_high 
-03ba 204003aa call p_clear_wake 
-03bb 204056a9 call mouse_before_hibernate_wheel_gpio_set 
-03bc 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-03bd 20406ef7 call gpio_out_active 
-03be 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-03bf 20406ed3 call gpio_clr_wake 
-03c0 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
-03c1 20405943 call mouse_gpio_config_output_high 
-03c2 6848c65a fetcht 1 ,mem_device_switch_gpio 
-03c3 204055ab call mouse_gpio_set_pupd_by_input 
-03c4 2040611a call mouse_logo_led_off 
-03c5 2040550c call mouse_lpm_before_common 
-03c6 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
-03c7 20406f0f call gpio_set_high_impedance 
-03c8 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
-03c9 20406f0f call gpio_set_high_impedance 
-03ca 6848c65b fetcht 1 ,mem_mouse_reuse_2ice_gpio 
-03cb 204055b5 call mouse_gpio_config_input_pu 
-03cc 204003d2 call p_mouse_gpio_set_high_impedance 
-03cd 204054e5 call mouse_setgpio_hibernate_next 
-03ce 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
-03cf 20406ed3 call gpio_clr_wake 
-03d0 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
-03d1 20206ef7 branch gpio_out_active 
-
-p_mouse_gpio_set_high_impedance:
-03d2 6fe1c73c fetch 3 ,mem_mouse_set_high_impedance_bit_set 
-03d3 67e18670 store 3 ,mem_pdatatemp 
-03d4 df200018 arg 24 ,loopcnt 
-03d5 d8400000 arg 0 ,temp 
-
-p_mouse_gpio_set_high_impedance_bit_loop:
-03d6 6fe18670 fetch 3 ,mem_pdatatemp 
-03d7 2feffe00 isolate1 0 ,pdata 
-03d8 204083df call p_gpio_set_analog ,true 
-03d9 6fe18670 fetch 3 ,mem_pdatatemp 
-03da 1fe37e00 rshift pdata ,pdata 
-03db 67e18670 store 3 ,mem_pdatatemp 
-03dc 18408401 increase 1 ,temp 
-03dd c20003d6 loop p_mouse_gpio_set_high_impedance_bit_loop 
-03de 20600000 rtn 
-
-p_gpio_set_analog:
-03df 18467cff sub temp ,ui_button_gpio_disable ,null 
-03e0 20628000 rtn zero 
-03e1 20206f0b branch gpio_set_analog 
+0404 20405a92 call mouse_set_sdio_high 
+0405 204003f7 call p_clear_wake 
+0406 204056a9 call mouse_before_hibernate_wheel_gpio_set 
+0407 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
+0408 20405943 call mouse_gpio_config_output_high 
+0409 6848c65a fetcht 1 ,mem_device_switch_gpio 
+040a 204055ab call mouse_gpio_set_pupd_by_input 
+040b 2040611a call mouse_logo_led_off 
+040c 20400235 call p_mouse_lpm_before_common 
+040d 202054e2 branch mouse_setgpio_hibernate_next 
 
 p_mouse_24g_package_data:
-03e2 c6930000 rtnmark0 mark_24g 
-03e3 20405601 call mouse_motion 
-03e4 24740000 nrtn user 
-03e5 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
-03e6 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
-03e7 245a03f7 ncall p_mouse_24g_short_sleep_clear_wake ,blank 
-03e8 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-03e9 c30b03ec bbit0 mouse_enable_keyboard ,p_mouse_24g_mouse_package_data 
-03ea 6fe0c96c fetch 1 ,mem_customer_key 
-03eb 243a60b6 nbranch mouse_24g_keyboard_package_data ,blank 
+040e c6930000 rtnmark0 mark_24g 
+040f 20405601 call mouse_motion 
+0410 24740000 nrtn user 
+0411 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
+0412 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
+0413 245a0423 ncall p_mouse_24g_short_sleep_clear_wake ,blank 
+0414 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0415 c30b0418 bbit0 mouse_enable_keyboard ,p_mouse_24g_mouse_package_data 
+0416 6fe0c96c fetch 1 ,mem_customer_key 
+0417 243a60b6 nbranch mouse_24g_keyboard_package_data ,blank 
 
 p_mouse_24g_mouse_package_data:
-03ec 204003ee call p_mouse_data_xy_release 
-03ed 202060a2 branch mouse_24g_mouse_package_data + 1 
+0418 2040041a call p_mouse_data_xy_release 
+0419 202060a2 branch mouse_24g_mouse_package_data + 1 
 
 p_mouse_data_xy_release:
-03ee 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
-03ef c1ff8000 rtnne gpio_disable 
-03f0 6fe0c77d fetch 1 ,mem_mouse_long_mult_flag 
-03f1 207a0000 rtn blank 
-03f2 1fe0ffff increase -1 ,pdata 
-03f3 67e0c77d store 1 ,mem_mouse_long_mult_flag 
-03f4 58000000 setarg 0 
-03f5 67e24847 store 4 ,mem_mouse_x 
-03f6 20205a73 branch mouse_init_sensor_reset 
+041a 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+041b c1ff8000 rtnne gpio_disable 
+041c 6fe0c77d fetch 1 ,mem_mouse_long_mult_flag 
+041d 207a0000 rtn blank 
+041e 1fe0ffff increase -1 ,pdata 
+041f 67e0c77d store 1 ,mem_mouse_long_mult_flag 
+0420 58000000 setarg 0 
+0421 67e24847 store 4 ,mem_mouse_x 
+0422 20205a73 branch mouse_init_sensor_reset 
 
 p_mouse_24g_short_sleep_clear_wake:
-03f7 204003aa call p_clear_wake 
-03f8 20200229 branch p_lpm_write_gpio_wakeup 
+0423 204003f7 call p_clear_wake 
+0424 20200254 branch p_lpm_write_gpio_wakeup 
 
 p_mouse_check_select_device_by_switch:
-03f9 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-03fa c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
-03fb c31fdeb9 bbit0 mouse_enable_switch_gpio_connect_vin ,mouse_switch_gpio_connect_gnd 
+0425 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0426 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
+0427 c31f8432 bbit0 mouse_enable_switch_gpio_connect_vin ,p_mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_connect_vin_check:
+0428 20400434 call p_mouse_switch_gpio_pd_set 
+0429 2040042e call p_mouse_switch_gpio_connect_vin 
+
+p_mouse_switch_gpio_pu_set:
+042a 6848c65a fetcht 1 ,mem_device_switch_gpio 
+042b 20406ef3 call gpio_out_inactive 
+042c 6848c65a fetcht 1 ,mem_device_switch_gpio 
+042d 202055b5 branch mouse_gpio_config_input_pu 
 
 p_mouse_switch_gpio_connect_vin:
-03fc 6848c65a fetcht 1 ,mem_device_switch_gpio 
-03fd 20406ef7 call gpio_out_active 
-03fe 6848c65a fetcht 1 ,mem_device_switch_gpio 
-03ff 204055b1 call mouse_gpio_config_input_pd 
-0400 6848c65a fetcht 1 ,mem_device_switch_gpio 
-0401 20406ee6 call gpio_get_bit 
-0402 2420dec2 nbranch mouse_check_select_24g_device ,true 
-0403 20205ebe branch mouse_select_btdevice 
+042e 6848c65a fetcht 1 ,mem_device_switch_gpio 
+042f 20406ee6 call gpio_get_bit 
+0430 2420dec2 nbranch mouse_check_select_24g_device ,true 
+0431 20205ebe branch mouse_select_btdevice 
+
+p_mouse_switch_gpio_connect_gnd:
+0432 2040042a call p_mouse_switch_gpio_pu_set 
+0433 20405ebb call mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_pd_set:
+0434 6848c65a fetcht 1 ,mem_device_switch_gpio 
+0435 20406ef7 call gpio_out_active 
+0436 6848c65a fetcht 1 ,mem_device_switch_gpio 
+0437 202055b1 branch mouse_gpio_config_input_pd 
 
 p_mouse_init_sensor:
-0404 20405958 call mouse_read_sensor_id 
-0405 c0180413 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-0406 c018d9c6 beq p3065_id1 ,mouse_init_p3065 
-0407 c02c040b beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
-0408 20405955 call mouse_twspi_reset 
-0409 20001af4 nop 6900 
-040a 2020594d branch mouse_init_sensor 
+0438 20405958 call mouse_read_sensor_id 
+0439 c0180445 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+043a c018d9c6 beq p3065_id1 ,mouse_init_p3065 
+043b c02c043d beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
+043c 20205952 branch mouse_init_sensor + 5 
 
 p_mouse_ka8g2_id2_judge:
-040b 204059e7 call mouse_sensor_poweron 
-040c 6fe0c85a fetch 1 ,mem_sensor_id2 
-040d c02b8417 beq ka5857_id2 ,p_mouse_ka5857_init_param 
-040e c02c8410 beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
-040f 2020595f branch mouse_init_p32xx_id2_judge 
+043d 204059e7 call mouse_sensor_poweron 
+043e 6fe0c85a fetch 1 ,mem_sensor_id2 
+043f c02b8449 beq ka5857_id2 ,p_mouse_ka5857_init_param 
+0440 c02c8442 beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
+0441 2020595f branch mouse_init_p32xx_id2_judge 
 
 p_mouse_ka8g2_init_param:
-0410 7049570b jam ka8g2 ,mem_config_sensor_type 
-0411 da604a0b arg mem_sensor_ka8g2_init_new ,regc 
-0412 20205995 branch mouse_sensor_wr_seq 
+0442 7049570b jam ka8g2 ,mem_config_sensor_type 
+0443 da604a0b arg mem_sensor_ka8g2_init_new ,regc 
+0444 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_init_p32xx_id2_judge:
-0413 6fe0c85a fetch 1 ,mem_sensor_id2 
-0414 1fe17ef0 and_into 0xf0 ,pdata 
-0415 c060041a beq p3204_tjdm_id2 ,p_mouse_p3204_tjdm_init_param 
-0416 2020595f branch mouse_init_p32xx_id2_judge 
+0445 6fe0c85a fetch 1 ,mem_sensor_id2 
+0446 1fe17ef0 and_into 0xf0 ,pdata 
+0447 c060044c beq p3204_tjdm_id2 ,p_mouse_p3204_tjdm_init_param 
+0448 2020595f branch mouse_init_p32xx_id2_judge 
 
 p_mouse_ka5857_init_param:
-0417 7049570d jam ka5857 ,mem_config_sensor_type 
-0418 da604bff arg mem_sensor_ka5857_init ,regc 
-0419 20205995 branch mouse_sensor_wr_seq 
+0449 7049570d jam ka5857 ,mem_config_sensor_type 
+044a da604bfe arg mem_sensor_ka5857_init ,regc 
+044b 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_p3204_tjdm_init_param:
-041a 58000049 setarg 0x49 
-041b 204069e5 call twspi_read 
-041c c050d96c beq 0xa1 ,mouse_s201x_init_param 
-041d 70495704 jam p3065_xy ,mem_config_sensor_type 
-041e 20600000 rtn 
+044c 58000049 setarg 0x49 
+044d 204069e5 call twspi_read 
+044e c050d96c beq 0xa1 ,mouse_s201x_init_param 
+044f 202059cd branch mouse_p3065xy_init_param 
 
 p_mouse_dpi_process:
-041f 20405728 call mouse_dpi_ghost_check 
-0420 20740000 rtn user 
-0421 6fe0c690 fetch 1 ,mem_mouse_dpi 
-0422 1fe20400 copy pdata ,temp 
-0423 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0424 c28bd704 bbit1 mouse_enable_double_dpi_key ,mouse_double_dpi_check 
-0425 6fe0c957 fetch 1 ,mem_config_sensor_type 
-0426 c006842c beq ka5857 ,p_mouse_dpi_process_5_level 
-0427 c0018431 beq p3212 ,p_mouse_dpi_process_4_level 
-0428 18427e00 copy temp ,pdata 
-0429 1fe0fe01 increase 1 ,pdata 
-042a 1fe17e03 and pdata ,0x03 ,pdata 
-042b 20205701 branch mouse_dpi_level_store 
+0450 20405728 call mouse_dpi_ghost_check 
+0451 20740000 rtn user 
+0452 6fe0c957 fetch 1 ,mem_config_sensor_type 
+0453 c0068455 beq ka5857 ,p_mouse_dpi_process_5_level 
+0454 202056fa branch mouse_dpi_process + 3 
 
 p_mouse_dpi_process_5_level:
-042c 18427e00 copy temp ,pdata 
-042d 1fe0fe01 increase 1 ,pdata 
-042e 1fe67c04 sub pdata ,4 ,null 
-042f 24410436 ncall p_mouse_dpi_init ,positive 
-0430 20205701 branch mouse_dpi_level_store 
-
-p_mouse_dpi_process_4_level:
-0431 18427e00 copy temp ,pdata 
-0432 1fe0fe01 increase 1 ,pdata 
-0433 1fe17e03 and pdata ,0x03 ,pdata 
-0434 24410436 ncall p_mouse_dpi_init ,positive 
-0435 20205701 branch mouse_dpi_level_store 
-
-p_mouse_dpi_init:
-0436 58000000 setarg 0 
-0437 20600000 rtn 
+0455 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0456 1fe0fe01 increase 1 ,pdata 
+0457 1fe67c04 sub pdata ,4 ,null 
+0458 24417dca ncall set_pdata_0 ,positive 
+0459 20205701 branch mouse_dpi_level_store 
 
 p_mouse_setting_dpi_4_level:
-0438 6fe0c957 fetch 1 ,mem_config_sensor_type 
-0439 c1068000 rtneq ka5857 
-043a c1018000 rtneq p3212 
-043b 2020573e branch mouse_setting_dpi_4_level 
+045a 6fe0c957 fetch 1 ,mem_config_sensor_type 
+045b c1068000 rtneq ka5857 
+045c c1018000 rtneq p3212 
+045d 2020573e branch mouse_setting_dpi_4_level 
 
 p_mouse_setting_dpi:
-043c 20400438 call p_mouse_setting_dpi_4_level 
-043d 2040613a call mouse_dpi_led_blink_delay 
+045e 2040045a call p_mouse_setting_dpi_4_level 
+045f 2040613a call mouse_dpi_led_blink_delay 
 
 p_mouse_setting_sensor_type:
-043e 6fe0c957 fetch 1 ,mem_config_sensor_type 
-043f c006d785 beq ka5857 ,mouse_seting_3212_dpi 
-0440 c0060447 beq s201x ,p_mouse_seting_s201_dpi 
-0441 20205749 branch mouse_setting_sensor_type + 2 
-
-p_mouse_check_sensor_data:
-0442 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
-0443 c1800000 rtnne flash_sm_no_buys 
-0444 6fe0c957 fetch 1 ,mem_config_sensor_type 
-0445 c005844c beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
-0446 202059f8 branch mouse_check_sensor_data + 2 
+0460 6fe0c957 fetch 1 ,mem_config_sensor_type 
+0461 c006d785 beq ka5857 ,mouse_seting_3212_dpi 
+0462 c0060464 beq s201x ,p_mouse_seting_s201_dpi 
+0463 20205749 branch mouse_setting_sensor_type + 2 
 
 p_mouse_seting_s201_dpi:
-0447 6fe0c690 fetch 1 ,mem_mouse_dpi 
-0448 c000576f beq mouse_dpi_level1 ,mouse_set_s201_dpi_0 
-0449 c000d772 beq mouse_dpi_level2 ,mouse_set_s201_dpi_1 
-044a c001577b beq mouse_dpi_level3 ,mouse_set_s201_dpi_4 
-044b 2020576f branch mouse_set_s201_dpi_0 
+0464 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0465 c000576f beq mouse_dpi_level1 ,mouse_set_s201_dpi_0 
+0466 c000d772 beq mouse_dpi_level2 ,mouse_set_s201_dpi_1 
+0467 c001577b beq mouse_dpi_level3 ,mouse_set_s201_dpi_4 
+0468 2020576f branch mouse_set_s201_dpi_0 
+
+p_mouse_check_sensor_data:
+0469 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
+046a c1800000 rtnne flash_sm_no_buys 
+046b 6fe0c957 fetch 1 ,mem_config_sensor_type 
+046c c005846e beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
+046d 202059f8 branch mouse_check_sensor_data + 2 
 
 p_mouse_pka8g2_sensor_motion:
-044c 20405a6d call mouse_clear_sensor_data 
-044d 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
-044e c07f8452 beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
-044f 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
-0450 20406ee6 call gpio_get_bit 
-0451 24608000 nrtn true 
+046e 20405a6d call mouse_clear_sensor_data 
+046f 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+0470 c07f8474 beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
+0471 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
+0472 20406ee6 call gpio_get_bit 
+0473 24608000 nrtn true 
 
 p_mouse_pka8g2_sensor_motion_1:
-0452 58000000 setarg pan_reg_pid_l 
-0453 204069e5 call twspi_read 
-0454 c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
-0455 20205a2f branch mouse_p3212_sensor_motion_2 
+0474 58000000 setarg pan_reg_pid_l 
+0475 204069e5 call twspi_read 
+0476 c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
+0477 20205a2f branch mouse_p3212_sensor_motion_2 
 
 p_mouse_motion:
-0456 78547c00 disable user 
-0457 58000000 setarg 0 
-0458 67e34847 store 6 ,mem_mouse_x 
-0459 20400442 call p_mouse_check_sensor_data 
-045a 20205606 branch mouse_motion + 5 
+0478 78547c00 disable user 
+0479 58000000 setarg 0 
+047a 67e34847 store 6 ,mem_mouse_x 
+047b 20400469 call p_mouse_check_sensor_data 
+047c 58000089 setarg 0x0089 
+047d 204069e4 call twspi_write 
+047e 20405747 call mouse_setting_sensor_type 
+047f 20405612 call mouse_zwheel 
+0480 20405617 call mouse_t_zwheel 
+0481 20400486 call p_mouse_key 
+0482 2020560c branch mouse_motion + 11 
+
+p_mouse_drawing_optima:
+0483 6fe0c957 fetch 1 ,mem_config_sensor_type 
+0484 c1058000 rtneq ka8g2 
+0485 20205f27 branch mouse_drawing_optima + 1 
+
+p_mouse_key:
+0486 2040584c call mouse_check_firekey_gpio 
+0487 6fe0c987 fetch 1 ,mem_fire_key_flag 
+0488 243a5860 nbranch fire_key_press ,blank 
+0489 6fe0c982 fetch 1 ,mem_fire_key_status 
+048a 243a585f nbranch fire_key_process ,blank 
+048b 20405888 call mouse_check_key_gpio 
+048c 2040048e call p_mouse_ghost_key_check 
+048d 202057ad branch mouse_key + 7 
+
+p_mouse_ghost_key_check:
+048e 70497900 jam 0 ,mem_mouse_matrix_key_cow_count 
+048f 70497a00 jam 0 ,mem_mouse_matrix_key_row_count 
+0490 70497b00 jam 0 ,mem_mouse_ghost_flag 
+0491 1fe22400 copy pdata ,regb 
+0492 6848c644 fetcht 1 ,mem_lbutton_gpio 
+0493 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0494 98467c00 isub temp ,null 
+0495 202284a0 branch p_mouse_matrix_ghost_key_l_bk ,zero 
+0496 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+0497 98467c00 isub temp ,null 
+0498 202284a6 branch p_mouse_matrix_ghost_key_l_fw ,zero 
+0499 6848c645 fetcht 1 ,mem_mbutton_gpio 
+049a 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+049b 98467c00 isub temp ,null 
+049c 202284af branch p_mouse_ghost_key_mbk_rfw ,zero 
+
+p_mouse_ghost_key_mfw_rbk:
+049d 204057fb call mouse_ghost_key_check_m_fw 
+
+p_mouse_ghost_key_rbk:
+049e 204004b4 call p_mouse_ghost_key_check_r_bk 
+049f 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_matrix_ghost_key_l_bk:
+04a0 6848c645 fetcht 1 ,mem_mbutton_gpio 
+04a1 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+04a2 98467c00 isub temp ,null 
+04a3 2022d7d6 branch mouse_ghost_key_lbk_mfw ,zero 
+
+p_mouse_ghost_key_lbk_rfw:
+04a4 204057ef call mouse_ghost_key_check_l_bk 
+04a5 202004b0 branch p_mouse_ghost_key_rfw 
+
+p_mouse_matrix_ghost_key_l_fw:
+04a6 6848c645 fetcht 1 ,mem_mbutton_gpio 
+04a7 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+04a8 98467c00 isub temp ,null 
+04a9 202284ac branch p_mouse_ghost_key_lfw_mbk ,zero 
+
+p_mouse_ghost_key_lfw_rbk:
+04aa 204004b6 call p_mouse_ghost_key_check_l_fw 
+04ab 2020049e branch p_mouse_ghost_key_rbk 
+
+p_mouse_ghost_key_lfw_mbk:
+04ac 204004b6 call p_mouse_ghost_key_check_l_fw 
+04ad 204004b2 call p_mouse_ghost_key_check_m_bk 
+04ae 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_mbk_rfw:
+04af 204004b2 call p_mouse_ghost_key_check_m_bk 
+
+p_mouse_ghost_key_rfw:
+04b0 204004b8 call p_mouse_ghost_key_check_r_fw 
+04b1 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_check_m_bk:
+04b2 1a417e12 and regb ,mouse_m_bk_button ,pdata 
+04b3 202057f3 branch mouse_ghost_key_check_m_bk + 1 
+
+p_mouse_ghost_key_check_r_bk:
+04b4 1a417e0a and regb ,mouse_r_bk_button ,pdata 
+04b5 202057f6 branch mouse_ghost_key_check_r_bk + 1 
+
+p_mouse_ghost_key_check_l_fw:
+04b6 1a417e11 and regb ,mouse_l_fw_button ,pdata 
+04b7 202057f9 branch mouse_ghost_key_check_l_fw + 1 
+
+p_mouse_ghost_key_check_r_fw:
+04b8 1a417e12 and regb ,mouse_r_fw_button ,pdata 
+04b9 202057ff branch mouse_ghost_key_check_r_fw + 1 
               org 0x2000
 
 start:
@@ -1953,6 +2104,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 
@@ -2651,7 +2804,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 
 
@@ -8887,6 +9040,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 
 
@@ -19422,11 +19577,11 @@
 54df 2040611a call mouse_logo_led_off 
 54e0 2040550c call mouse_lpm_before_common 
 54e1 204054f9 call mouse_gpio_pd_idle 
+
+mouse_setgpio_hibernate_next:
 54e2 6848c65b fetcht 1 ,mem_mouse_reuse_2ice_gpio 
 54e3 204055b5 call mouse_gpio_config_input_pu 
 54e4 204055b9 call mouse_gpio_set_high_impedance 
-
-mouse_setgpio_hibernate_next:
 54e5 204061fd call mouse_device_multi_led_all_off 
 54e6 204054f2 call mouse_adc_gpio_set_before_hibernate 
 54e7 202054e8 branch mouse_wheel_gpio_set_before_hibernate 
@@ -20142,6 +20297,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 
@@ -22931,10 +23088,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 
@@ -23522,6 +23679,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 
@@ -23752,6 +23911,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/RongLian_Project/RL_mouse_public_1M/output/romcode.rom	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/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: program/app_mouse.prog
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/program/app_mouse.prog	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/program/app_mouse.prog	(working copy)
@@ -342,10 +342,10 @@
 	call mouse_logo_led_off
 	call mouse_lpm_before_common
 	call mouse_gpio_pd_idle
+mouse_setgpio_hibernate_next:
 	fetcht 1,mem_mouse_reuse_2ice_gpio
 	call mouse_gpio_config_input_pu
 	call mouse_gpio_set_high_impedance
-mouse_setgpio_hibernate_next:
 	call mouse_device_multi_led_all_off
 	call mouse_adc_gpio_set_before_hibernate
 	branch mouse_wheel_gpio_set_before_hibernate
@@ -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
@@ -3880,9 +3881,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
@@ -4449,6 +4450,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
@@ -4680,6 +4682,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/RongLian_Project/RL_mouse_public_1M/program/bt.prog	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/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/RongLian_Project/RL_mouse_public_1M/program/g24_protocol_stack/24g_transmitter.prog	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/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/RongLian_Project/RL_mouse_public_1M/program/patch.prog	(revision 1881)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/program/patch.prog	(working copy)
@@ -1,11 +1,12 @@
 
-//define AUTO_TEST
 //define PWM_SET
+//define ICE_SELECT_ANGLE
 define POWER_CTRL
 //define MORE_POWER_CTRL
 //define ADC_1121SB
 //define ADC_1121SB_1V8_MODE
-define XTAL_CALP_SET
+//define XTAL_CALP_SET
+//define COMMBINATION_DPI
 
 	bbit1 8,pf_patch_ext
 	beq patch00_0,p_soft_reset
@@ -14,16 +15,26 @@
 	beq patch02_1,p_set_sync_on
 	beq patch02_4,p_set_lemode
 	beq patch02_5,p_rf_rx_enable
+	beq patch02_6,p_calc_freq
 	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 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
@@ -39,6 +50,7 @@
 	beq patch11_3,p_mouse_app_initflag_check
 	beq patch11_6,p_mouse_idle
 	beq patch12_0,p_mouse_check_select_device_by_switch
+	beq patch12_3,p_mouse_drawing_optima
 	beq patch12_5,p_mouse_24g_hibernate_set
 	beq patch12_6,p_mouse_24g_package_data
 	beq patch18_5,p_otp_read_data
@@ -54,7 +66,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
@@ -62,6 +75,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
@@ -72,6 +86,7 @@
 	branch assert
 
 /****************************************COMMON PATCH*****************************************/
+
 p_main_loop:
 ifdef SECURE_CONNECTION
 	call sp_calc_sequence_256
@@ -88,6 +103,7 @@
 p_shutdown_radio:
 	jam 0,0x8900
 	branch shutdown_radio+1
+
 p_set_sync_on:
 	jam 0x60,0x8a0f 
 	jam 0xaa,0x8a10 
@@ -97,12 +113,23 @@
 	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
+
+
+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
 
 p_initialize_radio_cont:
 	jam 0,mem_le_testtype
@@ -149,7 +176,33 @@
 	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 
@@ -159,8 +212,7 @@
 	fetch 1,mem_xtal_c_sel
 p_set_xtal_cap_next:
 	store 1,core_xtal_cap
-	until null,lpo_edge
-	rtn
+	branch lpm_write_wait
 	
 p_dpll_on:
 	fetch 1,mem_fcomp_div
@@ -213,6 +265,10 @@
 	store 1,0x8138 
 	until null,lpo_edge
 
+p_set_otp_config_wake:
+	fetch 2,mem_otp_charge_pump_x
+	rtn blank
+	store 2,mem_otp_charge_pump
 p_set_otp_config2:
 	fetch 1,0x8acb
 	and pdata,0xf0,pdata
@@ -239,12 +295,6 @@
 	store 1,0x8a02
 	rtn
 
-p_set_otp_config_wake:
-	fetch 2,mem_otp_charge_pump_x
-	rtn blank
-	store 2,mem_otp_charge_pump
-	branch p_set_otp_config2
-
 p_rf_rx_enable:
 	call rf_debug_rx_gpio_high
 	call rf_rx_agc_set
@@ -266,13 +316,21 @@
 	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_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
 	fetch 1,mem_24g_fast_hop_count			// 125Hz=11  250Hz=5
@@ -304,31 +362,23 @@
 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_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 
@@ -430,36 +480,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
@@ -500,8 +520,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
@@ -545,15 +564,8 @@
 	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	
 	fetchr rega, 1,mem_le_rxbuf_data_length
@@ -591,6 +603,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
@@ -686,53 +757,43 @@
 p_gpio_set_wake_by_current_state:
 	sub temp,GPIO_DISABLE,null
 	rtn zero
-	storet 1,mem_mouse_wheel_temp_gpio
 	call gpio_get_bit
 	branch p_gpio_set_qdec_mode,true
-p_gpio_set_low_wake_disable_qdec:
-	fetcht 1,mem_mouse_wheel_temp_gpio
-	call gpio_set_high_impedance
-	fetcht 1,mem_mouse_wheel_temp_gpio
-	branch p_gpio_set_low_wake
+p_gpio_set_low_wake:
+	arg 3,debug
+	branch gpio_set_wake_high
 	
 p_gpio_set_qdec_mode:
 	jam 1,mem_mouse_qdec_set_flag
-	fetcht 1,mem_mouse_wheel_temp_gpio
-	call gpio_set_high_impedance
-	fetcht 1,mem_mouse_wheel_temp_gpio
-	branch p_mouse_qdec_lpm_cfg
-
 p_mouse_qdec_lpm_cfg:
 	arg 6,debug
 	branch gpio_set_wake_high
 
-p_gpio_set_low_wake:
-	arg 3,debug
-	branch gpio_set_wake_high
-
 p_mouse_puchk_disable:
 	setarg 0x10			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable 
 p_mouse_puchk_set:
 	store 1,core_puwakeup
-	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
-	fetcht 1,mem_sensor_motion_gpio
-	branch gpio_clr_wake
+p_mouse_wheel_set_impedance:
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_set_high_impedance
+	fetcht 1,mem_whee_b_data_gpio
+	branch gpio_set_high_impedance
 	
 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
@@ -748,7 +809,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
@@ -789,10 +852,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
@@ -800,7 +860,6 @@
 	nbranch g24_reconn_device_fail,sync
 	nbranch g24_reconn_device_fail,user3
 	call g24_ackpayload_parse
-	
 	fetch 1,mem_24g_rxdata_length	//ack payload length 
 	branch p_recv_addr_zero_skip,blank
 p_g24_reconn_dispatch_next_2:	
@@ -812,25 +871,40 @@
 
 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_recv_addr_zero_skip:
-	fetch 4,mem_24g_rxpayload+2
-	rtn blank
-	branch p_g24_reconn_dispatch_next_2
+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
-	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
+	branch mouse_param_init+2
+
+p_recv_addr_zero_skip:
+	fetch 4,mem_24g_fast_conn_addr
+	fetcht 4,mem_24g_addr
+	isub temp,null
+	branch p_g24_reconn_dispatch_next_2,zero
+	fetch 4,mem_24g_rxpayload+2
+	rtn blank
+	branch p_g24_reconn_dispatch_next_2
 
 ifdef POWER_CTRL
 p_power_ctrl_start:
@@ -917,8 +991,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:
@@ -931,17 +1005,37 @@
 
 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
-	
-p_mouse_24g_before_lpm_sleep:
-	rtn
-//	fetch 1,mem_device_flag
-//	rtnne MODE_24G_DEVICE
-//	branch mouse_24g_before_lpm_sleep+2	
+	call mouse_matrix_public_gpio_reset
+	branch mouse_wheel_gpio_init
 
+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 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
+	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:
 	call p_mouse_store_normal_tx_power
@@ -992,20 +1086,16 @@
 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
+p_mouse_le_lap_store:
 	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
-	store 6,mem_le_lap
-	rtn
+	branch p_mouse_le_lap_store
 
 p_mouse_store_remote_bdaddr:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
@@ -1013,11 +1103,36 @@
 //	bbit0 MOUSE_ENABLE_OTP,mouse_store_remote_bdaddr+1
 	arg MOUSE_STORE_EEPROM_FLAG,queue
 	call mouse_disable_function_flag
-	call mouse_check_device_addr
+	call p_mouse_check_device_addr
 	call p_mouse_before_store_reconn_info
 	branch mouse_store_device_info_delay
 
+p_mouse_check_device_addr:
+	fetch 1,mem_record_bt_mode
+	rtnne REC_4_MODE
+	store 1,mem_device_addr_temp
+	fetch 6,mem_le_plap
+	store 6,mem_device_addr_temp+1
+	fetch 7,mem_device_addr_temp
+	arg mem_device1_type,contr
+	arg 3,loopcnt
+p_mouse_check_device_addr_end:
+	ifetcht 7,contr
+	isub temp,null
+	branch mouse_clean_addr,zero
+	increase 7,contr
+	loop p_mouse_check_device_addr_end
+	rtn
+	
 p_mouse_before_store_reconn_info:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	increase -1,pdata
+	mul32 pdata,13,pdata
+	iadd rega,rega
+	fetch 1,mem_record_bt_mode
+	istore 1,rega
+	rtnne REC_4_MODE
 	fetch 1,mem_device_flag
 	beq MODE_BT_DEVICE1,p_mouse_store_le_device1
 	beq MODE_BT_DEVICE2,p_mouse_store_le_device2
@@ -1050,6 +1165,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
@@ -1066,6 +1184,31 @@
 	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
@@ -1140,7 +1283,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
@@ -1173,28 +1316,43 @@
 	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 p_mouse_24g_hibernate_set,blank
+	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_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
@@ -1203,14 +1361,14 @@
 p_mouse_24g_first_bluetooth_reconnect:
 	call mouse_24g_stop
 	jam MODE_BT_DEVICE1,mem_device_flag
-	branch mouse_start_reconnect_device
+	branch mouse_le_fast_conn_judge
 
 p_mouse_reconn_dongle_attempt_fail:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit0 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_attempt_fail_enter_hibernate
 	bbit1 MOUSE_ENABLE_EEPROM,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:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
@@ -1222,7 +1380,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
@@ -1239,23 +1402,11 @@
 	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
-
-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_store_normal_tx_power:
 	fetch 1,mem_tx_power
 	store 1,mem_normal_tx_power
 	rtn
-
-p_mouse_fetch_normal_tx_power:
-	fetch 1,mem_normal_tx_power
-	store 1,mem_tx_power
-	rtn
 	
 p_mouse_idle:
 	call mouse_low_voltage_led_no_enter_lpm
@@ -1263,6 +1414,9 @@
 	call p_mouse_dpi_check
 	branch mouse_idle+4
 
+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
@@ -1305,15 +1459,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
 	
@@ -1333,10 +1484,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
 	
@@ -1344,20 +1491,9 @@
 	call mouse_gpio_set_pupd_by_input
 	
 	call mouse_logo_led_off
-	call mouse_lpm_before_common
-	fetcht 1,mem_whee_a_data_gpio
-	call gpio_set_high_impedance
-	fetcht 1,mem_whee_b_data_gpio
-	call gpio_set_high_impedance
-	fetcht 1,mem_mouse_reuse_2ice_gpio
-	call mouse_gpio_config_input_pu
-	call p_mouse_gpio_set_high_impedance
-	call mouse_setgpio_hibernate_next
-	fetcht 1,mem_sensor_motion_gpio
-	call gpio_clr_wake
-	fetcht 1,mem_sensor_motion_gpio
-	branch gpio_out_active
-
+	call p_mouse_lpm_before_common
+	branch mouse_setgpio_hibernate_next
+/*
 p_mouse_gpio_set_high_impedance:
 	fetch 3,mem_mouse_set_high_impedance_bit_set
 	store 3,mem_pdatatemp
@@ -1378,7 +1514,7 @@
 	sub temp,UI_BUTTON_GPIO_DISABLE,null
 	rtn zero
 	branch gpio_set_analog
-
+*/
 p_mouse_24g_package_data:
 	rtnmark0 mark_24g
 	call mouse_motion
@@ -1413,52 +1549,37 @@
 p_mouse_check_select_device_by_switch:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
-	bbit0 MOUSE_ENABLE_SWITCH_GPIO_CONNECT_VIN,mouse_switch_gpio_connect_gnd
-p_mouse_switch_gpio_connect_vin:
+	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_active
+	call gpio_out_inactive
 	fetcht 1,mem_device_switch_gpio
-	call mouse_gpio_config_input_pd
+	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
 
-ifdef PWM_SET
-
-/*
-core_clksel
-[7:6]pwm clock select
-	0:sysclk 
-	1:sysclk undivided
-	2:rc2M
-	3:lpo
-*/
-p_pwm_clk_set:
-	fetch 1,core_clksel
-	and pdata,0xc0,pdata
-	beq 0x40,pwm_24m_clk_set
-	beq 0x80,p_pwm_2m_clk_set
-	beq 0xc0,pwm_33k_clk_set
-	branch pwm_12m_clk_set
-p_pwm_2m_clk_set:
-	setarg 2000000
-	rtn
-
-p_pwm_out_set:
-	fetcht 3,mem_pdatatemp+2
-	call p_pwm_clk_set
-	branch pwm_out_set+2
-endif
-
+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
+	
 p_mouse_init_sensor:
 	call mouse_read_sensor_id
 	beq P32XX_ID1,p_mouse_init_p32xx_id2_judge
 	beq P3065_ID1,mouse_init_p3065
 	beq PKA8G2_ID1,p_mouse_ka8g2_id2_judge
-	call mouse_twspi_reset
-	nop 6900
-	branch mouse_init_sensor
+	branch mouse_init_sensor+5
 
 p_mouse_ka8g2_id2_judge:
 	call mouse_sensor_poweron
@@ -1484,45 +1605,28 @@
 	setarg 0x49		// id3
 	call twspi_read
 	beq 0xa1,mouse_S201X_init_param
-	jam P3065_XY,mem_config_sensor_type
-	rtn
+	branch mouse_p3065xy_init_param
 
 p_mouse_dpi_process:
 	call mouse_dpi_ghost_check
 	rtn user
-	fetch 1,mem_mouse_dpi
-	copy pdata,temp
-	fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	bbit1 MOUSE_ENABLE_DOUBLE_DPI_KEY,mouse_double_dpi_check
 	fetch 1,mem_config_sensor_type
 	beq KA5857,p_mouse_dpi_process_5_level
-	//beq P3212,p_mouse_dpi_process_5_level
-	beq P3212,p_mouse_dpi_process_4_level
-	copy temp,pdata
-	increase 1,pdata
-	and pdata,0x03,pdata
-	branch mouse_dpi_level_store
+	branch mouse_dpi_process+3
 	
 p_mouse_dpi_process_5_level:
-	copy temp,pdata
+	fetch 1,mem_mouse_dpi
 	increase 1,pdata
 	sub pdata,4,null
-	ncall p_mouse_dpi_init,positive
-	branch mouse_dpi_level_store
-p_mouse_dpi_process_4_level:
-	copy temp,pdata
-	increase 1,pdata
-	and pdata,0x03,pdata
-	ncall p_mouse_dpi_init,positive
+	ncall set_pdata_0,positive
 	branch mouse_dpi_level_store
-p_mouse_dpi_init:
-	setarg 0
-	rtn
+
 p_mouse_setting_dpi_4_level:
 	fetch 1,mem_config_sensor_type
 	rtneq KA5857
 	rtneq P3212
-	branch mouse_setting_dpi_4_level	
+	branch mouse_setting_dpi_4_level
+
 p_mouse_setting_dpi:
 	call p_mouse_setting_dpi_4_level
 	call mouse_dpi_led_blink_delay
@@ -1531,18 +1635,21 @@
 	beq KA5857,mouse_seting_3212_dpi
 	beq S201X,p_mouse_seting_S201_dpi
 	branch mouse_setting_sensor_type+2
-p_mouse_check_sensor_data:
-	fetch 1,mem_spi_write_flash_sm
-	rtnne FLASH_SM_NO_BUYS
-	fetch 1,mem_config_sensor_type
-	beq KA8G2,p_mouse_pka8g2_sensor_motion
-	branch mouse_check_sensor_data+2
+
 p_mouse_seting_S201_dpi:
 	fetch 1,mem_mouse_dpi
 	beq MOUSE_DPI_LEVEL1,mouse_set_S201_dpi_0	//1200
 	beq MOUSE_DPI_LEVEL2,mouse_set_S201_dpi_1	//1600
 	beq MOUSE_DPI_LEVEL3,mouse_set_S201_dpi_4  //800
 	branch mouse_set_S201_dpi_0
+
+p_mouse_check_sensor_data:
+	fetch 1,mem_spi_write_flash_sm
+	rtnne FLASH_SM_NO_BUYS
+	fetch 1,mem_config_sensor_type
+	beq KA8G2,p_mouse_pka8g2_sensor_motion
+	branch mouse_check_sensor_data+2
+
 p_mouse_pka8g2_sensor_motion:
 	call mouse_clear_sensor_data
 	fetch 1,mem_sensor_motion_gpio
@@ -1556,63 +1663,111 @@
 	bne PKA8G2_ID1,mouse_twspi_reset
 	branch mouse_p3212_sensor_motion_2
 
-	
-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
+	call p_mouse_check_sensor_data
+	setarg 0x0089
+	call twspi_write	
+	call mouse_setting_sensor_type
+	call mouse_zwheel
+	call mouse_t_zwheel
+	call p_mouse_key
+	branch mouse_motion+11
 
-	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
+p_mouse_drawing_optima:
+	fetch 1,mem_config_sensor_type
+	rtneq KA8G2
+	branch mouse_drawing_optima+1
 
-else
-p_mouse_motion:
-	disable user
-	setarg 0
-	store 6,mem_mouse_x
-	call p_mouse_check_sensor_data
-	branch mouse_motion+5
-endif
+p_mouse_key:
+	call mouse_check_firekey_gpio
+	fetch 1,mem_fire_key_flag
+	nbranch fire_key_press,blank
+	fetch 1,mem_fire_key_status
+	nbranch fire_key_process,blank
+	
+	call mouse_check_key_gpio
+	call p_mouse_ghost_key_check
+	branch mouse_key+7
+
+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
+
+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
@@ -1801,15 +1956,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
@@ -1819,11 +1966,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
@@ -1832,3 +1980,29 @@
 
 endif
 
+ifdef PWM_SET
+
+/*
+core_clksel
+[7:6]pwm clock select
+	0:sysclk 
+	1:sysclk undivided
+	2:rc2M
+	3:lpo
+*/
+p_pwm_clk_set:
+	fetch 1,core_clksel
+	and pdata,0xc0,pdata
+	beq 0x40,pwm_24m_clk_set
+	beq 0x80,p_pwm_2m_clk_set
+	beq 0xc0,pwm_33k_clk_set
+	branch pwm_12m_clk_set
+p_pwm_2m_clk_set:
+	setarg 2000000
+	rtn
+
+p_pwm_out_set:
+	fetcht 3,mem_pdatatemp+2
+	call p_pwm_clk_set
+	branch pwm_out_set+2
+endif
\ No newline at end of file
Index: sched/1305.dat
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/sched/1305.dat	(revision 1812)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/sched/1305.dat	(working copy)
@@ -9,7 +9,7 @@
 mem_lpm_hv_sel:b4
 
 mem_fcomp_div:18
-mem_xtal_c_sel:7e
+mem_xtal_c_sel:3e
 mem_gpio_wakeup_cfg:00 00 20 00 00 00 00 00 00 00 00 00
 
 mem_version:08 0e 05 03 00
Index: sched/mouse.dat
===================================================================
--- /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/sched/mouse.dat	(revision 1881)
+++ /1121s/branch/mouse/RongLian_Project/RL_mouse_public_1M/sched/mouse.dat	(working copy)
@@ -111,7 +111,7 @@
 ff #mem_device_switch_gpio
 05 #mem_mouse_reuse_2ice_gpio
 ff #mem_mouse_logo_led_gpio
-8e#mem_mouse_1io2led_multi_24gled
+8e #mem_mouse_1io2led_multi_24gled
 8d #mem_mouse_1io2led_multi_bt1led
 8b #mem_mouse_1io2led_multi_bt2led
 ff #mem_mouse_low_voltage_alarm_gpio
@@ -168,30 +168,13 @@
 34
 ff ff ff ff ff ff			#eeprom need
 mem_device3_type:
-33
+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:ff ff ff ff ff ff 		#otp/flash=0	eeprom=ff
 
@@ -206,12 +189,12 @@
 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
 
-mem_mouse_24g_short_sleep_set_8ms:a0 00 01
+mem_mouse_24g_short_sleep_set_8ms:70 11 01	#SB:70 11 01	SA:60 ea 00
 mem_mouse_24g_long_sleep_set_8ms:00 77 01
 mem_mouse_24g_fast_hop_count_8ms:0b
 mem_mouse_24g_tsniff_8ms:00 77 01 00
@@ -342,7 +325,7 @@
 ff ff	
 mem_sensor_ka8g2_init_new:
 09 a5
-26 34
+46 34
 19 04
 60 07
 69 04
@@ -365,15 +348,6 @@
 7d 80
 ff ff
 
-mem_sensor_ka8g2_init:
-09 a5
-26 34
-60 07
-69 04
-7d 20
-7e 00
-09 00
-ff ff
 
 mem_sensor_8650_init:
 09 5a
@@ -423,7 +397,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
@@ -436,9 +410,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: util/geneep.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
