Index: a.bat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/a.bat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/a.bat	(working copy)
@@ -0,0 +1,11 @@
+set baud=a0
+e pu
+e 8043 00
+
+::e hu output/romcode.rom 2000
+::e ku
+e pu
+e hu output/ramcode.rom 0
+ping -n 2 127.1 >nul
+e su output/sched.rom
+e cu
\ No newline at end of file
Index: do_sdk.bat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/do_sdk.bat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/do_sdk.bat	(working copy)
@@ -0,0 +1,101 @@
+@set FPGA_PATH=fpgajic\fpga
+@set ROM_PATH=.
+@set MV_PATCH=mv\src\yichip
+@set YC_PATCH_FILE=yc_patch_yc1021.h
+@set enc=1
+@set enckey=0000000000000000
+@rem set device_option=rfbqb
+@rem set device_option=mouse
+@rem set device_option=shutter
+@rem set device_option=shutter_dy
+@rem set device_option=hci
+@rem set device_option=antilost
+@rem set device_option=dongle
+@rem set device_option=module
+@set device_option=keyboard
+@rem set device_option=car
+@rem set device_option=remote_car
+@rem set device_option=mesh
+@rem set device_option=otp
+@rem set device_option=flippen
+@echo off
+
+set now_path=%~dp0
+set util_path=%now_path%util
+
+
+setlocal enabledelayedexpansion
+copy program\patch_sdk.prog + program\patch.prog  output\bt_program23.meta
+copy format\rom.format + format\labels.format + format\command.format  output\bt_format.meta > nul
+
+::perl util/memalloc.pl output/bt_format.meta
+
+if "%device_option%" equ "hci" (
+  copy sched\hci_boot.dat output\sched.rom
+) else if "%device_option%" equ "keyboard" (
+  copy sched\keyboard.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "mouse" (
+  copy sched\mouse.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "module" (
+  copy sched\DM_module.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "shutter" (
+  copy sched\shutter.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "shutter_dy" (
+  copy sched\shutter_dy.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "antilost" (
+  copy sched\antilost.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "dongle" (
+  copy sched\dongle.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "car" (
+  copy sched\car.dat + sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "remote_car" (
+  copy sched\remote_car.dat + sched\1305.dat output\sched.rom
+ ) else if "%device_option%" equ "mesh" (
+  copy sched\1305.dat +sched\mesh.dat output\sched.rom
+) else if "%device_option%" equ "otp" (
+  copy sched\1305.dat output\sched.rom
+) else if "%device_option%" equ "flippen" (
+  copy sched\mouse.dat + sched\flippen.dat + sched\1305.dat output\sched.rom
+)else  (
+
+cd ..
+echo **********************************
+echo Error: illegal device_option !
+echo **********************************
+goto end
+) 
+
+perl util/mergepatch.pl 
+
+cd output
+osiuasm bt_program23 -O-W
+
+
+
+%util_path%/geneep  -n -s -i
+
+
+:contin
+echo create auth rom
+perl ../util/mergepatch.pl mouse_ble_att_list usb_kbdata_vendor_define usb_kbdata usb_msdata usb_devicedata usb_confdata ble_shutter_gatt_list ble_shutter_key_value_list ble_car_att_list sha256 
+perl ../util/romcrc.pl romcode.rom
+perl  ../util/mergepatch.pl otp
+
+
+if "%device_option%" equ "keyboard" (
+cd ..\output
+copy eeprom.dat ..\util\eeprom.dat
+cd ..\util
+eeprom2fulleeprom.exe eeprom.dat 64>compare2.dat
+crc16.exe compare2.dat 2 >..\output\eeprom.dat
+del eeprom.dat
+del compare2.dat
+cd ..\output
+copy eeprom.dat ..\output\flash.dat 
+)
+
+
+:end
+
+
+
Index: format/command.format
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/format/command.format	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/format/command.format	(working copy)
@@ -0,0 +1,1446 @@
+
+/* Parse Command:
+TX: take bits from tx fifo, jam it into shift and a destination (rf,bucket)
+RX: take bits from demod,  jam it into shift and a destination (acl,sco,bucket) */
+
+/* Inject Command:
+TX: 0 into shift, send tail of shift into a destination (rf,bucket)
+RX: 0 into shift, send tail of shift into a destination (acl,sco,bucket) */
+
+format
+  ! 15 romdat
+  % d0
+  % d1
+  % d2
+  % d3
+  [8] d0
+  [8] d1
+  [8] d2
+  [8] d3
+end
+
+format
+  ! 15 enable   /* set flag to 1 */
+  % flag
+  [5] opcode
+  [6] 1
+  [6] flag
+  [6] null
+  [9] 0
+end
+ /* High 5 bytes of channel map */
+format
+  ! 15 pulse   /* set flag to 1 */
+  % flag
+  [5] opcode
+  [6] 1
+  [6] flag
+  [6] null
+  [9] 0
+end
+
+format
+  ! 15 disable   /* set flag to 0 */
+  % flag
+  [5] opcode
+  [6] 2
+  [6] flag
+  [6] null
+  [9] 0
+end
+
+format
+  ! 15 set0  /* set selected bit of reg to 0 */
+  % immediate
+  % reg
+  [5] opcode
+  [6] 9
+  [6] never
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 set1  /* set selected bit of reg to 1 */
+  % immediate
+  % reg
+  [5] opcode
+  [6] 9          /* alu op demux */
+  [6] always
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 setflag  /* set selected bit of the reg to the polarity of the flag */
+  % flag
+  % immediate
+  % reg
+  [5] opcode
+  [6] 9
+  [6] flag
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 nsetflag  /* set the selected bit of the reg to the opposite polarity of the flag */
+  % flag
+  % immediate
+  % reg
+  [5] opcode
+  [6] 0x29
+  [6] flag
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 setflip    /* invert the selected bit of the reg */
+  % immediate
+  % reg
+  [5] opcode
+  [6] 10            /* this is alu op */
+  [6] always
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 0x1f qset1      /* demux the lowest 4 bit of queue and OR it with regr into regw */
+  % reg             /* in short, set the bit in reg indexed by queue to 1 */
+  [5] opcode
+  [6] 9
+  [6] always
+  [6] reg
+  [9] 0
+end
+  
+format
+  ! 0x1f qset0      /* demux the lowest 4 bit of queue and AND it with regr into regw */
+  % reg             /* in short, set the bit in reg indexed by queue to 0 */
+  [5] opcode
+  [6] 9
+  [6] never
+  [6] reg
+  [9] 0
+end
+
+format 
+  ! 0x1f qsetflag   /* set the bit in reg index by queue to same as flag */
+  % flag
+  % reg
+  [5] opcode
+  [6] 9
+  [6] flag
+  [6] reg
+  [9] 0
+end
+
+format 
+  ! 0x1f nqsetflag   /* set the bit in the reg index by queue to opposite of flag */
+  % flag
+  % reg
+  [5] opcode
+  [6] 0x29
+  [6] flag
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 0x1f qsetflip      /* flip the bit in reg index by queue */
+  % reg
+  [5] opcode
+  [6] 10
+  [6] always
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 1 parse       /* take bits out of source (sco_tx,tx_buffer,rx-elas) into pdata and dest (sco_rx,rx_fifo,tx-elas) */
+  % source
+  % dest
+  % immediate
+  [5] opcode
+  [4] source      /* voice, data, demod */
+  [2] 0
+  [6] 0    
+  [2] 0           /* parse or inject */ 
+  [4] dest        /* acl, sco, mod, bucket */
+  [9] immediate   /* number of bits to parse off */
+end
+
+format
+  ! 1 inject      /* shift data from pdata into destination (tx-elas,rx_fifo,sco_rx) */
+  % destination
+  % immediate
+  [5] opcode
+  [4] 0
+  [2] 0
+  [6] 1
+  [2] 0
+  [4] destination /* acl,sco,mod,bucket */
+  [9] immediate   /* number of bits to be injected */
+end
+
+format
+  ! 1 iinject
+  % destination
+  % regr
+  [5] opcode
+  [6] regr       /* contain the number of bits to inject */
+  [6] 3
+  [2] 0
+  [4] destination /* acl,sco,mod,bucket */
+  [9] 0 
+end
+
+format
+  ! 1 stuff  /* automatic parse, stuff_counter decrement on every bit until hits zero */
+  % source
+  % destination
+  [5] opcode
+  [4] source
+  [2] 0
+  [6] 2
+  [2] 0
+  [4] destination
+  [9] 0
+end
+
+format    /* force immediate value into registers */
+  ! 3 force
+  % immediate
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 0    /* alu operation force */
+  [6] regw  /* destination register */
+  [9] immediate
+end
+
+format    /* force whatever is on shift_reg to regsiters */
+  ! 0x13 iforce
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 0    /* alu operation force */
+  [6] regw  /* destination register */
+  [9] 0
+end
+
+format    /* force immediate value into registers */
+  ! 3 increase
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 1    /* alu operation add */
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 3 pincrease
+  % immediate
+  [5] opcode
+  [6] -1  /* pdata */
+  [6] 1   /* alu add */
+  [6] -1  /* back to pdata */
+  [9] immediate
+end
+
+format    /* force immediate value into registers */
+  ! 3 and_into
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 2    /* alu operation and into */
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 3 and
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 2    /* alu operation and into */
+  [6] regw
+  [9] immediate
+end
+  
+format
+  ! 0x13 iand    /* pdata & regr -> regw */
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 2    /* alu operation and into */
+  [6] regw
+  [9] 0
+end
+  
+
+format    /* and whatever is in shiftreg with reg */
+  ! 0x13 iand_into
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 2    /* alu operation and into */
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 3 or_into
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 3    /* alu operation or into */
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 3 or
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 3    /* alu operation or into */
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 ior
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 3    /* alu operation or into */
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 ior_into
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 3    /* alu operation or into */
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 3 skip_to   /* jump to location stored in reg */
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 4   /* alu operation copy */
+  [6] rom_addr
+  [9] 0
+end
+
+format
+  ! 3 copy
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 4   /* alu operation copy */
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 deposit   /* copy the register content thru alu to shift register, not prealigned like preload */
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 4   /* alu operation copy */
+  [6] -1  /* pdata */
+  [9] 0
+end
+
+format
+  ! 3 icopy     /* copy the shift register lsb content directly to register, not aligned */
+  % regw
+  [5] opcode
+  [6] -1  /* pdata */
+  [6]  4  /* alu copy */
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 add
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 1
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 iadd       /* regr + pdata -> regw */
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 1
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 sub          /* immediate - regr -> regw */
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 12
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 isub       /* pdata - regr -> regw */
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 12
+  [6] regw
+  [9] 0
+end
+
+
+format
+  ! 3 flip
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 5
+  [6] reg
+  [9] immediate
+end
+  
+format
+  ! 0x13 iflip  /* use shift register as immediate to do xor */
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 5
+  [6] regw
+  [9] 0
+end
+  
+format
+  ! 3 xor
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 5
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 3 xor_into
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 5
+  [6] reg
+  [9] immediate
+end
+  
+format
+  ! 0x13 ixor  /* pdata xor regr and store result in regw */
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 5
+  [6] regw
+  [9] 0
+end
+  
+format
+  ! 3 invert
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 8
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 pinvert    /* invert pdata into itself */
+  [5] opcode
+  [6] -1
+  [6] 8
+  [6] -1
+  [9] 0
+end
+
+format
+  ! 3 div                 /* regr div immediate div */
+  % reg
+  % immediate
+  [5] opcode
+  [6] reg
+  [6] 13                   /* generate diven pulse to div */
+  [6] null
+  [9] immediate
+end
+
+format
+  ! 0x13 idiv           /* pdata div regr data ready at most after 41 nops */
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 13                   /* generate diven pulse to div */
+  [6] null
+  [9] 0
+end
+
+format
+  ! 0x13 idiv48           /* pdata div regr data 48bit */
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 17                   /* generate diven pulse to div */
+  [6] null
+  [9] 0
+end
+
+format
+  ! 3 remainder            /* harvest div remainder */
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 14
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 quotient             /* harvest div quotient */
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 15
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 6
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift2
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 22
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift3
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 18
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift4
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 35
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift8
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 25
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift16
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 34
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift32
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 30
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 7
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift2
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 23
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift8
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 26
+  [6] regw
+  [9] 0
+end
+
+  
+format
+  ! 3 lshift3
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 19
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift4
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 36
+  [6] regw
+  [9] 0
+end
+  
+
+format
+  ! 3 lshift16
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 32
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 bcrc         // calculate regr's byte crc value into pdata
+  % regr
+  [5] opcode
+  [6] regr
+  [6] 24
+  [6] 63
+  [9] 0
+end
+
+
+format
+  ! 3 random               /* random number into regw */
+  % reg
+  [5] opcode
+  [6] 0
+  [6] 20
+  [6] reg
+  [9] 0
+end
+
+format                     /* bit reverse within a byte */
+  ! 3 reverse
+  % reg
+  % regw
+  [5] opcode
+  [6] reg
+  [6] 27
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 priority    /* priority encode reg into regw, lsb is the top priority, ie, priority(8'b00010000) = 4 */
+  % reg
+  % regw
+  [5] opcode
+  [6] reg
+  [6] 21
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 7 setsect   /* set a section of pdata */
+  % section    /* 0 sets 17:0 of pdata with set_data, 1 sets 35:18, 2 sets 53:36, 3 sets 71:54 */
+  % set_data
+  [5] opcode
+  [7] 0
+  [2] section
+  [18] set_data
+end
+
+format
+  ! 10 preload   /* load stuff into pdata according to fhs format, check us.v */
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 0
+  [6] -1
+  [9] 0
+end
+
+format  /* load register with pdata content, according to fhs format, check us.v */
+  ! 10 ialigned   /* all bits are in position */
+  % regw
+  [5] opcode
+  [6] -1
+  [6] 0
+  [6] regw
+  [9] 0
+end
+
+format  /* load register to another according to fhs format */
+  ! 10 aligned
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 0
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 4 branch
+  % addr
+  % flag
+  [5] opcode
+  [6] 1
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 call
+  % addr
+  % flag
+  [5] opcode
+  [6] 2
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 rtn
+  % flag
+  [5] opcode
+  [6] 3
+  [6] flag
+  [15] 0
+end
+
+format
+  ! 0x0d fetch          /* read from memory, data into pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 63
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d fetcht          /* read from memory, data into temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 2
+  [1] addr
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1d ifetch         /* read from memory, data into pdata, address from regr then mem_ptr */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] 63
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] reg
+end
+
+format
+  ! 0x1d ifetcht         /* read from memory, data into temp, address from regr won't increment */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] 2
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] reg
+end
+
+format
+  ! 0x0c store          /* write to memory, data from pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 63
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0c storet          /* write to memory, data from temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 2
+  [1] addr
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1c istore        /* write pdata to memory, address from regaddr */
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] 63            
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+format
+  ! 0x1c istoret        /* write temp to memory, address from regaddr */
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] 2            
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+
+format
+  ! 0x0d crc         // read from memory, count from loopcnt, put crc result into pdata 
+  % addr
+  [5] opcode
+  [6] 63
+  [6] 0
+  [15] addr
+end
+
+format
+  ! 0x1d icrc         /* read from memory, address from reg, count from loopcnt, put crc result into pdata */
+  % reg
+  [5] opcode
+  [6] 63
+  [15] 0
+  [6] reg
+end
+
+
+format
+  ! 0x0c storer          /* write reg to memory, address from immediate then mem_ptr */
+  % reg
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] reg               
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+
+format
+  ! 0x1c istorer        /* write regr to memory, address from regaddr */
+  % regr
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] regr            
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+
+format
+  ! 0x1c lstorer        /* write regr to memory, address from regaddr, length from loopcnt */
+  % regr
+  % regaddr
+  [5] opcode
+  [6] regr            
+  [6] 0
+  [9] 0
+  [6] regaddr
+end
+
+format
+  ! 0x1c lstore        /* write pdata to memory, address from regaddr, length from loopcnt */
+  % regaddr
+  [5] opcode
+  [6] 63            
+  [6] 0
+  [9] 0
+  [6] regaddr
+end
+
+format
+  ! 0x1c lstorew        /* 32bit write pdata to memory, address from regaddr, length from loopcnt */
+  % regaddr
+  [5] opcode
+  [6] 63
+  [6] 42
+  [9] 0
+  [6] regaddr
+end
+
+
+format
+  ! 0x0d fetchr          /* read reg from memory, address from immediate then mem_ptr */
+  % reg
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] reg               
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1d ifetchr        /* read regr from memory, address from regaddr */
+  % regr
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] regr
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+
+
+
+format
+  ! 0x0e jam
+  % immediate
+  % addr
+  [5] opcode
+  [3] 0
+  [16] addr
+  [8] immediate
+end
+
+format			/* 0x242... */
+  ! 4 nbranch
+  % addr
+  % flag
+  [5] opcode
+  [1] 1
+  [5] 1
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 ncall
+  % addr
+  % flag
+  [5] opcode
+  [1] 1
+  [5] 2
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 nrtn
+  % flag
+  [5] opcode
+  [1] 1
+  [5] 3
+  [6] flag
+  [15] 0
+end
+
+format
+  ! 4 nop
+  % addr  /* no-op for addr+2 clocks */
+  [5] opcode
+  [6] 0     
+  [6] 0     /* always */ 
+  [15] addr
+end
+
+format
+  ! 4 clear_stack
+  [5] opcode
+  [6] 4
+  [6] 0    /* always */
+  [15] 0
+end
+
+format
+  ! 6 until
+  % reg
+  % flag
+  [5] opcode
+  [6] reg
+  [6] flag
+  [6] 1
+  [9] 0
+end
+  
+format
+  ! 6 correlate   /* quit if 1. flag is true 2, regr time up 3, found sync,(cond_true) */
+  % reg          /* expire counter to check against */
+  % flag
+  [5] opcode
+  [6] reg
+  [6] flag
+  [6] 2           /* correlate */
+  [9] 0           
+end
+
+format
+  ! 5 compare   /* sets cond flag,  if reg equals immediate */
+  % immediate
+  % reg
+  % mask
+  [5] opcode
+  [6] reg
+  [3] 0
+  [9] mask
+  [9] immediate
+end
+
+format
+  ! 0x15 icompare   /* sets cond flag,  if reg equals pdata */
+  % mask
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 0
+  [9] mask
+  [9] 0
+end
+
+format   /* sets cond. flag, if reg equals LS half of shift reg with MS half of reg being mask */
+  ! 5 iverify
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 2
+  [18] 0
+end
+
+format
+  ! 0x15 qisolate1
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [18] -1
+end
+
+format
+  ! 0x15 qisolate0
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [18] 0
+end
+
+	/* REVAB bug: cannot access bit above 35 */
+format
+  ! 5 isolate1
+  % addr
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [9] -1
+  [9] addr
+end
+
+format
+  ! 5 isolate0
+  % addr
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [9] 0
+  [9] addr
+end
+
+format
+  ! 11 setarg
+  % immediate
+  [5] opcode
+  [27] immediate
+end
+
+format
+  ! 0x1b arg
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [21] immediate
+end
+
+  
+format
+  ! 0 sleep
+  [5] opcode
+  [27] 0
+end
+
+format
+  ! 0 snooze
+  [5] opcode
+  [6] -1
+  [21] 0
+end
+
+format
+  ! 0 revision
+  % rev_num
+  [5] opcode
+  [27] rev_num
+end
+
+format
+  ! 0x18 loop   /* branch when loopcnt is NOT zero, and decrease loopcnt */
+  % addr
+  [5] opcode
+  [4] 4
+  [8] 0
+  [15] addr
+end
+
+format
+  ! 0x18 beq   /* branch when pdata is equal to immediate */
+  % imme
+  % addr
+  [5] opcode
+  [4] 0
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bne   /* branch when pdata is NOT equal to immediate */
+  % imme
+  % addr
+  [5] opcode
+  [4] 1
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 rtneq   /* return when pdata is equal to immediate */
+  % imme
+  [5] opcode
+  [4] 2
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 rtnne   /* return when pdata is NOT equal to immediate */
+  % imme
+  [5] opcode
+  [4] 3
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 bbit1   /* branch when pdata's imme bit is 1 */
+  % imme
+  % addr
+  [5] opcode
+  [4] 5
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bbit0   /* branch when pdata's imme bit is 0 */
+  % imme
+  % addr
+  [5] opcode
+  [4] 6
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 rtnbit1   /* return when pdata's imme bit is 0 */
+  % imme
+  [5] opcode
+  [4] 7
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 rtnbit0   /* return when pdata's imme bit is 0 */
+  % imme
+  [5] opcode
+  [4] 8
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 8	bpatch
+  % imme
+  % addr
+  [5] opcode
+  [4] 9
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 8	bpatchx
+  % imme
+  % addr
+  [5] opcode
+  [4] 14
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bmark1   /* branch when mark's imme bit is 1 */
+  % imme
+  % addr
+  [5] opcode
+  [4] 10
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bmark0   /* branch when mark's imme bit is 0 */
+  % imme
+  % addr
+  [5] opcode
+  [4] 11
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 rtnmark1   /* return when mark's imme bit is 0 */
+  % imme
+  [5] opcode
+  [4] 12
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 rtnmark0   /* return when mark's imme bit is 0 */
+  % imme
+  [5] opcode
+  [4] 13
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 3 mul32                  /* immediate mult regr */ 
+  % regr
+  % immediate                                  
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 31           
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 imul32           /* pdata mult regr 32x32=64bit */  
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 31                   
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 imults           /* pdata mult regr 32x32=64bit, signed */  
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 16
+  [6] regw
+  [9] 0
+end
+
+
+format
+  ! 3 byteswap
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 33
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 shasx          /* SHA256 Sx operation, immediate is Sx */
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 28
+  [6] regw
+  [9] immediate
+end
+
+
+format
+  ! 0x13 regexrot 	/* regext[0] <- regext[7], regext[1] <- regext[0], regext[2] <- regext[1] ... */
+  [5] opcode
+  [6] 0
+  [6] 29
+  [6] null
+  [9] 0
+end
+
+format
+  ! 0x13 adpcm         // encode adpcm from regr into regw
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 43
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 pcm         // decode adpcm from regr into regw
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 44
+  [6] regw
+  [9] 0
+end
+
+
Index: format/labels.format
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/format/labels.format	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/format/labels.format	(working copy)
@@ -0,0 +1,4087 @@
+0x2000 start
+0x2001 soft_reset
+0x200d main_loop
+0x2018 connection_dispatch
+0x201d connection_incontext
+0x2025 connection_nosniff
+0x202a idle_dispatch
+0x2031 idle_exit
+0x2033 idle_le_create_conn
+0x2036 context_load
+0x2041 context_save
+0x2047 context_get_next
+0x2049 context_get_next_loop
+0x204d context_get_next_cont
+0x2054 context_get_next_sniff
+0x2056 context_new
+0x205d context_check_idle
+0x205f context_search_conn_handle
+0x2060 context_search_conn_handle2
+0x2062 context_search_plap
+0x2064 context_search_plap2
+0x2066 context_search_insniff
+0x2068 context_search_sniff_window
+0x2069 context_search
+0x206c context_search_loop
+0x206e context_search_next
+0x2073 context_search_empty
+0x2075 context_search_lap
+0x2076 context_search_lap_cont
+0x207b context_search_handle
+0x2081 context_search_sniff
+0x2082 context_search_sniff_loop
+0x2090 context_search_sniff_sc
+0x2093 context_search_meet1
+0x2094 context_search_meet
+0x2097 context_search_sniff_miss
+0x209d sign_pdata_temp
+0x20a7 sign_pdata_temp_p0
+0x20ad context_check_inconn
+0x20af context_check_a_wack
+0x20b4 context_get_anchor
+0x20c0 context_next_anchor
+0x20c7 context_search_window
+0x20cf end_of_packet
+0x20dc sniff_check_window
+0x20e4 calc_slot_offset
+0x20ee calc_bt_portion
+0x20f0 calc_slot_offset_loop
+0x20f2 calc_skip_bt
+0x20f7 calc_clke_offset
+0x2105 calc_clke_pos
+0x2107 calc_clke
+0x2109 calc_clke2
+0x2113 calc_clke_pos2
+0x2115 calc_clke_pos_adj
+0x2117 qsetxor
+0x211c qset1_p
+0x211d qset_start
+0x211e qset_p
+0x2122 rx_dcoc_avg
+0x2123 btdma
+0x212d rx_dcoc_loop
+0x2133 rx_dcoc
+0x2145 rx_dcoc_loop2
+0x2152 shutdown_radio
+0x2160 set_sync_on
+0x216f set_freq_rx
+0x2179 aac_res_lookup
+0x2187 aac_res_lookup_end
+0x2189 set_lemode_2m_16m
+0x218c set_lemode_1m_16m
+0x218f set_lemode
+0x2197 set_lemode_2m
+0x21a3 set_lemode_1m
+0x21a6 rf_rx_enable
+0x21ba rf_rx_agc_set
+0x21c1 rf_rx_enable_no_soft_agc
+0x21c6 set_freq_tx_int
+0x21d0 calc_freq
+0x21e8 ghp_lookup
+0x21ee ghp_1m
+0x21f9 set_freq_tx
+0x21fc txon
+0x220c set_tx_power
+0x2217 set_tx_power_0db
+0x221a set_tx_power_8a63_28
+0x221c set_tx_power_3db
+0x221f set_tx_power_8a63_2f
+0x2221 set_tx_power_5db
+0x2225 set_tx_power_7db
+0x2229 set_tx_power_10db
+0x222d set_tx_power_f3db
+0x2231 set_tx_power_f5db
+0x2235 set_tx_power_f10db
+0x2239 set_tx_power_f20db
+0x223d initialize_radio
+0x223e initialize_radio_wait
+0x2242 initialize_radio_loop
+0x2248 initialize_radio_cont
+0x2257 initialize_radio2
+0x2266 initialize_radio_16m
+0x2271 rfpll_aac_ghpc
+0x227c rfpll_aac_ghpc_once
+0x227f rfpll_cal_loop
+0x2286 dpll_on
+0x228c dpll_on_24m
+0x2294 aac_ghpc
+0x2298 wait_cal_done
+0x22a7 aac_ghpc_1m
+0x22ae read_cal_result
+0x22b4 dpll_ring_ibias_calc
+0x22c7 dpll_ring_ibias_read_adc
+0x22df ring_ibias_trim_decrs
+0x22e4 ring_ibias_trim_incrs
+0x22e9 save_rssi
+0x22fd save_rssi_store
+0x22ff byte_sign_extern
+0x2304 rssi_hex2dec
+0x2308 bcd
+0x230f gain_control
+0x232e add_negative
+0x2336 gain_increase
+0x233a gain_descend
+0x233d set_rx_gain2
+0x233f set_rx_gain0
+0x2341 set_rx_gain1
+0x2343 ahead_window
+0x2352 get_clk
+0x2356 get_clkbt
+0x235a assert
+0x235c sleep
+0x235f sleep_loop
+0x2363 init_param
+0x2385 lpmstate
+0x2393 lpmwake
+0x239c power_up
+0x239d boot_load
+0x23a0 lpm_poweron_retmem
+0x23b0 lpm_xtal_default
+0x23b5 xtal_fast_wake
+0x23ba lpm_write_lock
+0x23c3 lpm_write_ice_disable
+0x23c7 lpm_write_ice_enable
+0x23cb lpm_preon_counter
+0x23cd lpm_write_3bytes
+0x23cf lpm_write_mpu_s0
+0x23d0 lpm_write_dword
+0x23d1 lpm_write_loop
+0x23d6 lpm_write_mpu_s1
+0x23d8 lpm_disable_exen_output
+0x23dc lpm_disable_io_dozed
+0x23e0 lpm_save_sel_hv
+0x23e1 lpm_write_sel_hv
+0x23e2 lpm_write_wait
+0x23e4 lpm_write_io_vsel
+0x23e6 lpm_load_context
+0x23f4 lpm_save_context
+0x23fd lpm_write_gpio_wakeup
+0x2400 lpm_write_gpio_loop
+0x2405 lpm_write_gpio
+0x2408 lpo_calibration
+0x240f lpo_cal_inited
+0x2414 lpm_doze
+0x2417 lpm_hibernate
+0x241e lpm_sleep
+0x2421 lpm_sleep_skip_cb_function
+0x242e lpm_sleep_loop
+0x2434 lpm_enter_sleep
+0x2438 lpm_cal_xtal_startup
+0x244f lpm_recover_clk
+0x2458 lpm_recover_xtal
+0x245a lpm_recover_timeout
+0x2477 lpm_adjust_clk
+0x2486 lpm_adjust_positive
+0x2489 lpm_clear_counter
+0x248c lpm_dispatch
+0x2496 lpm_dispatch_next
+0x24b4 lpm_dispatch_sleep
+0x24b5 lpm_dispatch_lpo
+0x24bd lpm_dispatch_unconn
+0x24c1 lpm_unconn_cont
+0x24c3 lpm_sleep_btclk
+0x24c8 lpm_mult_wait_timeout
+0x24d2 lpm_match
+0x24d7 lpm_lost
+0x24e0 lpm_mult_short
+0x24e4 lpm_mult_long
+0x24e7 lpm_get_wake_lock
+0x24eb lpm_put_wake_lock
+0x24ef lpm_check_wake_lock
+0x2501 lpm_uart_wake_lock
+0x2506 le_init_conn
+0x2519 le_init_master
+0x2525 le_init_slave
+0x2536 le_conn_dispatch
+0x253f le_master_dispatch
+0x254e le_master_disconn
+0x2551 le_slave_dispatch
+0x2562 le_slave_crc_fail
+0x2562 le_slave_match
+0x2571 le_slave_cont
+0x2577 le_slave_unsync
+0x257b le_check_md
+0x2580 le_slave_more_data
+0x2586 le_slave_disconn
+0x2586 le_disconnect
+0x258d le_clear_connection_info
+0x2592 le_clear_pairing_state
+0x2597 le_got_first_packet
+0x25a4 le_enable_phy_by_pdata
+0x25a6 le_enable_phy_by_pdata1
+0x25ad le_enable_2m
+0x25b0 le_enable_coded_s2
+0x25b0 le_enable_coded
+0x25b4 le_enable_coded_s8
+0x25b8 le_enable
+0x25bc le_disable
+0x25c2 le_prep
+0x25c8 le_prep_next
+0x25cc le_rx_setfreq
+0x25cd le_rf_rx_enable
+0x25d1 le_tx_setfreq
+0x25d3 le_tx_setfreq0
+0x25d5 le_setfreq
+0x25e2 le_ctf_normal
+0x25e5 le_ctf_low
+0x25e8 le_ctf_test
+0x25eb le_sca_map
+0x25fb le_setup
+0x2604 le_setup_master
+0x2609 le_context_nextevent
+0x261a le_context_nexthop
+0x2622 le_nexthop_nowrap
+0x2624 le_calc_channel_map
+0x2628 le_count_channels_loop
+0x262a le_count_channels_notused
+0x2630 le_map_channel
+0x2636 le_map_channel_next
+0x263b le_map_channel_cont
+0x263d le_map_channel_loop
+0x2640 le_map_channel_skip
+0x2645 le_map_channel_end
+0x2648 le_wait_tx
+0x264b le_wait_master
+0x264e le_receive_adv
+0x2652 le_receive_slave
+0x2658 le_receive_packet
+0x2659 le_receive_rxon
+0x2660 le_receive_nolr
+0x2669 le_receive_on_attempt
+0x2677 le_receive_skip
+0x2683 le_rx_loop
+0x2688 le_rx_dec
+0x2694 le_rx_dec_loop
+0x269b le_rx_dec_loop_end
+0x269d le_rx_nopayload
+0x26af le_rx_match
+0x26b2 le_crc_fail_tx
+0x26b9 le_match_set_sync_on
+0x26bb le_match_set_txfreq
+0x26be le_dec_init
+0x26c3 le_dec_start
+0x26d7 le_pcnt_rx_sub1
+0x26dc le_pcnt_rx_sub1_0
+0x26e1 le_dec
+0x26e9 le_dec_end
+0x26f2 le_mic_error
+0x26f3 le_retransmit_end_of_packet
+0x26f6 le_crc_fail
+0x26fa le_unsync_end
+0x26fa le_crc_fail_consecutive
+0x26fc le_end_of_packet
+0x26ff calc_clke_all_modem
+0x2705 calc_clke_modem_coded
+0x2709 calc_clke_modem_2m
+0x270d le_set_until_tx_timer
+0x2714 le_set_until_tx_timer_rx_lr
+0x2716 le_set_until_tx_timer_rx_1m
+0x2717 le_set_until_tx_timer_rx_2m
+0x2719 le_set_until_tx_timer_rx_coded_s2
+0x271c le_set_until_tx_timer_rx_coded_s8
+0x271e le_set_until_tx_timer_rx_coded
+0x2721 le_calc_stop_watch
+0x2729 le_transmit_receive_sifs_without_change_mode
+0x2730 le_transmit_receive_sifs
+0x2734 le_transmit_receive_sifs_notx
+0x273e le_transmit_norx
+0x2741 le_transmit
+0x2751 le_transmit_packet
+0x275e le_transmit_packet_not_enc
+0x275f le_tr_loop
+0x2762 le_tr_nopayload
+0x2769 le_transmit_skip
+0x2770 le_check_start_pause_enc
+0x2779 le_transmit_packet_enc
+0x277d le_transmit_packet_enc_loop
+0x2784 le_transmit_lr
+0x2785 le_transmit_lr_preamble_loop
+0x278f le_transmit_lr_s2
+0x2793 le_transmit_lr_s8
+0x2796 le_transmit_2m
+0x27a2 le_update_param
+0x27a6 le_update_param_ahead1_cb
+0x27bc le_update_param_cb
+0x27c4 le_update_channel_map
+0x27c8 le_update_channel_map_cb
+0x27cd le_update_phy
+0x27d1 le_update_phy_cb
+0x27de le_update_phy_cb_m2s
+0x27e6 le_update_phy_cb_m2s_no_change
+0x27ec le_update_phy_cb_s2m
+0x27f5 le_update_phy_cb_s2m_no_change
+0x27fb le_check_update_flag
+0x2809 le_update_ahead1
+0x280b le_update
+0x2810 le_check_update_small
+0x281c le_check_retransmit
+0x2823 le_acknowledge
+0x283c le_ack_unenc
+0x284a le_check_wak
+0x2857 le_set_enc
+0x285c le_clear_enc
+0x2868 le_scan_check_sender_addr_type
+0x286d le_get_master_rx_max
+0x2871 le_prepare_tx
+0x2892 le_check_tx_md
+0x2899 le_check_continue
+0x28a2 le_set_md
+0x28a4 le_clear_md
+0x28a6 le_update_tx_type
+0x28aa le_att_check_notification_enable
+0x28b6 le_send_empty
+0x28b8 le_send_packet
+0x28c8 le_send_no_txlen
+0x28ce le_send_packet_enc
+0x28d0 get_lpm_wake_ble_rx_lock
+0x28d2 put_lpm_wake_ble_rx_lock
+0x28d4 le_parse
+0x28e1 le_parse_l2cap
+0x28e9 le_parse_l2cap_next
+0x28ee le_check_l2cap_complete
+0x28f2 le_check_l2cap_cid_legal
+0x28fd le_check_l2cap_llid_start
+0x2910 le_check_l2cap_continue_legal
+0x2914 le_check_l2cap_llid_continue
+0x2929 le_writeatt_cb
+0x292b le_supervision_update
+0x2935 le_supervision_flush
+0x2938 le_receive_window_size
+0x2952 le_modified_name
+0x2955 le_modified_name_att_list
+0x2966 le_name_length_longer_than_att
+0x2969 le_modified_name_adv
+0x2976 le_modified_name_adv_and_scan
+0x2988 le_modified_name_adv_and_scan_store_data
+0x298e le_modified_name_adv_and_scan_name_overflow
+0x2990 le_modified_name_adv_loop
+0x299b le_modified_name_adv_loop2
+0x299f le_modified_name_adv_found_name
+0x29a1 memcpy_empty
+0x29a5 le_lpm_set_mult
+0x29a9 le_lpm_set_mult_attempt
+0x29b8 le_lpm_lost
+0x29c1 le_set_config_fixed_tk
+0x29c3 le_clr_config_fixed_tk
+0x29c5 le_set_config_fixed_ltk
+0x29c7 le_clr_config_fixed_ltk
+0x29c9 le_set_config_more_data
+0x29cb le_clr_config_more_data
+0x29cd le_set_config_read_authentication
+0x29cf le_clr_config_read_authentication
+0x29d1 le_set_config_write_authentication
+0x29d3 le_clr_config_write_authentication
+0x29d5 le_set_config_short_mult
+0x29d6 le_set_config
+0x29da le_clr_config_short_mult
+0x29db le_clr_config
+0x29df le_set_fixed_ltk
+0x29ec le_set_justwork
+0x29f2 le_fifo_malloc_tx_empty
+0x29f5 le_fifo_malloc_tx_ll
+0x29fb le_fifo_malloc_tx_l2cap
+0x2a05 le_fifo_malloc_tx
+0x2a10 le_fifo_get_first_tx_ptr
+0x2a14 le_fifo_get_second_tx_ptr
+0x2a16 le_fifo_get_last_tx_ptr
+0x2a19 le_fifo_get_last_tx_ptr0
+0x2a1b le_fifo_get_first_l2cap_ptr
+0x2a1e le_fifo_get_first_att_ptr
+0x2a21 le_fifo_get_last_att_ptr
+0x2a24 le_fifo_get_last_l2cap_ptr
+0x2a27 le_fifo_check_full
+0x2a28 le_fifo_check_nearly_full
+0x2a29 le_fifo_check_empty
+0x2a2a le_fifo_release_first_node
+0x2a2b le_set_dle
+0x2a2d le_set_phys
+0x2a30 le_set_rx_phy
+0x2a32 le_set_tx_phy
+0x2a33 le_set_phy_common
+0x2a38 le_set_feature_2m_phy
+0x2a3a le_set_feature_coded_phy
+0x2a3c le_set_feature_data_packet_length_extension
+0x2a3d le_set_feature
+0x2a41 le_set_fixed_ltk_justwork
+0x2a45 le_advertising_dispatch
+0x2a4b le_scan
+0x2a6a le_wait_adv
+0x2a71 le_create_conn
+0x2a84 le_connect_request
+0x2a8f le_con_req_hop_retry
+0x2acb le_adv
+0x2ad0 le_adv_loop
+0x2ae2 le_adv_not_match
+0x2aef le_send_adv_protect_txbuf
+0x2af2 le_send_adv_recover_txbuf
+0x2af5 le_init_adv
+0x2af7 le_adv_access
+0x2afe le_send_adv_ind
+0x2b0f le_send_adv_direct_ind
+0x2b15 le_send_adv_transmit
+0x2b1c le_send_scan_request
+0x2b2d le_send_scan_response
+0x2b40 le_parse_connect_req
+0x2b68 le_next_adv_channel
+0x2b6e le_next_adv_channel_curr_channel_37
+0x2b74 le_next_adv_channel_curr_channel_38
+0x2b7a le_next_adv_channel_curr_channel_39
+0x2b80 set_le_next_adv_channel_37
+0x2b85 set_le_next_adv_channel_38
+0x2b8a set_le_next_adv_channel_39
+0x2b8f le_parse_att
+0x2b96 le_parse_att2
+0x2ba4 le_send_att_exchange_mtu_requset
+0x2ba7 le_send_att_exchange_mtu_common
+0x2bab le_parse_att_exchange_mtu_request
+0x2bac le_send_att_exchange_mtu_response
+0x2bb0 le_parse_att_exchange_mtu_response
+0x2bb3 le_parse_att_find_information_request
+0x2bb6 le_att_handle_inrange
+0x2bc1 le_att_handle_blank
+0x2bc3 le_send_att_find_information_response
+0x2bc5 le_send_att_find_information_res_loop
+0x2bdc le_send_att_find_information_res_uuid16
+0x2bdf le_send_att_find_information_res_uuid128
+0x2be3 le_send_att_find_information_res_store_info2
+0x2be8 le_send_att_find_information_res_store_info
+0x2bf1 le_send_att_find_information_res_cont
+0x2bf3 le_send_att_find_information_res_next
+0x2bf5 le_send_att_find_information_res_end
+0x2bf7 le_parse_att_find_by_type_value_request
+0x2c00 le_start_end_handle_check_1
+0x2c07 le_start_end_handle_check_1_fail
+0x2c0a le_send_att_find_by_type_value_response
+0x2c11 le_send_att_find_by_type_value_res_primary
+0x2c16 le_send_att_find_primary_search_loop
+0x2c26 le_send_att_find_primary_search_loop1
+0x2c2a le_send_att_error_response_notfound2
+0x2c2d le_send_att_find_primary_search_end_start_handle_found
+0x2c35 le_send_att_find_primary_search_end_ending_handle_found
+0x2c3b le_send_att_find_primary_search_end
+0x2c44 le_parse_att_read_by_type_request
+0x2c47 le_send_att_read_by_type_response
+0x2c56 le_send_att_read_by_type_response_loop
+0x2c77 le_send_att_read_by_type_response_next_handle
+0x2c79 le_send_att_read_by_type_response_end
+0x2c7b le_send_att_read_by_type_res_found_next
+0x2c89 le_send_att_read_by_type_write_properties
+0x2c90 le_send_att_read_by_type_write_uuid
+0x2c9c le_send_att_read_by_type_res_not_characteristic
+0x2cb2 le_send_att_read_by_type_res_device_name
+0x2cc7 le_init_attlist_search
+0x2ccf le_att_get_handle_ptr
+0x2cd2 le_att_get_handle_ptr2
+0x2cd5 le_att_get_handle_loop1
+0x2cdd le_att_get_handle_ptr_found
+0x2cdd le_att_contr_add_len
+0x2ce0 le_att_get_uuid_ptr
+0x2ce3 le_att_get_uuid_loop
+0x2cf3 le_att_get_uuid_ptr_next
+0x2cf6 le_att_get_last_handle
+0x2cfa le_att_get_last_handle_loop
+0x2d02 le_att_get_handle_info_from_ptr
+0x2d04 le_att_get_handle_info
+0x2d06 le_att_get_handle_info_fast
+0x2d07 le_att_get_handle_loop
+0x2d0f le_att_unfind_handle
+0x2d10 le_att_finded_handle
+0x2d19 le_parse_att_read_request
+0x2d1d le_send_att_read_response
+0x2d2d le_send_att_read_response_less
+0x2d36 le_send_device_name
+0x2d42 le_send_att_read_response_check_auth
+0x2d46 le_send_att_read_response_error_insufficient_auth
+0x2d48 le_send_att_read_response_check_handle
+0x2d4c le_parse_att_read_blob_request
+0x2d50 le_send_att_read_blob_response
+0x2d59 le_send_att_read_blob_response_less
+0x2d63 le_parse_att_read_by_group_type_request
+0x2d66 le_send_att_read_by_group_type_response
+0x2d6d le_send_att_read_by_group_type_response_loop
+0x2d8a le_send_att_read_by_group_type_store_write_record
+0x2d90 le_send_att_read_by_group_type_store_record
+0x2d94 le_send_att_read_by_group_type_next_handle
+0x2d96 le_send_att_read_by_type_res_check_pair_length_type
+0x2d98 le_send_att_read_by_group_type_check_pair_length_type
+0x2d9c le_send_att_read_by_group_type_check_pair_length_type_16byte
+0x2d9e le_send_att_read_by_group_type_end0
+0x2da1 le_send_att_read_by_group_type_end1
+0x2da5 le_send_att_read_by_group_type_end_common
+0x2da8 le_parse_att_write_request
+0x2dac le_send_att_write_response_check_auth
+0x2dbc le_send_att_write_response
+0x2dc1 le_send_att_write_response_check_handle
+0x2dc5 le_send_att_write_response_error_invalid_handle
+0x2dc7 le_check_encrypt_state
+0x2dce le_parse_att_prepare_write_request
+0x2dd3 le_send_att_prepare_write_response
+0x2de1 le_parse_att_execute_write_request
+0x2de1 le_send_att_execute_write_response
+0x2de6 le_parse_handle_value_confirmation
+0x2dea le_parse_att_write_command
+0x2dee le_att_malloc_tx_notify
+0x2df7 le_att_malloc_tx_indication
+0x2e03 le_send_att_error_response_notfound
+0x2e05 le_send_att_error_response
+0x2e10 le_fifo_malloc_tx_l2cap_gatt
+0x2e13 le_att_next_handle
+0x2e17 le_att_check_handle_end
+0x2e1b le_att_same_type
+0x2e1e le_att_check_same_common
+0x2e24 le_store_att_record
+0x2e2a le_write_att_record
+0x2e30 le_write_att_record_common
+0x2e34 le_send_auto_len_by_mem
+0x2e41 le_get_search_handle_start_end_common
+0x2e46 le_get_search_max_mtu_data
+0x2e4a le_get_search_att_type
+0x2e4d le_get_search_common
+0x2e4f le_get_search_common2
+0x2e53 le_parse_writing_attribute_start
+0x2e61 le_clear_l2cap_att_states_deal_with_contiune_packet
+0x2e65 le_parse_writing_attribute_continue
+0x2e6e le_parse_attribute_write_request
+0x2e70 le_send_attribute_write_response_check_auth
+0x2e73 le_parse_attribute_write_command
+0x2e77 le_parse_attribute_check_complete_packet_init
+0x2e7e le_parse_l2cap_continue_common
+0x2e84 le_parse_attribute_check_complete_packet
+0x2e8a le_parse_signaling
+0x2e8f le_l2cap_parse_conn_parameter_update_rsp
+0x2e93 le_l2cap_tx_update_req
+0x2e9b le_fifo_malloc_tx_l2cap_signaling
+0x2ea3 le_l2cap_update_signaling_identifier
+0x2ea7 le_l2cap_reset_signaling_identifier
+0x2ea9 le_pairing_mode_init
+0x2eb1 le_set_pairing_mode_secure_justwork
+0x2eb3 le_set_pairing_mode_secure_numeric
+0x2eb6 le_set_pairing_mode_secure_passkey
+0x2eb8 le_set_no_pairing
+0x2eb9 le_set_noinputnooutput
+0x2ebb le_set_pairing_mode_lagacy_just_work
+0x2ebd le_set_pairing_mode_lagacy_passkey
+0x2ebe le_set_displayonly
+0x2ec0 le_secure_connection_enable
+0x2ec4 le_secure_connection_disable
+0x2ec8 le_parse_smp
+0x2ed5 le_send_smp_security_request
+0x2edc le_parse_smp_pairing_request
+0x2ee8 le_parse_smp_pairing_request2
+0x2ef0 le_set_tk_0
+0x2ef3 le_parse_smp_pairing_req_passkey
+0x2ef5 le_genernate_tk
+0x2efc le_parse_smp_pairing_req_fixed_passkey
+0x2efe le_send_smp_pairing_response
+0x2f03 le_parse_smp_pairing_confirm
+0x2f0b le_parse_smp_pairing_confirm_passkey_res_input
+0x2f0d le_parse_smp_pairing_confirm_secure_passkey
+0x2f10 le_parse_smp_pairing_confirm_sc_passkey_res_input
+0x2f13 le_send_smp_pairing_confirm
+0x2f1c le_send_smp_pairing_confirm_sc
+0x2f24 le_parse_smp_pairing_random
+0x2f2a le_send_pairing_confirm_value_failed
+0x2f2b le_send_pairing_failed
+0x2f31 le_parse_smp_pairing_failed
+0x2f37 le_smp_pairing_fail_reason_not_support_pairing
+0x2f39 le_parse_smp_pairing_random_sc
+0x2f45 le_parse_smp_pairing_random_sc_passkey
+0x2f4e le_parse_smp_pairing_random_success
+0x2f53 le_send_smp_pairing_random
+0x2f59 le_send_smp_encryption_information
+0x2f61 le_send_fixed_ltk
+0x2f63 le_send_smp_master_identification
+0x2f6f le_send_smp_identity_information
+0x2f77 le_send_smp_identity_address_information
+0x2f80 le_send_pairing_fail_unspecified_reason
+0x2f82 le_check_init_key_distribution
+0x2f86 le_parse_smp_identity_information
+0x2f90 le_check_master_addr_type
+0x2f96 le_parse_smp_identity_address_information
+0x2f9a le_parse_smp_signing_information
+0x2f9a le_parse_smp_security_request
+0x2f9b le_parse_smp_public_key
+0x2fa0 le_parse_smp_dhkey_check
+0x2fa5 le_send_smp_pairing_public_key
+0x2fab le_send_smp_pairing_dhkey_check
+0x2fb1 le_check_paring_time
+0x2fba le_pairing_sm
+0x2fc7 le_pairing_sm_null
+0x2fc7 le_pairing_sm_send_sec_req
+0x2fcd le_pairing_sm_start
+0x2fcf le_pairing_sm_rcv_pairing_req
+0x2fd3 le_pairing_sm_after_auth
+0x2fd6 le_pairing_sm_after_auth_start_enc
+0x2fda le_pairing_sm_after_auth_start_enc_common
+0x2fe1 le_pairing_sm_after_auth_start_enc_sc
+0x2fe3 le_pairng_sm_send_enc_information
+0x2fe5 le_pairng_sm_send_master_indentification
+0x2fec le_pairng_sm_send_indentity_information
+0x2fee le_parse_start_enc_rsp_after_auth_end
+0x2ff5 le_secure_connect_sm
+0x3003 le_sc_state_clear
+0x3007 le_sc_sm_passkey_wait_confirm
+0x3011 le_sc_sm_wait_confirm_gkey
+0x3016 le_sc_confirm_gkey_ok
+0x301a le_sc_sm_receive_dhkey
+0x301e le_dhkey_ready
+0x3023 le_dhkey_ready_common
+0x3029 le_dhkey_check_fail
+0x302b le_dhkey_check_ok
+0x3035 le_sc_sm_send_public_key
+0x3039 le_sc_sm_ready_send_pairing_confirm
+0x303a le_sc_sm_send_public_key_passkey
+0x303d le_sc_sm_receive_public_key
+0x3041 le_public_key_ready
+0x3044 le_sc_sm_wait_send_public_key
+0x3047 le_fifo_malloc_tx_l2cap_smp
+0x304a le_parse_ll
+0x3061 le_parse_connection_update_ind
+0x3069 le_parse_channel_map_ind
+0x306d le_update_map_enable
+0x3071 le_parse_terminate_ind
+0x3075 le_parse_enc_req
+0x3087 le_parse_enc_req_after_auth
+0x308a le_parse_enc_req_fixed_ltk
+0x308f le_ltk_lost
+0x3093 le_parse_enc_rsp
+0x3098 le_parse_start_enc_req
+0x309c le_parse_start_enc_rsp
+0x30a1 le_parse_unknown_rsp
+0x30a2 le_parse_feature_req
+0x30a3 le_parse_feature_rsp
+0x30a4 le_parse_pause_enc_req
+0x30a8 le_parse_pause_enc_rsp
+0x30a9 le_parse_version_ind
+0x30ab le_parse_reject_ind
+0x30ac le_parse_ping_req
+0x30ad le_parse_ping_rsp
+0x30ae le_parse_length_req
+0x30b0 le_parse_length_rsp
+0x30bb le_parse_phy_req
+0x30bc le_parse_phy_update_ind
+0x30c5 le_send_terminate_ind_user_terminated
+0x30c6 le_send_terminate_ind
+0x30cc le_send_enc_rsp
+0x30da le_send_start_enc_req
+0x30dd le_send_start_enc_rsp
+0x30df le_send_unknown_rsp
+0x30e4 le_send_feature_rsp
+0x30eb le_send_pause_enc_rsp
+0x30ed le_send_version_ind
+0x30f3 le_send_reject_ind
+0x30f9 le_send_ping_rsp
+0x30fb le_send_data_length_req
+0x30fd le_send_data_length_res
+0x30fe le_send_data_length
+0x3103 le_send_phy_rsp
+0x310d le_send_ll_one_lenth
+0x310f g24_dispatch
+0x3112 g24_prep
+0x3119 g24_receive_packet
+0x3121 g24_receive_rxon
+0x3126 g24_receive_nolr
+0x3135 g24_receive_skip_fec1
+0x3148 g24_receive_skip
+0x3151 g24rx_loop
+0x3154 g24rx_nopayload
+0x3159 g24_receive_skip_rssi
+0x3160 g24_receive_skip_next
+0x316d g24_receive_skip_disable_fec1
+0x316f g24_lr_receive_pdu_len
+0x3176 g24_lr_receive_pdu_norssi
+0x3178 g24_lr_receive_payload_len
+0x317d g24_receive_byte
+0x3180 g24_sync_timeout
+0x3183 g24_end_of_packet
+0x3188 g24_hec_error
+0x318a g24_lr_len_error
+0x318c g24_type_error
+0x318e g24_len_over_error
+0x3190 g24_crc_error
+0x3192 g24_set_freq_tx
+0x3195 g24_transmit
+0x31a8 g24_transmit_packet
+0x31ae g24_transmit_nolr
+0x31b3 g24tr_loop
+0x31bd g24_transmit_skip
+0x31c4 g24_transmit_skip_disable_fec1
+0x31c7 g24_transmit_lr
+0x31c8 g24_transmit_lr_preamble_loop
+0x31d2 g24_transmit_lr_s2
+0x31d6 g24_transmit_lr_s8
+0x31d9 g24_transmit_2m
+0x31db g24_transmit_2m_dealy
+0x31e5 g24_transmit_prep
+0x31f0 g24_transmit_prep_pdu
+0x3206 g24_lr_transmit_prep
+0x320a g24_lr_transmit_prep_skip
+0x3214 g24_read_len_pid_crc
+0x3222 g24_ch
+0x3227 g24_ch_map_size
+0x322c g24_ch_calc
+0x3236 g24_update_addr_and_synccrc8
+0x3238 g24_syncword_crc8
+0x323b g24_syncword_crc8_loop
+0x3245 g24_timer_check
+0x3255 g24_timer_timeout
+0x3258 g24_timer_init
+0x325b g24_chmap_param_init
+0x326b g24_chamap_param_update
+0x3278 g24_rx_window_init
+0x327f g24_rx_window_store
+0x3281 g24_enable_1m
+0x3284 g24_enable_2m
+0x3287 g24_pair_param_init
+0x328e g24_pair_timeout_timer
+0x3291 g24_pair_start
+0x329c g24_pair_init_param
+0x32a3 g24_pair_dispatch
+0x32b2 g24_pair_sm_1
+0x32b4 g24_pair_sm_2
+0x32b8 g24_pair_sm_2_skip
+0x32ba g24_pair_sm_3
+0x32c0 g24_pair_sm_4
+0x32c1 g24_pair_sm_prep
+0x32c3 g24_pair_sm_common
+0x32d6 g24_pair_sm_reinit
+0x32db g24_pair_sm_1_waiting_ack
+0x32dd g24_pair_sm_2_waiting_ack
+0x32e1 g24_pair_sm_2_waiting_ack_skip
+0x32e3 g24_pair_sm_3_waiting_ack
+0x32e9 g24_pair_sm_3_waiting_ack_skip
+0x32eb g24_pair_sm_4_waiting_ack
+0x32f1 g24_pair_sm_4_waiting_ack_skip
+0x32f8 g24_pair_exit
+0x32fc g24_bind_mode_enable
+0x32ff g24_bind_init
+0x330a g24_bind_ackpayload_prep
+0x330f g24_bind_data_process
+0x331c g24_bind_data_error
+0x331e g24_bind_data_parse
+0x3329 g24_bind_first_step
+0x332d g24_bind_first_step_device1
+0x3330 g24_bind_dvc1_payload_cfg
+0x3331 g24_bind_payload_cfg
+0x3335 g24_bind_first_step_device2
+0x3338 g24_bind_dvc2_payload_cfg
+0x333a g24_bind_second_step
+0x3340 g24_bind_second_step_skip
+0x3344 g24_bind_second_step_device1
+0x3349 g24_bind_dvc1_step_set2
+0x334c g24_bind_dvc1_payload_cfg_transmitter_addr
+0x334d g24_bind_payload_cfg_transmitter_addr
+0x3351 g24_bind_second_step_device2
+0x3356 g24_bind_dvc2_step_set2
+0x335b g24_bind_third_step
+0x3361 g24_bind_third_step_skip
+0x3365 g24_bind_third_step_device1
+0x336a g24_bind_dvc1_step_success
+0x336f g24_bind_exit
+0x3372 g24_bind_third_step_device2
+0x3377 g24_bind_dvc2_step_success
+0x337e g24_binding_device_check
+0x3386 g24_binding_dvc1_status
+0x3388 disable_user3
+0x338a g24_binding_dvc2_status
+0x338d g24_binding_dvc1_living
+0x3393 g24_binding_dvc2_living
+0x3399 g24_bind_device_status_check
+0x339b g24_bind_device_status
+0x339f g24_receive_init
+0x33a3 g24_receive_dispatch
+0x33a5 g24_ackpayload_prep
+0x33ab g24_receive_packet_start
+0x33ad g24_receive_packet_parse
+0x33be g24_rx_interrupt_clear
+0x33c2 g24_data_receive_attemp
+0x33c4 g24_data_device1
+0x33d3 g24_data_device2
+0x33d9 g24_data_attemp_device1_abort
+0x33e1 g24_data_attemp_device2_abort
+0x33e3 g24_receive_packet_parse_pid_crc
+0x33f1 g24_receive_transmit_ack
+0x33f4 g24_transmit_ack
+0x33fa g24tx_with_ack
+0x33fd g24tx_no_ack
+0x33fe g24_enable_nodata_timer
+0x33ff g24_enable_nodata_timer_init
+0x3402 g24_mode_switch_init
+0x3407 g24_mode_switch_bind_work
+0x3414 g24_bind_mode_continue
+0x3419 g24_work_mode_switch
+0x341c g24_bind_mode_switch
+0x341f g24_mode_b_s_switch_init
+0x342d g24_mode_switch_bind_search
+0x3448 g24_mode_switch_search
+0x344b g24_mode_b_s_switch_exit
+0x344d g24_mode_b_s_switch_stop
+0x344f g24_mode_b_s_switch_start
+0x3451 g24_work_init
+0x3460 g24_switch_work_mode
+0x3461 g24_work_mode_enable
+0x3464 g24_work_mode_start
+0x3469 g24_bind_mode_auto
+0x3476 g24_search_mode_init
+0x3488 g24_search_mode_auto
+0x34a7 g24_self_ch_num_reinit
+0x34a8 g24_current_ch_num_reinit
+0x34aa g24_device2_ch_num_reinit
+0x34ac g24_device1_ch_num_reinit
+0x34ae g24_auto_addr_ch_search
+0x34b8 g24_auto_bind_config_device1
+0x34cd g24_device1_config_ch_once
+0x34d2 g24_auto_bind_config_device2
+0x34e7 g24_device2_config_ch_once
+0x34ec g24_auto_bind_config_self
+0x3500 g24_self_config_ch_once
+0x3504 g24_ackpayload_disable
+0x3506 g24_receiver_addr_check
+0x350a g24_nodata_process
+0x3514 g24_search_mode_enable
+0x3518 g24_ch_process
+0x352c g24_ch_receive_hop_pac
+0x352e g24_ch_timer_reinit
+0x3531 g24_reconn_timeout_timer
+0x3534 g24_reconn_start
+0x3541 g24_reconn_fast_conn
+0x3549 g24_reconn_receiver_addr
+0x3550 g24_reconn_device_3_0_addr
+0x3557 g24_store_receiver_addr
+0x355a g24_ch_syncword_crc8_init
+0x355c g24_reconn_dispatch
+0x3565 g24_reconn_dispatch_next
+0x357b g24_txbuf_clear
+0x357f g24_reconn_data_prep
+0x3586 g24_reconn_device_fail
+0x3593 g24_reconn_fast_conn_and_receiver
+0x3595 g24_reconn_fast_conn_and_3_0
+0x3597 g24_reconn_receiver_and_3_0
+0x3599 g24_reconn_pair_and_3_0
+0x359b g24_data_attemp
+0x359f g24_data_attemp_device1
+0x35a3 g24_store_device1_addr
+0x35a5 g24_data_attemp_device2
+0x35a9 g24_store_device2_addr
+0x35ab rssi_store
+0x35b4 rssi_average
+0x35bb rssi_average_loop
+0x35c8 save_rssi_dec
+0x35c9 rssi_transmitter_buff_init
+0x35cb rssi_signal
+0x35d6 rssi_receiver_buff_init
+0x35dd rssi_buff_clear
+0x35e3 rssi_noise
+0x35ea rssi_noise_monitor
+0x35f0 g24_transmit_init
+0x35f3 g24_interval_param_4ms
+0x35fb g24_interval_param_8ms
+0x3603 g24_transmit_dispatch
+0x3609 g24_transmit_no_interrupt
+0x360c g24_transmit_start
+0x3610 g24_transmit_start_next
+0x3616 g24_short_sleep
+0x361d g24_long_sleep
+0x3622 g24_long_seep2
+0x3625 g24_txdata_prep
+0x3628 g24_package_data
+0x362e g24_accumulate_data
+0x3636 g24_transmit_rf_ctrl_clear
+0x363a g24_transmit_process
+0x363d g24_transmit_loop
+0x3646 g24_transmit_no_ack
+0x3647 g24_transmit_next_packet
+0x364c g24_transmit_abandon
+0x3651 g24_transmit_receive_ack
+0x365f g24_retransmit
+0x3662 g24_retransmit0
+0x366e g24_ackpayload_parse
+0x3676 g24_tx_attempt_fail
+0x367a g24_stop_24g_mode
+0x367c g24_transmit_hop_process
+0x3689 g24_transmit_hop_process_4ms
+0x368d g24_hop_ch_enable
+0x368d g24_txpayload_type_update
+0x3690 g24_lr_type_update
+0x3692 g24_hop_enable_packet
+0x3694 g24_hop_ch_disable
+0x369a g24_tx_fast_hop
+0x369d g24_search_receiver
+0x369f g24_nodata_transmit
+0x36a6 g24_send_abort_packet
+0x36b4 g24_lpm_wait
+0x36be g24_setgpio_lpm_before
+0x36c0 g24_transmit_by_interrupt
+0x36ca g24_transmit_by_interrupt_exit
+0x36cf g24_interval_min
+0x36d1 g24_interval_store
+0x36d3 g24_interval_max
+0x36d5 g24_interval_calibrate
+0x36db g24_transmit_by_interrupt_enable
+0x36df g24_factory_check
+0x36e1 pdata_0xff_check
+0x36e3 pdata_0xff_check_loop
+0x36e8 power_ctrl_start
+0x36f3 power_ctrl_start_next
+0x36fb power_ctrl_txpower_decrs_check
+0x3700 power_ctrl_txpower_decrs
+0x3704 power_ctrl_txpower_decrs_next
+0x370b power_ctrl_decrs_level1
+0x370b power_ctrl_incrs_level1
+0x370d power_ctrl_txpower_incrs_force
+0x370e power_ctrl_txpower_incrs
+0x3713 power_ctrl_incrs_level2
+0x3715 power_ctrl_decrs_level0
+0x3717 power_ctrl_pac_succ_cnt_init
+0x371a power_ctrl_pac_succ_incrs
+0x371e power_ctrl_pac_succ_decrs
+0x3726 power_ctrl_pac_succ_cnt_reinit
+0x3728 ali_mesh_access_layer_resolve_message
+0x372e ali_mesh_access_layer_check_access_message_opcode
+0x3739 ali_mesh_access_layer_message_opcode_config_appkey_add
+0x3745 ali_mesh_access_layer_recv_cfg_appkey_add_cb
+0x374f ali_mesh_accesss_layer_check_message_type
+0x3754 ali_mesh_access_layer_send_config_appkey_status
+0x375e ali_mesh_access_layer_finish_pairing_init_subscription_list
+0x3761 ali_mesh_access_layer_finish_pairing_init_subscription_list_loop
+0x376c ali_mesh_access_layer_send_generic_onoff_status
+0x3774 ali_mesh_access_layer_send_light_lightness_status
+0x377c ali_mesh_access_layer_send_light_ctl_stauts
+0x3784 ali_mesh_access_layer_send_scene_status
+0x378c ali_mesh_app_recv_new_mesh_pkt
+0x3791 ali_mesh_report_power_on_timer
+0x3794 ali_mesh_report_full_attribute_timer
+0x3797 ali_mesh_app_report_device_state
+0x3799 ali_mesh_ali_vendor_message_attribute_set
+0x37ba ali_mesh_ali_vendor_message_opcode_attr_get
+0x37bb ali_mesh_ali_vendor_message_opcode_attr_confrimation
+0x37c4 ali_mesh_ali_vendor_message_attrbute_check_company_id_and_tid
+0x37cf ali_mesh_ali_vendor_message_attribute_set_main_light
+0x37d2 ali_mesh_ali_vendor_message_attribute_set_background_light
+0x37d5 ali_mesh_ali_vendor_message_attribute_set_color
+0x37d8 ali_mesh_ali_vendor_message_opcode_timer_set_curr_time
+0x37dc ali_mesh_ali_vendor_message_status_add_head
+0x37e4 ali_mesh_ali_vendor_message_opcode_device_power_on
+0x37e8 ali_mesh_ali_vendor_message_opcode_generic_onoff
+0x37ea ali_mesh_ali_vendor_message_ack_attr_status_uint64
+0x37ec ali_mesh_ali_vendor_message_ack_attr_status_uint56
+0x37ee ali_mesh_ali_vendor_message_ack_attr_status_uint48
+0x37f0 ali_mesh_ali_vendor_message_ack_attr_status_uint32
+0x37f2 ali_mesh_ali_vendor_message_ack_attr_status_uint16
+0x37f4 ali_mesh_ali_vendor_message_ack_attr_status_uint8
+0x37f6 ali_mesh_ali_vendor_message_ack_attr_status
+0x37fc ali_mesh_ali_vendor_message_opcode_para_uint8
+0x3801 ali_mesh_ali_vendor_message_opcode_para_uint16
+0x3806 ali_mesh_ali_vendor_message_send_message
+0x3808 ali_mesh_ali_vendor_message_indication_info_add_head
+0x3817 ali_mesh_ali_vendor_message_indication_info_reset_tid
+0x3819 ali_mesh_ali_vendor_message_opcode_delete_timer
+0x3823 ali_mesh_ali_vendor_message_opcode_delete_timer_loop
+0x382e ali_mesh_access_layer_send_ali_vendor_message_delete_timer
+0x3837 ali_mesh_ali_vendor_aim_timer_buffer_clear
+0x383f ali_mesh_ali_vendor_aim_timer_buffer_clear_all
+0x3845 ali_mesh_ali_vendor_message_opcode_timer_inquire
+0x3856 ali_mesh_ali_vendor_message_opcode_timer_inquire_time
+0x385e ali_mesh_ali_vendor_message_opcode_timer_inquire_all_timer
+0x3867 ali_mesh_ali_vendor_message_opcode_timer_inquire_time_error
+0x386a ali_mesh_ali_vendor_message_opcode_timer_set_state
+0x387d ali_mesh_time_function
+0x3889 ali_mesh_time_init_system_time
+0x388a ali_mesh_time_init_system_time_without_clk
+0x388f ali_mesh_timer_timeout
+0x3896 ali_mesh_clkn_bt_add_1s
+0x3897 ali_mesh_time_loop
+0x389a ali_mesh_ali_vendor_check_time
+0x38a0 ali_mesh_ali_vendor_check_time_loop
+0x38a8 ali_mesh_ali_vendor_had_timing
+0x38b5 ali_mesh_ali_vendor_had_timing_single_time
+0x38bc ali_mesh_ali_vendor_time_out_of_date
+0x38bf ali_mesh_ali_vendor_had_timing_cyclically
+0x38d5 ali_mesh_ali_vendor_had_timing_cyclically_continue
+0x38e3 ali_mesh_ali_vendor_time_timeout
+0x38ef ali_mesh_ali_vendor_time_timeout_continue
+0x38f4 ali_mesh_ali_vendor_time_timeout_cyclic
+0x38ff ali_mesh_ali_vendor_message_opcode_timing_finish
+0x3907 ali_mesh_ali_vendor_message_opcode_timer_set_timing
+0x391c ali_mesh_ali_vendor_message_opcode_timer_set_timing_cyclically
+0x3928 ali_mesh_access_layer_send_ali_vendor_message_current_timing
+0x3930 ali_mesh_ali_vendor_store_mesh_timer_infmatn
+0x3937 ali_mesh_vendor_timer_buffer_offset_cal
+0x393b ali_mesh_get_all_timer_index_timer
+0x3940 ali_mesh_get_all_timer_index_timer_loop
+0x3945 ali_mesh_get_all_timer_index_timer_loop_end
+0x394a peripherals_write_mesh_timer_infmatn
+0x394c ali_mesh_bearer_layer_send_packet_by_network_layer
+0x3961 ali_mesh_bearer_layer_gatt_send_packet_by_network_layer
+0x3964 ali_mesh_send_ble_data_control_package
+0x3967 ali_mesh_advertising_bearer_layer_init_queue
+0x396c ali_mesh_advertising_bearer_layer_init_queue_param
+0x396f ali_mesh_advertising_bearer_layer_load_packet_from_advertising_queue
+0x396f ali_mesh_advertising_bearer_layer_load_packet_from_advertising_queue_deal
+0x3973 ali_mesh_advertising_bearer_layer_send_packet_by_app_bearer_calc_param
+0x397c ali_mesh_advertising_add_adtype_flags
+0x3984 ali_mesh_advertising_add_adtype_16bit_complete
+0x398b mesh_ble_rx_packet_only
+0x3995 mesh_ble_rx_packet
+0x3997 mesh_ble_rx_packet_check_timer
+0x39a1 mesh_ble_rx_packet_check_and_init
+0x39a9 mesh_le_calc_next_scan_channel
+0x39b1 mesh_check_ble_rx_packet
+0x39b6 ali_mesh_match_advertising_packet
+0x39bd ali_mesh_find_adv_ind_packet
+0x39d1 ali_mesh_receive_adtype_manufacturer_specific_tmall_control
+0x39d3 mesh_le_send_adv
+0x39e0 mesh_le_send_adv_loop
+0x39f0 mesh_le_send_adv_nonconn_ind
+0x39fb ali_mesh_base_adt_cache
+0x3a09 ali_mesh_base_adt_cache_loop
+0x3a16 ali_mesh_base_adt_cache_empty_space
+0x3a18 ali_mesh_chip_peripherals_load_data
+0x3a1a ali_mesh_chip_peripherals_load_data_from_flash
+0x3a21 ali_mesh_chip_peripherals_load_three_tuple_from_flash
+0x3a25 ali_mesh_chip_peripherals_load_network_key_from_flash
+0x3a2c ali_mesh_chip_peripherals_load_application_key_from_flash
+0x3a30 ali_mesh_chip_peripherals_load_device_key_from_flash
+0x3a34 ali_mesh_chip_peripherals_load_reset_count_from_flash
+0x3a35 ali_mesh_chip_peripherals_load_seq_from_flash
+0x3a39 ali_mesh_chip_peripherals_load_subscription_from_flash
+0x3a43 ali_mesh_chip_peripherals_load_data_from_eep
+0x3a4a ali_mesh_chip_peripherals_load_three_tuple_from_eep
+0x3a4e ali_mesh_chip_peripherals_load_network_key_from_eep
+0x3a55 ali_mesh_chip_peripherals_load_application_key_from_eep
+0x3a59 ali_mesh_chip_peripherals_load_device_key_from_eep
+0x3a5d ali_mesh_chip_peripherals_load_reset_count_from_eep
+0x3a5e ali_mesh_chip_peripherals_load_seq_from_eep
+0x3a62 ali_mesh_chip_peripherals_load_subscription_from_eep
+0x3a6b ali_mesh_chip_peripherals_load_subscription_loop
+0x3a71 mesh_receive_config_appkey_add_cb
+0x3a74 mesh_receive_config_appkey_add_flash_cb
+0x3a77 ali_mesh_chip_peripherals_save_network_key_from_flash
+0x3a7b ali_mesh_chip_peripherals_save_application_key_from_flash
+0x3a7f ali_mesh_chip_peripherals_save_device_key_from_flash
+0x3a83 mesh_receive_config_appkey_add_eeprom_cb
+0x3a86 ali_mesh_chip_peripherals_save_network_key_from_eep
+0x3a8a ali_mesh_chip_peripherals_save_application_key_from_eep
+0x3a8e ali_mesh_chip_peripherals_save_device_key_from_eep
+0x3a92 mesh_store_new_seq_data
+0x3a9a ali_mesh_chip_peripherals_save_seq_from_flash
+0x3a9e ali_mesh_chip_peripherals_save_seq_from_eep
+0x3aa2 mesh_store_new_subscriptuion_list_data
+0x3aa9 mesh_store_new_subscriptuion_list_data_from_flash
+0x3aad ali_mesh_chip_peripherals_save_subscriptuion_list_from_eep
+0x3ab0 ali_mesh_chip_peripherals_save_subscriptuion_list_from_eep_loop
+0x3ab6 mesh_clear_pairing_key
+0x3ab8 ali_mesh_chip_clear_pairing_key_from_flash
+0x3abb ali_mesh_chip_clear_pairing_key_from_eeprom
+0x3abc mesh_vendor_timming_chage_cb
+0x3ac3 ali_mesh_vendor_timer_message_read
+0x3aca ali_mesh_control_ble_adv_process
+0x3acc ali_mesh_control_ble_adv_timer_process
+0x3ace ali_mesh_control_ble_advertising_on_advertising
+0x3ad0 ali_mesh_control_ble_advertising_off_advertising
+0x3ad2 ali_mesh_control_ble_adv_tmall_packet
+0x3ad6 ali_mesh_control_ble_adv_tmall_packet_send_package
+0x3adc ali_mesh_control_ble_advertising_send_device_silence_beacon_packet
+0x3ade ali_mesh_control_ble_advertising_send_paired_packet
+0x3aef ali_mesh_control_ble_advertising_send_paired_packet_end_duration_proxy
+0x3af5 ali_mesh_control_ble_advertising_send_paired_packet_end_duration
+0x3afb ali_mesh_send_paired_packet_init_advertising
+0x3afd ali_mesh_control_ble_advertising_send_device_beacon_packet
+0x3b05 ali_mesh_control_ble_advertising_device_beacon_check_duration
+0x3b09 ali_mesh_end_advertising_silence_device_beacon_packet
+0x3b0b ali_mesh_end_advertising_unprovisioned_device_beacon_packet
+0x3b0d ali_mesh_control_ble_advertising_send_pairing_packet
+0x3b0e ali_mesh_chip_timer_check_with_random_timer
+0x3b10 ali_mesh_chip_timer_check_with_random_timer_continue
+0x3b13 ali_mesh_chip_timer_check
+0x3b19 ali_mesh_advertising_unprovisioned_timer
+0x3b1c ali_mesh_advertising_unprovisioned_timeout
+0x3b23 ali_mesh_advertising_unprovisioned_timer_interval_timer
+0x3b26 ali_mesh_advertising_unprovisioned_timer_interval_timeout
+0x3b2a ali_mesh_stop_send_indication_packet
+0x3b2f ali_mesh_send_unprovisioned_device_beacon_init_advertising
+0x3b31 ali_mesh_send_silence_device_beacon_init_advertising
+0x3b33 ali_mesh_network_layer_control_relay_packet
+0x3b37 ali_mesh_network_layer_control_send_relay_packet
+0x3b45 ali_mesh_encrypt_calc_random_data
+0x3b4b ali_mesh_encrypt_calc_random_data_calc_confirmationkey
+0x3b53 ali_mesh_encrypt_calc_random_data_calc_authvalueprov
+0x3b59 ali_mesh_encrypt_calc_random_data_calc_authvaluedevice
+0x3b5f ali_mesh_encrypt_calc_random_data_calc_confirmationcloud
+0x3b67 ali_mesh_encrypt_calc_random_data_calc_confirmationdevice
+0x3b6b ali_mesh_encrypt_calc_random_data_calc_devicekey
+0x3b75 ali_mesh_encrypt_load_randomba_to_sha256
+0x3b76 ali_mesh_encrypt_load_randoma_to_sha256
+0x3b78 ali_mesh_encrypt_load_randomab_to_sha256
+0x3b79 ali_mesh_encrypt_load_randomb_to_sha256
+0x3b7b ali_mesh_encrypt_load_three_tuple_to_sha256
+0x3b86 ali_mesh_encrypt_calc_provisioning_data
+0x3b87 ali_mesh_encrypt_calc_provisioning_data_xor_prov_data
+0x3b8a ali_mesh_encrypt_calc_provisioning_data_xor_prov_data_loop
+0x3b92 ali_mesh_encrypt_calc_provisioning_data_calc_sessionkey
+0x3b99 ali_mesh_encrypt_calc_network_key_by_k2
+0x3b9c ali_mesh_encrypt_base_function_k2
+0x3bb1 ali_mesh_encrypt_base_function_k4
+0x3bbf ali_mesh_encrypt_base_function_k3
+0x3bcc ali_mesh_encrypt_obfuscation_deceypt_send_message
+0x3bcf ali_mesh_encrypt_obfuscation_deceypt_recevie_message
+0x3bd1 ali_mesh_encrypt_obfuscation_deceypt
+0x3bda ali_mesh_encrypt_generate_pecb
+0x3bda ali_mesh_encrypt_generate_privacy_random
+0x3bdc ali_mesh_encrypt_base_function_generate_pecb
+0x3be3 ali_mesh_encrypt_base_function_sha256_load_data_64bit
+0x3be4 ali_mesh_encrypt_base_function_sha256_load_data_with_hex2ascii
+0x3be7 ali_mesh_encrypt_base_function_sha256_load_data_without_hex2ascii
+0x3bea ali_mesh_encrypt_base_function_sha256_load_data_with_hex2ascii_add_comma
+0x3bee ali_mesh_encrypt_base_function_sha256_store_dataptr
+0x3bf1 ali_mesh_encrypt_base_function_sha256_check_first_load_data
+0x3bfa ali_mesh_encrypt_base_function_sha256_first_load_data
+0x3bfe ali_mesh_encrypt_base_function_sha256_clear_data_chunk
+0x3c01 ali_mesh_encrypt_base_function_sha256_calc
+0x3c06 ali_mesh_encrypt_base_function_sha256_calc_loop
+0x3c17 ali_mesh_encrypt_base_function_sha256_load_data_end
+0x3c30 ali_mesh_encrypt_base_function_sha256_add_chunk
+0x3c32 ali_mesh_encrypt_base_function_sha256_input_data_init_inverse
+0x3c33 ali_mesh_encrypt_base_function_sha256_data_inverse_4byte
+0x3c39 ali_mesh_encrypt_base_function_hex2ascii
+0x3c42 ali_mesh_encrypt_base_function_dialog2uchar
+0x3c46 ali_mesh_encrypt_base_function_dialog2uchar_num
+0x3c48 ali_mesh_encrypt_base_function_aes_cmac_32byte
+0x3c4a ali_mesh_encrypt_base_function_aes_cmac_16byte
+0x3c4c ali_mesh_encrypt_base_function_k2_aes_cmac_t
+0x3c5a ali_mesh_encrypt_base_function_aes_cmac
+0x3c64 ali_b0_block_generate
+0x3c66 ali_a_block_generate
+0x3c67 ali_block_generate
+0x3c79 ali_generate_mic
+0x3c84 ali_ccm_encrypt_64bit
+0x3c86 ali_ccm_encrypt
+0x3c88 ali_ccm_encrypt_function
+0x3ca5 ali_ccm_decrypt_64bit
+0x3ca7 ali_ccm_decrypt
+0x3ca9 ali_ccm_decrypt_function
+0x3cc4 ali_ccm_decrypt_function_check_mic64
+0x3cc7 ali_fetcht_ccm_mic
+0x3ccf ali_aes_crypt_data
+0x3cd9 mesh_send_unprovisioned_beacons
+0x3ce0 ali_mesh_config_device_uuid_by_three_tuple
+0x3cec ali_mesh_send_unprovisioned_beacons_tmall
+0x3cee ali_mesh_init_adv_data_tmall_unprovisioned_beacons_package
+0x3cf5 ali_mesh_advertising_send_unprovisioned_beacons_store_device_uuid
+0x3cfa ali_mesh_receive_adtype_manufacturer_specific
+0x3d01 ali_mesh_advertising_receive_privisioning_random
+0x3d03 ali_mesh_advertising_calc_encrypt_random_data
+0x3d07 ali_mesh_advertising_send_provisioning_confirmation
+0x3d0f ali_mesh_advertising_receive_privisioning_random_check_states
+0x3d1c ali_mesh_decrypt_tmall_privisioning_data_package
+0x3d27 ali_mesh_advertising_receive_privisioning_data
+0x3d37 ali_mesh_resolve_privisioning_data_package
+0x3d3f ali_mesh_advertising_send_provisioning_complete
+0x3d46 ali_mesh_advertising_send_packet_common
+0x3d5a ali_mesh_receive_provisioning_package_check_header
+0x3d63 ali_mesh_fast_pairing_timer
+0x3d66 ali_mesh_fast_pairing_timeout
+0x3d66 ali_mesh_fast_pairing_failed
+0x3d67 ali_mesh_access_layer_config_or_health_message_opcode
+0x3d6e ali_mesh_message_config_modle_subscription_add_overwrite
+0x3d83 ali_mesh_message_config_modle_subscription_add_value_address_ow
+0x3d8b ali_mesh_byte_swap
+0x3d90 ali_mesh_message_config_modle_subscription_set_addr_max
+0x3d92 ali_mesh_access_layer_config_composition_data
+0x3db1 ali_mesh_access_layer_config_or_health_message_opcode_node_reset
+0x3db2 ali_mesh_access_layer_send_config_node_reset_status
+0x3db8 ali_mesh_access_layer_health_node_reset_timer
+0x3dbb ali_mesh_access_layer_health_node_reset_timeout
+0x3dbc ali_mesh_app_delete_paired
+0x3dbd ali_mesh_message_config_modle_subscription_add
+0x3dc2 ali_mesh_message_config_modle_subscription_save
+0x3dc4 ali_mesh_message_config_modle_subscription_delete
+0x3dcd ali_mesh_message_config_modle_subscription_delete_next
+0x3dd3 ali_mesh_message_config_modle_subscription_delete_group_addr
+0x3dd8 ali_mesh_message_config_modle_subscription_check_value_address
+0x3dd9 ali_mesh_message_config_modle_subscription_check_value_address_loop
+0x3ddf ali_mesh_message_config_modle_subscription_check_value_address_loop_empty
+0x3de2 ali_mesh_message_config_modle_subscription_status
+0x3dec ali_mesh_message_config_modle_subscription_check_element
+0x3df5 ali_mesh_message_config_modle_subscription_add_value_address
+0x3df7 ali_mesh_message_config_modle_subscription_add_value_address_loop
+0x3dff ali_mesh_message_config_modle_subscription_add_value_address_in
+0x3e02 ali_mesh_init
+0x3e3a mesh_inverse_three_tuple_mac
+0x3e3e mesh_get_element_info_config
+0x3e42 mesh_idle_process
+0x3e4a mesh_cb_event_timer
+0x3e50 mesh_clear_provisioning_data_only
+0x3e53 mesh_clear_timer_data
+0x3e58 ali_mesh_upper_transport_layer_queue_init
+0x3e5a ali_mesh_advertising_bearer_layer_queue_init
+0x3e5c ali_mesh_network_layer_gatt_queue_init
+0x3e5e ali_mesh_network_layer_init_gatt_queue_param
+0x3e61 ali_mesh_advertising_init_send_unprovisioned_device_beacon
+0x3e6b ali_mesh_lower_transport_layer_receive_lower_transport_pdu
+0x3e70 ali_mesh_lower_transport_layer_receive_lower_transport_pdu_segmented_message
+0x3e76 ali_mesh_lower_transport_layer_receive_segaccmess_resolve_szmic_seqzero_segon
+0x3e93 ali_mesh_lower_transport_layer_receive_segmented_access_message_recover_seqzero
+0x3e97 ali_mesh_lower_transport_layer_receive_segmented_access_message_check_blockack
+0x3ea1 ali_mesh_lower_transport_layer_receive_segmented_access_message_check_blockack_loop
+0x3ea7 ali_mesh_lower_transport_layer_receive_segmented_access_message_store_segment
+0x3eb4 ali_mesh_lower_transport_layer_receive_segmented_access_message_decrypt_segment
+0x3ec1 ali_mesh_lower_transport_layer_send_unsegmented_access_message
+0x3ecb ali_mesh_lower_transport_layer_send_segmented_access_message
+0x3ed4 ali_mesh_model_layer_check_model_message_opcode
+0x3ed5 ali_mesh_model_layer_check_generic_onoff_message_opcde
+0x3edb ali_mesh_model_layer_message_opcode_generic_onoff_get
+0x3edd ali_mesh_model_layer_message_opcode_generic_onoff_get_cb
+0x3ee1 ali_mesh_model_layer_message_opcde_generic_onoff_set
+0x3ee3 ali_mesh_model_layer_message_opcde_generic_onoff_set_cb
+0x3ee6 ali_mesh_model_layer_message_opcde_scene_recall
+0x3ee9 ali_mesh_model_layer_message_opcde_light_lightness_set
+0x3eef ali_mesh_model_layer_message_opcde_light_ctl_set
+0x3efe ali_mesh_model_layer_message_calc_lightness
+0x3f0a ali_mesh_model_layer_message_calc_actual_lightness
+0x3f10 ali_mesh_model_layer_message_calc_temperature
+0x3f18 ali_mesh_model_layer_message_calc_actual_temperature
+0x3f1f ali_mesh_model_layer_message_calc_temperature_k
+0x3f26 ali_mesh_more_element_check_unicast_address
+0x3f2a ali_mesh_more_element_check_unicast_address_loop
+0x3f32 ali_mesh_more_element_found_unicast_address_element
+0x3f36 ali_mesh_more_element_check_group_address
+0x3f3a ali_mesh_more_element_check_group_address_loop
+0x3f3f ali_mesh_more_element_check_address_common
+0x3f47 ali_mesh_more_element_found_group_address_element
+0x3f49 ali_mesh_more_element_check_subscription_address
+0x3f4b ali_mesh_more_element_check_subscription_address_loop
+0x3f51 ali_mesh_more_element_found_subscription_address_element
+0x3f53 ali_mesh_more_element_check_element_address
+0x3f58 ali_mesh_more_element_check_element_address_loop
+0x3f5f ali_mesh_more_element_check_element_address_no_group_address
+0x3f64 ali_mesh_more_element_push_stack
+0x3f69 ali_mesh_more_element_pop_stack
+0x3f6e ali_mesh_more_element_calc_queue_address
+0x3f7c ali_mesh_receive_adtype_mesh_message
+0x3f7d ali_mesh_network_layer_recevice_network_pdu
+0x3f8c ali_mesh_network_layer_check_dup
+0x3f95 ali_mesh_network_layer_check_dup_loop
+0x3fa1 ali_mesh_network_layer_check_msg
+0x3fa5 ali_mesh_network_layer_check_msg_loop
+0x3fb2 ali_mesh_network_layer_store_proxy_unicast_address
+0x3fb7 ali_mesh_network_layer_recevice_network_pdu_decrypt_netmic32
+0x3fbc ali_mesh_network_layer_recevice_network_pdu_check_dst
+0x3fcf ali_mesh_more_found_unicast_address_element
+0x3fd3 ali_mesh_network_layer_recevice_network_pdu_check_dst_group_address
+0x3fdd ali_mesh_network_layer_check_nid_ivi
+0x3fea ali_mesh_network_layer_recevice_network_pdu_check_src_and_seq
+0x3fec ali_mesh_network_layer_raverse_src_seq_cache
+0x3ff4 ali_mesh_network_layer_find_empty_space
+0x3ff5 ali_mesh_network_layer_find_src_space
+0x3ffa ali_mesh_network_layer_recevice_network_pdu_check_seq_legal
+0x4002 ali_mesh_inverse_seq
+0x4005 ali_mesh_network_load_network_nonce_and_encryptionkey
+0x4006 ali_mesh_upper_transport_layer_load_encryptionkey
+0x4008 ali_mesh_network_layer_load_network_nonce
+0x400e ali_mesh_network_store_in_mem
+0x4016 ali_mesh_network_layer_relay_access_message
+0x402b ali_mesh_network_layer_white_list_fliter
+0x402c ali_mesh_network_layer_white_list_fliter_check
+0x4031 ali_mesh_network_layer_white_list_fliter_check_loop
+0x4036 ali_mesh_network_layer_check_relay_states
+0x404a ali_mesh_network_layer_encrypt_relay_package
+0x404f ali_mesh_network_layer_check_network_mic_cache
+0x4052 ali_mesh_network_layer_send_access_message
+0x4056 ali_mesh_network_layer_send_access_message_encrypt_netmic
+0x405c ali_mesh_network_layer_encrypt_by_network_nonce
+0x405f ali_mesh_network_layer_send_access_message_encrypt_obfuscation
+0x4060 ali_mesh_network_layer_check_gatt_relay_packet
+0x4069 mesh_generate_nonce
+0x406e ali_mesh_network_layer_init_queue_param
+0x4071 ali_mesh_network_layer_queue_init
+0x4073 ali_mesh_ble_adv
+0x4079 ali_mesh_ble_adv_network_id
+0x4083 ali_mesh_ble_adv_mesh_beacon
+0x4090 mesh_le_receive_data
+0x4095 ali_mesh_receive_ble_data_proxy_data_in
+0x409a ali_mesh_network_layer_recevice_proxy_configuration_messages
+0x40a4 ali_mesh_recevice_proxy_configuration_messages_decrypt
+0x40ae ali_mesh_proxy_configuration_message_add_addr_to_filter
+0x40bd ali_mesh_proxy_configuration_message_set_filter_type
+0x40bf ali_mesh_proxy_configuration_message_filter_status
+0x40d6 ali_mesh_receive_ble_data_provisioning_data_in
+0x40da ali_mesh_network_load_proxy_nonce_and_encryptionkey
+0x40e1 ali_mesh_network_layer_recevice_network_pdu_proxy_control
+0x40e3 ali_mesh_proxy_process_bb_event
+0x40e7 app_ble_conn_event
+0x40e8 mesh_ble_start_adv
+0x40eb ali_mesh_proxy_white_list_clear
+0x40f0 ali_mesh_send_ble_data
+0x40fa ali_mesh_send_pairing_data
+0x4106 ali_mesh_white_filter_check
+0x410a ali_mesh_white_list_num_increase
+0x410e sha_endian_swap2
+0x4111 sha_endian_loop
+0x4119 sha_getw
+0x411d sha_r
+0x411f sha_r_loop
+0x4134 sha_init
+0x4136 sha_init_0
+0x413b sha
+0x413f sha_0
+0x4147 sha_loop
+0x4170 sha_1
+0x4176 sha_result
+0x4178 sha_regext_save
+0x417d ali_mesh_upper_transport_layer_receive_unsegmented_access_message
+0x417e ali_mesh_uuper_transport_layer_decrypt_unsegment_access_by_application_key
+0x4180 ali_mesh_uuper_transport_layer_decrypt_unsegment_access_by_device_key
+0x4182 ali_mesh_upper_transport_layer_decrypt_unsegmented_message
+0x4187 ali_mesh_upper_transport_layer_receive_segmented_access_message
+0x4189 ali_mesh_uuper_transport_layer_decrypt_segment_access_by_application_key
+0x418b ali_mesh_uuper_transport_layer_decrypt_segment_access_by_device_key
+0x418d ali_mesh_upper_transport_layer_decrypt_segmented_message
+0x4194 ali_mesh_upper_transport_layer_decrypt_message
+0x419c ali_mesh_upper_transport_layer_decrypt_message_decrypt_transmic
+0x419f ali_mesh_upper_transport_layer_check_transport_mic_cache
+0x41a2 ali_mesh_upper_transport_layer_load_application_nonce_and_application_key
+0x41a3 ali_mesh_upper_transport_layer_load_application_key
+0x41a5 ali_mesh_upper_transport_layer_load_application_nonce
+0x41af ali_mesh_upper_transport_layer_load_device_nonce_and_device_key
+0x41b0 ali_mesh_upper_transport_layer_load_device_key
+0x41b2 ali_mesh_upper_transport_layer_load_device_nonce
+0x41b5 ali_mesh_upper_transport_layer_send_access_message
+0x41b5 ali_mesh_upper_transport_layer_send_access_message_without_cleat_tx_buffer
+0x41bd ali_mesh_upper_transport_layer_store_packet_header
+0x41d0 ali_mesh_upper_transport_layer_store_unsegment_msg_original_access_pdu
+0x41d8 ali_mesh_upper_transport_layer_control_packet
+0x41d8 ali_mesh_upper_transport_layer_control_packet_deal
+0x41f8 ali_mesh_upper_transport_layer_control_packet_unsegment_msg
+0x41f9 ali_mesh_upper_transport_layer_control_packet_segment_msg
+0x41fc ali_mesh_upper_transport_layer_control_packet_load_header
+0x4202 ali_mesh_upper_transport_layer_control_packet_load_app_control
+0x4208 ali_mesh_store_tran_package_type
+0x420b ali_mesh_upper_transport_layer_queue_pop
+0x420f ali_mesh_upper_transport_layer_control_packet_encrypt_access
+0x421f ali_mesh_upper_transport_layer_control_packet_encrypt_access_unsegment_msg
+0x4222 ali_mesh_upper_transport_layer_control_packet_encrypt_access_segment_msg
+0x4228 ali_mesh_upper_transport_layer_control_packet_encrypt_access_load_payload
+0x4230 ali_mesh_upper_transport_layer_split_segmented_msg_to_lower_tran_layer
+0x4233 ali_mesh_upper_transport_layer_send_segmented_access_message_loop
+0x4249 ali_mesh_upper_transport_layer_calc_transport_mic
+0x424b ali_mesh_upper_transport_layer_calc_transport_mic_by_appkey
+0x424d ali_mesh_upper_transport_layer_calc_transport_mic_by_devicekey
+0x424e ali_mesh_upper_transport_layer_calc_transport_mic_encrypt_aesccm
+0x4253 ali_mesh_upper_transport_layer_send_access_message_calc_seq
+0x425b ali_mesh_upper_transport_layer_send_access_message_add_nid_src_ttl_seq_dst
+0x4267 ali_mesh_upper_transport_layer_send_access_message_add_seq
+0x426f ali_mesh_upper_transport_layer_send_segmented_access_message_get_seqzero_segon
+0x427c ali_mesh_upper_transport_layer_send_segmented_access_message_calc_header
+0x4289 ali_mesh_upper_transport_layer_receive_new_msg_timer
+0x428c ali_mesh_upper_transport_layer_receive_new_msg_timeout
+0x428f ali_mesh_upper_transport_layer_send_segmented_access_message_sub_segn_one
+0x4291 ali_mesh_upper_transport_layer_clear_tx_buffer
+0x4292 ali_mesh_upper_transport_layer_init_queue_param
+0x4295 app_init
+0x42a3 app_param_init
+0x42ad app_process_idle
+0x42b2 app_process_ble
+0x42b4 app_process_bb_event
+0x42bb app_discard_event
+0x42bd app_event_normal_process
+0x42c1 app_process_bb_event_priority
+0x42c3 app_check_wake_lock
+0x42c5 app_will_enter_lpm
+0x42c7 app_le_event_bb_connected
+0x42cb app_le_event_bb_disconn
+0x42d0 app_evt_button_long_pressed
+0x42d4 app_evt_timer
+0x42d5 app_evt_100ms_loop
+0x42e0 timer_single_step
+0x42e7 timer_single_step_2b
+0x42ee app_power_timer
+0x42f2 app_power_timer_timeout
+0x42f4 app_enter_power_off_state
+0x42f5 app_enter_power_stanby_state
+0x42f8 app_power_cb_common
+0x42fa app_bb_hibernate
+0x42fc app_disconn_reason_clear
+0x42ff app_disconn_reason_flag_clear
+0x4302 app_disconn_reason_collect_ble
+0x4308 app_get_lpm_wake_lock
+0x430a app_put_lpm_wake_lock
+0x430c app_lpm_wake_auto_lock
+0x430e app_lpm_wake_auto_lock_timer
+0x4311 app_ble_start_direct_adv
+0x4313 app_ble_stop_direct_adv
+0x4315 app_ble_stop_adv
+0x4317 app_ble_start_adv
+0x4319 app_ble_start_scan
+0x431b app_ble_stop_scan
+0x431d app_ble_start_conn
+0x431f app_ble_disconnect
+0x4321 app_led_start_blink
+0x4323 app_led_on
+0x4325 app_led_stop_blink
+0x4325 app_led_off
+0x4327 app_enter_hibernate
+0x4329 app_ble_store_reconn_info
+0x432b app_lpm_mult_enable
+0x432d app_lpm_mult_disable
+0x432f app_button_long_pressed
+0x4331 app_power_starting
+0x4335 app_power_common
+0x4339 app_power_shutting_down
+0x433f app_power_off_end
+0x4343 app_got_power_state_common
+0x4347 app_event_button_up
+0x434a app_power_release
+0x434c adpcm_decode
+0x4355 adpcm_decode_loop
+0x435f adpcm_next_byte
+0x4362 adpcm_cal
+0x4379 adpcm_cal_valpred
+0x437c adpcm_cal_valpred_end
+0x4382 adpcm_cal_valpred_overflow
+0x4388 adpcm_cal_valpred_overflow_end
+0x439a adpcm_cal_index
+0x439e adpcm_cal_bigger_zero
+0x43a3 adpcm_cal_vpdiff
+0x43a9 adpcm_cal_vpdiff1
+0x43ad adpcm_cal_vpdiff2
+0x43b2 car_init
+0x43d4 car_soft_switch_power_on_init
+0x43da car_power_off_signal
+0x43db car_hard_switch_power_on_signal
+0x43dc car_soft_switch_power_on_signal
+0x43df car_le_modified_name_adv
+0x43e1 car_name_loop
+0x43ee car_le_modified_name_scan
+0x43f3 car_hex_to_ascii
+0x43f7 car_hex_num
+0x43f9 car_ui_led_init
+0x43fb car_ui_led_init_1
+0x43fd car_ui_led_init_2
+0x43ff car_ui_led_init_3
+0x4403 car_in_lp1
+0x4409 car_in_lp1_end
+0x440a car_ui_led_init_end
+0x440b car_blood_led_gpio_set
+0x440e car_pairing_led_gpio_set
+0x4410 car_low_voltage_led_gpio_set
+0x4412 car_init_environment
+0x441a car_read_otp_addr
+0x441b car_motor_init
+0x441f p_in_lp1
+0x4426 p_in_lp1_end
+0x4427 p_car_ui_led_init_end
+0x4428 car_ui_gpio_init
+0x442c car_init_adc_hvin
+0x442e car_le_before_hibernate
+0x4430 car_le_process_lpm_before
+0x4431 car_gpio_set_before_hibernate
+0x4432 car_gpio_set_before_lpm_common
+0x4434 car_setgpio_loop
+0x443e car_setgpio_loop_end
+0x4442 car_setgpio_loop_ext
+0x4445 car_setgpio_pullup
+0x4448 car_setgpio_pulldown
+0x444b car_motor_setgpio
+0x444e car_motor_setgpio_loop
+0x4454 car_key_scan_process
+0x4455 car_scale_process_idle
+0x4458 car_g24_status_process
+0x445d car_g24_connected_event
+0x4463 car_lpm_timer_enable
+0x4467 car_lpm_timer_disable
+0x4469 car_stop_blink
+0x446b car_start_blink
+0x446d car_le_send_packet
+0x4476 car_scale_process_bb_event
+0x447c car_scale_event_le_conn
+0x4480 car_g24_connected
+0x4482 car_scale_process_conn
+0x4486 car_scale_event_le_discon
+0x448a car_g24_disconnect
+0x4494 car_le_bb_event_timer
+0x4499 car_24g_bind_enable_timer
+0x449c car_enter_lpm_timer
+0x449f car_enter_lpm_enable
+0x44a1 car_24g_no_data_timeout_timer
+0x44a4 car_24g_no_data_timer_timeout
+0x44a7 car_notify_vdd_timer
+0x44ac car_notify_vdd
+0x44b0 car_read_hvin
+0x44b9 car_notify_vdd_next2
+0x44c4 car_enter_low_bat
+0x44c9 car_low_bat_led_off
+0x44cb calc_check_sum_start
+0x44cc calc_check_sum_loop
+0x44cf calc_check_sum_and
+0x44d1 car_le_receive_data
+0x44d4 car_le_parse_att_write_request
+0x44d7 le_app_receive_data
+0x44eb car_control_le_receive
+0x44f3 car_receive_cmd_select
+0x44fd car_24g_receive_data
+0x4502 car_24g_receive_data_next
+0x4509 car_moto1_enable_blank_data_timer
+0x450b car_moto2_enable_blank_data_timer
+0x450d car_moto3_enable_blank_data_timer
+0x450f car_moto1_blank_data_timer
+0x4512 car_moto2_blank_data_timer
+0x4515 car_moto3_blank_data_timer
+0x4518 car_moto1_blank_data
+0x451a car_moto2_blank_data
+0x451c car_moto3_blank_data
+0x451e car_drive_old
+0x4523 car_left_right_control_old
+0x4526 car_front_back_control_old
+0x452b car_reset_old_speed
+0x452f car_reset_old_speed2
+0x4531 car_reset_old_speed3
+0x4533 car_speed_set_old
+0x453a car_motor_control
+0x4544 car_motor_control_common
+0x454b car_conn_led_state
+0x4550 car_motor1_control
+0x4552 car_motor2_control
+0x4554 car_motor3_control
+0x4556 car_motor_working_flag
+0x4558 car_motor1_status_select
+0x455d car_motor2_status_select
+0x4562 car_lr_motor_stop
+0x4566 car_lr_motor_left
+0x456a car_lr_motor_right
+0x456e car_fb_motor_stop
+0x4572 car_fb_motor_front
+0x4576 car_fb_motor_back
+0x457a car_motor_status_select
+0x4580 car_motor_positive
+0x4582 car_motor_negative
+0x4587 car_motor_stop
+0x458c car_motor_work
+0x4590 car_motor_select_negative
+0x4593 car_motor_work_next
+0x459a car_motor_select_positive
+0x459e car_motor_speed_duty_setting
+0x45a1 car_motor_speed_duty_transform
+0x45aa car_ir_data_rx_from_app
+0x45ab car_led_control_receive
+0x45ae car_info_request
+0x45ba car_g24_init
+0x45be car_g24_receive_process
+0x45c2 car_g24_mode_switch
+0x45c3 car_g24_bind_mode_enable
+0x45ca car_g24_work_mode
+0x45ce car_g24_receive_ch_polling
+0x45d7 car_g24_ch_polling_clear
+0x45d9 car_g24_work_mode_start
+0x45de car_g24_work_init
+0x45ea car_g24_receive_packet_start
+0x45ec p_g24_receive_packet_parse
+0x45fc car_g24_data_attemp
+0x4601 car_g24_data_device1
+0x4609 car_g24_data_attemp_device1_abort
+0x460e car_g24_bind_mode
+0x4621 car_g24_bind_mode_exit
+0x462c car_g24_save_commom_addr
+0x4640 car_g24_load_commom_addr
+0x464a car_g24_search_commom_addr
+0x464e car_g24_search_commom_addr_loop
+0x465b car_g24_bind_device_addr
+0x465e car_g24_cb_data_device1
+0x4665 car_g24_lpm_dipatch
+0x466d car_g24_lpm_wait
+0x4672 remote_car_init
+0x468e remote_car_soft_switch_power_on_init
+0x4695 remote_car_hard_switch_power_on_signal
+0x4696 remote_car_soft_switch_power_on_signal
+0x46a2 remote_car_set_24g_addr_eeprom
+0x46a6 remote_car_power_off_signal
+0x46a6 remote_car_ui_led_init
+0x46a9 remote_car_ui_led_init_1
+0x46ab remote_car_pairing_led_gpio_set
+0x46ad remote_car_init_environment
+0x46ae remote_no_data_timer_init
+0x46b1 remote_car_le_before_hibernate
+0x46b2 remote_gpio_set_before_hibernate
+0x46b6 remote_car_process_lpm_before
+0x46b8 remote_car_key_scan_process
+0x46bc remote_conn_led_state
+0x46c3 remote_car_stop_state
+0x46c9 get_remote_key_state
+0x46d7 send_data
+0x46dd remote_car_no_data_timeout_check
+0x46e6 remote_car_fb_check
+0x46eb remote_car_lr_check
+0x46f0 remote_car_scale_process_idle
+0x46f2 remote_car_scale_process_bb_event
+0x46f9 remote_car_24g_attempt_fail
+0x46fa remote_car_24g_pairing_complete
+0x4701 remote_car_24g_attempt_success
+0x4706 remote_car_g24_save_commom_addr
+0x4719 remote_car_g24_load_commom_addr
+0x4720 remote_car_g24_search_commom_addr
+0x4723 remote_car_g24_search_commom_addr_loop
+0x4730 remote_car_24g_status_process
+0x4735 remote_car_scale_process_paired
+0x4737 remote_car_scale_process_shutdown
+0x473b remote_car_event_timer
+0x473f remote_car_no_data_timer
+0x4746 remote_car_send_motor1_key0_press
+0x4748 remote_car_send_motor1_key1_press
+0x474a remote_car_send_motor2_key2_press
+0x474c remote_car_send_motor2_key3_press
+0x474e remote_car_send_motor1_key0_rel
+0x474e remote_car_send_motor1_key1_rel
+0x4750 remote_car_send_motor2_key2_rel
+0x4750 remote_car_send_motor2_key3_rel
+0x4752 remote_car_send_key
+0x4754 remote_car_send_attack
+0x4756 remote_car_g24_package_data
+0x475b remote_car_g24_package_data_continue
+0x4760 remote_car_g24_send_empty
+0x4765 remote_car_moto_data
+0x4769 remote_car_moto_data_next
+0x4770 remote_car_moto_data_enable_user
+0x4772 remote_car_default_init
+0x47b7 dongle_init
+0x47c2 dongle_default_init
+0x47cb dongle_default_no_eeprom
+0x47e5 dongle_xtal_select
+0x47ea dongle_dispatch
+0x47ef dongle_read_kb_bind_status
+0x47f4 dongle_write_kb_bind_status
+0x47f9 dongle_usb_config
+0x47fd dongle_usb_config_kb
+0x4801 dongle_usb_config_param
+0x4805 dongle_usb_vid_pid_config
+0x4809 dongle_usb_vid_pid_for_mouse_only_auto_pair
+0x480a dongle_usb_vid_pid_store
+0x480c dongle_usb_vid_pid_for_suit
+0x480e dongle_usb_hid_icon_config
+0x4814 dongle_usb_kb_hidreportdesc
+0x4818 dongle_usb_device_name
+0x481e dongle_all_powerful
+0x481f dongle_all_powerful_loop
+0x4822 dongle_pc_bind
+0x4823 dongle_pc_bind_loop
+0x4827 dongle_g24_blank_data_process
+0x482b dongle_g24_ms_blank_data
+0x4836 dongle_usb_tx_ms_data
+0x4837 dongle_usb_tx_enable_ep2
+0x483b dongle_g24_kb_blank_data
+0x4846 dongle_usb_tx_kb_data
+0x4847 dongle_usb_tx_enable_ep1
+0x484c dongle_g24_kb_sys_ctrl_blank_data
+0x4857 dongle_usb_tx_sys_ctrl_data
+0x4859 dongle_g24_kb_mul_blank_data
+0x4865 dongle_usb_tx_multikey_data
+0x4867 dongle_usb_dispatch
+0x487a dongle_usb0_data_ready_report_set0
+0x487c dongle_dispose_cmd_mode
+0x487f dongle_enter_bind_mode
+0x4880 dongle_usb0_data_ready_report_set1
+0x4882 dongle_dispose_cmd_bind
+0x4887 dongle_dispose_cmd_get_bind
+0x488a dongle_dispose_cmd_exit_bind
+0x488c dongle_dispose_cmd_read_mode
+0x488c dongle_dispose_in_bind_mode
+0x488e dongle_dispose_cmd_current_project
+0x4890 dongle_dispose_cmd_current_mode
+0x4894 dongle_dispose_in_work_mode
+0x4896 dongle_dispose_cmd_current_fw_version
+0x489b dongle_auto_bind
+0x489c dongle_auto_bind_loop
+0x48a3 dongle_work_mode_auto
+0x48ab dongle_ackpayload_prep
+0x48ae dongle_ackpayload_prep_mouse
+0x48b1 dongle_set_pc_sleep_flag
+0x48b5 dongle_clear_pc_sleep_flag
+0x48b7 dongle_ackpayload_prep_keyboard
+0x48b9 dongle_ackpayload_prep_end
+0x48bd dongle_pc_sleep_ackpayload_prep_mouse
+0x48c1 dongle_pc_sleep_ackpayload_prep_keyboard
+0x48c4 dongle_pc_sleep_ackpayload_prep
+0x48c8 dongle_g24_bind_ackpayload_prep
+0x48cc dongle_g24_kb_led_ackpayload_prep
+0x48d4 dongle_g24_mouse
+0x48dd dongle_g24_ms_enable_blank_data_forcibly
+0x48e1 dongle_g24_ms_disable_blank_data_forcibly
+0x48e5 dongle_g24_kb
+0x48ea dongle_g24_kb_type0
+0x48fd dongle_g24_kb_enable_blank_data_forcibly
+0x4901 dongle_g24_kb_disable_blank_data_forcibly
+0x4905 dongle_g24_kb_type3
+0x4915 dongle_g24_kb_mul_enable_blank_data_forcibly
+0x4919 dongle_g24_kb_mul_disable_blank_data_forcibly
+0x491d dongle_g24_kb_type2
+0x492d dongle_g24_kb_sys_enable_blank_data_forcibly
+0x4931 dongle_g24_kb_sys_disable_blank_data_forcibly
+0x4935 dongle_usb_tx_sys_data
+0x4937 dongle_g24_store_dvc2_bind_flag
+0x493b dongle_prep_soft_reset
+0x493d dongle_kb_bind_soft_reset
+0x4942 dongle_wirte_efuse_bind_status
+0x494c keyboard_softreset_process
+0x4959 keyboard_init
+0x4962 keyboard_init_wireless
+0x4966 keyboard_usb_check_enable
+0x496c keyboard_usb_config_param
+0x496f keyboard_usb_config_kb_check
+0x4974 keyboard_usb_config_param_init
+0x497b keyboard_usb_report_rate_set_250hz
+0x497e keyboard_usb_report_rate_set_500hz
+0x4981 keyboard_usb_report_rate_set_1000hz
+0x4984 keyboard_usb_config_param_setup
+0x4987 keyboard_usb_vid_pid_config
+0x498c keyboard_usb_hid_icon_config
+0x498e keyboard_usb_interface_check
+0x4993 keyboard_usb_gpio_low
+0x499a keyboard_usb_gpio_high
+0x49a1 keyboard_setting_config
+0x49af keyboard_param_init
+0x49c1 ble_store_le_name
+0x49c6 ble_name_set_no_swift_pair
+0x49c8 keyboard_gpio_init
+0x49d4 keyboard_keyscan_gpio_init
+0x49d7 keyboard_key_row_init
+0x49e1 keyboard_key_cow_init
+0x49e7 keboard_gpio_set_high_impedance
+0x49ea keyboard_low_vol_mult_set
+0x49f1 keyboard_low_vol_mult_ble_set
+0x49f8 keyboard_pairing_check_otp_offset
+0x49fd keyboard_load_otp_info_check
+0x4a02 keyboard_load_otp_device_info_g24_init
+0x4a0c keyboard_load_otp_device_info_ble_init
+0x4a16 keyboard_load_otp_device_info
+0x4a19 keyboard_load_otp_info_check_page_loop
+0x4a28 keyboard_load_otp_info_check_first_time
+0x4a2a keyboard_load_otp_info_check_first_time_loop_init
+0x4a2c keyboard_load_otp_info_check_first_time_loop
+0x4a38 keyboard_load_otp_info_check_first_time_process
+0x4a3a keyboard_load_otp_info_check_offset_process
+0x4a47 keyboard_load_otp_info_check_offset_process_g24
+0x4a4a keyboard_load_otp_info_check_offset_process_ble
+0x4a55 keyboard_load_otp_info_check_overwise
+0x4a56 keyboard_store_device_info
+0x4a5c keyboard_store_otp_device_info
+0x4a61 keyboard_store_otp_device_info_g24
+0x4a6b keyboard_store_otp_device_info_ble
+0x4a76 keybaord_load_device_info
+0x4a7a keyboard_cb_fuction
+0x4a9a keyboard_priority_bb_event
+0x4aaa keyboard_le_bb_event_connected
+0x4ab0 keyboard_le_bb_event_connected_next
+0x4ab8 keyboard_le_bb_disconnected
+0x4abd keyboard_le_bb_disconnected_next
+0x4ac1 keyboard_bb_disconnected
+0x4ac6 keyboard4_0_event_bb_disconn
+0x4acb keyboard_le_ll_start_encryt
+0x4ad0 keyboard_le_ll_reconn_start_encryt
+0x4ad3 keyboard_le_parse_conn_param_accepted
+0x4add keyboard_le_conn_param_update_rsp_recieved
+0x4ae2 keyboard_24g_pairing_complete
+0x4ae5 keyboard_24g_attempt_success
+0x4aed keyboard_24g_get_led
+0x4af1 keyboard_24g_led_get_status_check
+0x4af3 keyboard_24g_led_data_check
+0x4af9 keyboard_get_24g_led_enable
+0x4afc keyboard_set_repeat_send_flag
+0x4afe keyboard_24g_attempt_fail
+0x4b04 keyboard_24g_attempt_fail_enter_hibernate
+0x4b0a keyboard_24g_fast_conn_attempt_fail
+0x4b11 keyboard_24g_hibernate_set
+0x4b19 keyboard_bb_event_timer
+0x4b32 keyboard_commbination_key_process
+0x4b37 keyboard_commbination_fast_conn_bt_check
+0x4b3f keyboard_commbination_key_down
+0x4b43 keyboard_check_discovery_timeout_timer
+0x4b46 keyboard_check_discovery_timeout
+0x4b48 keyboard_store_information_delay_timer
+0x4b4b keyboard_store_device_info_check
+0x4b4f keyboard_low_voltage_param_set
+0x4b53 keyboard_low_voltage_param_set_33v
+0x4b55 keyboard_le_auto_recognize_timer
+0x4b58 keyboard_check_direct_timeout_timer
+0x4b5c keyboard_le_battery_updata_timer
+0x4b5f keyboard_le_send_conn_param_update_timer
+0x4b62 keyboard_24g_repeat_send_data
+0x4b68 keyboard_24g_led_status_get_timer
+0x4b6b keyboard_24g_led_status_clear
+0x4b6d keyboard_device_led_off
+0x4b6f keyboard_power_led_off
+0x4b71 keyboard_numlock_led_off
+0x4b72 keyboard_capslock_led_on_timer
+0x4b7c keyboard_capslock_led_off
+0x4b7e keyboard_capslock_led_check_on
+0x4b82 keyboard_long_press_timer
+0x4b85 keyboard_long_press_timerout
+0x4b87 keyboard_commbination_delay_release_timer
+0x4b8a keyboard_check_no_data_timeout_timer
+0x4b8d keyboard_check_no_data_timeout
+0x4b90 keyboard_bb_event_discovery_btn
+0x4b95 keyboard_start_discovery
+0x4bac keyboard_start_discovery_norandom
+0x4bbb keyboard_low_voltage_led_blink_disable
+0x4bbd keyboard_stop_discovery
+0x4bc5 keyboard_store_remote_bdaddr
+0x4bcc keyboard_idle
+0x4bcf keyboard_start_work
+0x4bdc keyboard_start_work_next
+0x4be6 keyboard_le
+0x4bee keyboard_le_next
+0x4bfb kscan_dispatch
+0x4c00 keyboard_keyscan
+0x4c0f keyboard_keyscan_copy_value
+0x4c12 keyboard_compare_col_excol_gpio_loop
+0x4c17 keyboard_compare_col_gpio_loop
+0x4c1c keyboard_compare_col_excol_gpio_loop_next
+0x4c23 keyboard_copy_value_exmcu_to_mcu
+0x4c2f keyboard_keyscan_get_exmcu_value
+0x4c32 keyboard_keyscan_exmcu_start
+0x4c3d keyboard_keyscan_exmcu_start_loop
+0x4c46 keyboard_keyscan_exmcu_get_col_value
+0x4c4a keyboard_keyscan_value_store
+0x4c53 keyboard_keyscan_get_mcu_value
+0x4c57 keyboard_keyscan_mcu_start
+0x4c5f keyboard_keyscan_mcu_start_loop
+0x4c65 keyboard_keyscan_get_col_value
+0x4c68 keyboard_keyscan_get_col_value_loop
+0x4c71 keyboard_keyscan_reset_exmcu
+0x4c79 keyboard_clk_state_high
+0x4c7b keyboard_clk_state_low
+0x4c7d keyboard_gpio_config_input_pu
+0x4c81 keyboard_clk_input
+0x4c83 keyboard_stb_state_high
+0x4c85 keyboard_stb_state_low
+0x4c87 keyboard_press_change_or_no_key
+0x4c8b keyboard_key_process
+0x4c9d keyboard_keyvalue_process
+0x4ca6 keyboard_keyvalue_change
+0x4cb3 keyboard_keyvalue_change_loop
+0x4cbd keyboard_keyvalue_process_loop
+0x4cc5 keyboard_keyscan_value_current_zero_check
+0x4ccd keyboard_ghost_key_check
+0x4cd2 keyboard_ghost_key_check_loop
+0x4cd5 keyboard_current_col_press_key_count_check
+0x4ce8 keyboard_same_row_key_check
+0x4cf7 keyboard_ghost_key_check_next_loop
+0x4cfa keyboard_same_row_key_check_loop
+0x4cfc keyboard_keyvalue_fn_replace
+0x4d11 keyboard_keyvalue_fn_replace_press
+0x4d19 keyboard_keyvalue_fn_esc
+0x4d1b keyboard_keyvalue_fn_delete
+0x4d1d keyboard_keyvalue_fn_up_arrow
+0x4d21 keyboard_keyvalue_fn_down_arrow
+0x4d25 keyboard_keyvalue_fn_left_arrow
+0x4d29 keyboard_keyvalue_fn_right_arrow
+0x4d2d keyboard_keyvalue_fn_left_ctrl
+0x4d33 keyboard_keyvalue_windows_osk
+0x4d35 keyboard_keyvalue_fn_space
+0x4d38 keyboard_keyvalue_store_temp
+0x4d3a keyboard_keyvalue_commbination_replace
+0x4d4a keyboard_commbination_delay_release_set
+0x4d4e keyboard_commbination_delay_release_clear
+0x4d50 keyboard_commination_screen_shot_replace
+0x4d56 keyboard_commination_pageup_replace
+0x4d57 keyboard_commination_ios_mac_command_commiation
+0x4d5c keyboard_commination_pagedown_replace
+0x4d5e keyboard_commination_home_replace
+0x4d60 keyboard_commination_end_replace
+0x4d62 keyboard_commination_select_all
+0x4d63 keyboard_commbination_text_edit
+0x4d69 keyboard_commbination_copy
+0x4d6b keyboard_commbination_paste
+0x4d6d keyboard_commbination_cut
+0x4d6f keyboard_commination_os_lock
+0x4d74 keyboard_commination_windows_lock
+0x4d77 keyboard_commination_mac_lock
+0x4d7a keyboard_commbination_osk
+0x4d7e keyboard_commbination_windows_osk
+0x4d81 keyboard_commbination_language
+0x4d85 keyboard_commbination_language_next
+0x4d88 keyboard_commbination_language_windows
+0x4d8a keyboard_commbination_language_andriod
+0x4d8c keyboard_commbination_app_tiling
+0x4d92 keyboard_commbination_app_tiling_windows_android
+0x4d95 keyboard_commbination_keypress
+0x4d9a keyboard_commbination_key_press_set
+0x4d9c keyboard_commbination_key_wait_release_set
+0x4d9e keyboard_commbination_key_null_set
+0x4da0 keyboard_commbination_key_value_store
+0x4da5 keyboard_commbination_key_press_process
+0x4da8 keyboard_commbination_key_hold_set
+0x4daa keyboard_commbination_key_hold_process
+0x4dae keyboard_commbination_key_wait_release_process
+0x4db4 keyboard_commbination_key_release_set
+0x4db6 keyboard_commbination_key_release_process
+0x4db7 keyboard_commbination_key_null_process
+0x4dbb keyboard_keyvalue_in_out
+0x4dc3 keyboard_keyvalue_standard
+0x4dc6 keyboard_keyvalue_standard_out
+0x4dc9 keyboard_keyvalue_standard_out_loop
+0x4dd3 keyboard_keyvalue_standard_out_next
+0x4dd8 keyboard_keyvalue_control_key_out
+0x4ddd keyboard_keyvalue_standard_in
+0x4de0 keyboard_keyvalue_standard_in_loop
+0x4de9 keyboard_keyvalue_control_key_in
+0x4dee keyboard_keyvalue_standard_in_data
+0x4df2 keyboard_keyvalue_standard_in_data_next
+0x4df5 keyboard_special_key_check
+0x4dfe keyboard_special_key_check_loop
+0x4e06 keyboard_special_key_check_bluetooth
+0x4e11 keyboard_special_key_check_24g
+0x4e14 keyboard_pairing_button_check
+0x4e20 keyboard_pairing_button_release
+0x4e24 keyboard_enable_bt_button_pairing
+0x4e29 keyboard_long_button_bt_discovery
+0x4e32 keyboard_commbination_pairing_24g_check
+0x4e39 keyboard_24g_start_pair_mode
+0x4e41 keyborad_control_key_set
+0x4e43 keyboard_fn_set
+0x4e45 keyboard_pb_set
+0x4e47 keyboard_motion
+0x4e61 keyboard_current_mult_update
+0x4e64 keyboard_no_key_press
+0x4e74 keyboard_motion_data_check
+0x4e78 keyboard_value_tpye_check
+0x4e7b keyboard_value_tpye_check_loop
+0x4e85 keyboard_tx_data_store
+0x4e87 keyboard_tx_data_store_loop
+0x4e89 keyboard_motion_data_check_next
+0x4e90 device_send_keyboard_data
+0x4e92 keyboard_value_release_all_key
+0x4e95 keyboard_tx_data_skip_fn
+0x4e9a keyboard_tx_data_clear_fn
+0x4e9c keyboard_value_tpye_consumer_set
+0x4ebb keyboard_value_media
+0x4ebe keyboard_value_play
+0x4ec1 keyboard_value_stop
+0x4ec4 keyboard_value_pre_track
+0x4ec7 keyboard_value_next_track
+0x4eca keyboard_value_vol_down
+0x4ecd keyboard_value_vol_up
+0x4ed0 keyboard_value_mute
+0x4ed3 keyboard_value_my_computer
+0x4ed6 keyboard_value_mail
+0x4ed9 keyboard_value_calculator
+0x4edc keyboard_value_light_down
+0x4edf keyboard_value_light_up
+0x4ee2 keyboard_value_ac_favorites
+0x4ee5 keyboard_value_ac_forward
+0x4ee8 keyboard_value_ac_back
+0x4eeb keyboard_value_ac_stop
+0x4eee keyboard_value_ac_refresh
+0x4ef1 keyboard_value_ac_search
+0x4ef7 keyboard_value_ac_home
+0x4efa keyboard_value_os_lock
+0x4efd keyboard_value_os_soft_kb
+0x4f02 keyboard_value_os_soft_kb_andriod
+0x4f05 keyboard_value_consumer_all_key_release
+0x4f05 keyboard_value_consumer_release
+0x4f0c keyboard_value_system_sleep
+0x4f10 keyboard_device_data_tpye_check
+0x4f18 keyboard_device_data_tpye_check_next
+0x4f1e keyboard_mouse_data_send
+0x4f23 keyboard_standard_data_send
+0x4f2a keyboard_standard_data_send_end
+0x4f2e keyboard_consumer_data_send
+0x4f36 keyboard_system_control_data_send
+0x4f3e keyboard_clear_key_data
+0x4f41 keyboard_lpm_before_common
+0x4f4c keyboard_key_col_wake_init
+0x4f54 keyboard_key_row_wake_init
+0x4f5a keyboard_key_row_wake_set
+0x4f5d keyboard_process_lpm_before
+0x4f62 keyboard_before_hibernate
+0x4f6b keyboard_power_down
+0x4f6c keyboard_app_enter_hibernate
+0x4f70 keyboard_device_led_all_off
+0x4f75 keyboard_setgpio_hibernate
+0x4f7f keyboard_g24_reconn_dispatch
+0x4f86 keyboard_g24_reconn_dispatch_next
+0x4f8c keyboard_g24_transmit_no_interrupt
+0x4f8e keyboard_g24_transmit_start
+0x4f91 keyboard_g24_nodata_transmit
+0x4f9a keyboard_g24_long_sleep
+0x4fa0 keyboard_g24_transmit_process
+0x4fa2 keyboard_g24_transmit_loop
+0x4faf keyboard_g24_retransmit
+0x4fb8 keyboard_g24_transmit_hop_process
+0x4fbe keyboard_g24_tx_fast_hop
+0x4fc8 keyboard_g24_lpm_wait
+0x4fd5 keyboard_power_ctrl_start
+0x4fdb keyboard_g24_transmit_start_next
+0x4fdf keyboard_g24_short_sleep
+0x4fe5 keyboard_24g_package_data
+0x4fed keyboard_24g_keyboard_package_data
+0x4ff3 keyboard_customer_key_press
+0x4ff5 keyboard_24g_search_dongle_init
+0x4ff8 keyboard_24g_search_dongle
+0x5005 keyboard_24g_search_dongle_loop
+0x5010 keyboard_24g_search_dongle_loop_end
+0x5016 keyboard_24g_search_dongle_loop_retry
+0x5018 keyboard_24g_search_dongle_check
+0x5020 keyboard_24g_search_dongle_success
+0x5028 keyboard_g24_ackpayload_parse
+0x502f keyboard_le_send_att_find_by_type_value_request_ancs
+0x503d keyboard_le_att_auto_reco_process
+0x5048 keyboard_le_parse_att_find_by_type_value_rsp
+0x504a keyboard_le_parse_att_find_ios_report
+0x504c keyboard_le_parse_att_not_find_mac_report
+0x504f keyboard_le_parse_att_find_mac_report
+0x5050 keyboard_otp_store_computer_system_ble
+0x505b keyboard_le_send_att_find_by_type_value_request_mac
+0x506c keyboard_le_parse_att_find_by_type_value_rsp_mac
+0x5078 keyboard_le_send_att_read_by_type_rsp_mac
+0x5080 keyboard_le_check_att_read_type_manu_loop
+0x5089 keyboard_le_send_att_read_by_type_rsp_manufactory
+0x5091 keyboard_le_parse_att_manu_resp
+0x5099 module_init
+0x50ab module_lpm_uart_init
+0x50bd module_lpm_init
+0x50be module_gpio_init
+0x50c3 module_lpm_lock
+0x50c7 module_process_idle
+0x50ca module_process_bb_event
+0x50d8 module_process_bb_even_le_disconn
+0x50dc module_process_le_conn
+0x50e0 module_disconn_start
+0x50e2 module_process_ble_ltk_lost
+0x50e4 module_process_ble_update_phy
+0x50e5 module_set_conn_pin_high
+0x50e7 module_conn_start
+0x50e9 module_stop_adv_discovery
+0x50ed module_set_conn_pin_low
+0x50ef module_process_check_hci_command_complete
+0x5105 module_hci_in_excp
+0x5108 module_hci_release_except
+0x510e module_hci_dicard_packet
+0x5112 module_hci_dicard_bytes
+0x5113 module_hci_cmd_control
+0x513d module_hci_cmd_set_le_addr
+0x5142 module_hci_cmd_set_visibility
+0x5149 module_start_adv_discovery_by_command
+0x5149 moudle_start_adv_by_command
+0x5150 module_hci_cmd_set_le_name
+0x5154 module_hci_cmd_receive_le_data
+0x5179 module_hci_cmd_receive_le_data_finish
+0x517c module_hci_cmd_transmit_handle_error
+0x5180 module_hci_cmd_transmit_le_notify
+0x519e module_hci_cmd_transmit_le_notify_malloc_l2cap
+0x51a3 module_get_le_remote_mtu
+0x51a8 module_check_ble_encrypt_state
+0x51ab module_hci_cmd_inquire_status
+0x51ac module_hci_cmd_set_uart_control_mode
+0x51b4 module_hci_cmd_set_uart_baud
+0x51bc module_hci_cmd_version_request
+0x51c0 module_hci_cmd_ble_disconnect
+0x51c2 module_hci_cmd_ble_disconnect_doing
+0x51c4 module_hci_cmd_set_nvram
+0x51c9 module_hci_cmd_confirm_gkey
+0x51cc module_hci_cmd_auto_adv
+0x51d2 module_hci_cmd_auto_adv_loop
+0x51dc module_hci_cmd_auto_adv_store_adv
+0x51e6 module_hci_cmd_auto_adv_store_scan
+0x51ef module_hci_cmd_auto_adv_store_common
+0x51fa module_hci_cmd_auto_adv_adv_analys
+0x51ff module_hci_cmd_power_request
+0x5205 module_hci_cmd_power_set
+0x520c module_hci_cmd_passkey_entry
+0x5211 module_hci_cmd_set_gpio
+0x5217 module_set_gpio_input
+0x521d module_set_gpio_output
+0x5222 module_hci_cmd_read_gpio
+0x522d module_hci_cmd_le_set_pairing_mode
+0x523c module_le_set_pairing_mode_secure_justwork
+0x5240 module_le_set_pairing_mode_secure_numeric
+0x5245 module_le_set_pairing_mode_secure_passkey
+0x5249 module_le_set_pairing_mode_secure_passkey_res_input
+0x524d module_le_set_no_pairing
+0x524e module_le_set_noinputnooutput
+0x5250 module_le_set_pairing_mode_lagacy_just_work
+0x5252 module_le_set_pairing_mode_lagacy_passkey
+0x5254 module_le_set_pairing_mode_lagacy_passkey_res_input
+0x5256 module_le_set_keboadonly
+0x5258 module_le_set_displayonly
+0x525a module_hci_cmd_le_set_adv_data
+0x525d module_hci_cmd_le_set_scan_data
+0x5260 module_hci_cmd_receive_store_mem
+0x5266 module_hci_cmd_le_send_conn_update_req
+0x526f module_hci_cmd_set_le_adv_parameter
+0x5275 module_hci_cmd_le_start_pairing
+0x527d module_hci_cmd_set_wake_gpio
+0x5287 module_hci_cmd_set_tx_power
+0x528c module_hci_cmd_le_confirm_gkey
+0x5293 module_hci_cmd_le_confirm_gkey_ok
+0x5295 module_hci_cmd_le_confirm_gkey_fail
+0x5297 module_hci_cmd_reset_chip
+0x529b module_hci_cmd_le_set_fixed_passkey
+0x52a8 module_hci_cmd_le_set_random_passkey
+0x52aa module_hci_cmd_delete_customize_service
+0x52b0 module_hci_cmd_add_service_uuid
+0x52b5 module_hci_cmd_add_characteristic_uuid
+0x52b9 module_hci_cmd_add_service_uuid_set_uuid
+0x52bd module_hci_cmd_add_characteristic_uuid_set_handle
+0x52c4 module_hci_cmd_add_characteristic_uuid_set_uuid
+0x52dc module_hci_cmd_add_characteristic_uuid_set_ccc_uuid
+0x52e4 le_att_creat_new_handle
+0x52e7 uart_copy_rx_bytes_len_data
+0x52eb module_hci_cmd_le_passkey_entry_input
+0x52f1 module_hci_cmd_passkey_entry_sc_res_input
+0x52f4 module_hci_cmd_receive_ble_passkey
+0x52f7 module_hci_cmd_passkey_entry_res_input
+0x52f9 module_hci_cmd_le_create_conn
+0x52ff module_hci_cmd_ble_set_phy
+0x5304 module_hci_cmd_ble_read_current_phy
+0x5308 module_hci_cmd_ble_set_dle
+0x530d module_hci_cmd_read_chip_data
+0x5311 module_hci_cmd_write_chip_data
+0x5317 module_hci_cmd_close_lpm
+0x5319 module_hci_event_receive_invalid_cmd
+0x531c module_hci_event_receive_valid_cmd
+0x531f module_hci_event_le_connect
+0x5321 module_hci_event_le_disconnect
+0x5323 module_hci_event_set_cmd
+0x5330 module_hci_event_receive_le_data
+0x533b module_hci_event_enter_standby_mode
+0x533c module_hci_event_enter_standby_mode_len0
+0x533f module_hci_event_status_res
+0x5349 module_hci_read_bt_status
+0x534f module_hci_event_store_device
+0x5358 module_hci_event_gkey_generate
+0x535e module_hci_event_invalid_packet
+0x536d module_hci_event_passkey_entry_mode
+0x536f module_hci_event_le_tk
+0x5375 module_hci_event_le_pairing_fail
+0x5377 module_hci_event_le_pairing_success
+0x5379 module_hci_event_pairing_completed
+0x537f module_hci_event_pause_enc
+0x5381 module_hci_event_start_enc
+0x5382 module_hci_event_enc
+0x5388 module_hci_event_uuid_handle
+0x538f module_hci_event_le_input_passkey
+0x5391 module_hci_event_le_update_phy
+0x5397 module_hci_prepare_tx
+0x53a1 module_hci_transmit_tx
+0x53a3 module_set_mcu_wake_pin_high_delay
+0x53a5 module_set_mcu_wake_pin_h_delay
+0x53aa module_set_mcu_wake_pin_high
+0x53ac module_check_mcu_wake_pin_high
+0x53ae module_set_mcu_wake_pin_low
+0x53b0 module_le_receive_data
+0x53b6 module_le_receive_data_ok
+0x53c1 module_bb_event_timer
+0x53c2 module_read_vdd_timer
+0x53d4 module_set_le_tx_data_flag
+0x53d6 module_clear_le_tx_data_flag
+0x53d8 module_clr_state
+0x53dc module_set_state
+0x53e0 mouse_init
+0x53e8 mouse_init_wireless
+0x53ec mouse_cb_fuction
+0x5410 mouse_setting_config
+0x5419 mouse_load_device_info_check
+0x541f mouse_xtal_init
+0x5424 mouse_24g_phy_select
+0x5428 mouse_default_init
+0x542c mouse_default_parm_init
+0x5436 mouse_default_parm_init_next
+0x543b mouse_param_common_init
+0x544a mouse_param_init
+0x5458 mouse_param_init_intervl_end
+0x545c mouse_24g_short_sleep_set_end
+0x5468 mouse_sensor_set_angle
+0x5473 mouse_sensor_switch_angle
+0x5476 mouse_g24_interval_param_4ms
+0x547e mouse_report_rate_set_250hz
+0x5481 mouse_g24_interval_param_8ms
+0x5489 mouse_report_rate_set_125hz
+0x548c mouse_start_work
+0x5491 mouse_le_fast_conn_judge
+0x5496 mouse_le_device1_judge
+0x549b mouse_le_device2_judge
+0x54a0 mouse_start_reconnect_device
+0x54a9 mouse_start_reconnect
+0x54ac mouse_wakeup_from_power_check
+0x54b3 mouse_wakeup_from_poweron
+0x54b6 mouse4_0_check_reconn_target
+0x54bb mouse4_0_check_reconn_target_next
+0x54c5 mouse_lpm_check_wake_lock
+0x54cd mouse_app_enter_hibernate
+0x54d3 mouse_app_enter_hibernate_next
+0x54d5 mouse_before_hibernate
+0x54dc mouse_setgpio_hibernate
+0x54e8 mouse_wheel_gpio_set_before_hibernate
+0x54ea mouse_wheel_gpio_clr_wakeup
+0x54f2 mouse_adc_gpio_set_before_hibernate
+0x54f9 mouse_gpio_pd_idle
+0x54fb mouse_gpio_pd_idle_loop
+0x5500 mouse_gpio_pd_idle_configured
+0x5504 mouse_gpio_pd_idle_ext
+0x5507 mouse_process_lpm_before
+0x550c mouse_lpm_before_common
+0x552f mouse_set_mult
+0x5534 mouse_adc_gpio_set
+0x5539 mouse_adc_gpio_mux_init
+0x553d mouse_adc_read
+0x5545 mouse_adc_read_gpio_mux_start
+0x5547 mouse_adc_read_start
+0x5553 mouse_adc_data_process
+0x555a mouse_adc_low_voltage
+0x555c mouse_adc_no_low_voltage
+0x5563 mouse_adc_bat_percent_lowpower_out
+0x556a mouse_adc_bat_percent_lowpower_out_battery
+0x5573 mouse_adc_bat_level_set
+0x5584 mouse_adc_bat_level_100_percent
+0x5586 mouse_adc_bat_level_0_percent
+0x5588 mouse_adc_bat_percent_lowpower_out_hvin_multiple
+0x5589 mouse_gpio_init
+0x55ab mouse_gpio_set_pupd_by_input
+0x55b1 mouse_gpio_config_input_pd
+0x55b5 mouse_gpio_config_input_pu
+0x55b9 mouse_gpio_set_high_impedance
+0x55bd mouse_gpio_set_high_impedance_bit_loop
+0x55c6 mouse_le_name_modify
+0x55d3 mouse_le_name_modify_next
+0x55d6 mouse_le_name_clear
+0x55db mouse_le_name_clear_next
+0x55dd mouse_le_name_patch_len_overflow
+0x55f3 mouse_le_swift_pair_disable
+0x55f6 mouse_sensor_spi_init
+0x55fa mouse_spi_write_flash_cb
+0x55fa mouse_spi_init
+0x55fb mouse_spid_init_pin
+0x5601 mouse_motion
+0x5612 mouse_zwheel
+0x5617 mouse_t_zwheel
+0x561c mouse_wheel_check
+0x5629 mouse_t_wheel_scan
+0x5639 mouse_t_wheel_scan_judge1
+0x563d mouse_t_wheel_scan_judge2
+0x5641 mouse_t_wheel_scan_judge11
+0x5643 mouse_t_wheel_scan_judge12
+0x5645 mouse_t_wheel_scan_judge21
+0x5647 mouse_t_wheel_scan_judge22
+0x5649 mouse_t_wheel_scan_judge3
+0x5651 mouse_t_wheel_scan_judge30
+0x5654 mouse_t_wheel_scan_judge31
+0x5657 mouse_t_wheel_scan_judge32
+0x565a mouse_t_wheel_scan_judge33
+0x565d mouse_wheel_t_forward
+0x5661 mouse_wheel_t_back
+0x5665 mouse_wheel_scan
+0x5675 mouse_wheel_scan_judge1
+0x5679 mouse_wheel_scan_judge2
+0x567d mouse_wheel_scan_judge11
+0x567f mouse_wheel_scan_judge12
+0x5681 mouse_wheel_scan_judge21
+0x5683 mouse_wheel_scan_judge22
+0x5685 mouse_wheel_scan_judge3
+0x568d mouse_wheel_scan_judge30
+0x5690 mouse_wheel_scan_judge31
+0x5693 mouse_wheel_scan_judge32
+0x5696 mouse_wheel_scan_judge33
+0x5699 mouse_wheel_forward
+0x569d mouse_wheel_back
+0x56a1 mouse_wheel_gpio_set_wake
+0x56a9 mouse_before_hibernate_wheel_gpio_set
+0x56b1 mouse_wheel_trigger
+0x56b6 mouse_wheel_trigger_timer
+0x56b9 mouse_wheel_trigger_disable
+0x56bb mouse_dpi_check
+0x56c1 mouse_dpi_check_next
+0x56c5 mouse_dpi_check_exit
+0x56c8 mouse_dpi_key_check
+0x56ce mouse_dpi_key_check_next
+0x56d0 mouse_dpi_key_connect_matrix
+0x56d8 mouse_3io6key_dpi_check_end
+0x56db mouse_dpi_check_end
+0x56de mouse_dpi_key_connect_gnd
+0x56e0 mouse_dpi_down
+0x56e7 mouse_dpi_up
+0x56ee mouse_dpi_up_next
+0x56f2 mouse_dpi_up_after_long_press
+0x56f7 mouse_dpi_process
+0x5701 mouse_dpi_level_store
+0x5704 mouse_double_dpi_check
+0x5706 mouse_dpi_increase
+0x570a mouse_dpi_increase_level
+0x570d mouse_dpi_level_1
+0x570f mouse_dpi_level_2
+0x5711 mouse_dpi_level_3
+0x5713 mouse_dpi_level_4
+0x5715 mouse_dpi_increase_level_4
+0x571b mouse_dpi_decrease_level_4
+0x5721 mouse_another_dpi_button_down
+0x5721 mouse_dpi_decrease
+0x5725 mouse_dpi_decrease_level
+0x5728 mouse_dpi_ghost_check
+0x572c mouse_dpi_key_check_long_press
+0x5730 mouse_select_device_by_dpi_button
+0x5735 mouse_ready_reconnection_by_dpi_button
+0x5737 mouse_discovery_by_dpi_button
+0x573c mouse_long_dpi_button_bt_discovery
+0x573e mouse_setting_dpi_4_level
+0x5744 mouse_setting_dpi
+0x5747 mouse_setting_sensor_type
+0x5751 mouse_set_cpi1
+0x5753 mouse_set_cpi0
+0x5755 mouse_set_cpi2
+0x5757 mouse_set_cpi3
+0x5758 mouse_dpi_store
+0x575e mouse_dpi_write
+0x5767 mouse_3065xy_set_dpi
+0x5769 mouse_ka8_set_dpi
+0x576b mouse_seting_s201_dpi
+0x576f mouse_set_s201_dpi_0
+0x5772 mouse_set_s201_dpi_1
+0x5775 mouse_set_s201_dpi_2
+0x5778 mouse_set_s201_dpi_3
+0x577b mouse_set_s201_dpi_4
+0x577d mouse_dpi_s201_store
+0x5785 mouse_seting_3212_dpi
+0x578a mouse_set_p3212_cpi1
+0x578c mouse_set_p3212_cpi0
+0x578e mouse_set_p3212_cpi2
+0x5790 mouse_set_p3212_cpi3
+0x5791 mouse_p3212_dpi
+0x5799 mouse_seting_ka8g2_dpi
+0x579e mouse_set_pka8g2_cpi1
+0x57a0 mouse_set_pka8g2_cpi0
+0x57a2 mouse_set_pka8g2_cpi2
+0x57a4 mouse_set_pka8g2_cpi3
+0x57a6 mouse_key
+0x57b7 mouse_24g_key
+0x57bc mouse_ghost_key_check
+0x57cc mouse_matrix_ghost_key_l_bk
+0x57d1 mouse_matrix_ghost_key_l_fw
+0x57d6 mouse_ghost_key_lbk_mfw
+0x57d9 mouse_ghost_key_lbk_rfw
+0x57db mouse_ghost_key_lfw_mbk
+0x57de mouse_ghost_key_lfw_rbk
+0x57e0 mouse_ghost_key_mbk_rfw
+0x57e1 mouse_ghost_key_rfw
+0x57e3 mouse_ghost_key_mfw_rbk
+0x57e4 mouse_ghost_key_rbk
+0x57e5 mouse_ghost_key_check_next
+0x57ef mouse_ghost_key_check_l_bk
+0x57f2 mouse_ghost_key_check_m_bk
+0x57f5 mouse_ghost_key_check_r_bk
+0x57f8 mouse_ghost_key_check_l_fw
+0x57fb mouse_ghost_key_check_m_fw
+0x57fe mouse_ghost_key_check_r_fw
+0x5801 mouse_ghost_key_check_bk_fw
+0x5804 mouse_ghost_key_check_lmr
+0x580a mouse_matrix_row_more_than_one_key
+0x580c mouse_matrix_cow_more_than_one_key
+0x580e mouse_dpi_another_gpio_check
+0x5811 mouse_dpi_another_gpio_connect_gnd_check
+0x5816 mouse_dpi_another_gpio_connect_vin_check
+0x581f mouse_dpi_another_down_new
+0x5824 mouse_dpi_another_check
+0x5828 mouse_dpi_another_state_check
+0x582b mouse_dpi_another_down
+0x582f mouse_dpi_another_up
+0x5833 mouse_check_key_connect_gnd_new
+0x583d mouse_check_key_connect_vin_new
+0x5848 mouse_another_dpi_key_press
+0x584a mouse_another_dpi_key_release
+0x584c mouse_check_firekey_gpio
+0x5851 mouse_check_firekey_connect_gnd
+0x5856 mouse_firekey_state_store
+0x5859 mouse_check_firekey_connect_vin
+0x585f fire_key_process
+0x5860 fire_key_press
+0x586e fire_key_process_start
+0x586f fire_key_down
+0x5871 fire_key_process_release1
+0x5872 fire_key_release
+0x5874 fire_key_process_start2
+0x5876 fire_key_process_release2
+0x5878 fire_key_process_end
+0x587b firekey_clkn_bt_timer_check
+0x5880 firekey_clkn_bt_timer_timeout
+0x5883 mouse_key_check_once
+0x5888 mouse_check_key_gpio
+0x5895 mouse_check_key_gpio_once
+0x5898 mouse_check_lkey_gpio
+0x58a1 mouse_check_rkey_gpio
+0x58aa mouse_check_mkey_gpio
+0x58b3 mouse_check_bkkey_gpio
+0x58c2 mouse_check_bkkey_gpio_end
+0x58c4 mouse_check_bk_button_connect_gnd
+0x58c8 mouse_3io6key_bk_check
+0x58cf mouse_check_fwkey_gpio
+0x58de mouse_check_fwkey_gpio_end
+0x58df mouse_matrix_public_gpio_reset
+0x58e1 mouse_check_fw_button_connect_gnd
+0x58e5 mouse_3io6key_fw_check
+0x58ec mouse_check_customerkey_gpio
+0x58f2 mouse_customer_key_connect_gnd
+0x58f7 mouse_check_customerkey_gpio_next
+0x58fa mouse_check_customerkey_gpio_exit
+0x58fd mouse_customer_key_connect_vin
+0x590b mouse_check_customer_button_connect_gnd
+0x590f mouse_3io6key_customer_key_check_vin
+0x5913 mouse_check_customerkey_gpio_over
+0x5917 mouse_customerkey_press
+0x591a mouse_customerkey_release
+0x591d mouse_customer_key_need_send
+0x591f mouse_check_matrix_button_connect_gnd
+0x5923 mouse_key_release
+0x5925 mouse_check_key_connect_gnd
+0x5929 mouse_check_key_connect_gnd_1
+0x592a mouse_check_key_connect_gnd_next
+0x592f mouse_key_press
+0x5931 mouse_3io6key_check
+0x593d mouse_check_press
+0x5943 mouse_gpio_config_output_high
+0x5946 mouse_gpio_config_output_low
+0x5949 mouse_init_sunt
+0x594c mouse_init_sensor_wakeup
+0x594d mouse_init_sensor
+0x5955 mouse_twspi_reset
+0x5958 mouse_read_sensor_id
+0x595f mouse_init_p32xx_id2_judge
+0x5968 mouse_s210x_3205_3t_judge
+0x596c mouse_s201x_init_param
+0x596e mouse_mx8650_init_param
+0x5974 mouse_8009_init_param
+0x5983 mouse_3205_3t_init_param
+0x598c mouse_3204_3l_init_param
+0x5993 mouse_3212_init_param
+0x5995 mouse_sensor_wr_seq
+0x599c mouse_ka8_init_param_check
+0x59ae mouse_ka8_init_param
+0x59b0 mouse_ka8ul_init_param
+0x59b3 mouse_ka8hd_sensor_judge
+0x59bd mouse_ka8hd_init_param
+0x59c0 mouse_enable_ka8_sensor_wp
+0x59c3 mouse_p6520_init_param
+0x59c6 mouse_init_p3065
+0x59cb mouse_p3065_init_param
+0x59cd mouse_p3065xy_init_param
+0x59cf mouse_ka8g2_id2_judge
+0x59d3 mouse_ka8g2_init_param
+0x59d6 mouse_sensor_enable_wp
+0x59d8 mouse_sensor_disable_wp
+0x59da mouse_sensor_reset
+0x59de mouse_sensor_reset_end
+0x59e2 mouse_sensor_poweron_init
+0x59e7 mouse_sensor_poweron
+0x59ed mouse_sensor_powerdown
+0x59f4 mouse_sensor_powerdown_end
+0x59f6 mouse_check_sensor_data
+0x5a02 mouse_p32xx_sensor_motion
+0x5a09 mouse_p32xx_sensor_motion_2
+0x5a0c mouse_p32xx_sensor_motion_1
+0x5a1c mouse_p3065_judge
+0x5a1e mouse_motion32xx_6clk_direction_selection
+0x5a20 mouse_motion32xx_9clk_direction_selection
+0x5a22 mouse_motion32xx_12clk_direction_selection
+0x5a24 mouse_motion32xx_3clk_direction_selection
+0x5a26 mouse_p3212_sensor_motion
+0x5a2c mouse_p3212_sensor_motion_1
+0x5a2f mouse_p3212_sensor_motion_2
+0x5a42 mouse_read_3212sensor_xy_high
+0x5a44 mouse_pka8g2_sensor_motion
+0x5a4a mouse_pka8g2_sensor_motion_1
+0x5a4b mouse_p8009_sensor_motion
+0x5a56 mouse_motion_6clk_direction_dispose
+0x5a5a mouse_motion_12clk_direction_dispose
+0x5a5e mouse_motion_9clk_direction_dispose
+0x5a66 mouse_motion_3clk_direction_dispose
+0x5a68 mouse_sensor_data_swap_places
+0x5a6d mouse_clear_sensor_data
+0x5a71 mouse_clear_sensor_data_by_reset
+0x5a73 mouse_init_sensor_reset
+0x5a74 mouse_data_xy_release
+0x5a7c mouse_data_extsign
+0x5a80 mouse_data_extsign_bit3
+0x5a84 mouse_read_sensor_common
+0x5a8b mouse_sensor_sdio_low
+0x5a92 mouse_set_sdio_high
+0x5a94 mouse_bluetooth_fast_conn_init
+0x5a95 mouse_ble_fast_conn_init
+0x5a9a mouse_buletooth_fast_conn_end
+0x5aa1 mouse_device1_check_auto_discover
+0x5aa3 mouse_device2_check_auto_discover
+0x5aa4 mouse_device_check_auto_discover
+0x5aa8 mouse_bluetooth_fast_conn_disable
+0x5aaa mouse_stop_bluetooth_mode
+0x5aad mouse_disconnect
+0x5ab2 mouse_check_125hz
+0x5ab4 mouse_bluetooth_125hz
+0x5aba mouse_bluetooth_125hz_clear
+0x5abc mouse_current_mult_update
+0x5ac1 mouse_priority_bb_event
+0x5ad0 mouse_le_bb_event_connected
+0x5ad8 mouse_le_bb_event_connected_next
+0x5ae0 mouse_le_bb_disconnected
+0x5ae7 mouse_le_bb_disconnected_next
+0x5aed mouse_le_pairing_success
+0x5aef mouse_le_enc_info
+0x5aef mouse_updata_le_param
+0x5af1 mouse_le_ll_start_encryt
+0x5af4 mouse_le_ll_reconn_start_encryt
+0x5af6 mouse_le_ll_enable_start_enc_flag
+0x5af8 mouse_le_enable_connect_flag
+0x5afc mouse_le_conn_param_update_rsp_recieved
+0x5b06 mouse_le_conn_param_lpm_disable
+0x5b08 mouse_le_bb_event_connect_complete
+0x5b0e mouse_le_write_enable
+0x5b10 mouse_le_parse_conn_param_accepted
+0x5b1d mouse_le_lpm_mult_reinit
+0x5b1f mouse_le_conn_param_lpm_enable
+0x5b21 mouse_le_clean_connect_flag
+0x5b23 mouse_le
+0x5b2b mouse_le_next
+0x5b3c mouse_le_send_mouse_data
+0x5b3d mouse_le_send_keyboard_package_data
+0x5b40 mouse_fill_keyboard_package_data_le
+0x5b46 mouse_fill_data_le
+0x5b4d mouse_le_release_keyboard_data
+0x5b4f mouse_fill_multimedia_key_data_le
+0x5b52 mouse_fill_systemctrl_key_data_le
+0x5b55 mouse_fill_battery_level_le
+0x5b5b mouse_le_send_empty_packet
+0x5b5d mouse_fill_mouse_data_le
+0x5b62 mouse_check_51cmd_adv
+0x5b6b mouse_le_check_adv_flag
+0x5b6c mouse_le_check_adv_flag_loop
+0x5b72 mouse_le_adv_data_update
+0x5b76 mouse_bb_disconnected
+0x5b7b mouse_bb_discon_clear_stack
+0x5b81 mouse4_0_event_bb_disconn
+0x5b85 mouse_bb_event_timer
+0x5b9b mouse_bt_discovery_check
+0x5b9e mouse_bt_discovery_by_pb_button
+0x5ba3 mouse_long_button_bt_discovery
+0x5bab mouse_commbination_key_process
+0x5bb1 mouse_24g_commbination_key_process
+0x5bb4 mouse_commbination_key_start
+0x5bba mouse_commbination_key_up
+0x5bc0 mouse_commbination_key_down
+0x5bc5 mouse_combination_ui_timer
+0x5bce mouse_check_discovery_timeout_timer
+0x5bd1 mouse_check_discovery_timeout
+0x5bd3 mouse_check_direct_timeout_timer
+0x5bd9 mouse_check_direct_timeout
+0x5be1 mouse_le_enable_att_list_timer
+0x5be4 mouse_le_send_smp_security_request_timer
+0x5be9 mouse_le_pairing_sm_start_check
+0x5bee mouse_le_battery_updata_timer
+0x5bf3 mouse_le_battery_level_updata
+0x5bf6 mouse_le_enable_att_list
+0x5bfb mouse_check_reconnect_delay_long_sleep
+0x5bfe mouse_current_mult_update_timer
+0x5c01 mouse_current_mult_reinit
+0x5c05 mouse_check_no_data_timeout_timer
+0x5c08 mouse_check_no_data_timeout
+0x5c0b mouse_no_data_timer_init
+0x5c0e mouse_store_information_delay_timer
+0x5c11 mouse_store_device_info_check
+0x5c15 mouse_bb_event_discovery_btn
+0x5c1a mouse_start_discovery
+0x5c2a mouse_start_discovery_norandom
+0x5c39 mouse_stop_discovery
+0x5c3e mouse_stop_le_adv
+0x5c42 mouse_store_remote_bdaddr
+0x5c48 mouse_unplug_clean_bdaddr
+0x5c4a mouse_check_device_addr
+0x5c4d mouse_check_le_device_addr
+0x5c4f mouse_check_bt_device_addr_common
+0x5c53 mouse_check_device_addr_end
+0x5c59 mouse_before_store_reconn_info
+0x5c62 mouse_store_le_device
+0x5c69 mouse_clean_addr
+0x5c6f mouse_select_reconn_device
+0x5c79 mouse_load_le_device
+0x5c7a mouse_load_le_device_end
+0x5c80 mouse_app_initflag_check
+0x5c85 mouse_app_initflag_check_next
+0x5c8c mouse_load_default_dpi
+0x5c8f mouse_load_device_info
+0x5c94 mouse_otp_load_dpi
+0x5c9c mouse_ble_init_address
+0x5ca3 mouse_store_device_info_delay
+0x5ca6 mouse_store_device_info
+0x5cac mouse_store_dpi_info_check
+0x5cb1 mouse_store_eeprom_device_info
+0x5cb5 mouse_store_eerpom_dpi
+0x5cb9 mouse_store_flash_device_info
+0x5cc0 mouse_store_otp_device_info
+0x5cc3 mouse_write_otp_device_flag
+0x5cc5 mouse_write_otp_device_flag_loop
+0x5ccf mouse_device_flag_store
+0x5cd4 mouse_devoce_flag_store_end
+0x5cd8 mouse_device_flag_store_check
+0x5ce5 mouse_write_otp_device_info
+0x5cea mouse_write_otp_24g_addr
+0x5cec mouse_otp_store_24g_addr_loop
+0x5cf6 mouse_24g_addr_store
+0x5cfe mouse_write_otp_le_device1
+0x5d00 mouse_otp_store_le_addr1_loop
+0x5d0a mouse_le_addr1_store
+0x5d12 mouse_write_otp_le_device2
+0x5d14 mouse_otp_store_le_addr2_loop
+0x5d1e mouse_le_addr2_store
+0x5d26 mouse_write_otp_le_addr_increase_count_info
+0x5d2a mouse_otp_store_le_addr_increase_count_loop
+0x5d34 mouse_le_addr_increase_count_store
+0x5d3c mouse_store_otp_dpi
+0x5d40 mouse_otp_store_dpi_loop
+0x5d4a mouse_otp_dpi_store
+0x5d4f mouse_dpi_store_end
+0x5d53 mouse_dpi_store_last
+0x5d60 mouse_load_eeprom_info_check
+0x5d66 mouse_eeprom_load_recon_info
+0x5d6a mouse_load_eeprom_dpi
+0x5d6e mouse_load_flash_info_check
+0x5d75 mouse_information_flash_parameters
+0x5d7b mouse_spid_flash_release_form_powerdown
+0x5d7c mouse_spid_write_flash_cmd
+0x5d82 mouse_spid_flash_powerdown
+0x5d84 mouse_spid_write_flash_cmd_common
+0x5d90 mouse_flash_erase_sector
+0x5d93 mouse_spid_write_flash
+0x5d9e mouse_flash_power_down
+0x5da6 mouse_load_otp_info_check
+0x5daa mouse_otp_load_app_initflag
+0x5db0 mouse_otp_store_app_initflag
+0x5db4 mouse_read_otp_device_flag
+0x5db6 mouse_read_otp_device_flag_loop
+0x5dc0 mouse_read_otp_device_flag_common
+0x5dc3 mouse_device_flag_load
+0x5dc9 mouse_device_flag_load_last
+0x5dca mouse_device_flag_load_end
+0x5dcc mouse_read_otp_device_info
+0x5dd1 mouse_read_otp_le_device1
+0x5dd3 mouse_read_otp_le_device2
+0x5dd5 mouse_read_otp_le_device1_addr
+0x5dd7 mouse_read_otp_le_device1_addr_loop
+0x5de1 mouse_read_otp_le_addr1_common
+0x5de4 mouse_le_addr1_load
+0x5de7 mouse_read_otp_le_device1_locall_addr
+0x5de9 mouse_read_otp_le_device1_locall_addr_loop
+0x5df3 mouse_read_otp_le_locall_addr1_common
+0x5df6 mouse_le_locall_addr1_load
+0x5df9 mouse_read_otp_le_device2_addr
+0x5dfb mouse_read_otp_le_device2_addr_loop
+0x5e05 mouse_read_otp_le_addr2_common
+0x5e08 mouse_le_addr2_load
+0x5e0b mouse_read_otp_le_device2_locall_addr
+0x5e0d mouse_read_otp_le_device2_locall_addr_loop
+0x5e17 mouse_read_otp_le_locall_addr2_common
+0x5e1a mouse_le_locall_addr2_load
+0x5e1d mouse_read_otp_24g_addr
+0x5e1f mouse_read_otp_24g_addr_loop
+0x5e29 mouse_read_otp_24g_addr_common
+0x5e2c mouse_24g_addr_load
+0x5e2f mouse_read_otp_le_addr_increase_count_info
+0x5e33 mouse_read_otp_le_addr_increase_count_loop
+0x5e3d mouse_read_otp_le_addr_increase_count_common
+0x5e40 mouse_le_addr_increase_count_load
+0x5e43 mouse_read_otp_dpi
+0x5e47 mouse_read_otp_dpi_loop
+0x5e51 mouse_read_otp_dpi_common
+0x5e54 mouse_dpi_load
+0x5e5a mouse_dpi_load_last
+0x5e5b mouse_dpi_load_end
+0x5e5d mouse_idle
+0x5e66 mouse_select_device_check
+0x5e6a mouse_select_device_by_pb_button_check_once
+0x5e6b mouse_select_device_by_pb_button
+0x5e6d mouse_select_device_by_pb_button_check
+0x5e78 mouse_retransmit_select_device_by_pb_button
+0x5e7c mouse_3io6key_pb_button_check_end
+0x5e7e mouse_select_device_by_pb_button_exit
+0x5e81 mouse_pb_button_check
+0x5e8a mouse_select_device_by_pb_button_end
+0x5e8d mouse_pb_button_connect_gnd
+0x5e8f mouse_pb_button_connect_matrix
+0x5e97 mouse_select_device_button_up
+0x5ea2 mouse_select_device_button_down
+0x5eae mouse_select_device_ghost_check
+0x5eb1 mouse_ghost_key_value_check
+0x5eb6 mouse_check_select_device_by_switch
+0x5ebe mouse_select_btdevice
+0x5ec2 mouse_check_select_24g_device
+0x5ec6 mouse_ready_reconnection_by_button
+0x5ecb mouse_store_device_number_before_reset
+0x5ed1 mouse_soft_reset
+0x5ed3 mouse_select_device_number
+0x5eda mouse_select_device_number_24g
+0x5edf mouse_select_device_count_clean_24g
+0x5ee1 mouse_select_device_count_clean_bt
+0x5ee3 mouse_store_device_number2eeprom
+0x5ee7 mouse_bt_button_check
+0x5eea mouse_select_device_enable
+0x5eec mouse_select_device_disable
+0x5eee mouse_bt_cannel_reconn_enable
+0x5ef0 mouse_bt_cannel_reconn_disable
+0x5ef2 mouse_bt_discovery_button_down_enable
+0x5ef4 mouse_bt_discovery_button_down_disable
+0x5ef6 mouse_adc_read_enable
+0x5ef8 mouse_24g_set_250hz
+0x5efa mouse_24g_search_dongle_enable
+0x5efc mouse_16m_enable
+0x5efe mouse_dpi_4level_enable
+0x5f00 mouse_enable_function_flag
+0x5f04 mouse_disable_function_flag
+0x5f08 mouse_customer_key_enable
+0x5f10 mouse_customer_standrad_key_set
+0x5f12 mouse_customer_key_ctrl_alt_a
+0x5f14 mouse_customer_ac_home
+0x5f15 mouse_customer_media_key_set
+0x5f19 mouse_customer_key_play
+0x5f1b mouse_polling_device
+0x5f26 mouse_drawing_optima
+0x5f37 mouse_drawing_optima_init
+0x5f3c mouse_drawing_optima_modify
+0x5f50 mouse_drawing_optima_xy_offset_modify
+0x5f64 mouse_pre_xy_data_judge
+0x5f67 mouse_pre_xy_pdata_offset
+0x5f6a mouse_xy_data_offset_new
+0x5f6c mouse_pre_xy_ndata_offset
+0x5f72 mouse_current_xy_data_judge
+0x5f75 mouse_current_xy_pdata_offset
+0x5f79 mouse_current_xy_ndata_offset
+0x5f7f mouse_pre_xy_get_0_4_times
+0x5f84 mouse_current_xy_get_0_6_times
+0x5f89 mouse_drawing_optima_data_x
+0x5f91 mouse_drawing_optima_data_y
+0x5f99 mouse_drawing_optima_data
+0x5f9f mouse_data_store_pre
+0x5fa3 mouse_data_sum_overflow
+0x5fa7 mouse_data_sum_overflow_p
+0x5faa mouse_data_sum_n
+0x5fb0 mouse_data_set_direction
+0x5fb3 mouse_data_zero
+0x5fb5 mouse_pdata_get_half
+0x5fb7 mouse_pdata_get_new_value
+0x5fbb mouse_pdata_invert
+0x5fbc mouse_rega_in_out
+0x5fbf mouse_disable_asm
+0x5fc1 mouse_enable_asm
+0x5fc3 mouse_pdata_greater_than_check
+0x5fc8 mouse_data_less_than_check
+0x5fcd mouse_data_abs_check
+0x5fd4 mouse_data_abs
+0x5fd8 mouse_data_abs_store
+0x5fda mouse_data_reversal
+0x5fdd mouse_24g_long_sleep_param_update_timer
+0x5fe0 mouse_24g_long_sleep_normal_param
+0x5fe4 mouse_24g_long_sleep_set
+0x5fe9 mouse_24g_long_sleep_set_80ms
+0x5fea mouse_24g_long_sleep_set_end
+0x5fec mouse_24g_long_sleep_set_30ms
+0x5fee mouse_24g_long_sleep_set_50ms
+0x5ff0 mouse_24g_long_sleep_set_100ms
+0x5ff2 mouse_24g_hibernate_set
+0x5ffd mouse_wakeup_24g
+0x6001 mouse_wakeup_24g_from_long_sleep
+0x6004 mouse_wheel_gpio_init
+0x600a mouse_24g_transmit_start
+0x600e mouse_24g_fast_conn_mode_check
+0x6013 mouse_soft_agc_enable
+0x6016 mouse_soft_agc_disable
+0x6018 mouse_24g_stop
+0x601c mouse_24g_start_mode
+0x602a mouse_24g_mode_setup_error
+0x602d mouse_24g_first_start_auto_pair_mode
+0x602f mouse_24g_reconn_general_dongle
+0x6034 mouse_24g_start_auto_pair
+0x6038 mouse_24g_first_start_reconn
+0x603b mouse_24g_first_bluetooth_reconnect
+0x603f mouse_24g_first_bb_event_reconn_timeout
+0x6042 mouse_24g_first_store_reconn_info
+0x6047 mouse_24g_start_pair_mode
+0x6053 mouse_24g_attempt_fail
+0x6059 mouse_24g_attempt_fail_enter_hibernate
+0x605f mouse_24g_fast_conn_attempt_fail
+0x6067 mouse_24g_reconn_dongle_start
+0x606b mouse_24g_auto_pair_attempt_fail
+0x6070 mouse_reconn_dongle_attempt_fail
+0x6075 mouse_24g_attempt_success
+0x6084 mouse_24g_pairing_complete
+0x6086 mouse_24g_pairing_complete_common
+0x6094 mouse_24g_short_sleep_clear_wake
+0x6096 mouse_24g_package_data
+0x60a1 mouse_24g_mouse_package_data
+0x60b0 mouse_24g_mouse_package_data_now
+0x60b6 mouse_24g_keyboard_package_data
+0x60bc mouse_customer_key_press
+0x60be mouse_24g_search_dongle_init
+0x60c1 mouse_24g_search_dongle
+0x60cd mouse_24g_search_dongle_loop
+0x60d9 mouse_24g_search_dongle_loop_end
+0x60df mouse_24g_search_dongle_loop_retry
+0x60e1 mouse_24g_search_dongle_check
+0x60e9 mouse_24g_search_dongle_success
+0x60f2 mouse_g24_ackpayload_parse
+0x60f9 mouse_g24_retransmit
+0x60fe mouse_select_device_by_dpi_button_once
+0x6103 mouse_g24_retransmit_100ms_timer_init
+0x6106 mouse_dpi_check_once
+0x6109 mouse_24g_before_lpm_sleep
+0x610d mouse_peripheral_clock_off
+0x6110 mouse_logo_led_on_timer
+0x611a mouse_logo_led_off
+0x611c mouse_logo_led_on
+0x611e mouse_dpi_led_blink_delay_timer
+0x6121 mouse_dpi_led_blink_init
+0x6127 mouse_dpi_led_blink_init_next
+0x612d mouse_multi_dpi_led_blink_enable
+0x6131 mouse_dpi_led_blink_init_another
+0x6134 mouse_dpi_led_blink_init_level_4
+0x6138 mouse_dpi_led_blink_count_clean
+0x613a mouse_dpi_led_blink_delay
+0x6148 mouse_check_dpi_blink
+0x614d mouse_low_voltage_led_timer
+0x615c mouse_low_led_blink_timer
+0x6165 mouse_low_voltage_led_on_judge
+0x6168 mouse_low_voltage_led_on
+0x616a mouse_low_led_timer_count_clean
+0x616e mouse_low_voltage_led_off_judge
+0x6171 mouse_low_voltage_led_off
+0x6173 mouse_low_led_blink_count_init_judge
+0x6177 mouse_device_multi_led_parm_init
+0x617e mouse_multi_low_led_blink_count_init
+0x6181 mouse_multi_led_blink_timer_init
+0x6185 mouse_multi_dpi_led_blink_timer_init
+0x6186 mouse_store_multi_led_blink_timer
+0x6188 mouse_device_24g_led_blink_timer_init
+0x618a mouse_device_le_discovery_led_blink_timer_init
+0x618c mouse_device_le_reconn_led_blink_timer_init
+0x618e mouse_device_poweron_led_config
+0x6192 mouse_multi_led_enable
+0x6195 mouse_device_24g_pair_led_config
+0x619f mouse_device_le_reconn_led_config
+0x61a9 mouse_device_led_blink_count_init
+0x61ab mouse_device_discovery_led_config
+0x61ae mouse_multi_led_blink_enable_init
+0x61b1 mouse_led_multi_timer
+0x61b5 mouse_device_multi_led_type_on
+0x61ba mouse_device_poweron_led_off
+0x61bd mouse_multi_led_type_blink
+0x61c2 mouse_device_led_blink_judge
+0x61c5 mouse_device_led_blink_limit
+0x61c7 mouse_multi_led_type_blink_next
+0x61ca mouse_multi_led_type_blink_start
+0x61ce mouse_multi_led_blink
+0x61d2 mouse_multi_led_blink_count_decrease
+0x61d6 mouse_multi_led_on_judge
+0x61d8 mouse_device_multi_led_on
+0x61d9 mouse_device_led_on
+0x61df mouse_device_24g_led_on
+0x61e1 mouse_device_bt1_led_on
+0x61e3 mouse_device_bt2_led_on
+0x61e4 mouse_led_on
+0x61e5 mouse_led_off
+0x61e6 mouse_multi_led_off_judge
+0x61e8 mouse_multi_led_off_judge_next
+0x61ea mouse_device_multi_led_off
+0x61eb mouse_device_led_off
+0x61f1 mouse_device_24g_led_off
+0x61f5 mouse_device_bt1_led_off
+0x61f9 mouse_device_bt2_led_off
+0x61fd mouse_device_multi_led_all_off
+0x6202 mouse_multi_dpi_led_off_judge
+0x6206 mouse_multi_dpi_led_off
+0x6208 mouse_multi_dpi_led_on_judge
+0x620c mouse_multi_dpi_led_on
+0x620e mouse_low_voltage_led_no_enter_lpm
+0x6214 mouse_low_voltage_led_no_enter_lpm_next
+0x6218 g24_transmit_by_interrupt_exit_check
+0x621b mouse_lpm_mode_clear
+0x621f mouse_store_signal_rssi
+0x6221 mouse_le_transmit
+0x6223 mouse_le_set_lpm_mult
+0x6228 mouse_set_lpm_mult
+0x622b mouse_24g_long_sleep
+0x6235 mouse_24g_short_sleep
+0x6242 mouse_24g_short_sleep_notify
+0x624c mouse_24g_short_sleep2
+0x624f mouse_24g_short_sleep3
+0x6252 mouse_24g_short_sleep_default
+0x6255 mouse_24g_short_sleep_long
+0x6259 mouse_24g_miss_temp_clear
+0x625c mouse_24g_short_sleep_last_miss
+0x6260 mouse_24g_short_sleep_2
+0x6262 mouse_24g_transmit_callback
+0x6264 mouse_24g_send_time_check
+0x6274 mouse_24g_send_time_check_1
+0x627e mouse_24g_send_time_check_average
+0x6299 mouse_24g_send_time_check_average_late
+0x62a4 mouse_24g_send_time_check_average_min
+0x62a6 mouse_24g_send_timer_first
+0x62aa mouse_24g_send_time_long_wake
+0x62ae shutter_init
+0x62bd shutter_power_switch
+0x62c2 shutter_common_init
+0x62d0 shutter_hart_swtich_power_on
+0x62d3 shutter_le_scale_lpm_lock
+0x62d9 shutter_process_bb_event
+0x62e2 ble_shutter_process_baseband_connect
+0x62e6 ble_shutter_process_baseband_disconnect
+0x62e9 ble_shutter_process_reconnect_complete
+0x62ef ble_shutter_process_parse_connect_parameter_update_response
+0x62f5 shutter_process_soft_swtich_button_down
+0x62fb shutter_store_currenct_led_state
+0x6300 shutter_process_soft_swtich_button_up
+0x6305 shutter_load_currenct_led_state
+0x630e shutter_le_bb_event_timer
+0x6311 shutter_check_sleep_timer
+0x6314 shutter_sleep_timeout
+0x6318 shutter_check_power_off_timer
+0x631b shutter_check_power_off_timeout
+0x6322 ble_shutter_reconn_timer
+0x6327 shutter_process_idle
+0x6329 shutter_process_lpm_before
+0x632b shutter_le_before_hibernate
+0x632d shutter_stop_bluetooth_discovery
+0x632d ble_shutter_stop_bluetooth_discovery
+0x6331 shutter_start_bluetooth_discovery
+0x6333 ble_shutter_start_discovery
+0x6340 shutter_soft_swtich_power_on
+0x6340 shutter_start_reconnect
+0x6342 ble_shutter_start_reconnect
+0x634e shutter_disconnect_current_connection
+0x6351 shutter_check_data_enable
+0x6355 shutter_check_ble_data_enable
+0x6358 shutter_check_bluetooth_conn
+0x635c shutter_change_bluetooth_status_bt_disconn
+0x635c ble_shutter_change_bluetooth_status_bt_disconn
+0x635d shutter_check_send_data
+0x6365 shutter_key_change
+0x6369 shutter_key_press
+0x636c shutter_key_release
+0x636e push_queue_press_or_release
+0x6371 push_buffer_in_queue
+0x6376 shutter_send_data_to_master
+0x6379 pop_queue_to_ble_data
+0x6382 queue_push_one_byte
+0x6385 queue_pop_one_byte
+0x638a ble_shutter_receive_data
+0x638d shutter_init_param
+0x6396 shutter_load_buffer_config_form_datarom
+0x639a shutter_soft_swtich_power_off
+0x639e shutter_wait_power_off
+0x63a1 ui_soft_swtich_init
+0x63a6 ui_soft_switch_first_power_on
+0x63aa ui_soft_swtich_init_next
+0x63ad ui_soft_swtich_init_power_on_time
+0x63b2 ui_soft_switch_botton_up
+0x63b6 ui_soft_switch_botton_long_press
+0x63b9 ui_soft_switch_power_on
+0x63c1 ui_soft_switch_power_off
+0x63c7 shutter_ble_adv_interval_set
+0x63cb le_send_notify_from_list
+0x63d3 shutter_le_uuid_table_conf
+0x63d6 shutter_dy_le_uuid_table_conf
+0x63d9 shutter_default_init
+0x6442 shutter_dy_6_key_conf
+0x6448 shutter_dy_7_key_conf
+0x644e shutter_dy_8_key_conf
+0x6454 shutter_dy_key_conf
+0x6459 shutter_dy_adv_conf
+0x646e shutter_dy_init
+0x6484 shutter_dy_process_idle
+0x648e shutter_dy_iphone_every_move_max_set
+0x649b shutter_dy_shutter_send_data_to_master
+0x64a0 shutter_dy_pop_queue_to_ble_data
+0x64ac shutter_dy_pop_queue_to_ble_data2
+0x64b5 shutter_dy_le_bb_event_timer
+0x64bc shutter_dy_iphone_move_mid_timer
+0x64bf shutter_dy_iphone_move_mid_timeout
+0x64c3 shutter_dy_iphone_move_mid
+0x64cd shutter_dy_android_like_loaction_mid
+0x64cf shutter_dy_iphone_up_mid
+0x64d1 shutter_dy_iphone_like_mid
+0x64d3 shutter_dy_clear_key_state_timer
+0x64d6 shutter_dy_clear_key_state_timeout
+0x64d9 shutter_dy_check_power_off_timer
+0x64dc shutter_dy_check_power_off_timeout
+0x64df shutter_dy_process_bb_event
+0x64e6 ble_shutter_dy_pairing_success
+0x64ef ble_shutter_dy_process_baseband_disconnect
+0x64f4 ble_shutter_dy_process_baseband_connect
+0x64f8 shutter_dy_check_send_data
+0x6500 shutter_dy_over_clear
+0x6502 shutter_dy_key_value_filter
+0x6505 shutter_dy_key_change
+0x6509 shutter_dy_key_press
+0x650c shutter_dy_key_press_next
+0x651c shutter_dy_page_set
+0x651f shutter_dy_move_set
+0x6524 shutter_dy_key_move_to_specify_location
+0x6526 shutter_dy_iphone_check_move_mid
+0x652c shutter_dy_key_press_clk
+0x6537 shutter_dy_shutter_key_release
+0x653a shutter_dy_shutter_key_release_time
+0x654b shutter_dy_key_release_led
+0x654e shutter_dy_push_queue_release
+0x6551 shutter_dy_push_queue_release1
+0x6554 shutter_dy_push_queue_release1_next
+0x655a shutter_dy_push_queue_press_or_release
+0x655d shutter_dy_move_mode_queue_release
+0x6561 shutter_dy_jude_queue_size
+0x6566 shutter_dy_push_queue_long_release
+0x656b shutter_clear_dy_key_state
+0x656e shutter_dy_keyscan_key_process
+0x6577 shutter_dy_keyscan_key_check_release_loop
+0x658b shutter_dy_keyscan_key_check_long_press
+0x65a2 shutter_dy_key_long_press_set_key_normal
+0x65a5 shutter_dy_key_long_press_set_move_trigger
+0x65ad shutter_dy_move_mode_disable
+0x65af shutter_dy_long_press_android_or_ios
+0x65b4 shutter_dy_keyscan_key_check_release
+0x65be shutter_dy_keyscan_key_process_next
+0x65cf shutter_dy_skip_check_combine_key
+0x65d5 shutter_dy_single_key_led
+0x65dc shutter_dy_check_combine_key
+0x65dd shutter_dy_check_combine_key_loop
+0x65e8 shutter_dy_check_combine_key_parse
+0x65f0 shutter_dy_push_buffer_in_queue
+0x65f4 shutter_dy_move_to_specify_location
+0x65ff shutter_dy_move_down_left_corner_count_set
+0x6609 shutter_dy_move_down_left_corner
+0x660d shutter_dy_move_down_left_corner_loop
+0x6614 shutter_dy_move_x_max
+0x6617 shutter_dy_move_x_max_number
+0x661e shutter_dy_move_y_max
+0x6621 shutter_dy_move_y_max_number
+0x6628 shutter_dy_check_combine_key_release
+0x6633 shutter_dy_combine_key_enableuser
+0x6636 shutter_dy_check_combine_key_release_all
+0x6642 shutter_dy_check_move_data
+0x6647 shutter_dy_check_move_data_single_key
+0x664d shutter_dy_check_move_data_combine_key
+0x6654 shutter_dy_get_move_data
+0x665e shutter_dy_get_move_data_iphone
+0x666b shutter_dy_move_x_empty_check
+0x6671 shutter_dy_every_move_size_set
+0x6676 shutter_dy_move_left
+0x667c shutter_dy_move_store_x
+0x667d shutter_dy_move_data_store
+0x6685 shutter_dy_move_x_check_max
+0x6690 shutter_dy_clear_move_x
+0x6693 shutter_dy_move_right
+0x6697 shutter_dy_move_right_next
+0x669b shutter_dy_move_up
+0x669f shutter_dy_move_y_check_max
+0x66af shutter_dy_clear_move_y
+0x66b0 shutter_dy_android_move_y_empty_check
+0x66b2 shutter_dy_move_y_empty_check
+0x66bc shutter_dy_move_store_y
+0x66be shutter_dy_move_down
+0x66c0 shutter_dy_move_down_next
+0x66c5 ble_shutter_dy_receive_data
+0x66c8 shutter_dy_le_find_service_hand_by_uuid
+0x66d5 shutter_dy_le_parse_att
+0x66de shutter_dy_le_parse_att_read_blob_request
+0x66e9 shutter_dy_le_parse_att_read_blob_request_ios
+0x66ea shutter_dy_le_parse_att_read_blob_request2
+0x66f4 shutter_dy_le_parse_att_read_request
+0x66f8 shutter_dy_le_send_att_read_response_check_auth
+0x66fe shutter_dy_le_send_att_read_response
+0x6704 shutter_dy_le_parse_att_find_by_type_value_rsp
+0x6704 shutter_dy_le_remote_iphone
+0x671e shutter_dy_iphone_move_initial_set
+0x6725 shutter_dy_le_parse_error_rsp
+0x6729 shutter_dy_remote_not_iphone
+0x672e shutter_dy_not_iphone_read_conf
+0x6730 shutter_dy_check_iphone
+0x6732 shutter_dy_le_get_press_ptr
+0x6738 shutter_dy_le_get_release_ptr
+0x6738 shutter_dy_le_get_release_ptr_set
+0x6740 shutter_dy_le_get_release_ptr_volume
+0x6747 shutter_dy_le_get_release_ptr_set_volume_dec
+0x6749 shutter_dy_le_get_release_ptr_set_volume_inc
+0x674b shutter_dy_le_get_vol_inc_ptr
+0x6750 shutter_dy_le_get_vol_dec_ptr
+0x6755 shutter_dy_long_key_function
+0x675a shutter_dy_long_key_volume_timer
+0x675d shutter_dy_long_key_volume_timeout
+0x6761 shutter_dy_loop_send_volume_inc_page
+0x6765 shutter_dy_loop_send_volume_dec_page
+0x6769 shutter_dy_clear_volume_timer
+0x676c shutter_dy_link_key_loop_timer
+0x676f shutter_dy_link_key_loop_timeout
+0x6772 shutter_dy_link_data_android_or_ios
+0x6777 shutter_dy_link_key_long_press
+0x677c shutter_dy_clear_link_key_timer
+0x677f shutter_dy_jude_clear_move_config
+0x6783 shutter_dy_clear_move_config
+0x6786 shutter_dy_write_otp_convert_data
+0x678a shutter_dy_read_otp_convert_data
+0x678e shutter_dy_store_ios_config_data
+0x67a0 shutter_dy_store_android_config
+0x67a7 shutter_dy_get_ios_config
+0x67b9 shutter_dy_get_android_config
+0x67be shutter_dy_store_move_config_info
+0x67bf shutter_dy_load_move_config_info
+0x67c0 shutter_dy_shutter_uart_config_loop
+0x67cb shutter_dy_shutter_get_first_read_addr
+0x67cf shutter_dy_shutter_next_read_addr
+0x67d3 shutter_dy_shutter_last_read_addr
+0x67d7 shutter_dy_shutter_read_ios_android_addr
+0x67e2 shutter_dy_update_read_check_addr
+0x67e6 shutter_dy_campare_otp_data
+0x67f6 shutter_dy_set_shutter_valid_data_flag
+0x67fa shutter_dy_shutter_judge_ios_or_android
+0x6806 shutter_dy_shutter_not_find_ios_or_android
+0x680b shutter_dy_shutter_android_save_init_loaction
+0x6812 shutter_dy_shutter_ios_save_init_loaction
+0x6821 shutter_dy_clear_temp_count
+0x6823 shutter_dy_campare_effective_addr_read_otp
+0x683c shutter_dy_campare_effective_addr_write_otp
+0x684f shutter_dy_shutter_read_move_config_from_otp_addr
+0x6854 shutter_dy_shutter_write_move_config_to_otp_addr
+0x6858 shutter_dy_shutter_1s_timer
+0x685b p_crc16_ccitt_false
+0x685c p_crc16_ccitt_false_loop
+0x6860 p_crc16_for_byte
+0x6862 p_crc16_for_byte_loop
+0x6867 p_crc16_for_byte_continue
+0x686c rf_debug_rx_gpio_low
+0x686d rf_debug_gpio_low
+0x686f rf_debug_rx_on_line
+0x686f rf_debug_rx_gpio_high
+0x6870 rf_debug_gpio_high
+0x6872 rf_debug_rx_gpio_h_l_h
+0x6873 rf_debug_rx_gpio_l_h
+0x6875 rf_debug_rx_gpio_l_h_l
+0x6875 rf_debug_shutdown_radio_line
+0x6876 rf_debug_rx_crc_line
+0x6877 rf_debug_rx_sync_line
+0x6878 rf_debug_rx_crc_fail_line
+0x687a rf_debug_rx_crc_error_line
+0x687a rf_debug_rx_sync_timeout_line
+0x687b rf_debug_tx_off_line
+0x687b rf_debug_tx_gpio_low
+0x687d rf_debug_tx_on_line
+0x687d rf_debug_tx_gpio_high
+0x687f rf_debug_tx_gpio_l_h_l
+0x6882 hci_init
+0x688b hci_process_loop
+0x688d hci_init_clksel_xtal
+0x688f hci_init_uart_default_config
+0x6893 hci_init_uart_default_config_tx
+0x6897 hci_init_uart_default_config_rx
+0x689b hci_init_uart_default_config_rts
+0x689f hci_init_uart_default_config_cts
+0x68a3 hci_init_uart_config
+0x68bf hci_init_pwm_default_config
+0x68c3 hci_init_pwm
+0x68ce hci_process_check_uart_rx
+0x68d6 hci_parse_packet_cmd
+0x68e4 hci_parse_complete_packet
+0x68e7 hci_parse_packet_cmd_ogf_vendorspecific_debug
+0x68f2 phci_grp_vendor_chipid
+0x68f7 phci_grp_vendor_baud
+0x68fa phci_grp_vendor_patch_common
+0x6905 phci_grp_vendor_patch
+0x6906 phci_grp_vendor_patch_loop
+0x690a phci_grp_vendor_patch_check_sum
+0x690f phci_grp_vendor_done
+0x6912 phci_grp_vendor_done_loop
+0x691e phci_grp_vendor_patch_bad
+0x6920 phci_grp_vendor_mem
+0x6926 phci_grp_vendor_flow_control
+0x692a hci_normal_reply
+0x692b hci_send_event_command_complete_error_command_nuknown
+0x692d hci_send_event_command_complete_error_command_disallowed
+0x692f hci_send_event_command_complete_without_payload
+0x6932 hci_send_event_command_complete
+0x693b hci_prepare_send_event
+0x693f hci_drop_current_packet
+0x6944 cmd_exit
+0x6946 l2cap_init
+0x694b l2cap_init_wake
+0x694c check_l2cap_map
+0x694e check_l2cap_map_loop
+0x6953 check_l2cap_map_used
+0x6957 check_l2cap_map_used2
+0x6959 ble_l2cap_malloc
+0x695d host_l2cap_malloc
+0x6962 host_l2cap_malloc_loop
+0x696a host_l2cap_malloc_next_buffer
+0x696e host_l2cap_malloc_succ
+0x6971 host_l2cap_malloc_check_buffer_enough
+0x6975 host_l2cap_malloc_check_buffer_enough_loop
+0x6982 host_l2cap_malloc_check_buffer_enough_end
+0x6987 host_l2cap_malloc_into_fifo
+0x6990 host_l2cap_malloc_into_fifo_no_push
+0x6993 l2cap_malloc_fifo_out
+0x6998 l2cap_malloc_free
+0x699f l2cap_malloc_discard
+0x69a9 l2cap_malloc_is_fifo_full
+0x69ac l2cap_malloc_is_fifo_nearly_full
+0x69af l2cap_malloc_is_fifo_empty
+0x69b2 l2cap_malloc_fifo_get_first_ptr
+0x69b5 l2cap_malloc_free_loop
+0x69b7 l2cap_malloc_fifo_get_first_ptr_empty
+0x69b9 l2cap_malloc_get_full_map
+0x69bd l2cap_malloc_get_full_map_loop
+0x69c3 l2cap_lpm_get_wake_lock
+0x69c5 l2cap_lpm_put_wake_lock
+0x69c7 twspi_reset
+0x69cf twspi_reset_next
+0x69d9 twspi_reset_ext
+0x69dc twspi_disable
+0x69e0 twspi_enable
+0x69e4 twspi_write
+0x69e5 twspi_read
+0x69e6 aes_disable
+0x69ea read_function_aes
+0x69ee read_function
+0x69f1 read_fuction_zero
+0x69f3 get_block_header
+0x69f4 get_block_header0
+0x69fc read_first_block
+0x6a01 read_first_block_cont
+0x6a04 get_iv
+0x6a08 set_iv
+0x6a0e load_aes_reinit
+0x6a11 load_storage
+0x6a1e load_storage_loop
+0x6a25 load_data_checksum_calc
+0x6a2e load_data_checksum_compare
+0x6a3c load_data_checksum_ok
+0x6a3e load_data_checksum_compare_fail
+0x6a40 loadcode_lock_load_ucode
+0x6a44 loadcode_lock
+0x6a4b loadcode_set_lock
+0x6a53 load_otp_hv_vsel
+0x6a59 loadcode_load_key
+0x6a68 loadcode
+0x6a72 loadcode_bistwait
+0x6a78 loadcode_nobist
+0x6a7b loadcode_otp
+0x6a8f loadcode_unenc
+0x6a91 loadcode_otp_loop
+0x6a9c loadcode_otp_end
+0x6a9e loadcode_iic_loop
+0x6aaa run_otp_code
+0x6aad loadcode_check_otp_lock
+0x6ab2 loadcode_otp_lock
+0x6ab4 loadcode_iic_eeprom_2k
+0x6abd loadcode_spi
+0x6abe loadcode_spi_loop
+0x6acd loadcode_hci
+0x6ad1 clear_key_buf
+0x6ad7 iicd_load_gpio_init
+0x6adb iicd_load_default_gpio
+0x6adf loadcode_iic_by_eeprom
+0x6ae5 loadcode_timeout
+0x6aeb loadcode_error_delay
+0x6af1 loadcode_error
+0x6af5 set_bistfix
+0x6afa set_bistfix_loop
+0x6b00 set_ucode_status
+0x6b07 decrypt_code
+0x6b0a decrypt_code_loop
+0x6b0d decrypt_code_skip
+0x6b11 load_ucode
+0x6b19 load_ucode_loop
+0x6b1e otp_load_code
+0x6b2b otp_enable_chgpump25
+0x6b34 otp_enable_chgpump65
+0x6b37 disable_otp
+0x6b38 otp_disable_chgpump
+0x6b3a enable_otp_read
+0x6b3b otp_reset
+0x6b41 otp_set_addr
+0x6b45 otp_write
+0x6b49 otp_program
+0x6b4c otp_program_bit
+0x6b6c otp_skip_0
+0x6b74 otp_read_data
+0x6b75 otp_read_data1
+0x6b7a otp_read_data_loop
+0x6b83 otp_read_noinc
+0x6b89 otp_read_unenc
+0x6b8d app_lpm_lock_check
+0x6b99 app_lpm_mesh_lock
+0x6b9d app_lpm_kb_lock
+0x6b9e app_lpm_module_lock
+0x6b9e app_lpm_hciboot_lock
+0x6b9f app_lpm_dongle_lock
+0x6ba3 app_lpm_mouse_lock
+0x6ba7 app_lpm_shutter_lock
+0x6bab app_lpm_car_lock
+0x6bae app_lpm_lock_mesh
+0x6bb1 app_lpm_car_lock_application_and_ble
+0x6bb7 app_mpu_s0_lock
+0x6bba app_lpm_mpu_lock_ble
+0x6bbc app_mpu_s1_lock
+0x6bbf app_lpm_mpu_lock_24g
+0x6bc2 app_lpm_mpu_lock_24g_ble
+0x6bc6 spid_init
+0x6bc7 spid_init_common
+0x6bd0 spid_write_reg
+0x6bd7 spid_read_reg
+0x6bd8 spid_read_regs
+0x6be0 wait_spid_done
+0x6be4 flash_write
+0x6beb flash_write_spi_sm_timer
+0x6bf2 spid_flash_write_start
+0x6bf8 spid_flash_erase_sector
+0x6c00 spid_flash_wait_erase_sector
+0x6c04 spid_flash_write_data
+0x6c0b spid_flash_wait_write_data
+0x6c13 spid_flash_data_recover
+0x6c15 spid_flash_data_recover_comm
+0x6c18 spid_flash_data_preserve
+0x6c20 spid_init_flash
+0x6c26 spid_unlock_flash
+0x6c27 spid_sendcmd_common
+0x6c2f spid_flash_release_form_powerdown
+0x6c31 spid_flash_powerdown
+0x6c33 spid_write_flash_data
+0x6c3c spid_write_flash
+0x6c40 spid_write_flash_common
+0x6c4d spid_read_flash
+0x6c5f spid_read_flash_wait
+0x6c63 wait_spid_flash_done
+0x6c6c spid_load_flash
+0x6c79 spi_load_flash_wait
+0x6c8b spi_gpio_init
+0x6c90 spi_pin_set
+0x6c9c spi_gpio_default_init
+0x6ca3 soft_reset_chip
+0x6ca5 iic_init_600khz
+0x6cad iic_init_360khz
+0x6cb5 iicd_init_pin
+0x6cb6 iicd_init_pin_scl_sda
+0x6cbc iicd_read_init_pin
+0x6cbe wait_iicd_done
+0x6cc1 set_eeprom_size_2k
+0x6cc4 clear_eeprom_size_2k
+0x6cc7 iicd_read_eep_data_size_2k
+0x6ccb iicd_read_eep_size_2k_lcadcode
+0x6cce iicd_read_eep_size_2k
+0x6cd3 iicd_write_protect_eep_data
+0x6cd8 iicd_eeprom_write_enable
+0x6cdd iicd_wp_gpio_output_low
+0x6cdf iicd_eeprom_write_disable
+0x6ce1 iicd_read_eep_data
+0x6ce7 iicd_read_eep
+0x6ced iicd_read_eep_common
+0x6cfc iicd_inc_addr
+0x6d02 iicd_read_eep_load_code_size_2k
+0x6d07 iicd_write_eep_data
+0x6d0d iicd_write_eep_loop
+0x6d1c iicd_eep_transparency
+0x6d2e iicd_eep_deal_short_packet
+0x6d33 iicd_write_eep_size_2k
+0x6d3d iicd_write_eep
+0x6d4a iicd_write_eep_common
+0x6d51 iic_check_eeprom_standby
+0x6d53 iic_check_eeprom_standby_wait
+0x6d68 uarta_init_dma_mem
+0x6d6a uart_init_dma_mem
+0x6d73 uarta_init_baud_rate
+0x6d75 uarta_calc_baud_rate_config
+0x6d77 uart_calc_baud_rate_config
+0x6d7c uart_calc_baud_rate_config_choice_uart_clock
+0x6d80 uart_calc_baud_rate_config_choice_uart_clock_crystal
+0x6d82 uart_clock_select_main_freq_crystal
+0x6d86 uart_clock_select_main_freq_dpll
+0x6d8a uarta_init_tx
+0x6d8e uarta_init_rx
+0x6d92 uarta_prepare_tx
+0x6d96 uarta_prepare_rx
+0x6d9a uarta_send
+0x6d9c uarta_rxdone
+0x6d9e uarta_clear_current_rx
+0x6da2 uarta_prepare_tx_register_push
+0x6da4 uarta_send_register_pop
+0x6da6 uart_register_push
+0x6daa uart_register_pop
+0x6dae wait_uarttx
+0x6db1 uart_copy_tx_bytes_fast
+0x6db3 uart_copy_tx_bytes_fast_loop
+0x6db8 uart_copy_tx_bytes_fast_loop_four
+0x6dbe uart_tx_8_bytes
+0x6dc1 uart_tx_4_bytes
+0x6dc4 uart_copy_tx_bytes
+0x6dc6 uart_copy_tx_bytes_loop
+0x6dca uart_copy_rx_bytes_fast
+0x6dcc uart_copy_rx_bytes_fast_loop
+0x6dd1 uart_copy_rx_bytes_fast_loop_four
+0x6dd7 uart_rx_8_bytes
+0x6dda uart_rx_4_bytes
+0x6ddd uart_copy_rx_bytes
+0x6ddf uart_copy_rx_bytes_loop
+0x6de3 app_store_nvram_event
+0x6de5 check_51cmd_update_device_record
+0x6dec write_device_record
+0x6df0 write_device_loop_find
+0x6dfc write_device_loop_find0
+0x6e00 set_index_finded_device
+0x6e05 set_index_find_device_master_addr
+0x6e0a store_rec_data_common
+0x6e0d set_index_finded_device_ble_mode
+0x6e11 set_index_finded_device_irk
+0x6e13 store_ble_rec_data_common
+0x6e15 set_index_finded_device_ediv
+0x6e18 nvram_find_addr_from_bd_list
+0x6e1f find_addr_from_bd_list_ble_mode
+0x6e27 find_addr_from_bd_list_static_addr
+0x6e2b find_addr_from_bd_list_static_addr_reconnect
+0x6e2e find_addr_from_bd_list_static_addr_sc_or_legacy
+0x6e2e find_addr_from_bd_list_random_non_resolvable_private_address_sc_or_legacy
+0x6e31 find_addr_from_bd_list_static_addr_sc
+0x6e31 find_addr_from_bd_list_random_non_resolvable_private_address_sc
+0x6e34 find_addr_from_bd_list_public_device_addr
+0x6e37 find_addr_from_bd_list_random_non_resolvable_private_address
+0x6e39 find_addr_from_bd_list_random_addr
+0x6e3b find_addr_from_bd_list_common
+0x6e43 nvram_find_addr_from_list
+0x6e53 nvram_find_addr_from_list_compare
+0x6e55 find_master_addr_from_list_compare
+0x6e5a find_addr_from_list_compare_ble_mode
+0x6e5d find_irk_form_list_compare
+0x6e6f genernate_master_macaddress
+0x6e78 find_ediv_form_list_compare
+0x6e87 check_nvram
+0x6e8d init_device_list
+0x6e91 init_device_list_loop
+0x6e96 load_device_list_mode_4
+0x6ea1 clear_ltk_exists
+0x6ea3 eeprom_store_le_reconn_info
+0x6ea5 eeprom_store_reconn_info
+0x6ea9 get_gpio_wakeup_index
+0x6eb2 gpio_set_wake_by_current_state
+0x6eb6 gpio_set_wake
+0x6ebd gpio_set_wake_high
+0x6ec1 gpio_set_wake_low4bit
+0x6ec6 gpio_set_low_pullup
+0x6ece gpio_set_low_pullup_low4bit
+0x6ed3 gpio_clr_wake
+0x6edb gpio_config_input_nowake
+0x6edd gpio_config_input
+0x6ee0 gpio_config_input_without_wake
+0x6ee6 gpio_get_bit
+0x6ef1 gpio_get_bit_reverse
+0x6ef3 gpio_out_inactive
+0x6ef7 gpio_config_output
+0x6ef7 gpio_out_active
+0x6efa gpio_out_flag
+0x6efd gpio_out
+0x6f02 gpio_check_active
+0x6f09 gpio_check_active_high
+0x6f0b gpio_set_analog
+0x6f0d gpio_write
+0x6f0f gpio_set_high_impedance
+0x6f14 gpio_addr
+0x6f18 gpio_addr_next
+0x6f1a gpio_addr_ext
+0x6f1d gpio_config_param
+0x6f20 gpio_config_function
+0x6f21 gpio_config_function_int
+0x6f25 gpio_config_function_int_next
+0x6f28 gpio_config_function_int_ext
+0x6f2b gpio_get_config
+0x6f2f gpio_get_config_next
+0x6f32 gpio_get_config_ext
+0x6f35 gpio_set_before_lpm
+0x6f37 setgpio_loop
+0x6f41 setgpio_loop_end
+0x6f45 gpio_set_before_lpm_ext
+0x6f48 setgpio_pullup
+0x6f4b setgpio_pulldown
+0x6f4e sadc_calibration
+0x6f57 sadc_cal_read
+0x6f5a sadc_cal_read_loop
+0x6f63 sadc_cal_write
+0x6f69 sadc_cal_write_loop
+0x6f74 adc_init_data
+0x6f79 adc_init_cal_data_default
+0x6f82 enable_adc
+0x6f90 sadc_channel
+0x6f97 sadc_read
+0x6f98 sadc_read_wait
+0x6f9d sadc_read_wait2
+0x6fa1 sadc_dma
+0x6fb0 vdd_calculate_by_mode
+0x6fb5 vdd_calculate_hvin
+0x6fbb vdd_calculate_io
+0x6fc0 vdd_calculate
+0x6fc9 vdd_calculate2
+0x6fcd vdd_calculate1
+0x6fd7 adc_bat_percent_lowpower_out
+0x6fe7 adc_set_low_power_flag
+0x6feb adc_clear_low_power_flag
+0x6fef adc_set_no_power_flag
+0x6ff3 adc_clear_no_power_flag
+0x6ff7 keyscan_key_init
+0x6ff9 keyscan_key_init_next
+0x6ffe keyscan_key_init_lp1
+0x7002 keyscan_key_init_end
+0x7003 keyscan_scan_key
+0x7009 keyscan_scan_key_lp1
+0x7014 keyscan_scan_key_lp1_next
+0x701b keyscan_process_lpm_before
+0x701d keyscan_process_lpm_before_next
+0x7022 keyscan_process_lpm_before_lp1
+0x7026 keyscan_process_lpm_before_end
+0x7027 keyscan_key_process
+0x7032 keyscan_key_process_next
+0x703b keyscan_key_lp1
+0x7047 keyscan_key_lp1_next
+0x7050 keyscan_send_key_data
+0x7055 pwm_init
+0x705b delay_nop100
+0x705d pwm_clk_set
+0x7060 pwm_12m_clk_set
+0x7062 pwm_24m_clk_set
+0x7064 pwm_33k_clk_set
+0x7066 pwm_out_set
+0x707a pwm_duty_cycle_set
+0x707d pwm_autoload_set
+0x7086 delay_1clk_of_33k
+0x7088 pwm_duty_cycle_set_without_autoload
+0x7091 pwm_enable_in_syncmode
+0x709c pwm_disable_in_syncmode
+0x70a9 pwm_syncmode_set
+0x70aa pwm_syncmode_set_process
+0x70af pwm_init_bit_set
+0x70b0 pwm_init_bit_set_process
+0x70b5 pwm_gpio_select
+0x70b6 pwm_gpio_select_process
+0x70ba pwm_enable
+0x70bd pwm_disable
+0x70c0 pwm_set_select
+0x70c5 pwm_select_channel
+0x70c8 wdt_init_config
+0x70d5 wdt_set_enable
+0x70d7 wdt_set_disable
+0x70d9 wdt_init_set
+0x70dd nec61212_init
+0x70de nec_init_config
+0x70e2 nec_check_rxbuff_size
+0x70e4 nec_prepare_read
+0x70e8 nec_read_done
+0x70ea nec_parse_nec61212
+0x7105 nec_parse_nec61212_data
+0x7111 nec_parse_nec61212_error_data
+0x7116 nec_parse_nec61212_add_bit1
+0x7117 nec_parse_nec61212_add_bit0
+0x711a nec_parse_nec61212_check_repeat_data
+0x7125 nec_parse_nec61212_check_stop_bit
+0x712c nec_parse_nec61212_check_timeout
+0x7131 nec_parse_nec61212_check_timeout_cb
+0x7135 nec_check_pulse_range_legal_default_deviation
+0x7136 nec_check_pulse_range_legal
+0x713e nec_check_pulse_range_legal_data_negative
+0x7140 function_g2
+0x7157 function_f6_eb
+0x7167 get_r
+0x716b function_f6_ea
+0x717e function_f5
+0x7190 function_f5_common
+0x71a1 store_addr_common_b
+0x71a6 store_addr_common_a
+0x71ab function_f4_ca
+0x71b6 function_f4_cb
+0x71c1 function_aes_cmac
+0x71c5 function_ceil16
+0x71d3 function_aes_cmac_set_flag_0_balnk
+0x71d6 function_aes_cmac_set_flag_0
+0x71d7 function_aes_cmac_set_flag_0_common
+0x71e1 function_aes_cmac_aes
+0x71e4 function_aes_cmac_aes_loop
+0x71ea function_aes_cmac_aes_loop_end
+0x71f2 load_inverse_result
+0x71f6 store_inverse_k
+0x71f8 inverse_k
+0x71fb inverse_memdat
+0x71ff bn_lshift_0_inverse
+0x7209 function_aes_cmac_k1_inverse
+0x720a function_aes_cmac_inverse_common
+0x720e function_aes_cmac_k2_inverse
+0x7210 function_aes_cmac_generate_subkey
+0x7218 function_aes_cmac_k1
+0x7221 function_aes_cmac_k1_0
+0x7222 function_aes_cmac_k2
+0x722b function_aes_cmac_xor_rb
+0x722c function_aes_cmac_xor_rb_loop
+0x7232 function_aes_cmac_xor_loop_common
+0x7236 function_aes_cmac_padding
+0x7239 function_aes_cmac_padding_loop
+0x723e function_aes_cmac_padding_loop2
+0x7241 function_aes_cmac_padding_beq_length
+0x7242 function_aes_cmac_padding_common
+0x7244 function_aes_cmac_padding_big_length
+0x7246 concatenate_temp24
+0x7247 concatenate_temp16
+0x724a generate_stk
+0x724e authenticate_rconfirm
+0x7251 authenticate_mconfirm
+0x7256 generate_confirm
+0x7259 generate_mrand
+0x725c generate_sk
+0x7265 ccm_b0
+0x7268 first_block_counter
+0x726a first_block_data
+0x726b first_block
+0x726c iv_common
+0x727d generate_mic
+0x728c generate_mic_loop
+0x7291 generate_mic_end
+0x7295 aes_crypt_data
+0x729f le_encrypt_new_start
+0x72b8 ccm_wait_enc
+0x72bd ccm_check_enc_done
+0x72bf ccm_enc_done
+0x72c4 ccm_init_common
+0x72cb wait_ccm_done
+0x72cd ccm_ctrl_clr
+0x72cf wait_aes
+0x72d1 do_aes_ocb
+0x72d4 do_aes_cbc
+0x72d7 do_aes_ctr
+0x72da aes_init
+0x72dd wait_keyinit_done
+0x72e0 dec_key_initial
+0x72e4 do_aes_ecb_dec
+0x72eb ecb_dec_generate
+0x72ee ecb_dec_generate_loop
+0x72f3 aes_ecb_dec_loop
+0x72fa do_aes_cbc_dec
+0x7306 function_s1
+0x731b function_c1
+0x7321 function_c1_master
+0x7331 function_c1_irat
+0x7336 function_c1_loop1
+0x7349 padding_data
+0x734e padding_loop
+0x7353 aes_load_data
+0x7354 load_data_loop
+0x7358 load_data_padding
+0x735d aes_load_xor
+0x735f load_key
+0x7361 load_data128
+0x7362 load_regext
+0x7363 load_regext_loop
+0x7368 load_sk
+0x736a clear_hidata
+0x736c regext_clear
+0x736f aes_clear_data
+0x7370 aes_clear
+0x7371 clear_loop
+0x7372 clear_data_rest
+0x7375 store_aes_result
+0x7377 send_aes_result_loop
+0x737c store_enc_data
+0x7382 store_enc_loop
+0x738a store_enc_byte
+0x738e compare_res
+0x7390 compare_res_loop
+0x7396 enable_authrom
+0x739a disable_authrom
+0x739e init_memp
+0x73f5 init_memp_256
+0x7447 publickey_init
+0x7448 sp_calc_sequence_256_check
+0x7450 stop_publickey_calc_256
+0x7452 sp_clear_flags
+0x745b sp_calc_check_publickey_256
+0x7476 sp_calc_b256
+0x748c random_generator
+0x7491 compare4
+0x749b compare4_failed
+0x749c compare4_success
+0x749d bn_testbit
+0x74a3 bn_eq_zero
+0x74a9 bn_eq_0
+0x74b2 bn_bigeq
+0x74b5 bn_bigeq_0
+0x74bf bn_add
+0x74c1 bn_add_0
+0x74cd bn_sub
+0x74cf bn_sub_0
+0x74db bn_rshift6
+0x74dd bn_rshift
+0x74de bn_rshift_0
+0x74e9 bn_lshift
+0x74eb bn_lshift_0
+0x74f6 bn_load
+0x74f7 bn_load_0
+0x74fc sp_initialize_256
+0x74ff sc_reset
+0x7502 sp_wait_pubkey_calc_256_done
+0x7508 sp_debug_private_256
+0x751d sp_pubkey_calc_256
+0x7536 sp_pubkey_generated_256
+0x753c sp_dhkey_calc_256
+0x754c sp_dhkey_generated_256
+0x7552 sp_calc_sequence_256
+0x755c sp_calc_sequence_done_256
+0x7562 eckp_calc_256
+0x756a eckp_calc_init_256
+0x756d eckp_calc_init_256_1
+0x7577 ecunmapz_256
+0x7589 ecdbl_256
+0x75da ecadd_256
+0x7646 bn_invmod_256
+0x7654 bn_invmod_256_2
+0x766f bn_invmod_256_1
+0x767d bn_invmod_256_0
+0x7684 bn_mulmod_256
+0x7692 bn_mulmod_256_1
+0x7698 bn_mulmod_256_0
+0x76ad bn_p256mod
+0x7716 bn_load_mem
+0x771a bn_load_256
+0x771c bn_sqrmod_256
+0x771e bn_add_256
+0x7720 bn_addmod_256
+0x7723 bn_lshiftmod_256
+0x7724 bn_lshiftmod_ismod_256
+0x772d bn_lshiftmod_p_256
+0x7735 sub_p2_256
+0x7739 bn_submod_256
+0x7743 bn_submod_256_np
+0x774c bn_sub_256
+0x774e bn_rshift_256
+0x7751 bn_lshift_256
+0x7754 bn_bigeq_256
+0x7758 bn_eq_zero_256
+0x775b bn_rshifteven_256
+0x775c bn_rshifteven_256_1
+0x776b bn_rshifteven_256_0
+0x776f ui_init
+0x7774 ui_dispatch
+0x7776 ui_button_init
+0x7780 ui_button_polling
+0x7786 ui_button_down
+0x7792 ui_button_up
+0x779c ui_button_check_long_press
+0x77a3 lpm_button_get_wake_lock
+0x77a5 lpm_button_clean_wake_lock
+0x77a7 calc_curr_struct_prt
+0x77ac ui_led_init_global
+0x77b1 ui_led_init_loop
+0x77b7 ui_led_init_set
+0x77ba ui_led_on_global
+0x77bf ui_led_blink_stop_global
+0x77bf ui_led_off_global
+0x77c4 ui_led_blink_start_global
+0x77ca ui_led_set_style_global
+0x77cf ui_led_dispatch
+0x77d2 ui_led_blink_polling
+0x77d8 ui_led_off_static
+0x77db ui_led_on_static
+0x77de ui_led_change_style_by_type
+0x77e7 ui_led_blink_state_lighting
+0x77f2 ui_led_blink_state_darking
+0x77fe ui_led_blink_infinite
+0x7802 ui_led_blink_timer_start
+0x7804 ui_led_stop_timer
+0x7806 ui_timer_timeout
+0x780a ui_timer_check
+0x7811 ui_timer_check_loop
+0x781b ui_timer_init
+0x781e ui_timer_check_end
+0x7824 ui_timer_check_send_evt
+0x7825 ui_ipc_get_lock
+0x7826 ui_ipc_get_lock_wait
+0x7829 ui_ipc_put_lock
+0x782b ui_ipc_send_event
+0x7834 ui_ipc_send_cmd
+0x783d ui_ipc_clean_all_fifo
+0x7841 check_51cmd
+0x784c check_51cmd_once
+0x7860 check_51cmd_once_continue
+0x7869 check_51cmd_check_idle
+0x786e check_51cmd_restore
+0x7870 check_51cmd_adv
+0x7876 check_51cmd_stop_adv
+0x787b check_51cmd_direct_adv
+0x7881 check_51cmd_stop_direct_adv
+0x7886 check_51cmd_le_disconnect
+0x788a check_51cmd_ble_update_connect_param
+0x788b check_51cmd_led_off
+0x788d check_51cmd_led_on
+0x788f check_51cmd_led_start_blink
+0x7896 check_51cmd_led_start_blink_in_blink
+0x7899 check_51cmd_le_start_con
+0x789c check_51cmd_start_scan
+0x789e check_51cmd_stop_scan
+0x78a1 check_51cmd_hibernate
+0x78a7 check_51cmd_hibernate_btn_disabled
+0x78a9 check_51cmd_le_smp_sec_req
+0x78aa ui_check_paring_button
+0x78ad queue_init
+0x78b2 queue_push
+0x78c2 calc_queue_next_ptr
+0x78ca queue_pop
+0x78dc queue_get_new_ele
+0x78eb queue_store_new_ele
+0x78fa queue_empty
+0x78fe queue_full
+0x7902 queue_get_size
+0x7906 usb_isr
+0x7912 usb_init
+0x7915 usb_init_restart
+0x792a usb_offline_check_init
+0x792c usb_offline_state
+0x7932 usb_init_param
+0x7964 usb_config_cb
+0x7966 usb_tx_interval_config
+0x796b usb_nak_state
+0x7973 usb_nak_state_judge
+0x7976 usb_nak_state_timer_init
+0x797b usb0_attached_state_judge
+0x7980 usb_clear_halt_dispose
+0x7986 usb_rx_no_data
+0x7989 usb_rx_len
+0x7993 usb_rx_data
+0x7994 usb_rx_read
+0x7999 usb_rx_ep13
+0x79a2 usb_rx
+0x79af usb_class_type
+0x79b6 usb_out_one_byte
+0x79ba usb_in_device
+0x79c2 usb_out_device
+0x79ca usb_in_standard_req
+0x79d0 usb_in_class_req
+0x79d5 usb_in_manufacturer_req
+0x79d6 usb_out_standard_req
+0x79de usb_out_class_req
+0x79e3 usb_out_manufacturer_req
+0x79e4 usb0_force_stall
+0x79e9 usb0_reply_zerolen
+0x79eb usb0_request_get_configuration
+0x79fd usb0_request_get_cfg_dev_cfg
+0x79ff usb0_request_get_cfg_dev_addr
+0x7a01 usb0_request_get_descriptor
+0x7a09 dsc_hid_info
+0x7a0e dsc_hid_info_interface0
+0x7a11 dsc_hid_info_interface1
+0x7a14 dsc_device_info
+0x7a18 dsc_info_set_data_len
+0x7a1d dsc_info_set_initial_data_len
+0x7a1e dsc_info_set_data_size_completed
+0x7a23 dsc_info_set_current_data_len
+0x7a25 usb_set_high_addr
+0x7a29 usb0_set_addr
+0x7a2d dsc_config_info
+0x7a30 dsc_string_info
+0x7a3e dsc_hid_report_info
+0x7a42 dsc_hid_report_info0
+0x7a46 usb0_request_get_interface
+0x7a58 usb0_request_get_status
+0x7a69 usb0_sdsystem_dispose
+0x7a6b usb0_get_status_in_device
+0x7a70 usb_send_zero_packet
+0x7a72 usb_send_ones_packet
+0x7a74 usb_send_two_packet
+0x7a76 usb0_get_status_in_interface
+0x7a7a usb0_get_status_in_endpoint
+0x7a83 usb0_get_status_in_ep_in_ep0
+0x7a84 usb0_get_status_in_ep_in_ack
+0x7a87 usb0_get_status_in_ep_in_ep1
+0x7a89 usb0_get_status_in_ep_in_ep2
+0x7a8b usb0_get_status_in_ep_in_ep3
+0x7a8d usb_get_idle
+0x7a91 usb_get_report
+0x7a95 usb_get_report_dispose
+0x7a98 usb_get_report_send_data
+0x7a9c usb_get_report_data_release
+0x7a9f usb_get_report_data_success
+0x7aa2 usb_get_protocol_req
+0x7aaa usb_get_report_protocol
+0x7aab usb_get_boot_protocol
+0x7aac usb0_request_clear_feature
+0x7abb usb0_request_clear_feature_out_device
+0x7ac8 usb0_request_clear_feature_out_interface
+0x7ac9 usb0_request_clear_feature_out_endpoint
+0x7ad2 usb0_force_stall_ep0_in_off
+0x7ad4 usb0_force_stall_ep1_in_off
+0x7ad5 usb0_force_stall_ep1_in_off_reply
+0x7ad7 usb0_force_stall_ep2_in_off
+0x7ad9 usb0_force_stall_ep3_in_off
+0x7adb usb0_request_set_feature
+0x7ae4 usb0_request_set_feature_out_device
+0x7aee usb_wakeup_timer_reinit
+0x7af2 usb0_request_set_feature_out_interface
+0x7af3 usb0_request_set_feature_out_endpoint
+0x7afe usb0_force_stall_ep0_in_on
+0x7b00 usb0_force_stall_ep1_in_on
+0x7b02 usb0_force_stall_ep2_in_on
+0x7b04 usb0_force_stall_ep3_in_on
+0x7b06 usb0_request_set_address
+0x7b17 usb_usb0_state_set_dev_default
+0x7b18 usb0_request_set_wait_address
+0x7b1d usb_usb0_state_set_dev_addr
+0x7b1f usb0_request_set_configuration
+0x7b34 usb0_request_set_cfg_addr_state
+0x7b34 usb0_request_set_cfg_cfg_state
+0x7b38 usb0_request_set_cfg_stay_addr_state
+0x7b3a usb0_request_set_interface
+0x7b4b usb_set_idle
+0x7b59 usb_clear_remote_wakeup_set0
+0x7b5d usb_set_report
+0x7b6a usb_get_led_status
+0x7b6e usb_set_report_resume_judge
+0x7b7c usb_set_protocol_req
+0x7b82 usb_set_boot_protocol
+0x7b85 usb_set_report_protocol
+0x7b89 usb0_respond_length
+0x7b8b usb0_respond
+0x7b90 usb0_respond_nostr
+0x7b94 usb_no_respond_data
+0x7b96 usb0_tx
+0x7ba4 usb0_tx_short
+0x7ba8 usb0_tx_info
+0x7bba usb0_tx_nostr
+0x7bbc usb0_tx0
+0x7bc1 usb0_tx1
+0x7bcf usb_tx_ep1
+0x7bd2 usb_tx_buf
+0x7bd4 usb_tx_loop
+0x7bd7 usb_trig
+0x7bdb usb_tx_ep2
+0x7bdf usb_tx
+0x7bee usb_tx_data_ep1
+0x7bf9 usb_tx_data_ep2
+0x7c06 usb_tx_fifo_release
+0x7c09 usb_tx_ms_data
+0x7c11 usb_tx_ms_data_mac_boot_mode
+0x7c12 usb_tx_ms_data_mac_boot_regroup
+0x7c20 usb_tx_ms_data_normal_mode
+0x7c21 usb_tx_mac_boot_ms_regroup_r_or_lrkey
+0x7c24 usb_tx_kb_multikey_data
+0x7c28 usb_tx_kb_normal_data
+0x7c2c usb_tx_kb_systemkey_data
+0x7c30 usb_inwake_state_tx_dispose
+0x7c33 usb_mac_wakeup_trig
+0x7c38 usb_mac_wakeup_judge
+0x7c3c usb_mac_wakeup
+0x7c40 usb_windows_wakeup
+0x7c43 usb_wakeup
+0x7c49 push_stack
+0x7c51 push_stack_rega_b_c
+0x7c55 pop_stack
+0x7c60 pop_stack_rega_b_c
+0x7c64 get_contw
+0x7c67 get_contr
+0x7c6a store_contw
+0x7c6d store_contr
+0x7c70 save_cont_pointers
+0x7c75 load_cont_pointers
+0x7c7a get_diff
+0x7c80 memcpy96
+0x7c81 memcpy64
+0x7c83 memcpy12
+0x7c84 memcpy4
+0x7c86 memcpy3
+0x7c89 memcpy8
+0x7c8c memcpy48
+0x7c8d memcpy32
+0x7c8e memcpy24
+0x7c8f memcpy16
+0x7c91 delay
+0x7c95 delay_10ms
+0x7c96 delay_ms_wait
+0x7c99 memset0_16
+0x7c9a memset0_8
+0x7c9b memset0_4
+0x7c9d clear_mem_256
+0x7c9f clear_mem_512
+0x7ca1 clear_mem
+0x7ca3 memset0
+0x7ca6 clear_temp_block
+0x7ca9 xor_loop
+0x7cb1 inverse_data
+0x7cb8 inverse_loop
+0x7cc0 le2be_6byte
+0x7cc0 inverse_data_6byte
+0x7cc6 le2be_4byte
+0x7cc6 inverse_data_4byte
+0x7ccc memcpy_fast
+0x7ccf memcpy_fast_loop
+0x7cd4 memcpy_fast_loop_four
+0x7cda memcpy
+0x7cdc memcpy_loop
+0x7ce0 timer_stop
+0x7ce1 timer_init
+0x7cea timer_check_timeout
+0x7cee timer_reinit
+0x7cef timer_check
+0x7cfa timer_loop
+0x7cfe timer_counting
+0x7d05 clk_add
+0x7d10 clk_diff_rt
+0x7d12 clk_diff
+0x7d17 clk_diff_pos
+0x7d1f clk2rt
+0x7d25 clk2lpo
+0x7d2c clk2bt
+0x7d33 string2dec_from_uart
+0x7d34 string2dec_from_uart_done
+0x7d3f uchar2dialog
+0x7d48 uchar2dialog_number
+0x7d4b uchar2dialog_a2f
+0x7d4e right_shift_n
+0x7d50 right_shift_n_loop
+0x7d53 left_shift_n
+0x7d56 left_shift_n_loop
+0x7d59 calc_average
+0x7d5b calc_average_loop
+0x7d5f get_div_result
+0x7d62 wait_div_end
+0x7d64 compare_loop
+0x7d64 string_compare
+0x7d6c ceiling
+0x7d70 swap
+0x7d74 clean_smem
+0x7d76 clean_xmem
+0x7d77 clean_mem
+0x7d79 callback_func
+0x7d7b ice_break_disable_wdt
+0x7d7c ice_break
+0x7d7e ice_setbp
+0x7d83 ice_setbp2
+0x7d88 ice_set_write_bp
+0x7d8b fifo_in
+0x7d91 fifo_in_push
+0x7d97 fifo_out
+0x7d9b fifo_out_loop
+0x7da0 fifo_out_end
+0x7da3 fifo_is_empty
+0x7da5 fifo_is_full
+0x7da7 fifo_is_near_full
+0x7da9 fifo_content_count
+0x7daa fifo_content_count_loop
+0x7db0 not_greater_than
+0x7db2 copy_temp2pdata
+0x7db4 disable_positive
+0x7db6 enable_positive
+0x7db6 disable_zero
+0x7db8 enable_zero
+0x7dba enable_user
+0x7dbc disable_user
+0x7dbe enable_user2
+0x7dc0 disable_user2
+0x7dc2 enable_user7
+0x7dc4 disable_true
+0x7dc6 enable_true
+0x7dc8 disable_blank
+0x7dca enable_blank
+0x7dca set_pdata_0
+0x7dcc cal_sum
+0x7dce cal_sum_loop
+0x7dd2 reverse_byte
+0x7dd8 reverse_loop
+0x7ddd lshift14
+0x7dde rshift2
+0x7de0 lshift6
+0x7de2 clear_wake
+0x7de7 generate_random
+0x7de8 generate_random_loop
Index: format/rom.format
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/format/rom.format	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/format/rom.format	(working copy)
@@ -0,0 +1,8322 @@
+(//mem_system_clk
+12 SYSTEM_CLK_12M
+24 SYSTEM_CLK_24M
+)
+(//bluetooth tx power
+0x00 TX_POWER_0DB
+0x03 TX_POWER_3DB
+0x05 TX_POWER_5DB
+0x06 TX_POWER_6DB
+0x07 TX_POWER_7DB
+0x0a TX_POWER_10DB
+
+0x83 TX_POWER_F3DB
+0x85 TX_POWER_F5DB
+0x8a TX_POWER_F10DB
+0x94 TX_POWER_F20DB
+0x9e TX_POWER_F30DB
+0xaa TX_POWER_FACTORY
+)
+(
+0x01 coffset_mode
+0x02 coffset_tsniff
+0x04 coffset_sniff_anchor
+0x08 coffset_clk_offset
+0x0e coffset_rx_window
+0x10 coffset_plap
+0x16 coffset_conn_handle
+0x17 coffset_arq
+	/* 3.0 only */
+
+	/* le only */
+0x18 coffset_le_ch
+0x19 coffset_le_hop
+0x1a coffset_le_event_cnt
+0x1c coffset_le_supervision_timer
+0x20 coffset_le_instant
+0x22 coffset_le_channels
+0x23 coffset_le_op
+0x24 coffset_le_access
+0x28 coffset_le_crcinit
+0x2b coffset_le_window_size
+0x2c coffset_le_slave_latency
+0x2e coffset_le_slave_superto
+0x30 coffset_le_channel_map
+0x35 coffset_le_rx_phy
+0x36 coffset_le_tx_phy
+0x37 coffset_le_new_map
+0x37 coffset_le_new_m2s_phy
+0x38 coffset_le_new_s2m_phy
+0x37 coffest_le_new_transmitwindowsize
+0x38 coffest_le_new_transmitwindowoffset
+0x3a coffest_le_new_conninterval
+0x3c coffest_le_new_connslavelatency
+0x3e coffest_le_new_connsupervisiontimeout
+0x40 coffset_le_sk
+0x50 coffset_le_peer_sca
+0x53 coffset_le_transmit_window
+
+83 context_size
+1 context_num
+)
+(
+0 lpm_flag_wake
+1 lpm_flag_loadcode
+)
+(
+0x0a00 param_snooze_setup_orig
+0x5353 param_snooze_ahead_orig
+
+/* 24Mhz clock setting */
+ifdef CLK24M
+0x1c86 param_tx_setup
+0x0c00 param_rf_setup
+0x0c00 param_conn_access
+0x1a00 param_rx_setup
+0x0776 param_clke_cal
+0x0a00 param_pll_setup
+4000 param_dpll_start_delay
+7500 param_halfclk
+60084 param_halfclk_neg
+-60084 param_halfclk_neg1
+else
+/* 12Mhz clock setting */
+0x0e43 param_tx_setup
+0x0600 param_rf_setup
+0x0600 param_conn_access
+0x03bb param_clke_cal
+0x0500 param_pll_setup		// 120 is minimum
+0x0d00 param_rx_setup	// 114us before sync
+2000 param_dpll_start_delay
+3750 param_rt_rthalfslot
+
+480 param_clke_cal_le_1m	//preamble(1B) & access address(4B) time (1+4)*8*1 * 12
+288 	param_clke_cal_le_2m	//preamble(2B) & access address(4B) time (1+4)*8*1 * 12
+282 param_clke_cal_le_coded	//preamble(80us) & access address(256us)-312.5us(0.5slot)
+endif
+
+110 param_lpm_fix
+10 param_lpo_extra
+200 param_lpm_adjmax
+
+-1 param_hibernate_clks
+
+ifdef SIM
+1 param_chgpump_delay_100us
+6 param_chgpump_delay_500us
+12 param_chgpump_delay_1ms
+else
+1000 param_chgpump_delay_100us
+6000 param_chgpump_delay_500us
+12000 param_chgpump_delay_1ms
+endif
+
+
+0x000a04 param_lmp_version
+0x12e9 param_lmp_subversion
+0x0012 param_tisw
+0x0012 param_tpsw
+0x1000 param_tisi
+0x0800 param_tpsi
+39 param_fcomp_div
+2 param_fcomp_mul
+
+)
+(
+0        always        /* always 1 */
+1        true          /* set/rstn by verify,compare,icompare (true) */
+2        positive      /* set/rstn by all alu operations (opcode = 0x03,0x13,0x0f,0x1f), if alu output >= 0 */
+3        timeout       /* read only, the timeout from timers */
+4        init_adpcm
+5        zero          /* set/rstn by all alu operations (opcode = 0x03,0x13,0x0f,0x1f), if alu output == 0 */
+6        crc_failed    /* level, cleared by hop_start */
+7        enable_white  /* outside mux decide whether to load bt_clk or response_X */
+8        enable_parity /* level */
+9        enable_crc    /* level */
+10       enable_hec    /* level */
+11       decode_fec1   /* level */
+12       decode_fec2   /* level */
+13       decode_fec0   /* level */
+14       encrypt       /* level */
+15       crc16       /* for caculate ccitt crc16 */
+16       swfine	/* =0 stop_watch count based on oneslot =1 on 1 clock */
+20       rqst_freq    /* pulse, to start calculating frequency */
+21       recalc        /* pulse, to recalculate the fhs_parity */
+22       init_encrypt  /* pulse, issued to initialize encrption */
+23       mhalfbnd    /* half slot boundary of clke_rt, or when clke_bt[0] toggles */
+24       sync          /* sync found as a result of correlation,set/rstn by correlate opcode */
+25       user10    /* user10 */
+26       kc_p_activate  /* pulse to recalc the kc_p */
+27       encode_fec1   /* level */
+28       encode_fec2   /* level */
+29       encode_fec0   /* level */
+30       packet_end    /* pulse */
+32       is_tx         /* level */
+33       is_rx         /* level */
+34       halfslot     /* pulse, read only, when clkn_bt[0] toggles */
+35       oneslot      /* pulse, read only, when clkn_bt[1] toggles */
+36       mslotbnd     /* pulse, read only, when clke_bt[1] toggles */
+37       expire       /* level, read only, when selected clock source exceed timeup value */
+38       meet         /* level, read only, when selected clock source meet timeup value */
+39       tx_clear     /* level, read only, indicate tx pipe is cleared */
+40       user         /* user0 */
+41       master        /* user1 */
+42       rxon         /* user2 */
+43       wake           /* user3 */
+44       user2        /* user4 */
+45       match         /* user5 */
+46       attempt        /* user6 */
+47       user3          /* user7 */
+48       clknt         /* user8 */
+49	   user7 	/* user9 */
+50       synchronize   /* synchronize lpo and regular version of the clock */
+51       lpo_edge  /* read only, 3 clocks after risling edge of lpo clock */
+52       blank         /* C0 only, means pdata == 0 */
+53       modone          /* set divide operation is done */
+55       aes_ready	/* set when aes is ok */
+56       encode_fec3   /* level */
+57       dewhiten_code_calc   /* dewhiten code calculate */
+58       lr_s2en       /* long range s2 enable */
+60	   ble_coded_info	//1:s2 0:s8
+63       never         /* read only, always 0 */
+)
+default flag = always
+(
+0        mark   /* for keeping strobes, more permanent */
+1        type   /* save and verify during rx */     /* rw */
+2        temp   /* general purpose register, 64 bits */
+3        contu  /* contr uart */
+3	 contru	/*contr uart*/
+3	 contwu	/*contw uart*/
+4        am_addr      /* verify during rx, read and send during tx */ /* ro */
+5        contw        /* last mem_addr during write */
+6        contr        /* last mem_addr during read */
+7        queue    /* the index of qset*,qisolate* commands, ie, if queue = 3, qset/qisolate operate on bit3 */
+8        debug    /* can be wired out for observation */
+9        access   /* the 72 bit access word */
+10       contus   /* contw uart */
+11       timeup        /* when does certain counter expire */
+12       pwindow       /* bit 71-61 of pdata; because on rx, bits shifts in from 71 down */
+13       fhs_parity    /* re-gernated based on bt_adr( {nap,uap,lap} ) when recalc flag is pulsed */
+14       white_init    /* init value of the whitening */
+15       crc24_init        /* init crc24 lfsr, 24 bits */
+16       contue    /* set interrupts, 40 bits */
+17       rega          /* general purpose register, 32 bits */
+18       regb          /* general purpose register, 32 bits */
+19       regc          /* general purpose register, 17 bits */
+20       regab         /* concat of {rega,regb}, thus 64 bits */
+21       radio_ctrl   /* radio i/f direct i/o ctrl, check following "radio_ctrl" section */
+
+23       freq_index   /* 7 bit read only */
+24       regd    /* 32 bit regext[1,0] */
+25       clkn              /* {clkn_bt, clkn_rt} */
+26       clke              /* {clke_bt, clke_rt} */
+27       stop_watch
+28       fhs_misc   /* SR, SP, pscan mode */
+29       fhs_class  /* class field in fhs */
+30       fhs0   /* read only, bit 0-71 of fhs word */
+31       fhs1   /* read only, bit 72-142 of fhs word */
+32       bt_adr /* r/w, the bt_addr to access gen and freq hopping, contain only lap and uap */
+33       bt_clk /* r/w, the bt_clk for freq hopping */
+34       clkn_bt  /* read only, native bluetooth clock, free running 3.2KHz  or controlled by RTHALFSLOT register */
+35       clkn_rt  /* read only, native realtime clock, free running 12MHz, count from 0-3749, or controlled by RTHALFSLOT register */
+36       freq_mode
+37       xin   /* x parameter, read only */
+38       N_tx_slot /* the N factor in equations for Xi,Xp,Xprm,Xprs */
+39 	   auxcnt
+40       clke_bt  /* r/w,  external bluetooth clock , free running 3.2KHz or controlled by RTHALFSLOT register */
+41       clke_rt  /* r/w,  external realtime clock, , free running 12MHz, count from 0-3749, or controlled by RTHALFSLOT register */
+42       branch_addr	/* last branch address */
+43       rege         /* 64bit regext[3,2] */
+44       lap
+45       uap
+46       nap
+47       regext		/* r/w extended 12x32bit registers,  indexed by regext_index */
+48       alarm             /* r/w, lpo wake up time, this is also how lpo and current clock keep sync */
+49       lpo_time          /* read only, this is the value to be copied back to clkn/clke after wakeup */
+50       kc_ls             /* secret key,                71: 0 */
+51       kc_ms             /* secret key,               127:72 */
+52       g1l               /* encryption length                */
+53		mask3ff		/* for mask 0x3ff operation */
+54       aes_ctrl
+55       regf			/* 64bit regext[5,4] */
+56       regext_index   /* index of regext */
+57	     loopcnt
+58      stack			/* current return address */
+59       stack_ptr		/* stack depth */
+61         pc /* direct goto */
+62       null              /* to nowhere */
+63       pdata /* the shift register */
+)
+default reg = pdata
+(
+0 regidx_data
+4 regidx_key
+8 regidx_xor
+12 regidx_result
+)
+(
+0 TXGFSK
+1 PSK
+2 PSK3M
+3 RESET
+)
+(
+0 bucket
+1 rxf
+2 back
+3 mod
+)
+default dest = bucket
+(
+1 txf
+3 demod
+)
+default source = 0
+(
+5  mark_loopback
+9  mark_context
+13 mark_lpm_mult_enable
+14 mark_usb_first_resp
+15 mark_old_packet
+35 mark_isstr
+36 mark_loadcode
+37 mark_ext_patch
+38 mark_24g
+39 mark_24g_rxmode
+40 mark_eeprom_size
+41 mark_ble_tx_md
+42 mark_ble_rx_md
+43 mark_otp_encrypt
+44 mark_temp
+45 mark_ble_2M
+46 mark_ble_lr_s8
+47 mark_ble_lr
+48 mark_ble_crc_fail
+50 mark_ble_encryption
+51 mark_first_packet
+)
+(
+1 reload_type_otp
+2 reload_type_spi
+3 reload_type_iic
+)
+(
+0 le_adv_interval_timer
+2 le_scan_interval_timer
+9 key_scan_timer
+7 smp_pairing_timer
+11  ui_led_blink
+
+8 G24_TIMER_NODATA
+13 G24_TIMER_MS_BLANK
+12 G24_TIMER_KB_MUL_BLANK
+10 G24_TIMER_KB_SYS_CRTL_BLANK
+14 G24_TIMER_KB_BLANK
+
+1 USB_TIMER_NAK
+15 USB_TIMER_WAKEUP
+)
+(
+
+27 hci_cmd_le_create_conn
+29 hci_cmd_le_disconn
+30 hci_cmd_le_att_req
+)
+(
+0 mode_le
+1 mode_master
+)
+(
+0 state_inconn
+1 state_insniff
+)
+(
+3 op_disconn
+)
+(
+0 wake_lock_ble_rx
+1 wake_lock_ble_tx
+
+3 wake_lock_key_press
+4 wake_lock_ble_tx_patch
+5 wake_lock_uart_tx
+6 wake_lock_uart_rx
+7 wake_lock_button
+8 wake_lock_cmd
+9 wake_lock_app
+12 wake_lock_l2cap_tx
+13 wake_lock_l2cap_rx
+14 wake_lock_ipc_c512bt
+15 wake_lock_ipc_bt2c51
+
+)
+(//mem_fcomp_div
+0x18 XTAL_24M
+0x10 XTAL_16M
+)
+( //verion
+6 BLUETOOTH_CORE_SPECIFICATION_4_0
+7 BLUETOOTH_CORE_SPECIFICATION_4_1
+8 BLUETOOTH_CORE_SPECIFICATION_4_2
+9 BLUETOOTH_CORE_SPECIFICATION_5_0
+10 BLUETOOTH_CORE_SPECIFICATION_5_1
+)
+(
+0x050e COMPANY_ID_YICHIP
+)
+(
+0x33  REC_3_MODE
+0x34  REC_4_MODE
+0x35  REC_4_MODE_STATIC_ADDRESS
+0x36  REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS
+0x37  REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS
+)
+(
+0 bt_disabled
+1 ble_disabled
+2 module_disable
+)
+(//mem_le_T_IFS
+150 PARAM_T_IFS_150US
+20000 PARAM_20MS_INIT
+-11 PARAM_SYNC_TIME_DIFFERENCE
+40 PARAM_CODED_C1_TERM1_TIME_40US
+1666 PARAM_WINDOWN_SIZE
+//T_IFS = 150-modem(CRC time)
+15000 param_sifs
+)
+(
+0 DEFAULT_STATES
+1 IPHONE_LOST_LTK
+2 MODULE_LOST_LTK
+3 LTK_NOT_LOST
+)
+	(
+	0x01 ERROR_UNKNOWN_HCI_COMMAND
+	0x02 ERROR_NO_CONNECTION
+	0x03 ERROR_HARDWARE_FAILURE
+	0x04 ERROR_PAGE_TIMEOUT
+	0x05 ERROR_AUTHENTICATION_FAILURE
+	0x06 ERROR_KEY_MISSING
+	0x07 ERROR_MEMORY_FULL
+	0x08 ERROR_CONNECTION_TIMEOUT
+	0x09 ERROR_MAX_CONNECTIONS
+	0x0A ERROR_MAX_SCO_CONNECTIONS
+	0x0B ERROR_MAX_ACL_CONNECTIONS
+	0x0C ERROR_COMMAND_DISALLOWED
+	0x0D ERROR_HOST_REJECT_LIMITED_RESOURCES
+	0x0E ERROR_HOST_REJECT_SECURITY_REASONS
+	0x0F ERROR_HOST_REJECT_REMOTE_IS_ONLY_PERSONAL
+	0x10 ERROR_HOST_TIMEOUT
+	0x11 ERROR_UNSUPPORTED_FEATURE_OR_PARAMETER_VALUE
+	0x12 ERROR_INVALID_HCI_COMMAND_PARAMETERS
+	0x13 ERROR_REMOTE_USER_TERMINATED_CONNECTION
+	0x14 ERROR_REMOTE_LOW_RESOURCES
+	0x15 ERROR_REMOTE_POWERING_OFF
+	0x16 ERROR_CONNECTION_TERMINATED_BY_LOCAL_HOST
+	0x17 ERROR_REPEATED_ATTEMPTS
+	0x18 ERROR_PAIRING_NOT_ALLOWED
+	0x19 ERROR_UNKNOWN_LMP_PDU
+	0x1A ERROR_UNSUPPORTED_REMOTE_FEATURE
+	0x1B ERROR_SCO_OFFSET_REJECTED
+	0x1C ERROR_SCO_INTERVAL_REJECTED
+	0x1D ERROR_SCO_AIR_MODE_REJECTED
+	0x1E ERROR_INVALID_LMP_PARAMETER
+	0x1F ERROR_UNSPECIFIED_ERROR
+	0x20 ERROR_UNSUPPORTED_LMP_PARAMETER_VALUE
+	0x21 ERROR_ROLE_CHANGE_NOT_ALLOWD
+	0x22 ERROR_LMP_RESPONSE_TIMEOUT
+	0x23 ERROR_ERROR_TRANSACTION_COLLISION
+	0x24 ERROR_LMP_PDU_NOT_ALLOWED
+	0x25 ERROR_ENCRYPTION_MODE_NOT_ACCEPTABLE
+	0x26 ERROR_UNIT_KEY_USED
+	0x27 ERROR_QOS_NOT_SUPPORTED
+	0x28 ERROR_INSTANT_PASSED
+	0x29 ERROR_PAIRING_W_UNIT_KEY_NOT_SUPPORTED
+	0x2a ERROR_DIFFERENT_TRANSACTION_COLLISION
+	0x2c ERROR_QOS_UNACCEPTABLE_PARAMETER
+	0x2d ERROR_QOS_REJECTED
+	0x2e ERROR_CHANNEL_CLASSIFICATION_NOT_SUPPORTED
+	0x2f ERROR_INSUFFICIENT_SECURITY
+	0x30 ERROR_PARAMETER_OUT_OF_MANDATORY_PANGE
+	0x32 ERROR_ROLE_SWITCH_PENDING
+	0x34 ERROR_RESERVED_SLOT_VIOLATION
+	0x35 ERROR_ROLE_SWITCH_FAILED
+	0x36 ERROR_EXTENDED_INQUIRY_RESPONSE_TOO_LARGE
+	0x37 ERROR_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST
+	0x38 ERROR_HOST_BUSY_PAIRING
+	0x3d ERROR_MIC_FAILURE
+	)
+	(
+	0X20 SPACE
+	)
+	(
+	0x0004 LE_L2CAP_CID_ATT
+	0x0005 LE_L2CAP_CID_SIGNAL
+	0x0006 LE_L2CAP_CID_SMP
+	)
+	(
+	0 LE_ADDR_TYPE_PUBLIC
+	1 LE_ADDR_TYPE_RANDOM
+	)
+	(
+	7 LE_RECEIVER_ADDR_BIT
+	6 LE_SENDER_ADDR_BIT
+	)
+	(
+	0x00 LE_SCAN_TYPE_PASSIVE //no SCAN_REQ shall be sent
+	0x01 LE_SCAN_TYPE_ACTIVE
+	)
+	(
+	0x00 LE_SCAN_DISABLE
+	0x01 LE_SCAN_ENABLE
+	0x0101 LE_ACTIVE_SCAN_ENABLE
+	)
+	(
+	0x01 UUID_SIZE_16BIT
+	0x02 UUID_SIZE_128BIT
+	)
+(
+3 lestate_got_first_packet
+4 lestate_encryption
+5 lestate_update_param
+6 lestate_update_map
+7 lestate_update_phy
+)
+(
+0 lemode_idle
+1 lemode_slave
+3 lemode_master
+5 lemode_2m
+6 lemode_lr
+7 lemode_lr_s8
+
+0x20 mode_2m
+0x40 mode_lr_s2
+0xc0 mode_lr_s8
+
+)
+(
+0 llid0
+1 llid1
+2 nesn
+3 sn
+4 md
+5 wak
+6 txdat
+)
+(
+0x00 LLID_RESERVED
+0x01 LLID_CONTINUE
+0x02 LLID_START
+0x03 LLID_LE_LL
+0x01 LLID_EMPTY
+)
+(
+4 LE_TX_BUFF_COUNT
+3 LE_TX_BUFF_UPDATE_LOOPCNT //LE_TX_BUFF_COUNT-1
+
+12 LE_MD_MAX_COUNT
+)
+(
+0 LE_INITATOR_LTK_BIT
+1 LE_INITATOR_IRK_BIT
+2 LE_INITATOR_CSRK_BIT
+)
+(
+0  LE_FIND_BY_TYPE_VAL_RES_NOT_FOUND
+1  LE_FIND_BY_TYPE_VAL_RES_FOUND_STARTING_HANDLE
+2  LE_FIND_BY_TYPE_VAL_RES_FOUND_ENDING_HANDLE
+
+)
+(
+0 MASTER_PUBLIC_ADDR
+1 MASTER_RANDOM_ADDR
+)
+(
+0x06 LE_ERR_PIN_OR_KEY_MISSING
+)
+(
+39 LE_CCM_DIRECTIONBIT
+)
+(
+36 BR_CCM_0_LENGTH_CONTINUATION
+37 BR_CCM_DIRECTIONBIT
+)
+(
+96000 TIMER_SMP_PAIRING_TIMEOUT //30S
+)
+(
+0 FLAG_LE_ENC_NULL
+1 FLAG_LE_RCV_ENC_START
+2 FLAG_LE_ENC_PAUSE
+3 FLAG_LE_RCV_START_ENC_RSP
+4 FLAG_LE_SEND_START_ENC_RSP
+5 FLAG_LE_SEND_START_ENC_REQ
+0xff FLAG_LE_ENC_END
+)
+(//mem_le_configuration
+//bit0:use fixed key , ble passkey pairing
+0 BIT_BLE_PASSKEY_FIXED_KEY
+//bit1:ble pairing use fixed long term key
+1 BIT_BLE_PAIRING_FIXED_LTK
+//bit2:ble transmit packet will set more data flag
+2 BIT_BLE_TRANSMIT_PACKET_BY_MD
+//bit3:master read handle, with requires an authenticated link
+3 BIT_BLE_READ_AUTH
+//bit4:master write handle, with requires an authenticated link
+4 BIT_BLE_WRITE_AUTH
+//bit5:cannot enter long sleep
+5 BIT_BLE_SHORT_MULT
+//bit6:DEAL baseband packet
+6 BIT_BLE_DEAL_BB_PACKET
+)
+(
+0x01	GAP_ADTYPE_FLAGS
+0x02	GAP_ADTYPE_16BIT_MORE
+0x03	GAP_ADTYPE_16BIT_COMPLETE
+0x04	GAP_ADTYPE_32BIT_MORE
+0x05	GAP_ADTYPE_32BIT_COMPLETE
+0x06	GAP_ADTYPE_128BIT_MORE
+0x07	GAP_ADTYPE_128BIT_COMPLETE
+0x08	GAP_ADTYPE_LOCAL_NAME_SHORT
+0x09	GAP_ADTYPE_LOCAL_NAME_COMPLETE
+0x0a	GAP_ADTYPE_POWER_LEVEL
+0x16	GAP_ADTYPE_SERVICE_DATA
+0x2a	GAP_ADTYPE_MESH_MESSAGE
+0x2b 	GAP_ADTYPE_MESH_BEACON
+0xff	GAP_ADTYPE_MANUFACTURER_SPECIFIC
+)
+(
+0 ADV_IND
+1 ADV_DIRECT_IND
+2 ADV_NONCONN_IND
+3 SCAN_REQ
+3 AUX_SCAN_REQ
+4 SCAN_RSP
+5 CONNECT_REQ
+5 AUX_CONNECT_REQ
+6 ADV_SCAN_IND
+)
+(
+0 BIT_ADV_CHANNEL_MAP_37
+1 BIT_ADV_CHANNEL_MAP_38
+2 BIT_ADV_CHANNEL_MAP_39
+)
+(
+0xa0 param_le_sca
+)
+(//bit of mem_le_l2cap_att_states
+0 BLE_L2CAP_SEND_INDICATION_PACKET
+0 BLE_L2CAP_RECV_CONFIRMATION_PACKET
+1 BLE_L2CAP_DEAL_WITH_CONTINUE_PACKET
+)
+(//bit map of att handle
+14 BIT_OF_ATT_HANDLE_READ_AUTHENTICATED
+15 BIT_OF_ATT_HANDLE_WRITE_AUTHENTICATED
+)
+(
+0 BIT_CHARACTERISTIC_BROADCAST
+1 BIT_CHARACTERISTIC_READ
+2 BIT_CHARACTERISTIC_WRITE_WITHOUT_RESPONSE
+3 BIT_CHARACTERISTIC_WRITE
+4 BIT_CHARACTERISTIC_NOTIFY
+5 BIT_CHARACTERISTIC_INDICATE
+6 BIT_CHARACTERISTIC_SIGNED_WRITE
+7 BIT_CHARACTERISTIC_EXTENDED_PROPERTIES
+)
+(
+0x01 ATTOP_ERROR_RESPONSE
+0x02 ATTOP_EXCHANGE_MTU_REQUEST
+0x03 ATTOP_EXCHANGE_MTU_RESPONSE
+0x04 ATTOP_FIND_INFORMATION_REQUEST
+0x05 ATTOP_FIND_INFORMATION_RESPONSE
+0x06 ATTOP_FIND_BY_TYPE_VALUE_REQUEST
+0x07 ATTOP_FIND_BY_TYPE_VALUE_RESPONSE
+0x08 ATTOP_READ_BY_TYPE_REQUEST
+0x09 ATTOP_READ_BY_TYPE_RESPONSE
+0x0A ATTOP_READ_REQUEST
+0x0B ATTOP_READ_RESPONSE
+0x0C ATTOP_READ_BLOB_REQUEST
+0x0D ATTOP_READ_BLOB_RESPONSE
+0x0E ATTOP_READ_MULTIPLE_REQUEST
+0x0F ATTOP_READ_MULTIPLE_RESPONSE
+0x10 ATTOP_READ_BY_GROUP_TYPE_REQUEST
+0x11 ATTOP_READ_BY_GROUP_TYPE_RESPONSE
+0x12 ATTOP_WRITE_REQUEST
+0x13 ATTOP_WRITE_RESPONSE
+0x16 ATTOP_PREPARE_WRITE_REQUEST
+0x17 ATTOP_PREPARE_WRITE_RESPONSE
+0x18 ATTOP_EXECUTE_WRITE_REQUEST
+0x19 ATTOP_EXECUTE_WRITE_RESPONSE
+0x1B ATTOP_HANDLE_VALUE_NOTIFICATION
+0x1D ATTOP_HANDLE_VALUE_INDICATION
+0x1E ATTOP_HANDLE_VALUE_CONFIRMATION
+0x52 ATTOP_WRITE_COMMAND
+0xD2 ATTOP_SIGNED_WRITE_COMMAND
+0x1f ATTOP_CONTINUE
+0x9e EMPTY_LE_DATA_PRE
+0x9f EMPTY_LE_DATA
+)
+(
+0x01 ATT_ERR_INVALID_HANDLE
+0x02 ATT_ERR_READ_NOT_PERMITTED
+0x03 ATT_ERR_WRITE_NOT_PERMITTED
+0x04 ATT_ERR_INVALID_PDU
+0x05 ATT_ERR_INSUFFICIENT_AUTHENTICATION
+0x06 ATT_ERR_REQUEST_NOT_SUPPORTED
+0x07 ATT_ERR_INVALID_OFFSET
+0x08 ATT_ERR_INSUFFICIENT_AUTHORIZATION
+0x09 ATT_ERR_PREPARE_QUEUE_FULL
+0x0A ATT_ERR_ATTRIBUTE_NOT_FOUND
+0x0B ATT_ERR_ATTRIBUTE_NOT_LONG
+0x0C ATT_ERR_INSUFFICIENT_ENCRYPTION_KEY_SIZE
+0x0D ATT_ERR_INVALID_ATTRIBUTE_VALUE_LENGTH
+0x0E ATT_ERR_UNLIKELY_ERROR
+0x0F ATT_ERR_INSUFFICIENT_ENCRYPTION
+0x10 ATT_ERR_UNSUPPORTED_GROUP_TYPE
+0x11 ATT_ERR_INSUFFICIENT_RESOURCES
+)
+(
+0X2900 CHARACTERTIC_EXTENDED_PROPERTIES
+0X2901 CHARACTERTIC_USER_DESCRIPTION
+0X2902 CLIENT_CHARACTERTIC_CONFIGURATION
+0X2903 SERVER_CHARACTERTIC_CONFIGURATION
+0X2904 CHARACTERTIC_PRESENTATION_FORMAT
+0X2905 CHARACTERTIC_AGGREGATE
+0X2906 VALID_RANGE
+0X2907 EXTERNAL_REPORT_REFERENCE
+0X2908 REPORT_REFERENCE
+0X290B ENVIR_SENSING_CONFIGURATION
+0X290C ENVIR_SENSING_MEASUREMENT
+0X290D ENVIR_SENSING_TRIGGER_SETTING
+)
+(
+0x1800 UUID_SERVICE_GENERIC_ACC
+0x1801 UUID_SERVICE_GENERIC_ATT
+0x180a UUID_SERVICE_DEVICE_INFO
+0x180f UUID_SERVICE_BATTERY
+0x1812 UUID_SERVICE_HIDS
+0x2800 UUID_GATT_PRIMARY_SERVICE
+0x2801 UUID_GATT_SECONDARY_SERVICE
+0X2802 UUID_GATT_INCLUDE
+0X2803 UUID_GATT_CHARACTERISTIC
+0X2A00 UUID_CHRCTR_DEVICE_NAME
+0X2A19 UUID_CHRCTR_BATTERY_LEVEL
+0X2A22 UUID_CHRCTR_KEYBOARD_INPUT
+0X2A23 UUID_CHRCTR_SYSTEM_ID
+0X2A25 UUID_CHRCTR_SERIAL_NUMBER
+0X2A26 UUID_CHRCTR_FIRMWARE
+0X2A32 UUID_CHRCTR_KEYBOARD_OUTPUT
+0X2A33 UUID_CHRCTR_MOUSE_INPUT
+0X2A4A UUID_CHRCTR_HID_INFO
+0X2A4B UUID_CHRCTR_REPORT_MAP
+0X2A4C UUID_CHRCTR_HID_CTRL_POINT
+0X2A4D UUID_CHRCTR_REPORT
+0X2A4E UUID_CHRCTR_PROTOCOL_MODE
+0X2A50 UUID_CHRCTR_PNP_ID
+)
+
+(
+23 ATT_DEFAULT_MTU
+)
+(
+0x12 L2CAP_CONNECTION_PARAMETER_UPDATE_REQUEST
+0x13 L2CAP_CONNECTION_PARAMETER_UPDATE_RESPONSE
+)
+(
+0x0000 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_ACCEPTED
+0x0001 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_REJECTED
+)
+(
+0x00 LE_PAIRING_MODE_NONE
+0x01 LE_PAIRING_MODE_LAGACY_JUSTWORK
+0x02 LE_PAIRING_MODE_LAGACY_PASSKEY
+0x04 LE_PAIRING_MODE_LAGACY_PASSKEY_RES_INPUT
+0x81 LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK
+0x82 LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC
+0x83 LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY
+0x84 LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY_RES_INPUT
+
+7 LE_PAIRING_MODE_SECURE_CONNECT_BIT
+)
+(
+0 FLAG_IOCAP_DISPLAYONLY
+1 FLAG_IOCAP_DISPLAYYESNO
+2 FLAG_IOCAP_KEYBOARDONLY
+3 FLAG_IOCAP_NOINPUTNOOUTPUT
+4 FLAG_IOCAP_KEYBOARDDISPLAY
+
+0x00 FLAG_OOB_DATA_FLAG_NO
+)
+(
+0x00 FLAG_LE_NO_BONDING_NO_MITM
+0x01 FLAG_LE_BONDING_NO_MITM
+0x04 FLAG_LE_NO_BONDING_MITM
+0x05 FLAG_LE_BONDING_MITM
+0x09 FLAG_LE_BONDING_NO_MITM_SECURE
+0x0D FLAG_LE_BONDING_MITM_SECURE
+
+2 LE_AUTH_MITM_BIT
+3 LE_AUTH_SECURE_CONNECTION_PAIRING_BIT
+)
+(
+0 FLAG_LE_PAIRING_NULL
+1 FLAG_LE_PAIRING_START
+2 FLAG_LE_PAIRING_SEND_RECURITY_REQ
+3 FLAG_LE_PAIRING_RCV_PAIRING_REQ
+4 FLAG_LE_PAIRING_WAIT_STK_GENERATION
+5 FLAG_LE_PAIRING_RECEIVE_PAIRING_CONFIRM
+6 FLAG_LE_PAIRING_SEND_PAIRING_CONFIRM
+7 FLAG_LE_PAIRING_RECEIVE_PAIRING_RANDOM
+8 FLAG_LE_PAIRING_SEND_PAIRING_RANDOM
+9 FLAG_LE_PAIRING_AFTER_AUTH
+10 FLAG_LE_PAIRING_SEND_START_ENC_RSP
+11 FLAG_LE_PARING_SEND_ENC_INFORMATION
+12 FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION
+13 FLAG_LE_PARING_SEND_INDENTITY_INFORMATION
+0xff FLAG_LE_PAIRING_END
+)
+(
+0x01 SMP_PAIRING_REQUEST
+0x02 SMP_PAIRING_RESPONSE
+0x03 SMP_PAIRING_CONFIRM
+0x04 SMP_PAIRING_RANDOM
+0x05 SMP_PAIRING_FAILED
+0x06 SMP_ENCRYPTION_INFORMATION
+0x07 SMP_MASTER_IDENTIFICATION
+0x08 SMP_IDENTITY_INFORMATION
+0x09 SMP_IDENTITY_ADDRESS_INFORMATION
+0x0A SMP_SIGNING_INFORMATION
+0x0B SMP_SECURITY_REQUEST
+0x0c SMP_PAIRING_PUBLIC_KEY
+0x0d SMP_PAIRING_DHKEY_CHECK
+)
+(// pairing failed reason
+0x00 PAIRING_FAILED_RESERVED
+0X01 PAIRING_FAILED_PASSKEY_ENTRY_FAILED
+0X02 PAIRING_FAILED_OOB_NOT_AVAILABLE
+0X03 PAIRING_FAILED_AUTHENTICATION_REQUIRE
+0X04 PAIRING_FAILED_CONFIRM_VALUE_FAILED
+0X05 PAIRING_FAILED_PAIRING_NOT_SUPPORTED
+0X06 PAIRING_FAILED_ENCRYPTION_KEY_SIZE
+0X07 PAIRING_FAILED_COMMAND_NOT_SUPPORTED
+0X08 PAIRING_FAILED_UNSPECIFIED_REASON
+0X09 PAIRING_FAILED_REPEATED_ATTEMPTS
+0X0A PAIRING_FAILED_INVALID_PARAMETERS
+0X0B PAIRING_FAILED_DHKEY_CHECK_FAILED
+0X0C PAIRING_FAILED_NUMERIC_COMPARISON_FAILED
+0X0D PAIRING_FAILED_BR_EDR_PAIRING_IN_PROGRESS
+0X0E PAIRING_FAILED_KEY_DERIVATION_GENERATION_NOT_ALLOWED
+)
+(
+0x00 LE_SC_STAT_NULL
+0x01 LE_SC_STAT_RECEIVE_PUBLIC_KEY
+0x02 LE_SC_STAT_WAIT_SEND_PUBLIC_KEY
+0x03 LE_SC_STAT_SEND_PUBLIC_KEY
+0x04 LE_SC_STAT_RECEIVE_RANDOM
+0x05 LE_SC_STAT_SEND_RANDOM
+0x06 LE_SC_STAT_RECEIVE_DHKEY
+0x07 LE_SC_STAT_WAIT_CONFIRM_GKEY
+0x08 LE_SC_STAT_PASSKEY_WAIT_CONFIRM
+)
+(
+0 FLAG_LE_SC_CONFRIM_NULL
+1 FLAG_LE_SC_CONFRIM_GKEY_OK
+)
+(
+0x00 LL_CONNECTION_UPDATE_IND
+0x01 LL_CHANNEL_MAP_IND
+0x02 LL_TERMINATE_IND
+0x03 LL_ENC_REQ
+0x04 LL_ENC_RSP
+0x05 LL_START_ENC_REQ
+0x06 LL_START_ENC_RSP
+0x07 LL_UNKNOWN_RSP
+0x08 LL_FEATURE_REQ
+0x09 LL_FEATURE_RSP
+0x0A LL_PAUSE_ENC_REQ
+0x0B LL_PAUSE_ENC_RSP
+0x0C LL_VERSION_IND
+0x0D LL_REJECT_IND
+0x0E LL_SLAVE_FEATURE_REQ
+0x0F LL_CONNECTION_PARAM_REQ
+0x10 LL_CONNECTION_PARAM_RSP
+0x11 LL_REJECT_IND_EXT
+0x12 LL_PING_REQ
+0x13 LL_PING_RSP
+0x14 LL_LENGTH_REQ
+0x15 LL_LENGTH_RSP
+0x16 LL_PHY_REQ
+0x17 LL_PHY_RSP
+0x18 LL_PHY_UPDATE_IND
+0x19 LL_MIN_USED_CHANNELS_IND
+0x1A LL_CTE_REQ
+0x1B LL_CTE_RSP
+0x1C LL_PERIODIC_SYNC_IND
+0x1D LL_CLOCK_ACCURACY_REQ
+0x1E LL_CLOCK_ACCURACY_RSP
+0x1F LL_CIS_REQ
+0x20 LL_CIS_RSP
+0x21 LL_CIS_IND
+0x22 LL_CIS_TERMINATE_IND
+0x23 LL_POWER_CONTROL_REQ
+0x24 LL_POWER_CONTROL_RSP
+0x25 LL_POWER_CHANGE_IND
+)
+(//bit map of mem_le_ll_feature
+//LL_FEATURE_REQ
+0 BIT_LL_FEATURE_LE_ENCRYPTION
+1 BIT_LL_FEATURE_CONNECTION_PARAMETERS_REQUEST_PROCEDURE
+2 BIT_LL_FEATURE_EXTENDED_REJECT_INDICATION
+3 BIT_LL_FEATURE_SLAVE_INITIATED_FEATURES_EXCHANGE
+4 BIT_LL_FEATURE_LE_PING
+5 BIT_LL_FEATURE_LE_DATA_PACKET_LENGTH_EXTENSION
+6 BIT_LL_FEATURE_LL_PRIVACY
+7 BIT_LL_FEATURE_EXTENDED_SCANNER_FILTER_POLICIES
+8 BIT_LL_FEATURE_LE_2M_PHY
+9 BIT_LL_FEATURE_STABLE_MODULATION_INDEX_TRANSMITTER
+10 BIT_LL_FEATURE_STABLE_MODULATION_INDEX_RECEIVER
+11 BIT_LL_FEATURE_LE_CODED_PHY
+12 BIT_LL_FEATURE_LE_EXTENDED_ADVERTISING
+13 BIT_LL_FEATURE_LE_PERIODIC_ADVERTISING
+14 BIT_LL_FEATURE_CHANNEL_SELECTION_ALGORITHM
+15 BIT_LL_FEATURE_LE_POWER_CLASS_1
+16 BIT_LL_FEATURE_MINIMUM_NUMBER_OF_USED_CHANNELS_PROCEDURE
+)
+(//function map of mem_le_ll_feature
+//LL_FEATURE_REQ
+0x1 FUN_LL_FEATURE_LE_ENCRYPTION
+0x2 FUN_LL_FEATURE_CONNECTION_PARAMETERS_REQUEST_PROCEDURE
+0x4 FUN_LL_FEATURE_EXTENDED_REJECT_INDICATION
+0x8 FUN_LL_FEATURE_SLAVE_INITIATED_FEATURES_EXCHANGE
+0x10 FUN_LL_FEATURE_LE_PING
+0x20 FUN_LL_FEATURE_LE_DATA_PACKET_LENGTH_EXTENSION
+0x40 FUN_LL_FEATURE_LL_PRIVACY
+0x80 FUN_LL_FEATURE_EXTENDED_SCANNER_FILTER_POLICIES
+0x100 FUN_LL_FEATURE_LE_2M_PHY
+0x200 FUN_LL_FEATURE_STABLE_MODULATION_INDEX_TRANSMITTER
+0x400 FUN_LL_FEATURE_STABLE_MODULATION_INDEX_RECEIVER
+0x800 FUN_LL_FEATURE_LE_CODED_PHY
+0x1000 FUN_LL_FEATURE_LE_EXTENDED_ADVERTISING
+0x2000 FUN_LL_FEATURE_LE_PERIODIC_ADVERTISING
+0x4000 FUN_LL_FEATURE_CHANNEL_SELECTION_ALGORITHM
+0x8000 FUN_LL_FEATURE_LE_POWER_CLASS_1
+0x10000 FUN_LL_FEATURE_MINIMUM_NUMBER_OF_USED_CHANNELS_PROCEDURE
+)
+(//bit of mem_le_tx_phys and mem_le_rx_phys
+0x00 BIT_LE_1M_PHY
+0x01 BIT_LE_2M_PHY
+0x02 BIT_LE_CODED_PHY
+
+0x02 BIT_LE_CODED_PHY_S2
+0x07 BIT_LE_CODED_PHY_S8
+)
+(//map of mem_le_tx_phys and mem_le_rx_phys
+0x01 FUN_TX_LL_1M_PHY
+0x02 FUN_TX_LL_2M_PHY
+0x04 FUN_TX_LL_CODED_PHY
+
+0x01 FUN_RX_LL_1M_PHY
+0x02 FUN_RX_LL_2M_PHY
+0x04 FUN_RX_LL_CODED_PHY
+)
+(//mem_24g_data_type
+1 TYPE_MS
+2 TYPE_KB
+0x07 bits_data
+//0-2 data type
+3 bit_abort
+4 bit_hop
+5 bit_sync
+//6-7 channel offset
+)
+(
+0 ERR_NULL
+1 ERR_SYNC_TO
+2 ERR_HEC
+3 ERR_LR_LEN
+4 ERR_TYPE
+5 ERR_LEN_OVER
+6 ERR_CRC
+)
+(//mem_24g_pair_sm
+0 STATE_24G_PAIRING_NULL
+1 STATE_24G_PAIRING_1
+2 STATE_24G_PAIRING_2
+3 STATE_24G_PAIRING_3
+4 STATE_24G_PAIRING_4
+0X11 STATE_24G_PAIRING_1_WAITING_ACK
+0X12 STATE_24G_PAIRING_2_WAITING_ACK
+0X13 STATE_24G_PAIRING_3_WAITING_ACK
+0X14 STATE_24G_PAIRING_4_WAITING_ACK
+0XFF STATE_24G_PAIRING_SUCCESS
+)
+(
+0x01 DATATYPE_DEVICE1	//mouse
+0x02 DATATYPE_DEVICE2	//keyboard
+0xaa DATATYPE_BIND		//bind step 1
+0x55 DATATYPE_CONFIG	//bind step 2
+0x22 DATATYPE_OK		//bind step 3
+0xff DATATYPE_ATTEMP	//reconn
+)
+(
+5 BIND_MODE_CONTINUE
+)
+(
+0 bit_ack_24g
+)
+(//mem_24g_reconn_type
+0 DEFAULT_24G_DEVICE
+1 FAST_CONN_AND_RECEIVER
+2 FAST_CONN_AND_3_0_ADDR
+3 RECEIVER_AND_3_0_ADDR
+4 PAIR_AND_3_0_ADDR
+)
+(
+0x50 RSSI_THRESH_NOISE
+)
+(
+1 NO_ACK_24G
+0 WITH_ACK_24G
+)
+(//mem_24g_conn_sm
+0 STATE_24G_STOP
+0 STATE_24G_START
+1 STATE_24G_PAIR
+2 STATE_24G_RECONN
+)
+(//mem_24g_transmit_by_interrupt
+1 G24_TX_TIMER_INT_ENABLE
+0 G24_TX_TIMER_INT_DISABLE
+)
+(
+1 OFFSET_DATA_TYPE
+2 OFFSET_LR_DATA_TYPE
+)
+(
+0x017700 G24_LONG_SLEEP_STEP1	//8ms
+0x36ee80 G24_LONG_SLEEP_STEP2	//300ms
+0x124f80 G24_LONG_SLEEP_STEP3	//100ms
+63500 G24_8MS_INTERVAL_PARAM		//8ms
+12210 G24_4MS_INTERVAL_PARAM
+)
+(
+50 POWER_CTRL_DECRS_THRESHOLD
+)
+(//status codes
+0 STATUS_CODE_SUCCESS
+)
+(
+0xD0 VENDOR_MESSAGE_ATTR_GET
+0xD1 VENDOR_MESSAGE_ATTR_SET
+0xD2 VENDOR_MESSAGE_ATTR_SET_UNACKNOWLEDGED
+0xD3 VENDOR_MESSAGE_ATTR_STATUS
+0xD4 VENDOR_MESSAGE_ATTR_INDICATION
+0xD5 VENDOR_MESSAGE_ATTR_CONFIRMATION
+0xCF VENDOR_MESSAGE_TRANSPARENT_MSG
+)
+(//configuration message and health message opcode
+0x80 MESH_CONFIGURATION_AND_HEALTH_MESSAGE_OPCODE_HEADER
+
+0x00 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_ADD
+0x01 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_UPDATE
+0x02 MESH_MESSAGE_OPCODE_CONFIG_COMPOSITION_DATA_STATUS
+0x03 MESH_MESSAGE_OPCODE_CONFIG_CONFIG_MODEL_PUBLICATION_SET
+0x04 MESH_MESSAGE_OPCODE_HEALTH_CURRENT_STATUS
+0x05 MESH_MESSAGE_OPCODE_HEALTH_FAULT_STATUS
+0x06 MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_PUBLICATION_STATUS
+0x00 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_DELETE_NO_HEAD
+0x01 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_GET_NO_HEAD
+0x02 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_LIST_NO_HEAD
+0x03 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_STATUS_NO_HEAD
+0x04 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_GET_NO_HEAD
+0x05 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_SET_NO_HEAD
+0x06 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_SET_UNACKNOWLEDGED_NO_HEAD
+0x07 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_STATUS_NO_HEAD
+0x08 MESH_MESSAGE_OPCODE_CONFIG_COMPOSITION_DATA_GET_NO_HEAD
+0x09 MESH_MESSAGE_OPCODE_CONFIG_BEACON_GET_NO_HEAD
+0x0A MESH_MESSAGE_OPCODE_CONFIG_BEACON_SET_NO_HEAD
+0x0B MESH_MESSAGE_OPCODE_CONFIG_BEACON_STATUS_NO_HEAD
+0x0C MESH_MESSAGE_OPCODE_CONFIG_DEFAULT_TTL_GET_NO_HEAD
+0x0D MESH_MESSAGE_OPCODE_CONFIG_DEFAULT_TTL_SET_NO_HEAD
+0x0E MESH_MESSAGE_OPCODE_CONFIG_DEFAULT_TTL_STATUS_NO_HEAD
+0x0F MESH_MESSAGE_OPCODE_CONFIG_FRIEND_GET_NO_HEAD
+0x10 MESH_MESSAGE_OPCODE_CONFIG_FRIEND_SET_NO_HEAD
+0x11 MESH_MESSAGE_OPCODE_CONFIG_FRIEND_STATUS_NO_HEAD
+0x12 MESH_MESSAGE_OPCODE_CONFIG_GATT_PROXY_GET_NO_HEAD
+0x13 MESH_MESSAGE_OPCODE_CONFIG_GATT_PROXY_SET_NO_HEAD
+0x14 MESH_MESSAGE_OPCODE_CONFIG_GATT_PROXY_STATUS_NO_HEAD
+0x15 MESH_MESSAGE_OPCODE_CONFIG_KEY_REFRESH_PHASE_GET_NO_HEAD
+0x16 MESH_MESSAGE_OPCODE_CONFIG_KEY_REFRESH_PHASE_SET_NO_HEAD
+0x17 MESH_MESSAGE_OPCODE_CONFIG_KEY_REFRESH_PHASE_STATUS_NO_HEAD
+0x18 MESH_MESSAGE_OPCODE_CONFIG_MODEL_PUBLICATION_GET_NO_HEAD
+0x19 MESH_MESSAGE_OPCODE_CONFIG_MODEL_PUBLICATION_STATUS_NO_HEAD
+0x1A MESH_MESSAGE_OPCODE_CONFIG_MODEL_PUBLICATION_VIRTUAL_ADDRESS_SET_NO_HEAD
+0x1B MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_ADD_NO_HEAD
+0x1C MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_DELETE_NO_HEAD
+0x1D MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_DELETE_ALL_NO_HEAD
+0x1E MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_OVERWRITE_NO_HEAD
+0x1F MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_STATUS_NO_HEAD
+0x20 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_VIRTUAL_ADDRESS_ADD_NO_HEAD
+0x21 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_VIRTUAL_ADDRESS_DELETE_NO_HEAD
+0x22 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_VIRTUAL_ADDRESS_OVERWRITE_NO_HEAD
+0x23 MESH_MESSAGE_OPCODE_CONFIG_NETWORK_TRANSMIT_GET_NO_HEAD
+0x24 MESH_MESSAGE_OPCODE_CONFIG_NETWORK_TRANSMIT_SET_NO_HEAD
+0x25 MESH_MESSAGE_OPCODE_CONFIG_NETWORK_TRANSMIT_STATUS_NO_HEAD
+0x26 MESH_MESSAGE_OPCODE_CONFIG_RELAY_GET_NO_HEAD
+0x27 MESH_MESSAGE_OPCODE_CONFIG_RELAY_SET_NO_HEAD
+0x28 MESH_MESSAGE_OPCODE_CONFIG_RELAY_STATUS_NO_HEAD
+0x29 MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_SUBSCRIPTION_GET_NO_HEAD
+0x2A MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_SUBSCRIPTION_LIST_NO_HEAD
+0x2B MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_SUBSCRIPTION_GET_NO_HEAD
+0x2C MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_SUBSCRIPTION_LIST_NO_HEAD
+0x2D MESH_MESSAGE_OPCODE_CONFIG_LOW_POWER_NODE_POLLTIMEOUT_GET_NO_HEAD
+0x2E MESH_MESSAGE_OPCODE_CONFIG_LOW_POWER_NODE_POLLTIMEOUT_STATUS_NO_HEAD
+0x2F MESH_MESSAGE_OPCODE_HEALTH_FAULT_CLEAR_NO_HEAD
+0x30 MESH_MESSAGE_OPCODE_HEALTH_FAULT_CLEAR_UNACKNOWLEDGED_NO_HEAD
+0x31 MESH_MESSAGE_OPCODE_HEALTH_FAULT_GET_NO_HEAD
+0x32 MESH_MESSAGE_OPCODE_HEALTH_FAULT_TEST_NO_HEAD
+0x33 MESH_MESSAGE_OPCODE_HEALTH_FAULT_TEST_UNACKNOWLEDGED_NO_HEAD
+0x34 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_GET_NO_HEAD
+0x35 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_SET_NO_HEAD
+0x36 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_SET_UNACKNOWLEDGED_NO_HEAD
+0x37 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_STATUS_NO_HEAD
+0x38 MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_PUBLICATION_GET_NO_HEAD
+0x39 MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_PUBLICATION_SET_NO_HEAD
+0x3A MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_SUBSCRIPTION_GET_NO_HEAD
+0x3B MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_SUBSCRIPTION_SET_NO_HEAD
+0x3C MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_SUBSCRIPTION_STATUS_NO_HEAD
+0x3D MESH_MESSAGE_OPCODE_CONFIG_MODEL_APP_BIND_NO_HEAD
+0x3E MESH_MESSAGE_OPCODE_CONFIG_MODEL_APP_STATUS_NO_HEAD
+0x3F MESH_MESSAGE_OPCODE_CONFIG_MODEL_APP_UNBIND_NO_HEAD
+0x40 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_ADD_NO_HEAD
+0x41 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_DELETE_NO_HEAD
+0x42 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_GET_NO_HEAD
+0x43 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_LIST_NO_HEAD
+0x44 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_STATUS_NO_HEAD
+0x45 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_UPDATE_NO_HEAD
+0x46 MESH_MESSAGE_OPCODE_CONFIG_NODE_IDENTITY_GET_NO_HEAD
+0x47 MESH_MESSAGE_OPCODE_CONFIG_NODE_IDENTITY_SET_NO_HEAD
+0x48 MESH_MESSAGE_OPCODE_CONFIG_NODE_IDENTITY_STATUS_NO_HEAD
+0x49 MESH_MESSAGE_OPCODE_CONFIG_NODE_RESET_NO_HEAD
+0x4A MESH_MESSAGE_OPCODE_CONFIG_NODE_RESET_STATUS_NO_HEAD
+0x4B MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_APP_GET_NO_HEAD
+0x4C MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_APP_LIST_NO_HEAD
+0x4D MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_APP_GET_NO_HEAD
+0x4E MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_APP_LIST_NO_HEAD
+0xF2 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_ADD_OW_NO_HEAD   //overwrite
+0xF3 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_ADD_OW_STATUS
+)
+(//Modle message opcode
+0x82 MESH_MODULE_MESSAGE_OPCODE_HEADER
+
+0x01 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_GET_NO_HEAD
+0x02 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_SET_NO_HEAD
+0x03 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_SET_UNACKNOWLEDGED_NO_HEAD
+0x04 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_STATUS_NO_HEAD
+0x05 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_GET_NO_HEAD
+0x06 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_SET_NO_HEAD
+0x07 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_SET_UNACKNOWLEDGED_NO_HEAD
+0x08 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_STATUS_NO_HEAD
+0x09 MESH_MODULE_MESSAGE_OPCODE_GENERIC_DELTA_SET_NO_HEAD
+0x0A MESH_MODULE_MESSAGE_OPCODE_GENERIC_DELTA_SET_UNACKNOWLEDGED_NO_HEAD
+0x0B MESH_MODULE_MESSAGE_OPCODE_GENERIC_MOVE_SET_NO_HEAD
+0x0C MESH_MODULE_MESSAGE_OPCODE_GENERIC_MOVE_SET_UNACKNOWLEDGED_NO_HEAD
+0x0D MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_GET_NO_HEAD
+0x0E MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_SET_NO_HEAD
+0x0F MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_SET_UNACKNOWLEDGED_NO_HEAD
+0x10 MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_STATUS_NO_HEAD
+0x11 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_GET_NO_HEAD
+0x12 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_STATUS_NO_HEAD
+0x13 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_SET_NO_HEAD
+0x14 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_SET_UNACKNOWLEDGED_NO_HEAD
+0x15 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_GET_NO_HEAD
+0x16 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_SET_NO_HEAD
+0x17 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_SET_UNACKNOWLEDGED_NO_HEAD
+0x18 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_STATUS_NO_HEAD
+0x19 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LAST_GET_NO_HEAD
+0x1A MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LAST_STATUS_NO_HEAD
+0x1B MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_GET_NO_HEAD
+0x1C MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_STATUS_NO_HEAD
+0x1D MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_GET_NO_HEAD
+0x1E MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_STATUS_NO_HEAD
+0x1F MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_SET_NO_HEAD
+0x20 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x21 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_SET_NO_HEAD
+0x22 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x23 MESH_MODULE_MESSAGE_OPCODE_GENERIC_BATTERY_GET_NO_HEAD
+0x24 MESH_MODULE_MESSAGE_OPCODE_GENERIC_BATTERY_STATUS_NO_HEAD
+0x25 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_GET_NO_HEAD
+0x40 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_STATUS
+0x26 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_GET_NO_HEAD
+0x27 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_STATUS_NO_HEAD
+0x41 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_SET
+0x42 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_SET_UNACKNOWLEDGED
+0x28 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_SET_NO_HEAD
+0x29 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_SET_UNACKNOWLEDGED_NO_HEAD
+0x2A MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTIES_GET_NO_HEAD
+0x43 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTIES_STATUS
+0x2B MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_GET_NO_HEAD
+0x44 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_SET
+0x45 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_SET_UNACKNOWLEDGED
+0x46 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_STATUS
+0x2C MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTIES_GET_NO_HEAD
+0x47 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTIES_STATUS
+0x2D MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_GET_NO_HEAD
+0x48 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_SET
+0x49 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_SET_UNACKNOWLEDGED
+0x4A MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_STATUS
+0x2E MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTIES_GET_NO_HEAD
+0x4B MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTIES_STATUS
+0x2F MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_GET_NO_HEAD
+0x4C MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_SET
+0x4D MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_SET_UNACKNOWLEDGED
+0x4E MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_STATUS
+0x4F MESH_MODULE_MESSAGE_OPCODE_GENERIC_CLIENT_PROPERTIES_GET
+0x50 MESH_MODULE_MESSAGE_OPCODE_GENERIC_CLIENT_PROPERTIES_STATUS
+0x30 MESH_MODULE_MESSAGE_OPCODE_SENSOR_DESCRIPTOR_GET_NO_HEAD
+0x51 MESH_MODULE_MESSAGE_OPCODE_SENSOR_DESCRIPTOR_STATUS
+0x31 MESH_MODULE_MESSAGE_OPCODE_SENSOR_GET_NO_HEAD
+0x52 MESH_MODULE_MESSAGE_OPCODE_SENSOR_STATUS
+0x32 MESH_MODULE_MESSAGE_OPCODE_SENSOR_COLUMN_GET_NO_HEAD
+0x53 MESH_MODULE_MESSAGE_OPCODE_SENSOR_COLUMN_STATUS
+0x33 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SERIES_GET_NO_HEAD
+0x54 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SERIES_STATUS
+0x34 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_GET_NO_HEAD
+0x55 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_SET
+0x56 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_SET_UNACKNOWLEDGED
+0x57 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_STATUS
+0x35 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTINGS_GET_NO_HEAD
+0x58 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTINGS_STATUS
+0x36 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_GET_NO_HEAD
+0x59 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_SET
+0x5A MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_SET_UNACKNOWLEDGED
+0x5B MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_STATUS
+0x37 MESH_MODULE_MESSAGE_OPCODE_TIME_GET_NO_HEAD
+0x5C MESH_MODULE_MESSAGE_OPCODE_TIME_SET
+0x5D MESH_MODULE_MESSAGE_OPCODE_TIME_STATUS
+0x38 MESH_MODULE_MESSAGE_OPCODE_TIME_ROLE_GET_NO_HEAD
+0x39 MESH_MODULE_MESSAGE_OPCODE_TIME_ROLE_SET_NO_HEAD
+0x3A MESH_MODULE_MESSAGE_OPCODE_TIME_ROLE_STATUS_NO_HEAD
+0x3B MESH_MODULE_MESSAGE_OPCODE_TIME_ZONE_GET_NO_HEAD
+0x3C MESH_MODULE_MESSAGE_OPCODE_TIME_ZONE_SET_NO_HEAD
+0x3D MESH_MODULE_MESSAGE_OPCODE_TIME_ZONE_STATUS_NO_HEAD
+0x3E MESH_MODULE_MESSAGE_OPCODE_TAI_UTC_DELTA_GET_NO_HEAD
+0x3F MESH_MODULE_MESSAGE_OPCODE_TAI_UTC_DELTA_SET_NO_HEAD
+0x40 MESH_MODULE_MESSAGE_OPCODE_TAI_UTC_DELTA_STATUS_NO_HEAD
+0x41 MESH_MODULE_MESSAGE_OPCODE_SCENE_GET_NO_HEAD
+0x42 MESH_MODULE_MESSAGE_OPCODE_SCENE_RECALL_NO_HEAD
+0x43 MESH_MODULE_MESSAGE_OPCODE_SCENE_RECALL_UNACKNOWLEDGED_NO_HEAD
+0x5E MESH_MODULE_MESSAGE_OPCODE_SCENE_STATUS
+0x44 MESH_MODULE_MESSAGE_OPCODE_SCENE_REGISTER_GET_NO_HEAD
+0x45 MESH_MODULE_MESSAGE_OPCODE_SCENE_REGISTER_STATUS_NO_HEAD
+0x46 MESH_MODULE_MESSAGE_OPCODE_SCENE_STORE_NO_HEAD
+0x47 MESH_MODULE_MESSAGE_OPCODE_SCENE_STORE_UNACKNOWLEDGED_NO_HEAD
+0x9E MESH_MODULE_MESSAGE_OPCODE_SCENE_DELETE_NO_HEAD
+0x9F MESH_MODULE_MESSAGE_OPCODE_SCENE_DELETE_UNACKNOWLEDGED_NO_HEAD
+0x48 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_GET_NO_HEAD
+0x5F MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_STATUS
+0x49 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_GET_NO_HEAD
+0x4A MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_STATUS_NO_HEAD
+0x60 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_SET
+0x61 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_SET_UNACKNOWLEDGED
+0x4B MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LIGHT_LIGHTNESS_GET_NO_HEAD
+0x4C MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_SET_NO_HEAD
+0x4D MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_SET_UNACKNOWLEDGED_NO_HEAD
+0x4E MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_STATUS_NO_HEAD
+0x4F MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_GET_NO_HEAD
+0x50 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_SET_NO_HEAD
+0x51 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_SET_UNACKNOWLEDGED_NO_HEAD
+0x52 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_STATUS_NO_HEAD
+0x53 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LAST_GET_NO_HEAD
+0x54 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LAST_STATUS_NO_HEAD
+0x55 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_GET_NO_HEAD
+0x56 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_STATUS_NO_HEAD
+0x57 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_GET_NO_HEAD
+0x58 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_STATUS_NO_HEAD
+0x59 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_SET_NO_HEAD
+0x5A MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x5B MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_SET_NO_HEAD
+0x5C MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x5D MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_GET_NO_HEAD
+0x5E MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_SET_NO_HEAD
+0x5F MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_SET_UNACKNOWLEDGED_NO_HEAD
+0x60 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_STATUS_NO_HEAD
+0x61 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_GET_NO_HEAD
+0x62 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_GET_NO_HEAD
+0x63 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_STATUS_NO_HEAD
+0x64 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_SET_NO_HEAD
+0x65 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_SET_UNACKNOWLEDGED_NO_HEAD
+0x66 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_STATUS_NO_HEAD
+0x67 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_GET_NO_HEAD
+0x68 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_STATUS_NO_HEAD
+0x69 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_SET_NO_HEAD
+0x6A MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x6B MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_SET_NO_HEAD
+0x6C MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x6D MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_GET_NO_HEAD
+0x6E MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_GET_NO_HEAD
+0x6F MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_SET_NO_HEAD
+0x70 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_SET_UNACKNOWLEDGED_NO_HEAD
+0x71 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_STATUS_NO_HEAD
+0x72 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_GET_NO_HEAD
+0x73 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_SET_NO_HEAD
+0x74 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_SET_UNACKNOWLEDGED_NO_HEAD
+0x75 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_STATUS_NO_HEAD
+0x76 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SET_NO_HEAD
+0x77 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SET_UNACKNOWLEDGED_NO_HEAD
+0x78 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_STATUS_NO_HEAD
+0x79 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_TARGET_GET_NO_HEAD
+0x7A MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_TARGET_STATUS_NO_HEAD
+0x7B MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_GET_NO_HEAD
+0x7C MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_STATUS_NO_HEAD
+0x7D MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_RANGE_GET_NO_HEAD
+0x7E MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_RANGE_STATUS_NO_HEAD
+0x7F MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_SET_NO_HEAD
+0x80 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x81 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_RANGE_SET_NO_HEAD
+0x83 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_GET_NO_HEAD
+0x84 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_SET_NO_HEAD
+0x85 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_SET_UNACKNOWLEDGED_NO_HEAD
+0x86 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_STATUS_NO_HEAD
+0x87 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_TARGET_GET_NO_HEAD
+0x88 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_TARGET_STATUS_NO_HEAD
+0x89 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_GET_NO_HEAD
+0x8A MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_STATUS_NO_HEAD
+0x8B MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_GET_NO_HEAD
+0x8C MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_STATUS_NO_HEAD
+0x8D MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_SET_NO_HEAD
+0x8E MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x8F MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_SET_NO_HEAD
+0x90 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x91 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_GET_NO_HEAD
+0x92 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_SET_NO_HEAD
+0x93 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_SET_UNACKNOWLEDGED_NO_HEAD
+0x94 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_STATUS_NO_HEAD
+0x95 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_GET_NO_HEAD
+0x96 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_SET_NO_HEAD
+0x97 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_SET_UNACKNOWLEDGED_NO_HEAD
+0x98 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_STATUS_NO_HEAD
+0x99 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_GET_NO_HEAD
+0x9A MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_SET_NO_HEAD
+0x9B MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_SET_UNACKNOWLEDGED_NO_HEAD
+0x9C MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_STATUS_NO_HEAD
+0x9D MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_GET_NO_HEAD
+0x62 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_SET
+0x63 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_SET_UNACKNOWLEDGED
+0x64 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_STATUS)
+
+// status code
+(
+0x00 MESH_SUCCESS
+0x01 MESH_INVALID_ADDRESS
+0x02 MESH_INVALID_MODEL
+0x03 MESH_INVALID_APPKEYINDEX
+0x04 MESH_INVALID_NETKEYINDEX
+0x05 MESH_INSUFFICIENT_RESOURCES
+0x06 MESH_KEYINDEX_ALREAD_STORED
+0x07 MESH_INVALID_PUBLISH_PARAMETERS
+0x08 MESH_NOT_A_SUBSCRIBE_MODEL
+0x09 MESH_STORAGE_FAILURE
+0x0a MESH_FEATURE_NOT_SUPPORTED
+0x0b MESH_CANNOT_UPDATE
+0x0c MESH_CANNOT_REMOVE
+0x0d MESH_CANNOT_BIND
+0x0e MESH_TEMPORARILY_UNABLE_TO_CHANGE_STATE
+0x0f MESH_CANNOT_SET
+0x10 MESH_UNSPECIFIED_ERROR
+0x11 MESH_INVALID_BINDING
+)
+(
+0x00F0 VENDOR_MESSAGE_TMALL_DST
+)
+(// vendor model attribute
+0x0123 VENDOR_ATTR_COLOR_SERVER
+0x0100 VENDOR_ATTR_GENERIC_ONOFF_SERVER
+0x0121 VENDOR_ATTR_LIGHTNESS_LEVEL_SERVER
+0x0122 VENDOR_ATTR_COLOR_TEMPERATURE_SERVER
+0x0534 VENDOR_ATTR_MAIN_LIGHT_SERVER
+0x0533 VENDOR_ATTR_BACKGROUND_LIGHT_ONOFF_SERVER
+0xf004 VENDOR_ATTR_SCENE_SERVER
+)
+(//Timer opcode
+0x01A8 VENDOR_MESSAGE_OPCODE_COMPANY_ID
+//ʱ��
+0xF01F VENDOR_MESSAGE_ATTR_TYPE_TIME
+//ʱ��
+0xF01E VENDOR_MESSAGE_ATTR_TYPE_TIME_ZONE
+//��ʱ
+0xF01D VENDOR_MESSAGE_ATTR_TYPE_ON_TIME
+//��ʱ
+0xF010 VENDOR_MESSAGE_ATTR_TYPE_TIMING
+//���ڶ�ʱ
+0xF011 VENDOR_MESSAGE_ATTR_TYPE_CYCLE_TIMING
+//ɾ����ʱ
+0xF012 VENDOR_MESSAGE_ATTR_TYPE_DELETE_TIMING
+
+//��ɫ
+0x0123 VENDOR_MESSAGE_ATTR_TYPE_COLOR
+//����
+0x0534 VENDOR_MESSAGE_ATTR_TYPE_MAIN_LIGHT
+//�����
+0x0533 VENDOR_MESSAGE_ATTR_TYPE_BACKGROUND_LIGHT
+)
+(//��èevent�¼���
+//�豸�������¼��������ϵ���߶�ʱ���
+0xF009 VENDOR_ATTR_TYPE_EVENT_TRIGGER
+
+//��è�豸�ϵ�
+0x03 VENDOR_MESSAGE_EVENT_DEVICE_POWER_ON
+//��è��ʱ���
+0x11 VENDOR_MESSAGE_EVENT_FINISH_TIMING
+)
+(
+0x80 VENDOR_MESSAGE_SEND_TID_MIN
+0xC0 VENDOR_MESSAGE_SEND_TID_MAX
+)
+(
+0x59 TIMER_CYCLICAL_FALG
+60 SECONDS_OF_MIN
+345600 SECONDS_OF_FOUR_DAYS
+604800 SECONDS_OF_WEEK
+86400 SECONDS_OF_DAY
+0x01e0 EIGHT_HOURS_TIME_ZONE_OFFSET
+
+)
+(
+0xF013 VENDOR_MSEEAGE_ATTR_TYPE_SET_TIME_SINGLE
+0xF014 VENDOR_MSEEAGE_ATTR_TYPE_SET_TIME_REPEAT
+0xF015 VENDOR_MSEEAGE_ATTR_TYPE_SET_TIME_CIRCULATION
+0xF016 VENDOR_MSEEAGE_ATTR_TYPE_TIMER_ENABLE
+0xF017 VENDOR_MESSAGE_ATTR_TYPE_TIMER_DELEATE
+0xF018 VENDOR_MESSAGE_ATTR_TYPE_TIMER_INQUIRE
+0xF019 VENDOR_MESSAGE_ATTR_TYPE_TIMER_EVENT_INQUIRE
+
+)
+(
+0xF020 VENDOR_ATTR_TYPE_EVENT_INDEX_REPORT
+)
+(
+0x0d MESH_X_TIMERS
+)
+(
+6 ADV_PACKET_MIN_LENGTH
+37 ADV_PACKET_MAX_LENGTH
+
+1 AD_TYPE_MIN_LENGTH
+30 AD_TYPE_MAX_LENGTH
+)
+(
+13 mesh_ble_rx_timer
+)
+(//transport mic cache parameter
+10 TRANSPORT_MIC_CACHE_SPACE_NUM
+4 TRANSPORT_MIC_CACHE_SPACE_SIZE
+//�ܳ�����һ��space
+36 TRANSPORT_MIC_CACHE_TOTAL_SIZE
+)
+(
+0x00 MESH_EEP_THREE_TUPLE_OFFSET
+0x1a MESH_EEP_NETWORK_KEY_OFFSET
+0x2d MESH_EEP_APPLICATION_KEY_OFFSET
+0x3d MESH_EEP_DEVICE_KEY_OFFSET
+0x4d MESH_EEP_RESET_COUNT_OFFSET
+0x4e MESH_EEP_SEQ_OFFSET
+0x51 MESH_EEP_SUBSCRIPTION_OFFSET
+0x91 MESH_EEP_PROV_RANDOM_OFFSET
+)
+(
+0x1a MESH_EEP_THREE_TUPLE_LENGTH
+0x13 MESH_EEP_NETWORK_KEY_LENGTH
+0x10 MESH_EEP_APPLICATION_KEY_LENGTH
+0x10 MESH_EEP_DEVICE_KEY_LENGTH
+0x01 MESH_EEP_RESET_COUNT_LENGTH
+0x03 MESH_EEP_SEQ_LENGTH
+0x10 MESH_EEP_SUBSCRIPTION_LENGTH
+0x40 MESH_EEP_SUBSCRIPTION_TOTAL_LENGTH
+0x04 MESH_EEP_PROV_RANDOM_LENGTH
+)
+(
+0x1e000 MESH_FLASH_NETWORK_KEY_ADDR
+0x1e100 MESH_FLASH_APPLICATION_KEY_ADDR
+0x1e200 MESH_FLASH_DEVICE_KEY_ADDR
+0x1f000 MESH_FLASH_MESSAGE_SEQ_ADDR
+0x1e400 MESH_FLASH_SUBSCRIPTION_ADDR
+0x1e500 MESH_FLASH_PROV_RANDOM_ADDR
+)
+(//mem_mesh_advertising_unprovisioned_device_beacon_switch
+0 DEVICE_BEACON_OFF
+1 DEVICE_BEACON_ON
+)
+(
+//δ�����㲥��ʱ10min
+0x1770	ADV_UNPROVISIONED_DEVICE_BEACON_TIMEOUT
+//δ�����㲥���500ms
+5		ADV_UNPROVISIONED_DEVICE_BEACON_INTERVAL
+//δ�����㲥ʱ��120ms=20ms*6
+6		ADV_UNPROVISIONED_DEVICE_BEACON_DURATION
+
+//��Ĭ�㲥��ʱ:��
+0		ADV_SILENCE_DEVICE_BEACON_TIMEOUT
+//��Ĭ�㲥���60s
+600		ADV_SILENCE_DEVICE_BEACON_INTERVAL
+//��Ĭ�㲥ʱ��120ms=20ms*6
+6		ADV_SILENCE_DEVICE_BEACON_DURATION
+
+
+//������㲥���
+0x4		ADV_PAIRING_MESH_MESSAGE_INTERVAL
+//������㲥ʱ��
+20		ADV_PAIRING_MESH_MESSAGE_DURATION
+
+30		ADV_RELAY_MESH_MESSAGE_DURATION
+)
+(
+0x12 MAX_APP_MSSAGE_PAYLOAD_LENGTH
+7 BIT_OF_APP_PACKAGE_NUM
+6 BIT_OF_ADV_IN_OFF
+)
+(
+//mesh �ظ�APP�㲥���24*0.625ms = 15ms
+0x15 MESH_ADV_APP_MESSAGE_INTERVAL
+//mesh�ظ�tmall�㲥���32*0.625ms = 20ms
+0x1d MESH_ADV_TMALL_MESSAGE_INTERVAL
+)
+(
+13 mesh_ble_adv_app
+//Tiny Mesh�㲥tmall�ظ�
+14 mesh_ble_adv_tmall
+//Tiny Mesh relay
+15 mesh_ble_relay_timer
+)
+(
+0x2c COMMA
+-4 DECREASED_FOUR
+
+)
+(
+0x19 MIC_SIZE_64BIT
+0x09 MIC_SIZE_32BIT
+)
+(
+33 GATT_RECEIVE_MSG_BUFFER_SIZE
+)
+(//mem_mesh_provisioned_flag
+0 PAIRED_STATUS
+1 UNPROVISIONED_BEACON_STATUS
+2 PAIRING_STATUS
+3 SILENCE_BEACON_STATUS
+4 RECEIVED_CONFIG_APPKEY_ADD
+5 WAIT_RECEIVE_APPKEY
+6 RECEIVE_CONFIG_COMPOSITION_DATA_GET
+)
+(//mem_mesh_UUID_FeatureFlag
+0 BIT_SILENCE_ADV_FLAG
+)
+(
+0x01 UNPROVISIONED_ADLEN_LENGTH
+0x01 UNPROVISIONED_ADTYPE_LENGTH
+0x01 UNPROVISIONED_DEVICE_BEACON_LENGTH
+0x10 UNPROVISIONED_DEVICE_UUID_LENGTH
+0x02 UNPROVISIONED_OOB_INFORMATION_LENGTH
+)
+(
+0x00 UNPROVISIONED_DEVICE_BEACON
+0x01 SECURE_NETWORK_BEACON
+0x1827 MESH_PROVISIONING_UUID
+0x1828 MESH_PROXY_SERVICE
+
+)
+(
+0x00 PROVISIONING_RANDOM
+0x01 PROVISIONING_CONFIRMATION
+0x02 PROVISIONING_DATA
+0x03 PROVISIONING_COMPLETE
+0x04 PROVISIONING_CONFIG
+0x05 PROVISIONING_CONFIG_ACK
+0x06 PROVISIONING_IOS_DATA
+0x07 PROVISIONING_SEND_IOS_DATA
+0x09 PROVISIONING_ADD_APPKEY
+0x0A PROVISIONING_ADD_APPKEY_ACK
+)
+(//mem_mesh_Provisioning_State_Flag
+// FLAG bit1:Provisioning Confirmation
+1 RECEIVE_PROVISIONING_RANDOM
+2 RECEIVE_PROVISIONING_DATA
+3 RECEIVE_PROVISIONING_ADD_APPKEY
+)
+(//provisioning packet info size
+3 PROVISIONING_PACKET_LENGTH_FLAGS
+6 PROVISIONING_PACKET_LENGTH_AD_TYPE_COMPANY_ID_VID_PROVISIONING_TYPE
+5 PROVISIONING_PACKET_AD_TYPE_COMPANY_ID_VID_PROVISIONING_TYPE
+1 PROVISIONING_PACKET_LENGTH
+1 PROVISIONING_PACKET_AD_TYPE
+2 PROVISIONING_PACKET_COMPANY_ID
+1 PROVISIONING_PACKET_VID
+1 PROVISIONING_PACKET_PROVISIONING_TYPE
+//provisioning random
+2 PROVISIONING_PACKET_RANDOM_MAC
+8 PROVISIONING_PACKET_RANDOM_RANDOM_A
+8 PROVISIONING_PACKET_RANDOM_RANDOM_B
+//provisioning confirmation
+2 PROVISIONING_PACKET_CONFIRMATION_MAC
+16 PROVISIONING_PACKET_CONFIRMATION_DEVICE
+//provisioning complete
+6 PROVISIONING_PACKET_COMPLETE_MAC
+//provisioning add appkey ack
+7 PROVISIONING_PACKET_ADD_APPKEY_ACK
+
+2 PROVISIONING_CONFIG_ACK_MAC
+1 PROVISIONING_CONFIG_ACK_FIELD
+
+)
+(
+0x01 PROVISIONING_CONFIG_ACK_NOTE
+)
+(//gatt package struct
+0 GATT_PACKAGE_MSG_ID
+1 GATT_PACKAGE_PACKAGE_NUM
+2 GATT_PACKAGE_LENGTH
+3 GATT_PACKAGE_PAYLOAD
+)
+(
+0x12 MAX_LENGTH_PRIVISIONING_CONTROL_MSG_ANDROID
+0x08 MAX_LENGTH_PRIVISIONING_CONTROL_MSG_IOS
+0x07 MAX_LENGTH_PRIVISIONING_PAIRING_MSG_IOS
+)
+(
+4 MAX_GATT_PACKAGE_NUM
+50 GATT_RECEIVE_TIMEOUT
+)
+(//mem_mesh_fast_pairing_timer
+300 FAST_PAIRING_TIMEOUT_PROVISIONING
+200 FAST_PAIRING_TIMEOUT_PROXY
+)
+(//mem_mesh_add_appkey_ack_timer
+2 FAST_PAIRING_TIMEOUT_ADD_APPKEY_ACK
+)
+(
+8 SUBSCRIPTION_MAX_COUNT
+)
+(
+20 HEALTH_NODE_RESET_TIMEOUT
+)
+(//typedef struct of mem_mesh_element_device
+0 ELEMENT_DEVICE_GROUP_ADDR
+2 ELEMENT_DEVICE_QUEUE_BUFFER_PTR
+4 ELEMENT_DEVICE_VENDOR_TIME_PTR
+6 ELEMENT_DEVICE_SUBSCRIPTION_LABEL
+22 ELEMENT_DEVICE_UPPER_ADV_FLAG
+23 ELEMENT_DEVICE_UPPER_QUEUE_PTR
+25 ELEMENT_DEVICE_TRAN_PACKAGE_TID
+26 ELEMENT_DEVICE_TRAN_PACKAGE_TYPE
+27 SIZEOF_ELEMENT_DEVICE
+
+)
+(
+36 MESH_SEGMENT_SIZE
+)
+(
+320 MESH_TIMER_BUFFER_SIZE
+)
+(//bit map of mem_mesh_core_feature
+0 MESH_FEATURE_DISABLE_LOG
+1 MESH_FEATURE_DISABLE_RELAY
+2 MESH_FEATURE_DISABLE_SUBSCRIPTION
+3 MESH_FEATURE_DISABLE_APP_PAIRING
+)
+(//taobao id
+0x01a8	COMPANY_IDENTIFIERS_ALIBABA
+0x0d	ALI_MESH_VID_NUMBER
+0x0da801 COMPANY_ID_ALIBABA_AND_VID
+0x0ea801 COMPANY_ID_ALIBABA_AND_VID_GATT
+)
+(
+0x00 MESH_CODE_INIT
+0x01 MESH_RECEIVE_PROVISIONING_PACKET
+0x02 MESH_RECEIVE_PROVISIONING_RANDOM_PACKET
+0x03 MESH_SEND_PROVISIONING_CONFIRMATION_PACKET
+0x04 MESH_RECEIVE_PROVISIONING_DATA_PACKET
+0x05 MESH_SEND_PROVISIONING_COMPLETE_PACKET
+0x06 MESH_RECEIVE_PROVISIONING_FAILED_PACKET
+0x07 MESH_RECEIVE_PROVISIONING_ADD_APPKEY_PACKET
+0x08 MESH_SEND_PROVISIONING_ADD_APPKEY_ACK_PACKET
+
+0x10 MESH_ENCRYPT_SHA256_FUNCTION_INPUT
+0x11 MESH_ENCRYPT_SHA256_FUNCTION_RESULT
+0x12 MESH_ENCRYPT_AES_CMAC_FUNCTION_INPUT_M
+0x13 MESH_ENCRYPT_AES_CMAC_FUNCTION_INPUT_K
+0x14 MESH_ENCRYPT_AES_CMAC_FUNCTION_RESULT
+
+0x20 MESH_NETWORK_RECEIVE_PACKET
+0x21 MESH_NETWORK_RELAY_PACKET
+
+0x30 MESH_LOWER_RECEIVE_PACKET
+0x40 MESH_UPPER_RECEIVE_PACKET
+0x41 MESH_UPPER_SEND_PACKET
+
+0x50 MESH_ACCESS_RECEIVE_MESSAGE
+
+0x60 MESH_PROXY_RECEIVE_MESSAGE_HANDLE
+0x61 MESH_PROXY_RECEIVE_MESSAGE
+
+0xF0 MESH_MESSAGE_GENERIC_ONOFF_SET
+0xF1 MESH_MESSAGE_SET_LIGHT_LIGHTNESS
+0xF2 MESH_MESSAGE_SET_CTL
+)
+(//LUA LOG
+0xAA LUA_LOG_PACKET_HEADER
+0x03 LUA_LOG_PAKCET_TYPE
+0xBB LUA_LOG_PACKET_TRAIL
+)
+(//logging level
+0 LOGGING_DEBUG
+1 LOGGING_INFO
+2 LOGGING_WARNING
+3 LOGGING_ERROR
+4 LOGGING_CRITICAL
+)
+(
+0x1c00 mem_mesh_uart_log_rx_buff
+0x1c01 mem_mesh_uart_log_rx_buff_end
+0x1c02 mem_mesh_uart_log_tx_buff
+0x1fff mem_mesh_uart_log_tx_buff_end
+)
+(
+0x77 MESH_PAIRED_INFO_LENGTH
+)
+(
+0x01 MESH_CHIP_FROM_EEPROM
+0x02 MESH_CHIP_FROM_FLASH
+)
+(
+7 TRANSPORT_HEAD_BIT_SEG
+6 TRANSPORT_HEAD_BIT_AKF
+05 TRANSPORT_HEAD_BIT_AID
+7 BIT_CTL
+)
+(//Generic OnOff
+0x00 GENERIC_ONOFF_CMD_OFF
+0x01 GENERIC_ONOFF_CMD_ON
+)
+(//LIGHTNESS
+0xFFFF ALI_MESH_LIGHTNESS_MAX
+0x0064 ALI_MESH_LIGHTNESS_LEVEL
+)
+(//TEMPERATURE
+0x4E20 ALI_MESH_TEMPERATURE_MAX
+0x0320 ALI_MESH_TEMPERATURE_MIN
+0x0064 ALI_MESH_TEMPERATURE_LEVEL
+)
+(//nonce type
+0x00 NETWORK_NONCE
+0x01 APPLICATION_NONCE
+0x02 DEVICE_NONCE
+0x03 PROXY_NONCE
+)
+(
+0x00c0 GROUP_ADDRESS_0XC000_little_endian
+0xffcf GROUP_ADDRESS_0XCFFF_little_endian
+0x02c0 GROUP_ADDRESS_0XC002_little_endian
+0x07c0 GROUP_ADDRESS_0XC007_little_endian
+0x01c0 GROUP_ADDRESS_0XC001_little_endian
+0xffff GROUP_ADDRESS_0XFFFF_little_endian
+)
+(//SRC SEQ cache parameter
+10 CACHE_SPACE_NUM
+5 CACHE_SPACE_SIZE
+)
+(
+12 MESH_NETWORK_PACKET_MIN_LENGTH
+30 MESH_NETWORK_PACKET_MAX_LENGTH
+)
+(
+0 MESH_MESSAGE_TMALL
+1 MESH_MESSAGE_APP
+2 MESH_MESSAGE_PROXY
+)
+(
+
+0x20 MESH_ADV_RELAY_MESSAGE_INTERVAL
+)
+(
+0x00 MESH_PROXY_SERVICE_DATA_ID_TYPE_NETWORK_ID
+0x01 MESH_PROXY_SERVICE_DATA_ID_TYPE_NODE_IDENTITY
+)
+(
+0x00 MESH_PROXY_MESSAGE_TYPE_NETWORK_PDU
+0x01 MESH_PROXY_MESSAGE_TYPE_MESH_BEACON
+0x02 MESH_PROXY_MESSAGE_TYPE_PROXY_CONFIGURATION
+0x03 MESH_PROXY_MESSAGE_TYPE_PROVISIONING_PDU
+)
+(
+0x0e	MESH_PROXY_DATA_IN_HANDLE
+0x10	MESH_PROXY_DATA_OUT_HANDLE
+0x11	MESH_PROXY_ENABLE_DATA_OUT_HANDLE
+0x14	MESH_PROVISIONING_DATA_IN_HANDLE
+0x16	MESH_PROVISIONING_DATA_OUT_HANDLE
+0x17	MESH_PROVISIONING_ENABLE_DATA_OUT_HANDLE
+)
+(
+0x00 PROXY_OPCODE_SET_FILTER_TYPE
+0x01 PROXY_OPCODE_ADD_ADDR_TO_FILTER
+0x02 PROXY_OPCODE_REMOVE_ADDR_TO_FILTER
+0x03 PROXY_OPCODE_FILTER_STATUS
+)
+(
+15 UNSEGMENTED_ACCESS_MESSAGE_MAX_UPPER_TRANSPORT_ACCESS_PDU_LEN
+12 SEGMENTED_ACCESS_MESSAGE_UNINT_PDU_LEN
+)
+(//bit of mem_mesh_upper_tran_layer_temp_packet_flag
+7 BIT_UPPER_FLAG_PROXY_CONTROL
+6 BIT_UPPER_FLAG_APP_CONTROL
+5 BIT_UPPER_FLAG_VENDOR_INDICATION
+4 BIT_UPPER_FLAG_RETRANSMIT
+//BIT3-0
+0x0f DATA_UPPER_FLAG_MAX_RETRY_COUNT
+
+1 UPPER_RETRY_COUNT_STATUS
+1 UPPER_RETRY_COUNT_INDICATION
+)
+(
+0 NULL_PACKET_ADVERTISING
+1 PACKET_IN_BEARER
+2 PACKET_IN_ADVERTING
+3 PACKET_RECEIVE_INDICATION
+)
+(
+1 UPPER_TRAN_TMALL_MESSAGE
+2 UPPER_TRAN_APP_MESSAGE
+3 UPPER_TRAN_TMALL_AND_APP
+
+0 BIT_UPPER_TRAN_TMALL_MESSAGE
+1 BIT_UPPER_TRAN_APP_MESSAGE
+2 BIT_UUPER_TRAN_PROXY_MESSAGE
+)
+(
+30 MESH_RECEIVE_NEW_MESSAGE_TIMER
+)
+(
+0 QUEUE_OFFSET_EACH_SIZE
+1 QUEUE_OFFSET_LENGTH
+2 QUEUE_OFFSET_CURR_NUM
+3 QUEUE_OFFSET_READ_PTR
+4 QUEUE_OFFSET_WRITE_PTR
+5 QUEUE_OFFSET_ELE_INIT_ADDR
+)
+(
+//Flash Register
+0x05 FLASH_READ_SATUS
+
+// Flash Status Register
+0x00 FLASH_STATUS_WIP
+0X01 FLASH_STATUS_WEL
+0X02 FLASH_STATUS_BP0
+0X03 FLASH_STATUS_BP1
+
+//Flash Write Sm
+0X00 FLASH_SM_NO_BUYS
+0X01 FLASH_SM_START
+0X02 FLASH_SM_ERASE_SECTOR
+0X03 FLASH_SM_WAIT_ERASE_SECTOR
+0X04 FLASH_SM_WRITE_DATA
+0X05 FLASH_SM_WAIT_WRITE_DATA
+
+
+//Flash Command
+0x02 FLASH_COMMAND_WRITE_DATA
+0x03 FLASH_COMMAND_READ_DATA
+0x06 FLASH_COMMAND_WRITE_ENABLE
+0x20 FLASH_COMMAND_SECTOR_ERASE
+0xAB FLASH_COMMAND_RELEASE_FROM_POWERDOWN
+0xB9 FLASH_COMMAND_POWERDOWN
+
+)
+(
+7 OTP_UFLAG_MEMFIX2
+6 OTP_UFLAG_MEMFIX1
+5 OTP_UFLAG_MEMFIX0
+4 OTP_UFLAG_BIST
+3 OTP_UFLAG_AES
+2 OTP_UFLAG_SKIP_EEP
+1 OTP_UFLAG_SKIP_FLASH
+0 OTP_UFLAG_HCI
+)
+(
+0 OTP_OFFSET_PATCH_PTR //2 byte
+2 OTP_OFFSET_UCODE_FLAG
+3 OTP_OFFSET_DEVICE_OPTION
+4 OTP_OFFSET_PERIPHERALS_LOCK
+5 OTP_OFFSET_SCHED_BISTFIX 	//2 byte
+7 OTP_OFFSET_XRAM_BISTFIX	//2 byte
+9 OTP_OFFSET_PATCH_BISTFIX	//2 byte
+
+0xfc0 OTP_OFFSET_ADC_PARAM_L_C0
+
+0xfd0 OTP_OFFSET_ADC_PARAM_L
+0xff0 OTP_OFFSET_UCODE_KEY_L
+0x1000 OTP_OFFSET_H
+
+//0x1fd0 OTP_OFFSET_ADC_PARAM
+//0x1fec OTP_OFFSET_HV_SEL
+//0x1fed OTP_OFFSET_LDO_VSEL
+//0x1fee OTP_OFFSET_LOADCODE_DELAY
+//0x1fef OTP_OFFSET_LOADCODE_CHECKSUM
+0x1ff0 OTP_OFFSET_UCODE_KEY
+)
+(
+4 DVC_OP_DONGLE
+5 DVC_OP_TEST
+6 DVC_OP_SHUTTER_DY
+8 DVC_OP_MOUSE
+9 DVC_OP_SHUTTER
+0X0A DVC_OP_MODULE
+0X0B DVC_OP_MESH
+0X0C DVC_OP_HCI_BOOT
+0X0D DVC_OP_REMOTE_CAR
+0X0E DVC_OP_CAR
+0X0F DVC_OP_KEYBOARD
+)
+(
+7 GPIO_ACTIVE_BIT
+)
+(
+5 LPM_WAKE_UP_DELAY_TIMER
+)
+(
+2 APP_DISC_RSN_SIZE
+)
+(
+0 APP_DISC_BY_BUTTON
+7 APP_DISC_BLE
+)
+(
+0xaa55 EEPROM_INIT_FLAG
+)
+(
+1 KEY_CONF_STRUCT_LEN
+0 KEY_PIN_OFFSET
+)
+(
+12000000 PWM_12MHZ
+24000000 PWM_24MHZ
+33000 PWM_33KHZ
+)
+(
+0 POWER_OFF
+1 POWER_STARTING
+2 POWER_STANDBY
+)
+(
+0 power_state_offset
+1 power_timer_offset
+2 power_off_timeout_offset
+3 power_starting_timeout_offset
+4 power_off_cb_offset
+6 power_starting_cb_offset
+8 power_standby_cb_offset
+10 ui_butten_up_cb_offset
+)
+(
+0x9000 MOUSE_BLE_ATT_LIST_ADDR
+0x9272 USB_KBDATA_VENDOR_DEFINE_ADDR
+0x928d USB_KBDATA_ADDR
+0x92cd USB_MSDATA_ADDR
+0x9371 USB_DEVICEDATA_ADDR
+0x9384 USB_CONFDATA_ADDR
+0x93c0 BLE_SHUTTER_GATT_LIST_ADDR
+0x94f9 BLE_SHUTTER_KEY_VALUE_LIST_ADDR
+0x9521 BLE_CAR_ATT_LIST_ADDR
+0x95ed BLE_MESH_SHA256_ADDR
+0x97fc mem_sim_slave
+)
+(//NEC 61212
+9000 NEC61212_BOOT_CODE_START_TIME
+4500 NEC61212_BOOT_CODE_END_TIME
+
+9000 NEC61212_REPEAT_START_TIME
+2250 NEC61212_REPEAT_END_TIME
+
+560 NEC61212_DATA_BIT_1_START_TIME
+1690 NEC61212_DATA_BIT_1_END_TIME
+
+560 NEC61212_DATA_BIT_0_START_TIME
+560 NEC61212_DATA_BIT_0_END_TIME
+
+560 NEC61212_STOP_TIME
+
+42580 NEC61212_DATA2REPEAT_TIME
+98190 NEC61212_REPEAT2REPEAT_TIME
+
+0xffff NEC61212_TIMEOUT_TIME
+)
+(
+1 CLK_CALIBRATION_DONE
+2 RC_CLK_CALIBRATION_DONE
+3 AES_DEC_KEY_INIT_DONE
+4 MEASURE_ADC_SUM_DONE
+5 SARADC_DONE
+)
+(
+1 ADC_CONFIG_HVIN
+2 ADC_CONFIG_GPIO
+)
+(
+0 ADC_CH_VBAT
+1 ADC_CH_VDCDC5V
+6 ADC_CH_GPIO_4
+7 ADC_CH_GPIO_2
+8 ADC_CH_GPIO_1
+9 ADC_CH_GPIO_3
+10 ADC_CH_GPIO_0
+11 ADC_CH_GPIO_5
+12 ADC_CH_GPIO_6
+13 ADC_CH_GPIO_7
+)
+(
+0x06 ADC_CH_GPIO18
+0x07 ADC_CH_GPIO10
+0x08 ADC_CH_GPIO9
+0x09 ADC_CH_GPIO12
+0x0a ADC_CH_GPIO6
+0x0b ADC_CH_GPIO20
+0x0c ADC_CH_GPIO21
+0x0d ADC_CH_GPIO22
+0x0e ADC_CH_GPIO13
+)
+(
+1 SADC_REFERENCE_INTER3V
+2 SADC_REFERENCE_INTER1P8V_DIV2
+)
+(
+//20ms
+0x0020	FAST_ADV_INTERVAL_VALUE_CAR
+)
+(
+0x19 ATT_CAR_CONTROL_HANDLE
+0x19 ATT_SPEED_SET_HANDLE
+)
+(
+0 TURN_FRONT
+1 TURN_LEFT
+2 TURN_RIGHT
+0 MOTOR_STOP
+1 GO_FRONT
+2 GO_BACK
+0x6b5a LE_RECEIVE_PACKET_HEAD
+)
+(
+0 FLAG_IR_DISABLE
+1 FLAG_IR_ENABLE
+)
+(
+0 DEVICE_CAR
+1 DEVICE_TANK
+2 DEVICE_BATTLE_CAR
+3 DEVICE_BATTLE_TANK
+4 DEVICE_REMOTE
+)
+(
+0 F_B_MOTOR
+1 L_R_MOTOR
+2 F_B_BATTERY
+3 L_R_BATTERY
+)
+(
+0 CAR_WORK	   		//connect mode normal
+1 CAR_BIND			//code pair mode
+2 CAR_TEST			//test mode
+3 CAR_CODE			//PC_application
+4 CAR_PCBA			//PCBA_TEST
+5 CAR_DEBUG
+6 CAR_MODE_MAX
+7 CAR_SEARCH
+)
+(
+1 SPEED_LEVEL_1
+2 SPEED_LEVEL_2
+3 SPEED_LEVEL_3
+4 SPEED_LEVEL_4
+5 SPEED_LEVEL_5
+6 SPEED_LEVEL_6
+7 SPEED_LEVEL_7
+8 SPEED_LEVEL_8
+9 SPEED_LEVEL_9
+10 SPEED_LEVEL_10
+)
+(
+0 PWM0_DUTY_SETTING
+1 PWM1_DUTY_SETTING
+2 PWM2_DUTY_SETTING
+)
+(
+1 CAR_CMD_BATTERY
+2 CAR_CMD_OLD_CAR_CONTROL
+3 CAR_CMD_OLD_SPEED_CONTROL
+4 CAR_CMD_L_R_MOTOR_CONTROL
+5 CAR_CMD_F_B_MOTOR_CONTROL
+6 CAR_CMD_IR_CONTROL
+7 CAR_CMD_LED_CONTROL
+8 CAR_CMD_DEVICE_INFO
+)
+(
+0 CAR_REMOTE_CHECK_BUTTON
+1 CAR_REMOTE_CHECK_ROCKER
+)
+(
+0x11 CAR_NOTIFY_HANDLE
+)
+(
+0 LED_OFF
+1 LED_ON
+2 LED_BLINK
+0xFF LED_INVALID
+)
+(
+0xFF INVALID_PIN_NUM
+)
+(
+0 POWER_ON
+1 WORK_PAIRED
+2 WORK_SEARCH
+)
+(
+0x700 OTP_OFFSET_CAR_COMMOM_START_ADDR
+0x7cc OTP_OFFSET_CAR_COMMOM_END_ADDR
+)
+(
+0x5A DONGLE_KB_BIND_SUCCESS
+0x1fdf DONGLE_KB_BIND_EFUSE_OFFECT
+)
+(
+5 WORK_MODE_DELAY
+7 BIND_MODE_DELAY
+)
+(
+0 DONGLE_WORK	   		//connect mode normal
+1 DONGLE_BIND			//code pair mode
+2 DONGLE_TEST			//test mode
+3 DONGLE_CODE			//PC_application
+4 DONGLE_PCBA			//PCBA_TEST
+5 DONGLE_DEBUG
+6 DONGLE_MODE_MAX
+7 DONGLE_SEARCH
+0 CLEAR_INIT
+)
+(
+0xa0 COMMAND_MODE     //BYTE 0
+0x81 COM_MODE_BIND	//BYTE 1
+0x82 COM_MODE_TEST	//BYTE 1
+)
+(
+0xa1 COMMAND_BIND		//BYTE 0
+0x01 COM_BIND_GET		//1
+0x84 COM_BIND_EXIT		//1
+0xa7 COM_READ_MODE		//1
+)
+(
+0xa2 COMMAND_TEST	//BYTE 0
+0x81 COM_TEST_SC		//	���뵥�ز�
+0x82 COM_TEST_CD		// fcc����
+0x83 COM_TEST_DAT		// ���ݲ���
+0x84 COM_TEST_LOW_CH  //��Ƶ��
+0x85 COM_TEST_MID_CH	//��Ƶ��
+0x86 COM_TEST_HIG_CH	//��Ƶ��
+0x87 COM_TEST_SW_HIG	//�Զ��л�Ƶ��Ϊ�� 1mhz
+0x88 COIM_TEST_SW_LOW	//�Զ��л�Ƶ��Ϊ�� 1mhz
+0x89 COM_TEST_SW_STOP	//ֹͣ�Զ��л�Ƶ��
+0x8a COM_TEST_POW_5		//�����������5dbm
+0x8b COM_TEST_POW_0		//0dbm
+0x8c COM_TEST_POW_N5		//-5dbm
+0x8d COM_TEST_POW_N10		//-10dbm
+0x8e COM_TEST_EXIT			//�˳�����ģʽ
+)
+(
+0xa6 COMMAND_CURRENT_PROJECT
+0xa7 COMMAND_CURRENT_MODE
+0xa9 COMMAND_CURRENT_FW_VERSION
+0xb0 COMMAND_USER_DEFINED		//user defined cmd
+)
+(
+0x15 PRODUCT_ID
+0 FW_VERSION0
+0 FW_VERSION1
+1 FW_VERSION2
+7 FW_VERSION3
+)
+(
+640 TIMER_NODATA_DELAY	//200ms
+
+384 TIMER_MS_BLANK_DELAY
+
+384 TIMER_KB_MUL_BLANK_DELAY
+
+384 TIMER_KB_SYS_CRTL_BLANK_DELAY
+
+384 TIMER_KB_BLANK_DELAY
+)
+(
+0 KB_NORMAL_REPORT_ID
+1 MS_REPORT_ID
+2 KB_SYSTEM_CONCTRL_REPORT_ID
+3 KB_MULTIKEY_REPORT_ID
+)
+(
+0x01 BIND_ACKPAYLOAD
+0x03 KB_LED_ACKPAYLOAD
+)
+(
+7 DG_ENABLE_XTAL_24M
+6 DG_ENABLE_NEW_CHMAP
+5 DG_ENABLE_EEPROM
+4 DG_ENABLE_KB_ICON
+3 DG_ENABLE_24G_2M
+)
+(
+0x00 DONGLE_KB_BIND_EEPROM_OFFECT
+)
+(
+0x20 MOUSE_BLE_L2CAP_TXBUFF_SIZE_NEW
+)
+(
+0x01 DEVICE_DATA_TPYE_MOUSE
+0x02 DEVICE_DATA_TPYE_STANDARD_KEYBOARD
+0x03 DEVICE_DATA_TPYE_NONSTARNDARD_KEYBOARD
+0x04 DEVICE_DATA_TPYE_CONSUMER
+0x05 DEVICE_DATA_TPYE_SYSTEM_CONCTOL
+)
+(
+0x00 HID_REPORTID_KEY_STANDARD
+0x01 HID_REPORTID_MOUSE
+0x02 HID_REPORTID_SYSTEM_CTRL
+0x03 HID_REPORTID_CONSUMER_KEY
+)
+(
+0x04	 	HID_KEY_A
+0x05        HID_KEY_B
+0x06        HID_KEY_C
+0x07        HID_KEY_D
+0x08        HID_KEY_E
+0x09        HID_KEY_F
+0x0a        HID_KEY_G
+0x0b        HID_KEY_H
+0x0c        HID_KEY_I
+0x0d        HID_KEY_J
+0x0e        HID_KEY_K
+0x0f        HID_KEY_L
+0x10        HID_KEY_M
+0x11        HID_KEY_N
+0x12        HID_KEY_O
+0x13        HID_KEY_P
+0x14        HID_KEY_Q
+0x15        HID_KEY_R
+0x16        HID_KEY_S
+0x17        HID_KEY_T
+0x18        HID_KEY_U
+0x19        HID_KEY_V
+0x1a        HID_KEY_W
+0x1b        HID_KEY_X
+0x1c        HID_KEY_Y
+0x1d        HID_KEY_Z
+
+0x1e        HID_KEY_1
+0x1f        HID_KEY_2
+0x20        HID_KEY_3
+0x21        HID_KEY_4
+0x22        HID_KEY_5
+0x23        HID_KEY_6
+0x24        HID_KEY_7
+0x25        HID_KEY_8
+0x26        HID_KEY_9
+0x27        HID_KEY_0
+
+0x28        HID_KEY_ENTER
+0x29        HID_KEY_ESC
+0x2a        HID_KEY_BACKSPACE
+0x2b        HID_KEY_TAB
+0x2c        HID_KEY_SPACE
+0x2d        HID_KEY_MINUS				 		// -_
+0x2e        HID_KEY_EQUAL				 		// =+
+0x2f        HID_KEY_LEFT_BRACKET 		 	// [{
+0x30        HID_KEY_RIGHT_BRACKET 	 		// ]}
+0x31        HID_KEY_BACK_SLASH 		 		// \|
+
+0x32        HID_KEY_K42
+0x33        HID_KEY_SEMICOLON			 	// ;:
+0x34        HID_KEY_QUOTE				 		// ' "
+0x35        HID_KEY_TILDE				 		// `~
+0x36        HID_KEY_LESS_THAN			 		// ,<
+0x37        HID_KEY_GREAT_THAN		 		// .>
+0x38        HID_KEY_SLASH				 		// /?
+0x39        HID_KEY_CAPS_LOCK
+
+0x3a        HID_KEY_F1
+0x3b        HID_KEY_F2
+0x3c        HID_KEY_F3
+0x3d        HID_KEY_F4
+0x3e        HID_KEY_F5
+0x3f        HID_KEY_F6
+0x40        HID_KEY_F7
+0x41        HID_KEY_F8
+0x42        HID_KEY_F9
+0x43        HID_KEY_F10
+0x44        HID_KEY_F11
+0x45        HID_KEY_F12
+
+0x46        HID_KEY_PRINT_SCREEN
+0x47        HID_KEY_SCROLL_LOCK
+0x48        HID_KEY_PAUSE
+0x49        HID_KEY_INSERT
+0x4a        HID_KEY_HOME
+0x4b        HID_KEY_PAGE_UP
+0x4c        HID_KEY_DELETE
+0x4d        HID_KEY_END
+0x4e        HID_KEY_PAGE_DOWN
+
+0x4f        HID_KEY_RIGHT_ARROW
+0x50        HID_KEY_LEFT_ARROW
+0x51        HID_KEY_DOWN_ARROW
+0x52        HID_KEY_UP_ARROW
+
+0x53        HID_KEY_NUM_LOCK
+0x54        HID_KEY_KP_SLASH
+0x55        HID_KEY_KP_ASTERISK
+0x56        HID_KEY_KP_MINUS
+0x57        HID_KEY_KP_PLUS
+0x58        HID_KEY_KP_ENTER
+0x59        HID_KEY_KP_1
+0x5a        HID_KEY_KP_2
+0x5b        HID_KEY_KP_3
+0x5c        HID_KEY_KP_4
+0x5d        HID_KEY_KP_5
+0x5e        HID_KEY_KP_6
+0x5f        HID_KEY_KP_7
+0x60        HID_KEY_KP_8
+0x61        HID_KEY_KP_9
+0x62        HID_KEY_KP_0
+0x63        HID_KEY_KP_DEL
+
+0x64        HID_KEY_K45
+0x65        HID_KEY_APP
+0x66        HID_KEY_POWER
+0x67        HID_KEY_KP_EQUAL
+
+
+0x87        HID_KEY_K56
+0x88        HID_KEY_K133
+0x89        HID_KEY_K14
+0x8a        HID_KEY_K132
+0x8b        HID_KEY_K131
+
+0x90        HID_KEY_KR_R
+0x91        HID_KEY_KR_L
+
+0xe0        HID_KEY_LEFT_CTRL
+0xe1        HID_KEY_LEFT_SHIFT
+0xe2        HID_KEY_LEFT_ALT
+0xe3        HID_KEY_LEFT_GUI
+0xe4        HID_KEY_RIGHT_CTRL
+0xe5        HID_KEY_RIGHT_SHIFT
+0xe6        HID_KEY_RIGHT_ALT
+0xe7        HID_KEY_RIGHT_GUI
+
+0xe8 	HID_KEY_MULTIKEY_MEDIA
+0xe9 	HID_KEY_MULTIKEY_PALY
+0xea 	HID_KEY_MULTIKEY_STOP
+0xeb 	HID_KEY_MULTIKEY_PRE_TRACK
+0xec 	HID_KEY_MULTIKEY_NEXT_TRACK
+0xed 	HID_KEY_MULTIKEY_VOL_DOWN
+0xee 	HID_KEY_MULTIKEY_VOL_UP
+0xef 	HID_KEY_MULTIKEY_MUTE
+0xf0 	HID_KEY_MY_COMPUTER
+0xf1 	HID_KEY_MAIL
+0xf2 	HID_KEY_CALCULATOR
+0xf3 	HID_KEY_LIGHT_DOWN
+0xf4 	HID_KEY_LIGHT_UP
+0xf5 	HID_KEY_AC_FAVORITES
+0xf6 	HID_KEY_AC_FORWARD
+0xf7 	HID_KEY_AC_BACK
+0xf8 	HID_KEY_AC_STOP
+0xf9 	HID_KEY_AC_REFRESH
+0xfa 	HID_KEY_AC_SEARCH
+0xfb 	HID_KEY_AC_HOME
+0xfc 	HID_KEY_IOS_ANDROID_OS_LOCK
+0xfd 	HID_KEY_OS_SOFT_KB
+0xfe 	HID_KEY_OS_LANGUAGE
+0xff 	HID_KEY_SYSTEM_SLEEP
+        // 0xe8~0xff reserved
+0xa5	HID_KEY_SELECT_ALL
+0xa6 	HID_KEY_COPY
+0xa7	HID_KEY_PASTE
+0xa8	HID_KEY_CUT
+0xa9	HID_KEY_ALL_OS_LOCK
+0xaa	HID_KEY_OSK
+0xab	HID_KEY_LANGUAGE
+0xac 	HID_KEY_APP_TILING
+0xad	HID_KEY_SEARCH
+	 // 0xa5~0xaf reserved
+0x7f     	HID_KEY_FN
+0xde     	HID_KEY_PB
+0x00     	HID_KEY_NULL
+0x70        HID_KEY_COPILOT
+0x72        HID_KEY_F23
+)
+(
+0x01 LEFT_CONTROL
+0x02 LEFT_SHIFT
+0x04 LEFT_ALT
+0x08 LEFT_GUI
+0x10 RIGHT_CONTROL
+0x20 RIGHT_SHIFT
+0x40 RIGHT_ALT
+0x80 RIGHT_GUI
+0x09 LEFT_GUI_CONTROL
+0x0a LEFT_SHIFT_GUI
+)
+(
+0x00 KB_PC_KEYSEL_NUMLOCK
+0x01 KB_PC_KEYSEL_CAPSLOCK
+0x02 KB_PC_KEYSEL_SCROLLLOCK
+)
+(
+8 KEYSCAN_COL_NUM
+20 KEYSCAN_ROW_NUM
+)
+(
+0 CAMMBINATION_KEY_FREE
+1 CAMMBINATION_KEY_PRESS
+2 CAMMBINATION_KEY_HOLD
+3 CAMMBINATION_KEY_COMPLETE
+4 CAMMBINATION_KEY_WAIT_RELEASE
+5 CAMMBINATION_KEY_RELEASE
+6 CAMMBINATION_KEY_NULL
+)
+(
+
+0x600 PNP_MICROSOFT
+0x4c00 PNP_IOS
+0x1208 PNP_MAC
+
+
+0 SYSTEM_OS_WINDOWS
+1 SYSTEM_OS_ANDRIOD
+2 SYSTEM_OS_IOS
+3 SYSTEM_OS_MAC
+
+)
+
+(
+0 KEYBOARD_REUSE_NUMLED_BIT
+1 KEYBOARD_REUSE_CAPSLED_BIT
+2 KEYBOARD_REUSE_SCROLLLED_BIT
+)
+
+(
+0 KEYBOARD_CONSUMER_KEY_STANDBY
+1 KEYBOARD_CONSUMER_KEY_PRESS
+2 KEYBOARD_CONSUMER_KEY_RELEASE
+)
+(
+0 KEYBOARD_FLAG_G24_DEVICE_BUTTON
+1 KEYBOARD_FLAG_BT_DEVICE_BUTTON
+)
+(
+0 KEYBOARD_RGB_BLUE_STATUS
+1 KEYBOARD_RGB_GREEN_STATUS
+2 KEYBOARD_RGB_RED_STATUS
+
+0 RGB_BACKLIGHT_STATUS_OFF
+1 RGB_BACKLIGHT_STATUS_ON
+2 RGB_BACKLIGHT_STATUS_BREATHE
+
+0 RGB_BACKLIGHT_ON_TPYE_RED
+1 RGB_BACKLIGHT_ON_TPYE_ORANGE
+2 RGB_BACKLIGHT_ON_TPYE_PURPLE
+3 RGB_BACKLIGHT_ON_TPYE_GREEN
+4 RGB_BACKLIGHT_ON_TPYE_CYAN
+5 RGB_BACKLIGHT_ON_TPYE_BLUE
+6 RGB_BACKLIGHT_ON_TPYE_WHITE
+
+0 RGB_BACKLIGHT_BREATHE_TPYE_BLUE
+1 RGB_BACKLIGHT_BREATHE_TPYE_GREEN
+2 RGB_BACKLIGHT_BREATHE_TPYE_RED
+3 RGB_BACKLIGHT_BREATHE_TPYE_CYAN
+4 RGB_BACKLIGHT_BREATHE_TPYE_PURPLE
+5 RGB_BACKLIGHT_BREATHE_TPYE_ORANGE
+6 RGB_BACKLIGHT_BREATHE_TPYE_WHITE
+)
+(//mem_module_flag
+//bit0~bit7 config module function
+0 MODULE_FLAG_UART_FLOW_CONTROL
+1 MODULE_FLAG_BLE_SEND_MTU23
+2 MODULE_FLAG_BLE_DATA_ENCRYPT
+
+//bit8~bit15 module states change
+8 MODULE_FLAG_BLE_DATA_FINISH
+
+)
+(
+34 NV_DATA_LEN
+-1 DECREASED_ONE
+)
+(
+	5 FLAG_MODULE_READ_VDD_COUNT
+)
+(
+0x01 HCI_DISCARD_PACKET
+0x00 HCI_NOT_DISCARD_PACKET
+)
+(//Command
+0x01 HCI_CMD_SET_LE_ADDR_REQ
+0x02 HCI_CMD_SET_VISIBILITY_REQ
+0x04 HCI_CMD_SET_LE_NAME_REQ
+0x09 HCI_CMD_LE_DATA_REQ
+0x0b HCI_CMD_STATUS_IRQ
+0x0e HCI_CMD_SET_UARTCONTROL_REQ
+0x0f HCI_CMD_SET_UART_BAUD_REQ
+0x10 HCI_CMD_VERSION_REQ
+0x12 HCI_CMD_BLE_DISCONNECT
+0x13 HCI_CMD_DELETE_DEVICE
+0x14 HCI_CMD_CREATE_CONNECT
+0x26 HCI_CMD_SET_NVRAM_REQ
+0x27 HCI_CMD_SLEEP
+0x28 HCI_CMD_CONFIRM_GKEY
+0x2a HCI_CMD_AUTO_ADV_SCAN
+0x2b HCI_CMD_POWER_REQ
+0x2c HCI_CMD_POWER_SET
+0x30 HCI_CMD_PASSKEY_ENTRY
+0x31 HCI_CMD_SET_GPIO
+0x32 HCI_CMD_READ_GPIO
+0x33 HCI_CMD_LE_SET_PAIRING
+0x34 HCI_CMD_LE_SET_ADV_DATA
+0x35 HCI_CMD_LE_SET_SCAN_DATA
+0x36 HCI_CMD_LE_SEND_CONN_UPDATE_REQ
+0x37 HCI_CMD_LE_SET_ADV_PARM
+0x38 HCI_CMD_LE_START_PAIRING
+0x40 HCI_CMD_SET_WAKE_GPIO
+0x42 HCI_CMD_SET_TX_POWER
+0x43 HCI_CMD_BOOT_VERSION_REQ
+0x48 HCI_CMD_LE_CONFIRM_GKEY
+0x49 HCI_CMD_REJECT_JUSTWORK
+0x51 HCI_CMD_RESET_CHIP_REQ
+
+0x61 HCI_CMD_LE_SET_FIXED_PASSKEY
+
+0x76 HCI_CMD_DELETE_CUSTOMIZE_SERVICE
+0x77 HCI_CMD_ADD_SERVICE_UUID
+0x78 HCI_CMD_ADD_CHARACTERISTIC_UUID
+0x7a HCI_CMD_PASSKEY_ENTRY_INPUT
+0x7b HCI_CMD_LE_CREAT_CONN
+
+0x90 HCI_CMD_BLE_SET_PHY
+0x91 HCI_CMD_BLE_READ_CURRENT_PHY
+0x92 HCI_CMD_BLE_SET_DLE
+0x93 HCI_CMD_READ_CHIP_DATA
+0x94 HCI_CMD_WRITE_CHIP_DATA
+ifdef COMPILE_WECHAT
+0x95 HCI_CMD_WECHAT_SEND_DATA
+endif
+0xff HCI_CMD_CLOSE_LPM
+)
+(//event
+0x00 HCI_EVENT_SPP_CONN_REP
+0x01 HCI_EVENT_HID_CONN_REP
+0x02 HCI_EVENT_LE_CONN_REP
+0x03 HCI_EVENT_SPP_DIS_REP
+0x04 HCI_EVENT_HID_DIS_REP
+0x05 HCI_EVENT_LE_DIS_REP
+0x06 HCI_EVENT_CMD_RES
+0x07 HCI_EVENT_SPP_DATA_REP
+0x08 HCI_EVENT_LE_DATA_REP
+0x09 HCI_EVENT_STANDBY_REP
+
+0x0a HCI_EVENT_STATUS_RES
+
+0x0D HCI_EVENT_NVRAM_REP
+0x0e HCI_EVENT_GKEY
+0x0F HCI_EVENT_INVALID_PACKET
+0x10 HCI_EVENT_GET_PASSKEY
+0x11 HCI_EVENT_LE_TK
+0x12 HCI_EVENT_REMOTE_MTU
+0x14 HCI_EVENT_LE_PAIRING_STATE
+0X15 HCI_EVENT_LE_ENCRYPTION_STATE
+0x17 HCI_EVENT_LE_CONNECTION_UPDATE
+0x1d HCI_EVENT_LE_GKEY
+0x29 HCI_EVENT_UUID_HANDLE
+0x2b HCI_EVENT_LE_INPUT_GKEY
+
+0x40 HCI_BLE_UPDATE_PHY_EVENT
+ifdef COMPILE_WECHAT
+0x41 HCI_BLE_WECHAT_RECEIVE_PUSH_DATA
+endif
+)
+(//command HCI_CMD_SET_GPIO
+//byte 0
+0x00 HCI_CMD_CONFIG_GPIO_INPUT
+0x01 HCI_CMD_CONFIG_GPIO_OUTPUT
+//byte 1 input state
+0x00 GPIO_INPUT_PULLUP
+0x01 GPIO_INPUT_PULLDOWN
+0x02 GPIO_INPUT_HIGH_IMPEDANCE
+)
+(
+0x0080	FLAG_BLE_PAIRING_SUCCESS
+0x0180	FLAG_BLE_PAIRING_FAIL
+)
+(
+1	FLAG_EVENT_START_ENC
+0	FLAG_EVENT_PAUSE_ENC
+)
+(
+0 MOUDLE_STATE_BT_BIT
+1 MOUDLE_STATE_BLE_BIT
+)
+(
+5 BIT_OF_NOTIFY_AUTHENTICATED
+6 BIT_OF_READ_AUTHENTICATED
+7 BIT_OF_WRITE_AUTHENTICATED
+)
+(
+(
+0x00 PEN_KEY0
+0x01 PEN_KEY1
+0x02 PEN_KEY2
+0x03 PEN_KEY3
+0x04 PEN_KEY4
+0x05 PEN_KEY5
+0x06 PEN_KEY6
+0x07 PEN_KEY7
+)
+(
+0x07 KEY_PRESS_COUNT
+0x00 KEY_PRESS_NONE
+)
+(
+//combination
+0x01 MOUSE_L_BUTTON
+0X02 MOUSE_R_BUTTON
+0x03 MOUSE_LR_BUTTON
+0X04 MOUSE_M_BUTTON
+0X05 MOUSE_LM_BUTTON
+0X06 MOUSE_RM_BUTTON
+0X07 MOUSE_LMR_BUTTON
+0x09 MOUSE_L_BK_BUTTON
+0x0a MOUSE_R_BK_BUTTON
+0x11 MOUSE_L_FW_BUTTON
+0x12 MOUSE_R_FW_BUTTON
+0x12 MOUSE_M_BK_BUTTON
+0x14 MOUSE_M_FW_BUTTON
+0X18 MOUSE_BK_FW_BUTTON
+//mouse default gpio
+0x1B MOUSE_DEFAULT_XA_GPIO
+0x1C MOUSE_DEFAULT_XB_GPIO
+
+//ui led blink
+0X00C8  LED_RECONNECT_BLINK //200
+0X0190  LED_DPI_BLINK //400
+0X03E8  LED_DPI_BLINK_FIXED    //1000
+0X03E8  LED_DISCOVERY_BLINK    //1000
+0XFF    LED_LONG_BLINK
+0x05	LED_SENSOR_BLINK_CNT
+//mode device number
+0x00 MODE_24G_DEVICE
+0x01 MODE_BT_DEVICE1
+0x02 MODE_BT_DEVICE2
+0x03 MODE_BT_DEVICE3
+0x04 MODE_USB_DEVICE
+//mouse  flag
+0X00 WRITE_REQ_ENABLE_FLAG
+0X01 LL_START_ENC_FLAG
+0X02 LL_PAIRING_SUCCESS_FLAG
+
+
+//mouse_function_flag
+0x08 MOUSE_FLAG_LEN
+//byte 1
+0x00 MOUSE_SELECT_DEVICE_FLAG
+0x01 MOUSE_24G_PAIRING_FLAG
+0x02 MOUSE_STORE_EEPROM_FLAG
+0x03 MOUSE_BT_CANNEL_RECONN_FLAG
+0x04 MOUSE_LOW_VOLTAGE_FLAG
+0x05 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+0x06 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+
+//byte 2
+0x08 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+0x09 MOUSE_ENABLE_2K_EEPROM
+0x0a MOUSE_ENABLE_INIT_DELAY
+0x0b MOUSE_ENABLE_WAKEUP_FROM_POWER
+0x0c MOUSE_ENABLE_16M
+0x0d MOUSE_ENABLE_USB
+0x0e MOUSE_ENABLE_24G_SEARCH_DONGLE
+0x0f MOUSE_ENABLE_LOAD_AND_STORE_DPI
+
+//byte 3
+0x10 MOUSE_ENABLE_SPI2
+0x11 MOUSE_ENABLE_24G
+0x12 MOUSE_ENABLE_FLASH
+0x13 MOUSE_ENABLE_EEPROM
+0x14 MOUSE_ENABLE_OTP
+0x15 MOUSE_ENABLE_ADC
+0x16 MOUSE_ENABLE_KEYBOARD
+0x17 MOUSE_ENABLE_DOUBLE_DPI_KEY
+
+//byte 4
+0x18 MOUSE_ENABLE_24G_250Hz
+0x19 MOUSE_ENABLE_24G_500Hz
+0x1a MOUSE_ENABLE_24G_1000
+0x1b MOUSE_ENABLE_BT_125Hz
+0x1c MOUSE_ENABLE_DPI_LEVEL_4
+0x1d MOUSE_ENABLE_USB_250
+0x1e MOUSE_ENABLE_USB_500
+0x1f MOUSE_ENABLE_USB_1000
+
+//byte 5
+0x20 MOUSE_ENABLE_1IO2LED
+0x21 MOUSE_ENABLE_BT_RECONN_LED_EFFECT
+0x22 MOUSE_ENABLE_LOW_LED_BLINK_LIMIT
+0x23 MOUSE_ENABLE_LOW_LED
+0x24 MOUSE_ENABLE_LOW_FOR_LED
+0x25 MOUSE_ENABLE_DPI_FOR_LED
+0x26 MOUSE_ENABLE_DPI_LOW_FOR_LED
+0x27 MOUSE_ENABLE_LOW_VOLTAGE_LED_BLINK_N_SECOND
+
+//byte 6
+0x28 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
+0x29 MOUSE_ENABLE_SELECT_DEVICE_BY_PB_BUTTON
+0x2a MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
+0x2b MOUSE_ENABLE_DPI_KEY_CONNECT_GND
+0x2c MOUSE_ENABLE_ANOTHER_DPI_KEY_CONNECT_GND
+0x2d MOUSE_ENABLE_PB_BUTTON_CONNECT_GND
+0x2e MOUSE_ENABLE_FIRE_KEY_CONNECT_GND
+0x2f MOUSE_ENABLE_CUSTOMER_KEY_CONNECT_VIN_OR_MATRIX
+
+//byte 7
+0x30 MOUSE_ENABLE_AUTO_24G_PARING
+0x31 MOUSE_ENABLE_24G_POWER_ON_PAIRING
+0x32 MOUSE_ENABLE_COMMBINATION_KEY_BY_24G_PAIRING
+0x33 MOUSE_ENABLE_BT_RECONNECT_TIMEOUT_ENTER_DISCOVERY
+0x34 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY
+0x35 MOUSE_ENABLE_COMMBINATION_KEY_BY_BT_DISCOVERY
+0x36 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY
+0x37 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY
+
+//byte 8
+0x38 MOUSE_ENABLE_SMOOTHER
+0x39 MOUSE_ENABLE_XY_OFFSET
+0x3a MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED
+0x3b MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+0x3c MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+0x3d MOUSE_ENABLE_24G_2M_PHY
+0x3e MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING
+//mouse dpi level
+0x00 MOUSE_DPI_LEVEL1
+0x01 MOUSE_DPI_LEVEL2
+0x02 MOUSE_DPI_LEVEL3
+0x03 MOUSE_DPI_LEVEL4
+
+
+//mouse sensor angle
+0x00 MOUSE_6CLK_ANGLE
+0X01 MOUSE_9CLK_ANGLE
+0X02 MOUSE_12CLK_ANGLE
+0X03 MOUSE_3CLK_ANGLE
+
+
+
+0xFF GPIO_DISABLE
+
+//DPI button state
+0x00 DPI_BUTTON_STATE_UP
+0x01 DPI_BUTTON_STATE_DOWN
+
+
+//PB button state
+0x00 PB_BUTTON_STATE_UP
+0x01 PB_BUTTON_STATE_DOWN
+
+//Commbination_key state
+0x00 COMMBINATION_KEY_STATE_UP
+0x01 COMMBINATION_KEY_STATE_DOWN
+
+
+//eeprom address offect
+0X00 MOUSE_INFO_EEPROM_OFFECT
+0x58 MOUSE_STORE_FLAG
+0X5A MOUSE_DPI_EEPROM_OFFECT	//1byte
+0X5B MOUSE_G24_ADDR_EEPROM_OFFECT	//4bytes
+0X5F MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET	//2bytes
+0X61 MOUSE_EEPROM_MODULE_INIT_FLAG
+
+// Sensor id number
+0x30 P32XX_ID1
+0x31 P3065_ID1
+0x02 P3212_ID2
+0xD1 P3205_TJ3T_ID2
+0XD2 P3204_TJ3L_ID2
+0x54 PKA8_ID2
+0x70 P3065_XY_ID2
+0x00 P3065_ID2
+0x5a P_MX8650
+0xD8 P8009_ID2
+0x50 P6520A_ID2
+0x58 PKA8G2_ID1
+0x59 PKA8G2_ID2
+
+
+//Sensor type
+0X00 P3205
+0X01 P3065
+0X02 P3204
+0X03 P3212
+0X04 P3065_XY
+0x05 MX8650
+0x06 P8009
+0x07 P6520
+0X08 KA8
+0X09 KA8_UL
+0X0a KA8_HD
+0X0b KA8G2
+0X0c S201X
+
+
+//SENSOR REG
+0x00 PAN_REG_PID_L
+0x01 PAN_REG_PID_H
+0x02 PAN_REG_MOTION_STAUS
+0x03 PAN_REG_DELTA_X
+0x04 PAN_REG_DELTA_Y
+0x05 PAN_REG_OPRATION_MODE
+0x06 PAN_REG_CONFIG
+0x07 PAN_REG_IMAGE_QUALITY
+0x08 PAN_REG_OPRATION_STATE
+0x09 PAN_REG_WRITE_PROTECT
+0x0A PAN_REG_SLEEP_1
+0x0B PAN_REG_ENTER_TIME
+0x0C PAN_REG_SLEEP_2
+0x0D PAN_REG_IMAGE_THRESHOLD
+0x0E PAN_REG_IMAGE_RECGNITION
+
+
+0x06 MOUSE_DPI_ADDRESS
+0x05 MOUSE_P3610_DPI_ADDRESS
+0x0D MOUSE_P3212_DPI_XADDRESS
+0x0E MOUSE_P3212_DPI_YADDRESS
+
+)
+(
+0x01 ADV_FLAG_LIMITED_DISCOVERABLE
+0x04 ADV_FLAG_BREDR_NOT_SUPPORTED
+)
+(
+2 BIT_POWER_ON
+)
+(
+1 MODE_4_MOUSE
+)
+(
+10 LE_LPM_DISABLE_TO
+1 LE_LPM_DISABLE
+0 LE_LPM_ENABLE
+
+12 LE_INTERVAL_15MS
+9 LE_INTERVAL_11_25MS//11.25ms
+7 LE_INTERVAL_8_75MS//8.75ms
+6 LE_INTERVAL_7_5MS//7.5ms
+12 CLASSIC_INTERVAL_7_5MS
+14 CLASSIC_INTERVAL_8_75MS
+18 CLASSIC_INTERVAL_11_25MS
+)
+(
+0x00 MOUSE_L_KEY
+0x01 MOUSE_R_KEY
+0x02 MOUSE_M_KEY
+0x03 MOUSE_BK_KEY
+0x04 MOUSE_FW_KEY
+0x05 MOUSE_DPI_KEY
+0x06 MOUSE_PB_KEY
+0x07 MOUSE_CUSTOMER_KEY
+0x00 MOUSE_DPI_ANOTHER_KEY
+)
+(
+0 G24_DISCONN_STATE
+1 G24_CONN_STATE
+
+8 G24_CH_NUMBER
+16 G24_CH_POLL_COUNT
+)
+(
+0 MOUSE_ADC_CHECK_BATTERY_ONLY
+1 MOUSE_ADC_CHECK_MULTIPLE
+2 MOUSE_ADC_CHECK_GPIO_MULTIPLE
+3 MOUSE_ADC_CHECK_HVIN_MULTIPLE
+)
+(
+0x5a MOUSE_USB_INTERFACE_INSERT
+0xa5 MOUSE_USB_INTERFACE_REMOVE
+)
+(
+0x10 MOUSE_BLE_L2CAP_TXBUFF_SIZE
+)
+(
+0 MOUSE_ADC_ENABLE
+1 MOUSE_SEARCH_DONGLE_ENABLE
+2 MOUSE_24G_250HZ_ENABLE
+3 MOUSE_CLK_16M_ENABLE
+4 MOUSE_DPI_4_LEVEL_ENABLE
+5 MOUSE_KEYBOARD_ENABLE
+
+7 MOUSE_DEVICE_NUMBER_FLAG
+)
+(
+0 MULTI_LED_ON
+1 MULTI_LED_BLINK
+)
+(
+// eeprom config
+0xb0 REMOTE_PARAM_EEPROM_CONFIG_ADDR
+//eeprom address offect
+0X00 REMOTE_INFO_EEPROM_OFFECT
+
+)
+(
+0x00 CONTROL_F_B_MOTOR
+0x02 CONTROL_L_R_MOTOR
+)
+(
+0x00 KEY_MAP_TEN
+0x01 KEY_MAP_LR
+)
+(
+0x00 CONTROL_F_B_TEN
+0x02 CONTROL_L_R_TEN
+0x03 CONTROL_L_R_LR
+)
+(
+0 KEY_CHECK
+1 ROCKER_CHECK
+)
+(
+1 MOTOR_POSITIVE
+2 MOTOR_NEGATIVE
+)
+(
+0 ROCKER_MIDDLE_KEY
+1 ROCKER_POSITIVE_KEY
+2 ROCKER_NEGATIVE_KEY
+)
+(
+0x700 OTP_OFFSET_REMOTE_COMMOM_START_ADDR
+0x7cc OTP_OFFSET_REMOTE_COMMOM_END_ADDR
+)
+(
+0 BLE_SHUTTER
+1 CLASSIC_SHUTTER
+)
+(
+0x0000 NVRAM_EEPROM_OFFSET
+)
+(
+0x1b3a SHUTTER_EEPROM_CONFIG_CRC
+)
+(
+5 MAX_QUEUE_NUM
+5 SHUTTER_BLE_DATA_BUFFER
+5 SHUTTER_CLASSIC_DATA_BUFFER
+)
+(
+0x13	GATT_CONSUMER_NOTIFY_HANDLE
+0x14	GATT_CONSUMER_WRITE_HANDLE
+0x17	GATT_KEYBOARD_NOTIFY_HANDLE
+0x18	GATT_KEYBOARD_WRITE_HANDLE
+)
+(
+//20ms
+0x0020	FAST_ADV_INTERVAL_VALUE
+//100ms
+0x00a0	SLOW_ADV_INTERVAL_VALUE
+)
+(
+0 ATT_BIT_NOTIFICATION
+1 ATT_BIT_INDICATION
+)
+(
+0 HARD_SWITCH
+1 SOFT_SWITCH
+)
+(
+1  FLAG_SHUTTER_HID_DISCONN_TIMEOUT
+5 FLAG_SHUTTER_CABLE_UNPLUG_TIMEOUT
+)
+(//Data Rom Buffer Addr
+313		BLE_GATT_LIST_SIZE
+487		BT_SDP_LIST_SIZE
+40		BLE_KEY_VALUE_LIST_SIZE
+40		BT_KEY_VALUE_LIST_SIZE
+)
+(//soft switch power state
+0		SS_STATE_POWER_UP
+1		SS_STATE_POWER_ON
+2		SS_STATE_POWER_OFF
+)
+(
+0		SS_POWER_STATE_OFFSET
+1		SS_POWER_ON_TIME
+2		SS_POWER_OFF_TIME
+3		SS_POWER_ON_CB
+5		SS_POWER_OFF_CB
+
+)
+(
+
+0x4FFE SIM_IIC_SCL_GPIO_NUM
+0x4FFF SIM_IIC_SDA_GPIO_NUM
+
+)
+(
+0 SHUTTER_TYPE
+1 SHUTTER_DY_TYPE
+)
+(
+10 MAX_QUEUE_NUM_COMBINEKEY
+15 MAX_QUEUE_NUM_RELEASE
+3 MAX_QUEUE_NUM_LONG
+3 MAX_QUEUE_NUM_LONG_RELEASE
+10 MAX_QUEUE_NEW_PRESS
+
+10 EVERY_PAYLOAD_LEN
+)
+(
+0x24	GATT_KEYBOARD_WRITE_HANDLE_NEW
+)
+(//Data Rom Buffer Addr
+640		BT_DY_KEY_VALUE_LIST_SIZE
+)
+(
+0x05   SHUTTER_PARA_TOTAL_NUM
+//0x7b0  SHUTTER_EFUSE_START_OFFECT	//起始地址
+//0x680  SHUTTER_EFUSE_END_OFFECT	       //结束地址
+)
+(
+//uart config
+115200 UART_BAUD
+)
+(
+10 SHUTTER_KEY_CONF_SATE_BYTES
+0 KEY_STATE_PRESS_CLK_OFFSET
+4 KEY_STATE_PRESS_COUNT_OFFSET
+5 KEY_STATE_RELEASE_CLK_OFFSET
+9 KEY_STATE_LONGPRESS_OFFSET
+4 KEY_STATE_PRESS_CLK_LENGTH
+1 KEY_STATE_PRESS_COUNT_LENGTH
+4 KEY_STATE_RELEASE_CLK_LENGTH
+1 KEY_STATE_LONGPRESS_LENGTH
+)
+(
+0  SHUTTER_RIGHT_KEY_NUM
+1  SHUTTER_LIKE_KEY_NUM
+2  SHUTTER_DOWN_KEY_NUM
+3  SHUTTER_PHOTO_KEY_NUM
+4  SHUTTER_UP_KEY_NUM
+5  SHUTTER_LEFT_KEY_NUM
+6  SHUTTER_MOVE_KEY_NUM
+7  SHUTTER_FUN_KEY_NUM
+)
+(
+//0xaa ANDROID_INITIAL_MOVE_X //170
+//0x78 ANDROID_INITIAL_MOVE_Y //120
+//0x69 IPHONE_INITIAL_MOVE_X
+//0x38 IPHONE_INITIAL_MOVE_Y
+0X0a ANDROID_EVERY_MOVE_SIZE
+0x07 IPHONE_EVERY_MOVE_SIZE
+0x62 IPHONE_ONCE_MAX_MOVE_VALUE
+)
+(
+0x00 MOVE_COMBINE_KEY
+0x01 MOVE_SINGLE_KEY
+)
+(
+//6key or 7key conf
+6 SHUTTER_SIX_KEY
+7 SHUTTER_SEVEN_KEY
+8 SHUTTER_EIGHT_KEY
+)
+(
+0x07 HCI_UART_TX_GPIO_NUM
+0x06 HCI_UART_RX_GPIO_NUM
+0x09 HCI_UART_RTS_GPIO_NUM
+0x0a HCI_UART_CTS_GPIO_NUM
+0x0c HCI_PMW_12MHZ_GPIO_NUM
+)
+(
+0x00 COMMAND_SUCCEEDED
+0x01 COMMAND_UNKNOWN
+0x0c COMMAND_DISALLOWED
+)
+(
+0x01 HCI_H4_TYPE_CMD
+0x02 HCI_H4_TYPE_ACL
+0x04 HCI_H4_TYPE_EVENT
+)
+(
+0x00 BT_ACL_START_NO_FLUSH
+0x01 BT_ACL_CONT
+0x02 BT_ACL_START
+)
+(
+0x01 HCI_OGF_LINK_CONTROL
+0x02 HCI_OGF_LINK_POLICY
+0x03 HCI_OGF_CONTROLLER_AND_BASEBAND
+0x04 HCI_OGF_INFOMATIONAL_PARAM
+0x05 HCI_OGF_STATUS_PARAM
+0x06 HCI_OGF_TEST
+0x08 HCI_OGF_LE_CONTROLLER
+0x3f HCI_OGF_VENDOR_SPECIFIC_DEBUG
+)
+(
+0x01 HCI_INQUIRY
+0x02 HCI_INQUIRY_CANCEL
+0x03 HCI_PERIODIC_INQUIRY_MODE
+0x04 HCI_EXIT_PERIODIC_INQUIRY_MODE
+0x05 HCI_CREATE_CONNECTION
+0x06 HCI_DISCONNECT
+0x07 HCI_ADD_SCO_CONNECTION
+0x08 HCI_CREATE_CONNECTION_CANCEL
+0x09 HCI_ACCEPT_CONNECTION
+0x0A HCI_REJECT_CONNECTION
+0x0B HCI_LINK_KEY_REQUEST_REPLY
+0x0C HCI_LINK_KEY_REQUEST_NEGATIVE_REPLY
+0x0D HCI_PIN_CODE_REQUEST_REPLY
+0x0E HCI_PIN_CODE_REQUEST_NEGATIVE_REPLY
+0x0F HCI_CHANGE_CONNECTION_PACKET_TYPE
+0x11 HCI_AUTHENTICATION_REQUESTED
+0x13 HCI_SET_CONNECTION_ENCRYPTION
+0x15 HCI_CHANGE_CONNECTION_LINK_KEY
+0x17 HCI_MASTER_LINK_KEY
+0x19 HCI_REMOTE_NAME_REQUEST
+0x1A HCI_REMOTE_NAME_REQUEST_CANCEL
+0x1B HCI_READ_REMOTE_SUPPORTED_FEATURES
+0x1C HCI_READ_REMOTE_EXT_FEATURES
+0x1D HCI_READ_REMOTE_VERSION_INFORMATION
+0x1F HCI_READ_CLOCK_OFFSET
+0x20 HCI_READ_LMP_HANDLE
+0x28 HCI_SETUP_SCO_CONNECTION
+0x29 HCI_ACCEPT_SCO_CONNECTION
+0x2A HCI_REJECT_SCO_CONNECTION
+0x2B HCI_IO_CAP_REQUEST_REPLY
+0x2C HCI_USER_CONFIRMATION_REQUEST_REPLY
+0x2D HCI_USER_CONFIRMATION_REQUEST_NEGATIVE_REPLY
+0x2E HCI_USER_PASSKEY_REQUEST_REPLY
+0x2F HCI_USER_PASSKEY_REQUEST_NEGATIVE_REPLY
+0x30 HCI_REMOTE_OOB_DATA_REQUEST_REPLY
+0x33 HCI_REMOTE_OOB_DATA_REQUEST_NEGATIVE_REPLY
+0x34 HCI_IO_CAPABILITY_REQUEST_NEGATIVE_REPLY
+0x35 HCI_CREATE_PHYSICAL_LINK
+0x36 HCI_ACCEPT_PHYSICAL_LINK
+0x37 HCI_DISCONNECT_PHYSICAL_LINK
+0x38 HCI_CREATE_LOGICAL_LINK
+0x39 HCI_ACCEPT_LOGICAL_LINK
+0x3A HCI_DISCONNECT_LOGICAL_LINK
+0x3B HCI_LOGICAL_LINK_CANCEL
+0x3C HCI_FLOW_SPEC_MODIFY
+0x3D HCI_ENHANCED_SETUP_SYNCHRONOUS_CONNECTION
+0x3E HCI_ENHANCED_ACCEPT_SYNCHRONOUS_CONNECTION_REQUEST
+0x3F HCI_TRUNCATED_PAGE
+0x40 HCI_TRUNCATED_PAGE_CANCEL
+0x41 HCI_SET_CONNECTIONLESS_SLAVE_BROADCAST
+0x42 HCI_SET_CONNECTIONLESS_SLAVE_BROADCAST_RECEIVE
+0x43 HCI_START_SYNCHRONIZATION_TRAIN
+0x44 HCI_RECEIVE_SYNCHRONIZATION_TRAIN
+0x45 HCI_REMOTE_OOB_EXTENDED_DATA_REQUEST_REPLY
+)
+(
+0x01 HCI_HOLD_MODE
+0x03 HCI_SNIFF_MODE
+0x04 HCI_EXIT_SNIFF_MODE
+0x05 HCI_PARK_MODE
+0x06 HCI_EXIT_PARK_MODE
+0x07 HCI_QOS_SETUP
+0x09 HCI_ROLE_DISCOVERY
+0x0B HCI_SWITCH_ROLE
+0x0C HCI_READ_LINK_POLICY_SETTINGS
+0x0D HCI_WRITE_LINK_POLICY_SETTINGS
+0x0e HCI_READ_DEFAULT_LINK_POLICY_SETTINGS
+0x0f HCI_WRITE_DEFAULT_LINK_POLICY_SETTINGS
+0x10 HCI_FLOW_SPECIFICATION
+0x11 HCI_SNIFF_SUBRATING
+)
+(
+0x01 HCI_SET_EVENT_MASK
+0x03 HCI_RESET
+0x05 HCI_SET_EVENT_FILTER
+0x08 HCI_FLUSH
+0x09 HCI_READ_PIN_TYPE
+0x0A HCI_WRITE_PIN_TYPE
+0x0B HCI_CREATE_NEW_UNIT_KEY
+0x0D HCI_READ_STORED_LINK_KEY
+0x11 HCI_WRITE_STORED_LINK_KEY
+0x12 HCI_DELETE_STORED_LINK_KEY
+0x13 HCI_WRITE_LOCAL_NAME
+0x14 HCI_READ_LOCAL_NAME
+0x15 HCI_READ_CONN_ACCEPT_TIMEOUT
+0x16 HCI_WRITE_CONN_ACCEPT_TIMEOUT
+0x17 HCI_READ_PAGE_TIMEOUT
+0x18 HCI_WRITE_PAGE_TIMEOUT
+0x19 HCI_READ_SCAN_ENABLE
+0x1A HCI_WRITE_SCAN_ENABLE
+0x1B HCI_READ_PAGE_SCAN_ACTIVITY
+0x1C HCI_WRITE_PAGE_SCAN_ACTIVITY
+0x1D HCI_READ_INQUIRY_SCAN_ACTIVITY
+0x1E HCI_WRITE_INQUIRY_SCAN_ACTIVITY
+0x1F HCI_READ_AUTHENTICATION_ENABLE
+0x20 HCI_WRITE_AUTHENTICATION_ENABLE
+0x21 HCI_READ_ENCRYPTION_MODE
+0x22 HCI_WRITE_ENCRYPTION_MODE
+0x23 HCI_READ_CLASS_OF_DEVICE
+0x24 HCI_WRITE_CLASS_OF_DEVICE
+0x25 HCI_READ_VOICE_SETTING
+0x26 HCI_WRITE_VOICE_SETTING
+0x27 HCI_READ_AUTOMATIC_FLUSH_TIMEOUT
+0x28 HCI_WRITE_AUTOMATIC_FLUSH_TIMEOUT
+0x29 HCI_READ_NUM_BROADCAST_RETRANSMISSIONS
+0x2A HCI_WRITE_NUM_BROADCAST_RETRANSMISSIONS
+0x2B HCI_READ_HOLD_MODE_ACTIVITY
+0x2C HCI_WRITE_HOLD_MODE_ACTIVITY
+0x2D HCI_READ_TRANSMIT_POWER_LEVEL
+0x2E HCI_READ_SCO_FLOW_CONTROL_ENABLE
+0x2F HCI_WRITE_SCO_FLOW_CONTROL_ENABLE
+0x31 HCI_SET_CONTROLLER_TO_HOST_FLOW_CONTROL
+0x33 HCI_HOST_BUFFER_SIZE
+0x35 HCI_HOST_NUM_COMPLETED_PACKETS
+0x36 HCI_READ_LINK_SUPERVISION_TIMEOUT
+0x37 HCI_WRITE_LINK_SUPERVISION_TIMEOUT
+0x38 HCI_READ_NUMBER_OF_SUPPORTED_IAC
+0x39 HCI_READ_CURRENT_IAC_LAP
+0x3A HCI_WRITE_CURRENT_IAC_LAP
+0x3B HCI_READ_PAGE_SCAN_PERIOD_MODE
+0x3C HCI_WRITE_PAGE_SCAN_PERIOD_MODE
+0x3D HCI_READ_PAGE_SCAN_MODE
+0x3E HCI_WRITE_PAGE_SCAN_MODE
+0x3F HCI_SET_AFH_CHANNEL_CLASSIFICATION
+
+
+0x42 HCI_READ_INQUIRY_SCAN_TYPE
+0x43 HCI_WRITE_INQUIRY_SCAN_TYPE
+0x44 HCI_READ_INQUIRY_MODE
+0x45 HCI_WRITE_INQUIRY_MODE
+0x46 HCI_READ_PAGE_SCAN_TYPE
+0x47 HCI_WRITE_PAGE_SCAN_TYPE
+
+0x48 HCI_READ_AFH_CHANNEL_ACCESSMENT_MODE
+0x49 HCI_WRITE_AFH_CHANNEL_ACCESSMENT_MODE
+0x51 HCI_READ_EXTENDED_INQUIRY_RESPONSE
+0x52 HCI_WRITE_EXTENDED_INQUIRY_RESPONSE
+0x53 HCI_REFRESH_ENCRYPTION_KEY
+0x55 HCI_READ_SIMPLE_PAIRING_MODE
+0x56 HCI_WRITE_SIMPLE_PAIRING_MODE
+0x57 HCI_READ_LOCAL_OOB_DATA
+0x58 HCI_READ_INQUIRY_RESPONSE_TRANSMIT_POWER_LEVEL
+0x59 HCI_WRITE_INQUIRY_TRANSMIT_POWER_LEVEL
+0x60 HCI_SEND_KEYPRESS_NOTIFICATION
+0x5A HCI_READ_DEFAULT_ERRONEOUS_DATA_REPORTING
+0x5B HCI_WRITE_DEFAULT_ERRONEOUS_DATA_REPORTING
+0x5F HCI_ENHANCED_FLUSH
+0x61 HCI_READ_LOGICAL_LINK_ACCEPT_TIMEOUT
+0x62 HCI_WRITE_LOGICAL_LINK_ACCEPT_TIMEOUT
+0x63 HCI_SET_EVENT_MASK_PAGE_2
+0x64 HCI_READ_LOCATION_DATA
+0x65 HCI_WRITE_LOCATION_DATA
+0x66 HCI_READ_FLOW_CONTROL_MODE
+0x67 HCI_WRITE_FLOW_CONTROL_MODE
+0x68 HCI_READ_ENHANCE_TRANSMIT_POWER_LEVEL
+0x69 HCI_READ_BEST_EFFORT_FLUSH_TIMEOUT
+0x6A HCI_WRITE_BEST_EFFORT_FLUSH_TIMEOUT
+0x6B HCI_SHORT_RANGE_MODE
+0x6C HCI_READ_LE_HOST_SUPPORT
+0x6D HCI_WRITE_LE_HOST_SUPPORT
+0x6E HCI_SET_MWS_CHANNEL_PARAMETERS
+0x6F HCI_SET_EXTERNAL_FRAME_CONFIGURATION
+0x70 HCI_SET_MWS_SIGNALING
+0x71 HCI_SET_MWS_TRANSPORT_LAYER
+0x72 HCI_SET_MWS_SCAN_FREQUENCY_TABLE
+0x73 HCI_SET_MWS_PATTERN_CONFIGURATION
+0x74 HCI_SET_RESERVED_LT_ADDR
+0x75 HCI_DELETE_RESERVED_LT_ADDR
+0x76 HCI_SET_CONNECTIONLESS_SLAVE_BROADCAST_DATA
+0x77 HCI_READ_SYNCHRONIZATION_TRAIN_PARAMETERS
+0x78 HCI_WRITE_SYNCHRONIZATION_TRAIN_PARAMETERS
+0x79 HCI_READ_SECURE_CONNECTIONS_HOST_SUPPORT
+0x7A HCI_WRITE_SECURE_CONNECTIONS_HOST_SUPPORT
+0x7B HCI_READ_AUTHENTICATED_PAYLOAD_TIMEOUT
+0x7C HCI_WRITE_AUTHENTICATED_PAYLOAD_TIMEOUT
+0x7D HCI_READ_LOCAL_OOB_EXTENDED_DATA
+0x7E HCI_READ_EXTENDED_PAGE_TIMEOUT
+0x7F HCI_WRITE_EXTENDED_PAGE_TIMEOUT
+0x80 HCI_READ_EXTENDED_INQUIRY_LENGTH
+0x81 HCI_WRITE_EXTENDED_INQUIRY_LENGTH
+)
+(
+0x01 HCI_READ_LOCAL_VERSION_INFORMATION
+0x02 HCI_READ_LOCAL_SUPPORTED_COMMANDS
+0x03 HCI_READ_LOCAL_SUPPORTED_FEATURES
+0x04 HCI_READ_LOCAL_EXT_FEATURES
+0x05 HCI_READ_BUFFER_SIZE
+0x07 HCI_READ_COUNTRY_CODE
+0x09 HCI_READ_BD_ADDR
+0x0A HCI_REJECT_CONNECTION_REQUEST
+0x0B HCI_READ_LOCAL_SUPPORTED_CODECS
+)
+(
+0x01 HCI_READ_FAILED_CONTACT_COUNTER
+0x02 HCI_RESET_FAILED_CONTACT_COUNTER
+0x03 HCI_GET_LINK_QUALITY
+0x05 HCI_READ_RSSI
+0x06 HCI_READ_AFH_CHANNEL_MAP
+0x07 HCI_READ_BD_CLOCK
+0x08 HCI_READ_ENCRYPTION_KEY_SIZE
+0x09 HCI_READ_LOCAL_AMP_INFO
+0x0A HCI_READ_LOCAL_AMP_ASSOC
+0x0B HCI_WRITE_REMOTE_AMP_ASSOC
+0x0C HCI_GET_MWS_TRANSPORT_LAYER_CONFIGURATION
+0x0D HCI_SET_TRIGGERED_CLOCK_CAPTURE
+)
+(
+0x01 HCI_READ_LOOPBACK_MODE
+0x02 HCI_WRITE_LOOPBACK_MODE
+0x03 HCI_ENABLE_DEVICE_UNDER_TEST_MODE
+0x04 HCI_WRITE_SIMPLE_PAIRING_DEBUG_MODE
+0x07 HCI_ENABLE_AMP_RECEIVER_REPORTS
+0x08 HCI_AMP_TEST_END
+0x09 HCI_AMP_TEST
+0x0A HCI_WRITE_SECURE_CONNECTIONS_TEST_MODE
+)
+(
+0x01 HCI_WRITE_BD_ADDR
+0x02 HCI_READ_INQUIRY_RESPONSE_TIMEOUT
+0x03 HCI_WRITE_INQUIRY_RESPONSE_TIMEOUT
+0x04 HCI_READ_PAGE_SCAN_REPETITION_MODE
+0x05 HCI_WRITE_PAGE_SCAN_REPETITION_MODE
+0x06 HCI_READ_PAGE_RESPONSE_TIMEOUT
+0x07 HCI_WRITE_PAGE_RESPONSE_TIMEOUT
+0x08 HCI_READ_NEW_CONNECTION_TIMEOUT
+0x09 HCI_WRITE_NEW_CONNECTION_TIMEOUT
+0x0a HCI_INITIALIZE_BASEBAND
+0x0b HCI_WRITE_LOCAL_SUPPORTED_FEATURES
+0x0c HCI_WRITE_PARK_PARAMETERS
+0x0d HCI_READ_PARK_PARAMETERS
+0x0e HCI_WRITE_QUALITY_OF_SERVICE
+0x0f HCI_NOT_USED
+0x10 HCI_MODIFY_BEACON_PARAMETERS
+0x11 HCI_UNPARK_USING_PM_ADDR
+0x12 HCI_WRITE_HOPPING_CHANNELS
+0x13 HCI_SLEEP_FOREVER_MODE
+0x14 HCI_WRITE_AUTO_PAGE_SCAN_ENABLE
+0x15 HCI_READ_AUTO_PAGE_SCAN_ENABLE
+0x16 HCI_SET_ENCRYPTION_KEY_SIZE
+0x17 HCI_INVALIDATE_FLASH_AND_REBOOT
+0x18 HCI_UPDATE_UART_BAUD_RATE
+0x19 HCI_WRITE_GPIO_1_4_AS_OUTPUT
+0x1A HCI_WRITE_GPIO_2_LED
+0x1B HCI_SET_TESTMODE_TYPE
+0x1C HCI_WRITE_SCO_PCM_INT_PARAM
+0x1D HCI_READ_SCO_PCM_INT_PARAM
+0x1E HCI_WRITE_PCM_DATA_FORMAT_PARAM
+0x1F HCI_READ_PCM_DATA_FORMAT_PARAM
+0x20 HCI_WRITE_COMFORT_NOISE_PARAM
+0x21 HCI_READ_COMFORT_NOISE_PARAM
+0x22 HCI_WRITE_SCO_TS
+0x23 HCI_READ_SCO_TS
+0x24 HCI_WRITE_PCM_LOOPBACK_MODE
+0x25 HCI_READ_PCM_LOOPBACK_MODE
+0x26 HCI_SET_TRANSMIT_POWER
+0x27 HCI_SET_SLEEPMODE_PARAM
+0x28 HCI_READ_SLEEPMODE_PARAM
+0x29 HCI_SLEEPMODE_CMD
+0x2A HCI_DELAY_PERIPHERAL_SCO_STARTUP
+0x2B HCI_WRITE_RECEIVE_ONLY
+0x2C HCI_WRITE_RATE_CONTROL
+0x2D HCI_TX_UNMOD_CARRIER
+0x2E HCI_DOWNLOAD_MINIDRIVER
+0x2F HCI_CRYSTAL_PPM
+0x30 HCI_SET_POWER_AMP_BIAS
+0x31 HCI_SET_HAM_BEHAVIOR
+0x32 HCI_SET_AFH_BEHAVIOR
+0x33 HCI_READ_USER_DEFINED_NVRAM
+0x34 HCI_ENABLE_RADIO
+0x35 HCI_READ_DIAGNOSTIC_INFO
+0x36 HCI_GET_HID_DEVICE_LIST
+0x37 HCI_ADD_HID_DEVICE
+0x38 HCI_READ_APP_FW_CONFIG_VERSION
+0x39 HCI_DELETE_HID_DEVICE
+0x3B HCI_ENABLE_USB_HID_EMULATION
+// 0x3A available
+// 0x3B available
+0x3C HCI_SEND_LMPDU
+0x3D HCI_AUTO_PAIR_REQ
+0x3E HCI_READ_VS_EXTENSION
+0x3F HCI_WRITE_VS_EXTENSION
+
+0x77 HCI_OPCODE_FC77
+0x79 HCI_OPCODE_FC79
+0xC4 HCI_DOWNLOAD_PATCH
+0xCC HCI_OPCODE_FCCC
+
+0x00 HCI_VENDOR_CMD_RESET
+0x01 HCI_VENDOR_CMD_CHIPID
+0x02 HCI_VENDOR_CMD_BAUD
+0x03 HCI_VENDOR_CMD_PATCH
+0x04 HCI_VENDOR_CMD_PATCH_DONE
+0x05 HCI_VENDOR_CMD_ECHO
+0x06 HCI_VENDOR_CMD_BDADDR
+
+0x07 HCI_VENDOR_CMD_ENTER_LPM
+0x08 HCI_VENDOR_CMD_COMMU_READY
+
+0x10 HCI_VENDOR_CMD_MEM
+0x11 HCI_VENDOR_CMD_EEP
+
+0X12 HCI_VENDOR_CMD_PATCH_SEC_INIT
+0X13 HCI_VENDOR_CMD_PATCH_SEC
+0x14 HCI_VENDOR_CMD_SET_FLOW_CONTROL
+)
+(
+0x01 HCI_LE_SET_EVENT_MASK
+0x02 HCI_LE_READ_BUFFER_SIZE
+0x03 HCI_LE_READ_LOCAL_SUPPORTED_FEATURES
+0x05 HCI_LE_SET_RANDOM_ADDRESS
+0x06 HCI_LE_SET_ADVERTISING_PARAMETERS
+0x07 HCI_LE_READ_ADVERTISING_CHANNEL_TX_POWER
+0x08 HCI_LE_SET_ADVERTISING_DATA
+0x09 HCI_LE_SET_SCAN_RESPONSE_DATA
+0x0A HCI_LE_SET_ADVERTISE_ENABLE
+0x0B HCI_LE_SET_SCAN_PARAMETERS
+0x0C HCI_LE_SET_SCAN_ENABLE
+0x0D HCI_LE_CREATE_CONNECTION
+0x0E HCI_LE_CREATE_CONNECTION_CANCEL
+0x0F HCI_LE_READ_WHITE_LIST_SIZE
+0x10 HCI_LE_CLEAR_WHITE_LIST
+0x11 HCI_LE_ADD_DEVICE_TO_WHITE_LIST
+0x12 HCI_LE_REMOVE_DEVICE_FROM_WHITE_LIST
+0x13 HCI_LE_CONNECTION_UPDATE
+0x14 HCI_LE_SET_HOST_CHANNEL_CLASSIFICATION
+0x15 HCI_LE_READ_CHANNEL_MAP
+0x16 HCI_LE_READ_REMOTE_USED_FEATURES
+0x17 HCI_LE_ENCRYPT
+0x18 HCI_LE_RAND
+0x19 HCI_LE_START_ENCRYPTION
+0x1A HCI_LE_LONG_TERM_KEY_REQUEST_REPLY
+0x1B HCI_LE_LONG_TERM_KEY_REQUEST_NEGATIVE_REPLY
+0x1C HCI_LE_READ_SUPPORTED_STATES
+0x1D HCI_LE_RECEIVER_TEST
+0x1E HCI_LE_TRANSMITTER_TEST
+0x1F HCI_LE_TEST_END
+0x20 HCI_LE_REMOTE_CONNECTION_PARAMETER_REQUEST_REPLY
+0x21 HCI_LE_REMOTE_CONNECTION_PARAMETER_REQUEST_NEGATIVE_REPLY
+)
+(
+0x01 HCI_EVENT_INQUIRY_COMPLETE
+0x02 HCI_EVENT_INQUIRY_RESULT
+0x03 HCI_EVENT_CONNECTION_COMPLETE
+0x04 HCI_EVENT_CONNECTION_REQUEST
+0x05 HCI_EVENT_DISCONNECTION_COMPLETE
+0x06 HCI_EVENT_AUTHENTICATION_COMPLETE
+0x07 HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
+0x08 HCI_EVENT_ENCRYPTION_CHANGE_COMPLETE
+0x09 HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE
+0x0A HCI_EVENT_MASTER_LINK_KEY_COMPLETE
+0x0B HCI_EVENT_READ_REMOTE_FEATURES_COMPLETE
+0x0C HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
+0x0D HCI_EVENT_QOS_SETUP_COMPLETE
+0x0E HCI_EVENT_COMMAND_COMPLETE
+0x0F HCI_EVENT_COMMAND_STATUS
+0x10 HCI_EVENT_HARDWARE_ERROR
+0x11 HCI_EVENT_FLUSH_OCCURRED
+0x12 HCI_EVENT_ROLE_CHANGE
+0x13 HCI_EVENT_NUM_COMPLETED_PACKETS
+0x14 HCI_EVENT_MODE_CHANGE
+0x15 HCI_EVENT_RETURN_LINK_KEYS
+0x16 HCI_EVENT_PIN_CODE_REQUEST
+0x17 HCI_EVENT_LINK_KEY_REQUEST
+0x18 HCI_EVENT_LINK_KEY_NOTIFICATION
+0x19 HCI_EVENT_LOOPBACK_COMMAND
+0x1A HCI_EVENT_DATA_BUFFER_OVERFLOW
+0x1B HCI_EVENT_MAX_SLOTS_CHANGE
+0x1C HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
+0x1D HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
+0x1E HCI_EVENT_QOS_VIOLATION
+0x1F HCI_EVENT_PAGE_SCAN_MODE_CHANGE
+0x20 HCI_EVENT_PAGE_SCAN_REPETITION_MODE_CHANGE
+0x21 HCI_EVENT_FLOW_SPECIFICATION_COMPLETE
+0x22 HCI_EVENT_INQUIRY_RESULT_WITHRSSI
+0x23 HCI_EVENT_READ_REMOTE_EXT_FEATURES_COMPLETE
+0x2C HCI_EVENT_SCO_CONNECTION_COMPLETE
+0x2D HCI_EVENT_SCO_CONNECTION_CHANGED
+0x2E HCI_EVENT_SNIFF_SUBRATING
+0x2F HCI_EVENT_EXT_INQUIRY_RESULT
+0x30 HCI_EVENT_ENCRYPT_KEY_REFRESH_COMPLETE
+0x31 HCI_EVENT_IO_CAP_REQ
+0x32 HCI_EVENT_IO_CAP_RESPONSE
+0x33 HCI_EVENT_USER_CONFIRMATION_REQUEST
+0x34 HCI_EVENT_UESR_PASSKEY_REQUEST
+0x35 HCI_EVENT_REMOTE_OOB_DATA_REQUEST
+0x36 HCI_EVENT_SIMPLE_PAIRING_COMPLETE
+0x38 HCI_EVENT_LINK_SUPERVISION_TIMEOUT_CHANGED
+0x39 HCI_EVENT_ENHANCED_FLUSH_COMPLETE
+0x3B HCI_EVENT_USER_PASSKEY_NOTIFICATION
+0x3C HCI_EVENT_KEYPRESS_NOTIFICATION
+0x3D HCI_EVENT_REMOTE_HOST_SUPPORTED_FEATURES_NOTIFICATION
+0x3E HCI_EVENT_LE_META_EVENT
+0x40 HCI_EVENT_PHYSICAL_LINK_COMPLETE
+0x41 HCI_EVENT_CHANNEL_SELECTED
+0x42 HCI_EVENT_DISCONNECTION_PHYSICAL_LINK_COMPLETE
+0x43 HCI_EVENT_PHYSICAL_LINK_LOSS_EARLY_WARNING
+0x44 HCI_EVENT_PHYSICAL_LINK_RECOVERY
+0x45 HCI_EVENT_LOGICAL_LINK_COMPLETE
+0x46 HCI_EVENT_DISCONNECTION_LOGICAL_LINK_COMPLETE
+0x47 HCI_EVENT_FLOW_SPEC_MODIFY_COMPLETE
+0x48 HCI_EVENT_NUMBER_OF_COMPLETED_DATA_BLOCKS
+0x49 HCI_EVENT_AMP_START_TEST
+0x4A HCI_EVENT_AMP_TEST_END
+0x4B HCI_EVENT_AMP_RECEIVER_REPORT
+0x4C HCI_EVENT_SHORT_RANGE_MODE_CHANGE_COMPLETE
+0x4D HCI_EVENT_AMP_STATUS_CHANGE
+0x4E HCI_EVENT_TRIGGERED_CLOCK_CAPTURE
+0x4F HCI_EVENT_SYNCHRONIZATION_TRAIN_COMPLETE
+0x50 HCI_EVENT_SYNCHRONIZATION_TRAIN_RECEIVED
+0x51 HCI_EVENT_CONNECTIONLESS_SLAVE_BROADCAST_RECEIVE
+0x52 HCI_EVENT_CONNECTIONLESS_SLAVE_BROADCAST_TIMEOUT
+0x53 HCI_EVENT_TRUNCATED_PAGE_COMPLETE
+0x54 HCI_EVENT_SLAVE_PAGE_RESPONSE_TIMEOUT
+0x55 HCI_EVENT_CONNECTIONLESS_SLAVE_BROADCAST_CHANNEL_MAP_CHANGE
+0x56 HCI_EVENT_INQUIRY_RESPONSE_NOTIFICATION
+0x57 HCI_EVENT_AUTHENTICATED_PAYLOAD_TIMEOUT_EXPIRED
+
+0xFE HCI_EVENT_LOGO_TESTING
+0xFF HCI_EVENT_VENDOR_SPECIFIC
+)
+(
+0x01 HCI_VENDOR_EVENT_COMMU_READY
+)
+(
+0x01 HCI_LE_SUBEVENT_CONN_COMPLETE
+0x02 HCI_LE_SUBEVENT_ADV_REPORT
+0x03 HCI_LE_SUBEVENT_CONN_UPDATE_COMPLETE
+0x04 HCI_LE_SUBEVENT_REMOTE_FEATURE_COMPLETE
+0x05 HCI_LE_SUBEVENT_LTK_REQUEST
+0x06 HCI_LE_SUBEVENT_REMOTE_CONN_PARAM_REQ
+)
+(
+256 l2cap_lpm_txbuf_len
+)
+(
+4 L2CAP_TX_FIFO_SIZE
+8 L2CAP_TX_BUFF_CNT
+
+)
+(
+0xf00 mem_dcoc_buf
+0xff0 mem_dcoc_buf_end
+)
+(
+0xf00 mem_le_l2cap_buf		//0x100
+)
+(
+0xd00 mem_ble_tx_buff0
+0x60 mem_ble_l2cap_tx_buff_size
+)
+(
+0xc00 mem_h5rx_buf//0x400
+0xeff mem_h5rx_buf_end
+0xf00 mem_h5tx_buf
+0xfff mem_h5tx_buf_end
+)
+(
+0x4c00 mem_savelist
+)
+(
+	  0 patch00_0
+	  1 patch00_1
+	  2 patch00_2
+	  3 patch00_3
+	  4 patch00_4
+	  5 patch00_5
+	  6 patch00_6
+	  7 patch00_7
+	  8 patch01_0
+	  9 patch01_1
+	 10 patch01_2
+	 11 patch01_3
+	 12 patch01_4
+	 13 patch01_5
+	 14 patch01_6
+	 15 patch01_7
+	 16 patch02_0
+	 17 patch02_1
+	 18 patch02_2
+	 19 patch02_3
+	 20 patch02_4
+	 21 patch02_5
+	 22 patch02_6
+	 23 patch02_7
+	 24 patch03_0
+	 25 patch03_1
+	 26 patch03_2
+	 27 patch03_3
+	 28 patch03_4
+	 29 patch03_5
+	 30 patch03_6
+	 31 patch03_7
+	 32 patch04_0
+	 33 patch04_1
+	 34 patch04_2
+	 35 patch04_3
+	 36 patch04_4
+	 37 patch04_5
+	 38 patch04_6
+	 39 patch04_7
+	 40 patch05_0
+	 41 patch05_1
+	 42 patch05_2
+	 43 patch05_3
+	 44 patch05_4
+	 45 patch05_5
+	 46 patch05_6
+	 47 patch05_7
+	 48 patch06_0
+	 49 patch06_1
+	 50 patch06_2
+	 51 patch06_3
+	 52 patch06_4
+	 53 patch06_5
+	 54 patch06_6
+	 55 patch06_7
+	 56 patch07_0
+	 57 patch07_1
+	 58 patch07_2
+	 59 patch07_3
+	 60 patch07_4
+	 61 patch07_5
+	 62 patch07_6
+	 63 patch07_7
+	 64 patch08_0
+	 65 patch08_1
+	 66 patch08_2
+	 67 patch08_3
+	 68 patch08_4
+	 69 patch08_5
+	 70 patch08_6
+	 71 patch08_7
+	 72 patch09_0
+	 73 patch09_1
+	 74 patch09_2
+	 75 patch09_3
+	 76 patch09_4
+	 77 patch09_5
+	 78 patch09_6
+	 79 patch09_7
+	 80 patch0a_0
+	 81 patch0a_1
+	 82 patch0a_2
+	 83 patch0a_3
+	 84 patch0a_4
+	 85 patch0a_5
+	 86 patch0a_6
+	 87 patch0a_7
+	 88 patch0b_0
+	 89 patch0b_1
+	 90 patch0b_2
+	 91 patch0b_3
+	 92 patch0b_4
+	 93 patch0b_5
+	 94 patch0b_6
+	 95 patch0b_7
+	 96 patch0c_0
+	 97 patch0c_1
+	 98 patch0c_2
+	 99 patch0c_3
+	100 patch0c_4
+	101 patch0c_5
+	102 patch0c_6
+	103 patch0c_7
+	104 patch0d_0
+	105 patch0d_1
+	106 patch0d_2
+	107 patch0d_3
+	108 patch0d_4
+	109 patch0d_5
+	110 patch0d_6
+	111 patch0d_7
+	112 patch0e_0
+	113 patch0e_1
+	114 patch0e_2
+	115 patch0e_3
+	116 patch0e_4
+	117 patch0e_5
+	118 patch0e_6
+	119 patch0e_7
+	120 patch0f_0
+	121 patch0f_1
+	122 patch0f_2
+	123 patch0f_3
+	124 patch0f_4
+	125 patch0f_5
+	126 patch0f_6
+	127 patch0f_7
+	128 patch10_0
+	129 patch10_1
+	130 patch10_2
+	131 patch10_3
+	132 patch10_4
+	133 patch10_5
+	134 patch10_6
+	135 patch10_7
+	136 patch11_0
+	137 patch11_1
+	138 patch11_2
+	139 patch11_3
+	140 patch11_4
+	141 patch11_5
+	142 patch11_6
+	143 patch11_7
+	144 patch12_0
+	145 patch12_1
+	146 patch12_2
+	147 patch12_3
+	148 patch12_4
+	149 patch12_5
+	150 patch12_6
+	151 patch12_7
+	152 patch13_0
+	153 patch13_1
+	154 patch13_2
+	155 patch13_3
+	156 patch13_4
+	157 patch13_5
+	158 patch13_6
+	159 patch13_7
+	160 patch14_0
+	161 patch14_1
+	162 patch14_2
+	163 patch14_3
+	164 patch14_4
+	165 patch14_5
+	166 patch14_6
+	167 patch14_7
+	168 patch15_0
+	169 patch15_1
+	170 patch15_2
+	171 patch15_3
+	172 patch15_4
+	173 patch15_5
+	174 patch15_6
+	175 patch15_7
+	176 patch16_0
+	177 patch16_1
+	178 patch16_2
+	179 patch16_3
+	180 patch16_4
+	181 patch16_5
+	182 patch16_6
+	183 patch16_7
+	184 patch17_0
+	185 patch17_1
+	186 patch17_2
+	187 patch17_3
+	188 patch17_4
+	189 patch17_5
+	190 patch17_6
+	191 patch17_7
+	192 patch18_0
+	193 patch18_1
+	194 patch18_2
+	195 patch18_3
+	196 patch18_4
+	197 patch18_5
+	198 patch18_6
+	199 patch18_7
+	200 patch19_0
+	201 patch19_1
+	202 patch19_2
+	203 patch19_3
+	204 patch19_4
+	205 patch19_5
+	206 patch19_6
+	207 patch19_7
+	208 patch1a_0
+	209 patch1a_1
+	210 patch1a_2
+	211 patch1a_3
+	212 patch1a_4
+	213 patch1a_5
+	214 patch1a_6
+	215 patch1a_7
+	216 patch1b_0
+	217 patch1b_1
+	218 patch1b_2
+	219 patch1b_3
+	220 patch1b_4
+	221 patch1b_5
+	222 patch1b_6
+	223 patch1b_7
+	224 patch1c_0
+	225 patch1c_1
+	226 patch1c_2
+	227 patch1c_3
+	228 patch1c_4
+	229 patch1c_5
+	230 patch1c_6
+	231 patch1c_7
+	232 patch1d_0
+	233 patch1d_1
+	234 patch1d_2
+	235 patch1d_3
+	236 patch1d_4
+	237 patch1d_5
+	238 patch1d_6
+	239 patch1d_7
+	240 patch1e_0
+	241 patch1e_1
+	242 patch1e_2
+	243 patch1e_3
+	244 patch1e_4
+	245 patch1e_5
+	246 patch1e_6
+	247 patch1e_7
+	248 patch1f_0
+	249 patch1f_1
+	250 patch1f_2
+	251 patch1f_3
+	252 patch1f_4
+	253 patch1f_5
+	254 patch1f_6
+	255 patch1f_7
+	  0 patch20_0
+	  1 patch20_1
+	  2 patch20_2
+	  3 patch20_3
+	  4 patch20_4
+	  5 patch20_5
+	  6 patch20_6
+	  7 patch20_7
+	  8 patch21_0
+	  9 patch21_1
+	 10 patch21_2
+	 11 patch21_3
+	 12 patch21_4
+	 13 patch21_5
+	 14 patch21_6
+	 15 patch21_7
+	 16 patch22_0
+	 17 patch22_1
+	 18 patch22_2
+	 19 patch22_3
+	 20 patch22_4
+	 21 patch22_5
+	 22 patch22_6
+	 23 patch22_7
+	 24 patch23_0
+	 25 patch23_1
+	 26 patch23_2
+	 27 patch23_3
+	 28 patch23_4
+	 29 patch23_5
+	 30 patch23_6
+	 31 patch23_7
+	 32 patch24_0
+	 33 patch24_1
+	 34 patch24_2
+	 35 patch24_3
+	 36 patch24_4
+	 37 patch24_5
+	 38 patch24_6
+	 39 patch24_7
+	 40 patch25_0
+	 41 patch25_1
+	 42 patch25_2
+	 43 patch25_3
+	 44 patch25_4
+	 45 patch25_5
+	 46 patch25_6
+	 47 patch25_7
+	 48 patch26_0
+	 49 patch26_1
+	 50 patch26_2
+	 51 patch26_3
+	 52 patch26_4
+	 53 patch26_5
+	 54 patch26_6
+	 55 patch26_7
+	 56 patch27_0
+	 57 patch27_1
+	 58 patch27_2
+	 59 patch27_3
+	 60 patch27_4
+	 61 patch27_5
+	 62 patch27_6
+	 63 patch27_7
+	 64 patch28_0
+	 65 patch28_1
+	 66 patch28_2
+	 67 patch28_3
+	 68 patch28_4
+	 69 patch28_5
+	 70 patch28_6
+	 71 patch28_7
+	 72 patch29_0
+	 73 patch29_1
+	 74 patch29_2
+	 75 patch29_3
+	 76 patch29_4
+	 77 patch29_5
+	 78 patch29_6
+	 79 patch29_7
+	 80 patch2a_0
+	 81 patch2a_1
+	 82 patch2a_2
+	 83 patch2a_3
+	 84 patch2a_4
+	 85 patch2a_5
+	 86 patch2a_6
+	 87 patch2a_7
+	 88 patch2b_0
+	 89 patch2b_1
+	 90 patch2b_2
+	 91 patch2b_3
+	 92 patch2b_4
+	 93 patch2b_5
+	 94 patch2b_6
+	 95 patch2b_7
+	 96 patch2c_0
+	 97 patch2c_1
+	 98 patch2c_2
+	 99 patch2c_3
+	100 patch2c_4
+	101 patch2c_5
+	102 patch2c_6
+	103 patch2c_7
+	104 patch2d_0
+	105 patch2d_1
+	106 patch2d_2
+	107 patch2d_3
+	108 patch2d_4
+	109 patch2d_5
+	110 patch2d_6
+	111 patch2d_7
+	112 patch2e_0
+	113 patch2e_1
+	114 patch2e_2
+	115 patch2e_3
+	116 patch2e_4
+	117 patch2e_5
+	118 patch2e_6
+	119 patch2e_7
+	120 patch2f_0
+	121 patch2f_1
+	122 patch2f_2
+	123 patch2f_3
+	124 patch2f_4
+	125 patch2f_5
+	126 patch2f_6
+	127 patch2f_7
+	128 patch30_0
+	129 patch30_1
+	130 patch30_2
+	131 patch30_3
+	132 patch30_4
+	133 patch30_5
+	134 patch30_6
+	135 patch30_7
+	136 patch31_0
+	137 patch31_1
+	138 patch31_2
+	139 patch31_3
+	140 patch31_4
+	141 patch31_5
+	142 patch31_6
+	143 patch31_7
+	144 patch32_0
+	145 patch32_1
+	146 patch32_2
+	147 patch32_3
+	148 patch32_4
+	149 patch32_5
+	150 patch32_6
+	151 patch32_7
+	152 patch33_0
+	153 patch33_1
+	154 patch33_2
+	155 patch33_3
+	156 patch33_4
+	157 patch33_5
+	158 patch33_6
+	159 patch33_7
+	160 patch34_0
+	161 patch34_1
+	162 patch34_2
+	163 patch34_3
+	164 patch34_4
+	165 patch34_5
+	166 patch34_6
+	167 patch34_7
+	168 patch35_0
+	169 patch35_1
+	170 patch35_2
+	171 patch35_3
+	172 patch35_4
+	173 patch35_5
+	174 patch35_6
+	175 patch35_7
+	176 patch36_0
+	177 patch36_1
+	178 patch36_2
+	179 patch36_3
+	180 patch36_4
+	181 patch36_5
+	182 patch36_6
+	183 patch36_7
+	184 patch37_0
+	185 patch37_1
+	186 patch37_2
+	187 patch37_3
+	188 patch37_4
+	189 patch37_5
+	190 patch37_6
+	191 patch37_7
+	192 patch38_0
+	193 patch38_1
+	194 patch38_2
+	195 patch38_3
+	196 patch38_4
+	197 patch38_5
+	198 patch38_6
+	199 patch38_7
+	200 patch39_0
+	201 patch39_1
+	202 patch39_2
+	203 patch39_3
+	204 patch39_4
+	205 patch39_5
+	206 patch39_6
+	207 patch39_7
+	208 patch3a_0
+	209 patch3a_1
+	210 patch3a_2
+	211 patch3a_3
+	212 patch3a_4
+	213 patch3a_5
+	214 patch3a_6
+	215 patch3a_7
+	216 patch3b_0
+	217 patch3b_1
+	218 patch3b_2
+	219 patch3b_3
+	220 patch3b_4
+	221 patch3b_5
+	222 patch3b_6
+	223 patch3b_7
+	224 patch3c_0
+	225 patch3c_1
+	226 patch3c_2
+	227 patch3c_3
+	228 patch3c_4
+	229 patch3c_5
+	230 patch3c_6
+	231 patch3c_7
+	232 patch3d_0
+	233 patch3d_1
+	234 patch3d_2
+	235 patch3d_3
+	236 patch3d_4
+	237 patch3d_5
+	238 patch3d_6
+	239 patch3d_7
+	240 patch3e_0
+	241 patch3e_1
+	242 patch3e_2
+	243 patch3e_3
+	244 patch3e_4
+	245 patch3e_5
+	246 patch3e_6
+	247 patch3e_7
+	248 patch3f_0
+	249 patch3f_1
+	250 patch3f_2
+	251 patch3f_3
+	252 patch3f_4
+	253 patch3f_5
+	254 patch3f_6
+	255 patch3f_7
+
+)
+(
+	0x8000 core_chipid
+	0x8001 core_revid
+	0x8003 core_kick
+	0x8004 core_write_wdt
+	0x8005 core_lpm_wr
+	0x8006 core_misc_ctrl
+	0x8007 core_otp_rdata
+	0x8007 core_efuse_rdata
+	0x800a core_ccm_ctrl
+	0x800b core_write_wdt2
+	0x8010 core_reset
+	0x8011 core_encrypt
+	0x8012 core_lpm_wr2
+	0x8020 core_set_bistfix
+	0x8022 core_ucode_hi
+	0x8023 core_ucode_ctrl
+	0x8024 core_ucode_low
+	0x8025 core_ucode_data
+
+	0x8040 core_halfslot
+	0x8042 core_clksel
+	0x8043 core_uart_clksel
+	0x8043 core_config
+	0x8044 core_otp_addr
+	0x8046 core_otp_din
+	0x8046 core_otp_ctrl2
+	0x8047 core_otp_ctrl
+	0x8047 core_otp_pab
+	0x8048 core_xtal_stable_time
+	0x8049 core_gpio_ds
+	0x804c core_lpm_reg
+	0x8050 core_clkoff
+	0x8052 core_uart_baud
+	0x8054 core_uart_rsaddr
+	0x8056 core_uart_readdr
+	0x8058 core_uart_rrptr
+	0x805a core_uart_tsaddr
+	0x805c core_uart_teaddr
+	0x805e core_uart_twptr
+	0x8060 core_uart_ctrl
+	0x8061 core_nec_ctrl
+	0x8062 core_nec_start_addr
+	0x8064 core_nec_end_addr
+	0x8066 core_nec_rptr
+	0x8068 core_ccm_input_playload_addr
+	0x806a core_ccm_output_playload_addr
+	0x806c core_ccm_aad0
+	0x806d core_ccm_aad1
+	0x806e core_ccm_aad2
+	0x806f  core_bist_ctrl
+	0x8070 core_gpio_conf
+	0x8080 core_spid_ctrl
+	0x8081 core_spid_delay
+	0x8082 core_spid_txlen
+	0x8084 core_spid_txaddr
+	0x8086 core_spid_rxaddr
+	0x8088 core_spid_rxlen
+	0x808a core_iicd_ctrl
+	0x808b core_iicd_scl_low
+	0x808c core_iicd_scl_high
+	0x808d core_iicd_start_setup
+	0x808e core_iicd_start_hold
+	0x808f core_iicd_stop_setup
+	0x8090 core_iicd_data_setup
+	0x8091 core_iicd_data_hold
+	0x8092 core_iicd_txlen
+	0x8094 core_iicd_txaddr
+	0x8096 core_iicd_rxaddr
+	0x8098 core_iicd_rxlen
+	0x809a core_pwm_en
+	0x809b core_pwm_init
+	0x809c core_pwm_pcnt0
+	0x809e core_pwm_ncnt0
+	0x80a0 core_pwm_pcnt1
+	0x80a2 core_pwm_ncnt1
+	0x80a4 core_pwm_pcnt2
+	0x80a6 core_pwm_ncnt2
+	0x80a8 core_pwm_pcnt3
+	0x80aa core_pwm_ncnt3
+	0x80ac core_pwm_pcnt4
+	0x80ae core_pwm_ncnt4
+	0x80b0 core_pwm_pcnt5
+	0x80b2 core_pwm_ncnt5
+	0x80b4 core_pwm_pcnt6
+	0x80b6 core_pwm_ncnt6
+	0x80b8 core_pwm_pcnt7
+	0x80ba core_pwm_ncnt7
+	0x80bc core_pwm_sync
+	0x80bd core_pwm_timermode
+	0x80be core_pwm_autoload
+	0x80bf core_sum_ctrl
+	0x80c0 core_ccm_inptr
+	0x80c2 core_dac_ctrl
+	0x80c3 core_dac_vol
+	0x80c4 core_dac_saddr
+	0x80c6 core_dac_len
+	0x80c8 core_dac_coef
+	0x80cb core_ccnt_bit
+	0x80cc core_sadc_ctrl
+	0x80cd core_sadc_clkdiv
+	0x80ce core_sadc_saddr
+	0x80d0 core_sadc_eaddr
+	0x80d2 core_keybuf_saddr
+	0x80d4 core_gpio_conf_hi
+
+	0x8108 core_misc_status
+	0x8109 core_qdec_cntx
+	0x810a core_watchdog_cnt
+	0x810b core_uart_status
+	0x810c core_uart_rbaud
+	0x810e core_uart_txitems
+	0x8110 core_uart_trptr
+	0x8112 core_uart_rxitems
+	0x8114 core_uart_rdptr
+	0x8116 core_uart_rwptr
+	0x8118 core_debug_baud
+	0x811a core_ccm_outptr
+	0x811c core_gpio_in
+	0x811d core_gpio_in1
+	0x811e core_adc_sum
+	0x8120 core_nec_wptr
+	0x8122 core_current_otp_addr
+	0x8124 core_spid_remain
+	0x8126 core_iicd_remain
+	0x8128 core_dma_status
+	0x8129 core_perf_status
+	0x812a core_adc_in
+	0x812c core_nec_rxitem
+	0x812e core_otpd_remain
+	0x8130 core_lpm_ctrl
+	0x8132 core_lpm_isogate
+	0x8133 core_lpm_ldosel
+	0x8134 core_io_vsel
+	0x8135 core_io_doze_en
+	0x813a core_xtal_cap
+	0x813d core_xtal_ib
+	0x813e core_lpm_xtalcnt
+	0x813f core_lpm_buckcnt
+	0x8140 core_lpm_ldocnt
+	0x8141 core_puwakeup
+	0x8142 core_lpm_sysctl
+	0x8143 core_ucode_flag
+	0x8144 core_peripheral_lock
+	0x8145 core_mpu_s0_saddr
+	0x8147 core_mpu_s0_eaddr
+	0x8149 core_mpu_s1_saddr
+	0x814b core_mpu_s1_eaddr
+	0x814d core_gpio_wakeup_cfg
+	0x8155 core_aes_decode_key_init
+	0x815b core_clk_counter
+	0x815e core_bist_done
+	0x8160 core_bist_fail
+	0x8162 core_dac_rptr
+	0x8164 core_sadc_data
+	0x8166 core_rccnt_counter
+
+	0x8203 core_ice_ctrl
+	0x8204 core_ice_status
+	0x8205 core_ice_break0
+	0x8207 core_ice_break1
+
+
+	0x8900 modem_en
+	0x8960 core_rf_rx_agc_ctrl
+	0x8961 core_rf_rx_gain_fix
+	0x8968 core_agc_wb_sat_th
+	0x8969 core_agc_nb_sat_th
+	0x89a0 modem_rssi
+	0x89a1 modem_wb_pow
+	0x89a2 modem_nb_pow
+	0x89a3 modem_gain
+	0x89a4 modem_status
+
+	0x8a00 core_bbpll_ctrl0
+	0x8a01 core_bbpll_ctrl1
+	0x8a02 core_bbpll_cfg0
+	0x8a03 core_bbpll_cfg1
+	0x8a04 core_bbpll_cfg2
+	0x8a05 core_bbpll_cfg3
+	0x8a06 core_bbpll_cfg4
+	0x8a07 core_gpadc_ctrl
+	0x8a08 core_gpadc_cfg0
+	0x8a09 core_gpadc_cfg1
+	0x8a0a core_gpadc_cfg2
+	0x8a0b core_gpadc_cfg3
+	0x8a0c core_gpadc_status
+	0x8a0d core_vtest_ctrl0
+	0x8a0e core_vtest_ctrl1
+	0x8a0f core_ldo_trx_ctrl0
+	0x8a10 core_ldo_trx_ctrl1
+	0x8a11 core_ldo_trx_ctrl2
+	0x8a12 core_ldo_rfpll_ctrl
+    0x8a13 core_ldo_trx_cfg0
+    0x8a14 core_ldo_trx_cfg1
+    0x8a15 core_ldo_trx_cfg2
+    0x8a16 core_ldo_rfpll_mnc_cfg2
+
+    0x8a20 core_rfpll_afc_ctrl0
+    0x8a21 core_rfpll_afc_ctrl1
+    0x8a22 core_rfpll_afc_ctrl2
+    0x8a23 core_rfpll_en_ctrl0
+    0x8a24 core_rfpll_en_ctrl1
+    0x8a25 core_rf_en_ctrl0
+    0x8a26 core_rf_en_ctrl1
+
+	0x8a30 core_rx_force_en_ctrl
+	0x8a31 core_rx_gc_force_val
+	0x8a32 core_rx_lna_isel_force_val
+
+	0x8a40 core_rx_lna_hg_isel_gc7
+	0x8a41 core_rx_lna_hg_isel_gc6
+	0x8a42 core_rx_lna_hg_isel_gc5
+	0x8a43 core_rx_lna_lg_isel_gc4
+	0x8a44 core_rx_lna_lg_isel_gc3
+	0x8a45 core_rx_lna_lg_isel_gc2
+	0x8a46 core_rx_lna_lg_isel_gc1
+	0x8a47 core_rx_lna_lg_isel_gc0
+	0x8a48 core_rx_abb_gc_gc8
+	0x8a49 core_rx_abb_gc_gc7
+	0x8a4a core_rx_abb_gc_gc6
+	0x8a4b core_rx_abb_gc_gc5
+	0x8a4c core_rx_abb_gc_gc4
+	0x8a4d core_rx_abb_gc_gc3
+	0x8a4e core_rx_abb_gc_gc2
+	0x8a4f core_rx_abb_gc_gc1
+	0x8a50 core_rx_abb_gc_gc0
+
+	0x8a60 core_tx_ctrl0
+	0x8a61 core_tx_ctrl1
+	0x8a62 core_tx_ctrl2
+	0x8a63 core_tx_ctrl3
+
+	0x8a70 core_rfpll_cal_ctrl0
+	0x8a71 core_rfpll_cal_ctrl1
+	0x8a72 core_rfpll_cal_ctrl2
+	0x8a73 core_rfpll_cal_ctrl3
+	0x8a74 core_rfpll_cal_ctrl4
+	0x8a75 core_rfpll_cal_ctrl5
+	0x8a76 core_rfpll_cal_ctrl6
+	0x8a77 core_rfpll_cal_ctrl7
+	0x8a78 core_rfpll_cal_ctrl8
+	0x8a79 core_rfpll_cal_ctrl9
+	0x8a7a core_rfpll_cal_ctrl10
+	0x8a7b core_rfpll_cal_ctrl11
+	0x8a7c core_rfpll_cal_result0
+	0x8a7d core_rfpll_cal_result1
+	0x8a7e core_rfpll_cal_result2
+
+    0x8a80 core_rfpll_cfg0
+    0x8a81 core_rfpll_cfg1
+    0x8a82 core_rfpll_cfg2
+    0x8a83 core_rfpll_cfg3
+    0x8a84 core_rfpll_cfg4
+    0x8a85 core_rfpll_cfg5
+    0x8a86 core_rfpll_cfg6
+    0x8a87 core_rfpll_cfg7
+
+    0x8a88 core_rx_cfg0
+    0x8a89 core_rx_cfg1
+    0x8a8a core_rx_cfg2
+    0x8a8b core_rx_cfg3
+    0x8a8c core_rx_cfg4
+    0x8a8d core_rx_cfg5
+    0x8a8e core_rx_cfg6
+    0x8a8f core_rx_cfg7
+    0x8a90 core_rx_cfg8
+
+	0x8aa0 core_rx_tiai_dcoc_gc0
+	0x8aa1 core_rx_tiaq_dcoc_gc0
+	0x8aa2 core_rx_tiai_dcoc_gc1
+	0x8aa3 core_rx_tiaq_dcoc_gc1
+	0x8aa4 core_rx_tiai_dcoc_gc2
+	0x8aa5 core_rx_tiaq_dcoc_gc2
+	0x8aa6 core_rx_tiai_dcoc_gc3
+	0x8aa7 core_rx_tiaq_dcoc_gc3
+	0x8aa8 core_rx_tiai_dcoc_gc4
+	0x8aa9 core_rx_tiaq_dcoc_gc4
+	0x8aaa core_rx_tiai_dcoc_gc5
+	0x8aab core_rx_tiaq_dcoc_gc5
+	0x8aac core_rx_tiai_dcoc_gc6
+	0x8aad core_rx_tiaq_dcoc_gc6
+	0x8aae core_rx_tiai_dcoc_gc7
+	0x8aaf core_rx_tiaq_dcoc_gc7
+	0x8ab0 core_rx_abbi_dcoc_gc0
+	0x8ab1 core_rx_abbq_dcoc_gc0
+	0x8ab2 core_rx_abbi_dcoc_gc1
+	0x8ab3 core_rx_abbq_dcoc_gc1
+	0x8ab4 core_rx_abbi_dcoc_gc2
+	0x8ab5 core_rx_abbq_dcoc_gc2
+	0x8ab6 core_rx_abbi_dcoc_gc3
+	0x8ab7 core_rx_abbq_dcoc_gc3
+	0x8ab8 core_rx_abbi_dcoc_gc4
+	0x8ab9 core_rx_abbq_dcoc_gc4
+	0x8aba core_rx_abbi_dcoc_gc5
+	0x8abb core_rx_abbq_dcoc_gc5
+	0x8abc core_rx_abbi_dcoc_gc6
+	0x8abd core_rx_abbq_dcoc_gc6
+	0x8abe core_rx_abbi_dcoc_gc7
+	0x8abf core_rx_abbq_dcoc_gc7
+	0x8ac0 core_rx_abbi_dcoc_gc8
+	0x8ac1 core_rx_abbq_dcoc_gc8
+	0x8ac2 core_rx_tiai_dcoc_force
+	0x8ac3 core_rx_tiaq_dcoc_force
+	0x8ac4 core_rx_abbi_dcoc_force
+	0x8ac5 core_rx_abbq_dcoc_force
+	0x8ac8 core_chgpump_ctrl
+
+	0x8c00 core_usb_config
+	0x8c01 core_usb_addr
+	0x8c02 core_usb_rx_saddr
+	0x8c04 core_usb_rx_eaddr
+	0x8c06 core_usb_rxptr
+	0x8c08 core_usb_tx_saddr0
+	0x8c0a core_usb_tx_saddr1
+	0x8c0c core_usb_tx_saddr2
+	0x8c0e core_usb_tx_saddr3
+	0x8c10 core_usb_epmap
+	0x8c11 core_usb_pupd
+	0x8c12 core_usb_hmode
+	0x8c13 core_usb_int_mask
+	0x8c18 core_usb_trig
+	0x8c19 core_usb_stall
+	0x8c1a core_usb_toggle
+	0x8c1b core_usb_clear_nak
+	0x8c20 core_usb_rx_wptr
+	0x8c22 core_usb_status
+	0x8c24 core_usb_stall_status
+	0x8c25 core_usb_txbusy
+	0x8c26 core_usb_sof_cnt
+	0x8c28 core_usb_rxcnt
+
+
+
+
+
+
+
+)
+(
+7 AES_EN
+)
+(
+4 rx_freq_offset
+2 tx_freq_offset
+)
+(
+/* bit difinitions */
+  4 whiteoff_bit
+  6 clksel_rc
+  1 clksel_dpll_24M
+  5 clksel_dpll
+  4 clksel_xtal
+  5 adc_rccal
+  0 bpf_rccal
+  1 demod_clkoff
+)
+(
+  4 cold_wake
+  5 gpio_latch
+  6 retmem_cs
+  7 isogate
+)
+(
+  2 fast_wake
+  3 ice_mode
+  4 reload_code
+)
+(
+1 lpmreg_sel_counter
+2 lpmreg_sel_scanmode
+)
+(
+0 SPI_LOCK_BIT
+1 PWM_LOCK_BIT
+2 UART_LOCK_BIT
+3 IIC_LOCK_BIT
+4 ADPCM_LOCK_BIT
+5 ROM_LOCK_BIT
+6 OPTION_LOCK
+6 OTP_NOT_LIMIT
+7 OTP_LIMIT
+)
+(
+4 LPM_DOZE_EN_BIT
+)
+(
+  0x01 RCCNT_START
+  0x02 SPID_START
+  0x04 IICD_START
+  0x08 OTP_KEY_LOCK
+  0x10 INIT_KEY
+  0x20 SHIFT_KEY
+  0X80 CCNT_START
+)
+(
+  0 OTPD_CRCOK
+  1 OTPD_DONE
+  2 SPID_CRCOK
+  3 SPID_DONE
+  4 IICD_CRCOK
+  5 IICD_DONE
+  6 IICD_ACK
+)
+(
+1 UART_STATUS_TX_BUSY
+2 UART_STATUS_RX_FIFO_EMPTY
+3 UART_STATUS_RX_FIFO_FULL
+4 UARTB_STATUS_TX_BUSY
+5 UARTB_STATUS_RX_FIFO_EMPTY
+6 UARTB_STATUS_RX_FIFO_FULL
+)
+(//core_uart_clksel
+0 UART_CLOCK_SELECT_BIT
+0xFE UART_CLOCK_SELECT_CRYSTAL
+0x01 UART_CLOCK_SELECT_DPLL
+
+24000000 uart_clock_freq_24M
+48000000 uart_clock_freq_48M
+)
+(//bit map of core_uart_ctrl
+0 BIT_UART_CONTROL_ENABLE
+1 BIT_UART_CONTROL_PARITY
+2 BIT_UART_CONTROL_DATA_LENGTH
+3 BIT_UART_CONTROL_STOP_BIT_SIZE
+4 BIT_UART_CONTROL_FLOW_CONTROL
+5 BIT_UART_CONTROL_7816_SMART_CARD_PROTOCOL
+6 BIT_UART_CONTROL_HALF_DUPLEX_SINGLE_LINE_UART
+7 BIT_UART_CONTROL_RATE_BAUD_SETTING
+)
+(//FUN of core_uart_ctrl
+0x01 FUN_UART_CONTROL_ENABLE
+0x06 FUN_UART_CONTROL_PARITY_ODD
+0x04 FUN_UART_CONTROL_PARITY_EVEN
+0x08 FUN_UART_CONTROL_STOP_2BIT
+0x00 FUN_UART_CONTROL_STOP_1BIT
+0x10 FUN_UART_CONTROL_FLOW_CONTROL_ENABLE
+0x20 FUN_UART_CONTROL_7816_SMART_CARD_PROTOCOL
+0x40 FUN_UART_CONTROL_HALF_DUPLEX_SINGLE_LINE_UART
+0x80 FUN_UART_CONTROL_SETTING_RATE_BAUD
+)
+(//bit map of core_nec_control
+0x00 BIT_NEC_ENABLE
+0x01 BIT_NEC_CLK_DIVIDE_NUM
+)
+(//FUN  of core_nec_control
+0x01 FUN_NEC_ENABLE
+0x30 FUN_NEC_CLK_DIVIDE_24	//24M ,
+)
+0x8b uart_ctrl_default //BCSP
+0x81 uart_ctrl_h4 //H4
+0x81 uart_ctrl_normal
+0x91 uart_ctrl_5line
+0x81 uart_ctrl_57600
+2 uart_baud_len
+0x00 uartclk_crystal
+0x01 uartclk_dpll
+0x1a0 uart_baud_115200
+0xbb uart_baud_256000
+0x340 uart_baud_57600
+0x34 uart_baud_921600
+0x9c4 uart_baud_9600
+(
+	0 CLOCK_OFF_AUTH_ROM
+	1 CLOCK_OFF_UC_ROM
+	2 CLOCK_OFF_DEBUG_UART
+	3 CLOCK_OFF_SCHED_RAM
+	4 CLOCK_OFF_TRANCE_FIFO
+	5 CLOCK_OFF_CORDIC
+	6 CLOCK_OFF_OTPD
+	7 CLOCK_OFF_I2C
+	8 CLICK_OFF_SARADC_DMA
+	9 CLOCK_OFF_KEYSCAN
+	0x0a CLOCK_OFF_USB
+	0x0b CLOCK_OFF_QDECODER
+	0x0c CLOCK_OFF_SPI
+	0x0d CLOCK_OFF_PWM
+	0x0e CLOCK_OFF_UARTB
+	0x0f CLOCK_OFF_UART
+)
+(
+  0 gpcfg_input
+  6 gpcfg_dac_p
+  7 gpcfg_dac_n
+  8 gpcfg_uart_txd
+  9 gpcfg_uart_rxd
+  10 gpcfg_uart_rts
+  11 gpcfg_uart_cts
+
+  16 gpcfg_pwm_out0
+  17 gpcfg_pwm_out1
+  18 gpcfg_pwm_out2
+  19 gpcfg_pwm_out3
+  20 gpcfg_pwm_out4
+  21 gpcfg_pwm_out5
+  22 gpcfg_pwm_out6
+  23 gpcfg_pwm_out7
+  24 gpcfg_nec_input
+
+  31 gpcfg_spid_miso
+  32 gpcfg_spid_ncs
+  33 gpcfg_spid_sck
+  34 gpcfg_spid_mosi
+  35 gpcfg_spid_sdio
+
+  44 gpcfg_iic_scl
+  45 gpcfg_iic_sda
+
+  62 gpcfg_output_low
+  63 gpcfg_output_high
+
+  0x00 gpcfg_high_impedance
+  0x40 gpcfg_pullup
+  0x80 gpcfg_pulldown
+  0xc0 gpcfg_no_ie
+)
+(
+16	GPIO_NUMBER
+8	GPIO_NUMBER_EXT
+)
+(
+  0x00   SP_FLAG_STANDBY
+  0x02   LE_SP_FLAG_COMMIT_256
+
+)
+(
+  0x00   SP_CALC_STANDBY
+  0x03   SP_CALC_PUBKEY_256
+  0x04   SP_CALC_DHKEY_256
+)
+(
+  0x00   SP_KEY_INVALID
+  0x03   SP_KEY_VALID_256
+
+)
+(
+0 SECURE_CONNECTIONS_LE_BIT
+1 SECURE_CONNECTIONS_BR_BIT
+)
+(
+9 UI_STATE_BLE_CONNECTED
+10 UI_STATE_BLE_WRITE_RCV
+11 UI_STATE_BLE_ADV
+12 UI_STATE_BTN_DOWN
+)
+(
+0 BT_CMD_STANDBY
+13 BT_CMD_START_ADV
+14 BT_CMD_STOP_ADV
+15 BT_CMD_START_DIRECT_ADV
+16 BT_CMD_STOP_DIRECT_ADV
+17 BT_CMD_LE_DISCONNECT
+18 BT_CMD_LE_UPDATE_CONN
+19 BT_CMD_LED_OFF
+20 BT_CMD_LED_ON
+21 BT_CMD_LED_BLINK
+22 BT_CMD_LE_START_CONN
+23 BT_CMD_LE_START_SCAN
+24 BT_CMD_LE_STOP_SCAN
+25 BT_CMD_ENTER_HIBERNATE
+27 BT_CMD_LE_SMP_SECURITY_REQUEST
+31 BT_CMD_STORE_RECONN_INFO_LE
+34 BT_CMD_START_24G
+35 BT_CMD_STOP_24G
+36 BT_CMD_PAIR_24G
+)
+(
+0x00 BT_EVT_NULL
+0x0F BT_EVT_DISCOVERY_STOPED
+0x10 BT_EVT_BUTTON_LONG_PRESSED
+0x14 BT_EVT_LE_CONNECTED
+0X15 BT_EVT_LE_DISCONNECTED
+0x17 BT_EVT_BUTTON_ENTER_HIBERNATE
+0x25 BT_EVT_BUTTON_ADJUST_DPI
+0x28 BT_EVT_LE_WRITE_REQUEST
+0x29 BT_EVT_LE_ENC_INFO
+0x2c BT_EVT_BUTTON_DOWN
+0x2d BT_EVT_BUTTON_UP
+0x2e BT_EVT_REMOTE_UNSNIFF
+0x30 BT_EVT_LE_PAIRING_FAIL
+0x31 BT_EVT_LE_PAIRING_SUCCESS
+0x32 BT_EVT_LE_START_ENC
+0X33 BT_EVT_LE_PAUSE_ENC
+0X34 BT_EVT_LE_TK_GENERATE
+0x35 BT_EVT_BT_GKEY_GENERATE
+0x36 BT_EVT_BT_GET_PASSKEY
+0x39 BT_EVT_24G_PAIRING_COMPLETE
+0x3a BT_EVT_24G_ATTEMPT_FAIL
+0x3b BT_EVT_LE_GKEY_GENERATE
+0x3c BT_EVT_24G_ATTEMPT_SUCCESS
+0x3d BT_EVT_STORE_NVRAM
+0x3e BT_EVT_LE_PAIRING_COMPLETE
+0x3F BT_EVT_LE_RECONNECT_COMPLETE
+0x40 BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP
+0x41 BT_EVT_LE_LTK_LOST
+0x42 BT_EVT_LE_UPDATE_PHY
+0x43 BT_EVT_LE_GET_PASSKEY
+0x44 BT_EVT_LE_PARSE_CONN_PARAM_ACCEPTED
+)
+(
+0 OFF
+1 ON
+)
+(
+	160 UI_HUNDRED_MILLISECOND_TIME
+	0XFF UI_BUTTON_GPIO_DISABLE
+)
+(
+0x00 UI_BUTTON_STATE_DOWN
+0x01 UI_BUTTON_STATE_UP
+)
+(
+	0 IPC_CONTINUE_PROCESS
+	1 IPC_SKIP_CONTINUE_PROCESS
+)
+(//led style struct
+0 		LED_OFFSET_LED_TYPE
+1 		LED_OFFSET_BLINK_COUNT
+2		LED_OFFSET_LED_GPIO
+3		LED_OFFSET_ON_TIME
+5		LED_OFFSET_OFF_TIME
+7 		LED_OFFSET_CB_LEDON
+9		LED_OFFSET_CB_LEDOFF
+11		LED_OFFSET_LENGTH
+)
+(//LED state
+0 UI_LED_STATE_BLINK_STOP
+1 UI_LED_STATE_BLINK_START
+2 UI_LED_STATE_LIGHTING
+3 UI_LED_STATE_DARKING
+4 UI_LED_STATE_BLINK_LIGHTING
+5 UI_LED_STATE_BLINK_DARKING
+
+0xFF LED_INFINITE_FLASH_NUM
+
+)
+(
+0x00 STANDARD_REQ
+0x01 CLASS_REQ
+0x02 MANUFACTURER_REQ
+)
+(
+0x00 GET_STATUS                // Code for Get Status
+0x01 CLEAR_FEATURE             // Code for Clear Feature
+0x03 SET_FEATURE              // Code for Set Feature
+0x05 SET_ADDRESS              // Code for Set Address
+0x06 GET_DESCRIPTOR           // Code for Get Descriptor
+0x07 SET_DESCRIPTOR           // Code for Set Descriptor(not used)
+0x08 GET_CONFIGURATION        // Code for Get Configuration
+0x09 SET_CONFIGURATION        // Code for Set Configuration
+0x0A GET_INTERFACE            // Code for Get Interface
+0x0B SET_INTERFACE            // Code for Set Interface
+0x0C SYNCH_FRAME              // Code for Synch Frame(not used)
+)
+(
+0x01 DSC_DEVICE               // Device Descriptor
+0x02 DSC_CONFIG               // Configuration Descriptor
+0x03 DSC_STRING               // String Descriptor
+0x04 DSC_INTERFACE            // Interface Descriptor
+0x05 DSC_ENDPOINT             // Endpoint Descriptor
+)
+(
+0x21 DSC_HID			      // HID Class Descriptor
+0x22 DSC_HID_REPORT			  // HID Report Descriptor
+)
+(
+0x80 IN_DEVICE                // Request made to device,
+                              // direction is IN
+0x00 OUT_DEVICE               // Request made to device,
+                              // direction is OUT
+0x81 IN_INTERFACE             // Request made to interface,
+                              // direction is IN
+0x01 OUT_INTERFACE            // Request made to interface,
+                              // direction is OUT
+0x82 IN_ENDPOINT              // Request made to endpoint,
+                              // direction is IN
+0x02 OUT_ENDPOINT             // Request made to endpoint,
+)
+(
+0x01 GET_REPORT 		       // Code for Get Report
+0x02 GET_IDLE				   // Code for Get Idle
+0x03 GET_PROTOCOL			   // Code for Get Protocol
+0x09 SET_REPORT				   // Code for Set Report
+0x0A SET_IDLE				   // Code for Set Idle
+0x0B SET_PROTOCOL			   // Code for Set Protocol
+0xF2 HID_REPORT_ID
+64 EP0_PACKET_SIZE
+6 EP1_PACKET_SIZE
+16 HID_REPORT_SIZE
+0x001B HID_REPORT_DESCRIPTOR_SIZE
+)
+(
+0 TYPE_SIN
+1 TYPE_ATAN
+2 TYPE_MULT
+3 TYPE_DIV
+4 TYPE_ASIN
+5 TYPE_SQRT
+6 TYPE_COS
+7 TYPE_TAN
+)
+(
+0 DFIFO0_IN_EMPTY
+1 DFIFO1_IN_EMPTY
+2 DFIFO2_IN_EMPTY
+3 DFIFO3_IN_EMPTY
+4 DFIFO0_OUT_EMPTY
+5 DFIFO1_OUT_EMPTY
+6 DFIFO2_OUT_EMPTY
+7 DFIFO3_OUT_EMPTY
+)
+(
+)
+(
+0 USB_STATUS_SETUP
+1 USB_STATUS_SUSPEND
+2 USB_STATUS_NAK
+3 USB_STATUS_RESET
+4 USB_STATUS_ACK
+5 USB_STATUS_RXREADY
+6 USB_STATUS_RXFULL
+7 USB_STATUS_TXDONE0
+8 USB_STATUS_TXDONE1
+9 USB_STATUS_TXDONE2
+10 USB_STATUS_TXDONE3
+)
+(
+1 USB_GOT_REPORT_REQ
+2 USB_CONNECTED
+3 USB_SLEEP
+4 USB_RESUME
+5 USB_SETIDLE_1
+)
+(
+0x10 USB_EP1_KB
+0x20 USB_EP2_MS
+0x21 USB_EP2_MULTIKEY
+0x22 USB_EP2_SYSTEMKEY
+0x01 MAC_BOOT_MODE
+0x02 R_KEY
+0x03 LR_KEY
+)
+(
+0x01ba PC_GET_REPORT
+0x02ba PC_SET_REPORT
+0x0200 PC_SET_REPORT_bValue
+0x0000 PC_SET_REPORT_wIndex
+0x0001 PC_SET_REPORT_bLength
+0xba PC_REPORT_ID
+
+0x01 PC_GET_DATA
+0x00 PC_GET_NONDATA
+)
+(
+//--------------------------------------------------
+// Define device states
+0x00 DEV_ATTACHED	// Device is in Attached State
+0x01 DEV_POWERED	// Device is in Powered State
+0x02 DEV_DEFAULT		// Device is in Default State
+0x03 DEV_ADDRESS	// Device is in Addressed State
+0x04 DEV_CONFIGURED	// Device is in Configured State
+0x05 DEV_SUSPENDED	// Device is in Suspended State
+)
+(
+// Define wIndex bitmaps
+0x81 IN_EP1                    // Index values used by Set and Clear
+0x01 OUT_EP1                   // commands for Endpoint_Halt
+0x82 IN_EP2
+0x02 OUT_EP2
+0x83 IN_EP3
+0x03 OUT_EP3
+)
+(
+0 EP0_STALL
+1 EP1_IN_STALL
+2 EP1_OUT_STALL
+3 EP2_IN_STALL
+4 EP2_OUT_STALL
+5 EP3_IN_STALL
+6 EP3_OUT_STALL
+)
+(
+// Define wValue bitmaps for Standard Feature Selectors
+0x00 ENDPOINT_HALT             // Endpoint_Halt feature selector
+0x01 DEVICE_REMOTE_WAKEUP      // Remote wakeup feature(not used)
+0x00 BOOT_PROTOCOL
+0x01 REPORT_PROTOCOL
+0x01 USB_MAX_NUM_CFG
+)
+(
+640 TIMER_NAK_DELAY
+5000 TIMER_WAKEUP_DELAY
+)
+(
+
+8 UTIL_FIFO_LEN
+-1 UTIL_FIFO_OFFSET
+)
+memalloc(
+ 1 mem_le_adv_transmit
+1 mem_le_adv_waitcnt
+1 mem_le_adv_rcv
+1 mem_le_req_rcv
+1 mem_le_scanrsp_rcv
+1 mem_le_conn_rcv
+
+1 mem_current_context
+1 mem_le_ch_mapped
+1 mem_last_freq
+1 mem_rssi
+2 mem_context_ptr
+2 mem_rx_window
+
+
+/* lpo related */
+1 mem_lpm_adjust
+6 mem_sync_clke
+1 mem_lpm_current_mult
+12 mem_gpio_wakeup_cfg
+
+
+4 mem_clkn_bt
+4 mem_clke_bt
+4 mem_dpll_clkn
+
+2 mem_slot_offset
+
+
+1 mem_loadcode_times
+1 mem_select_list_item
+0 mem_temp_reconn_record
+1 mem_record_bt_mode
+2 mem_list_item_ptr
+
+1 mem_rssi_hex
+
+
+2 mem_param_tx_setup
+2 mem_param_rf_setup
+2 mem_param_conn_access
+2 mem_param_clke_cal
+2 mem_param_pll_setup
+2 mem_param_rx_setup
+2 mem_param_dpll_start_delay
+2 mem_param_rt_rthalfslot
+2 mem_param_clke_cal_le_1m
+2 mem_param_clke_cal_le_2m
+2 mem_param_clke_cal_le_coded
+
+)
+memalloc(
+260 mem_le_rxbuf
+
+/* security temp */
+4 mem_le_mic
+4 mem_le_peer_mic
+//8 mem_le_skdm
+//8 mem_le_skds
+16 mem_le_mrand
+
+
+/* ========= le context =========== */
+1 mem_le_state
+1 mem_le_mode
+2 mem_le_tsniff
+4 mem_le_anchor
+6 mem_le_clk_offset
+2 mem_le_receive_window
+6 mem_le_plap
+1 mem_le_conn_handle
+1 mem_le_arq
+1 mem_le_ch
+1 mem_le_hop
+2 mem_le_event_count
+4 mem_le_supervision_timer
+2 mem_le_instant
+1 mem_le_channels
+1 mem_le_op
+
+	/* these 3 should NOT be seperated */
+4 mem_le_access
+3 mem_le_crcinit
+1 mem_le_window_size
+
+	/* these 3 should NOT be seperated */
+2 mem_le_slave_latency
+2 mem_le_superto
+5 mem_le_channel_map
+
+
+1 mem_le_rx_phy
+1 mem_le_tx_phy
+
+9 mem_le_update_new_param
+
+16 mem_le_sk
+
+1 mem_le_peer_sca
+1 mem_le_err_code
+1 mem_le_ll_pairing_fail_reason
+
+/* ========= le context ending =========== */
+
+/* test */
+1 mem_le_testtype
+1 mem_cmd_le_create_conn
+
+)
+memalloc (
+	0 memresult
+	0 mem_sp_calc_result
+	4 memh
+	4 memg
+	4 memf
+	4 meme
+	0 mem_sp_calc_result_high
+	4 memd
+	4 memc
+	4 memb
+	4 mema
+)
+memalloc(
+
+/* load code */
+1 mem_ucode_status
+1 mem_spid_tbuf				/* spid buf: 03 addr[23:16] addr[15:8] addr[7:0] */
+0 mem_iicd_tbuf				/* iicd buf: iic_adr addr[15:8] addr[7:0] iic_adr */
+1 mem_addr_hi
+1 mem_addr_mi
+1 mem_addr_lo
+1 mem_iicd_addr
+4 mem_spid_rbuf
+2 mem_ucode_buf
+2 mem_ucode_len
+2 mem_sched_addr
+16 mem_ucode_keybuf
+
+32 mem_otp_temp
+
+1 mem_app_evt_timer_count
+)
+memalloc (
+16 mem_input_store
+
+2 mem_ec_loopc
+1 mem_aes_cmac_data_length
+
+96 mem_dat
+
+/* ecc calculation */
+32 mem_ax_256 //32 bytes
+32 mem_ay_256 // 32 bytes
+32 mem_az_256 // 32 bytes
+32 mem_bx_256 // 32 bytes
+32 mem_by_256 // 31 bytes
+
+0 mem_bz_256  //32 bytes
+0 mem_tmp1
+24 memahbak
+8 mem_tmp5
+32 mem_cx_256  //32 bytes
+31 mem_cy_256  // 32 bytes
+1 mem_cy5_256 // 1 byte
+32 mem_cz_256 // 32 bytes
+32 mem_k_256 //32 bytes
+32  mem_tmp1_256 //32 bytes
+
+32 mem_tmp5_256
+32  mem_tmp2_256
+0 mem_tmp3_256
+32 mem_t1_256
+0 mem_tmp0_256
+32 mem_t0_256
+32 mem_t2_256
+32 mem_t3_256
+32 mem_t7_256
+
+24 mem_p
+24 mem_a
+24 mem_b
+24 mem_gx
+24 mem_gy
+32 memh0
+
+32 mem_p_256
+32 mem_a_256
+32 mem_gx_256
+32 mem_gy_256
+16 mem_le_slat
+
+)
+memalloc(
+0 mem_sp_state_start
+1 mem_sp_dhkey_invalid
+4 mem_gkey
+0 mem_sp_state_end
+
+32 mem_le_pubkey_remote_x_256
+32 mem_le_pubkey_remote_y_256
+32 mem_le_dhkey_256
+
+16 mem_sp_confirm_remote
+)
+memalloc(
+1 mem_ipc_skip_continue_proc
+)
+memalloc(
+
+1 mem_fifo_temp
+
+8 mem_pdatatemp
+8 mem_temp //8 bytes
+4 mem_timeup // 4 bytes
+4 mem_rega //4 bytes
+4 mem_regb //4 bytes
+3 mem_regc //3 bytes
+2 mem_contr //2 bytes
+2 mem_contw //2 bytes
+2 mem_contus
+2 mem_contue
+2 mem_contu
+2 mem_queue
+2 mem_loopcnt
+
+4 mem_saved_gpio_in
+
+0 mem_module_rx_error_data_buffer
+0 mem_le_adv_channel_map_temp
+0 mem_le_data_len_temp	//1byte
+0 mem_event_cmd_response_content	//2byte
+0 mem_le_prand		//16byte
+0 mem_AES_CMAC_k	 //16 bytes
+0 mem_regext_index 	//1 bytes
+1 mem_temp_block0
+0 mem_le_data_temp	//15bytes
+15 mem_temp_block1
+0 mem_le_tx_buf_temp //48byte
+0 mem_le_aes_128	//16byte
+0 mem_regext   //64 bytes
+0 mem_AES_CMAC_k1  //16 bytes
+16 mem_temp_block2
+0 mem_AES_CMAC_k2  //16 bytes
+16 mem_temp_block3
+0 mem_AES_CMAC_temp  // 16 bytes
+16 mem_temp_block4
+0 mem_AES_CMAC_M_last // 16 bytes
+1 mem_module_uart_cmd
+1 mem_module_uart_opcode
+1 mem_module_uart_len
+1 mem_module_temp_nl_discard_packet
+12 mem_temp_block5
+0 mem_le_mackey //16 bytes
+0 mem_app_receive_temp
+2 mem_key_value_temp
+2 mem_key_value
+1 mem_key_value_temp1
+1 mem_key_value_temp2
+1 mem_key_value_temp3
+1 mem_key_value_temp4
+1 mem_key_value_temp5
+1 mem_key_value_temp6
+6 mem_temp_block6
+
+3 mem_scale_ratio
+3 mem_xcnt
+2 mem_scale_ratio_temp
+)
+memalloc test (
+/* test related */
+2 mem_le_test_sync
+2 mem_le_test_pcnt
+2 mem_tst_pktcnt_crc
+2 mem_tst_pktcnt_dmh
+3 mem_tmp_buffer_head
+80 mem_tmp_buffer
+
+)
+memalloc ali_mesh(
+	1 mem_mesh_receive_model_message_payload_len
+	1 mem_mesh_receive_model_message_payload_opcode
+	23 mem_mesh_receive_model_message_payload
+
+	1 mem_mesh_access_layer_payload_len
+	0 mem_mesh_access_layer_payload
+	50 mem_mesh_access_payload
+	50 mem_mesh_access_payload_padding	//Ϊ��͸��ģ��Ԥ��
+)
+memalloc ali_mesh(
+	0 mem_mesh_queue_ele_temp
+	1 mem_mesh_queue_ele_duration
+	1 mem_mesh_queue_ele_gatt_msg_id
+	1 mem_mesh_queue_ele_len
+	31 mem_mesh_queue_ele_payload
+	1 mem_mesh_queue_ele_padding
+)
+memalloc ali_mesh(
+	39 mem_le_txheader_mesh_temp
+
+)
+memalloc ali_mesh(
+	// sha256
+	0 mem_mesh_sha256_chunk_start
+	64 mem_mesh_sha256_chunk1
+	64 mem_mesh_sha256_chunk2
+	64 mem_mesh_sha256_chunk3
+	64 mem_mesh_sha256_chunk4
+
+	//obfuscation network PDU Header
+	0 mem_mesh_Privacy_Plaintext
+	5 mem_mesh_Privacy_Plaintext_Zero_String
+	4 mem_mesh_Privacy_Plaintext_IV_Index
+	0 mem_mesh_Privacy_Plaintext_Privacy_Random
+	2 mem_mesh_Privacy_Plaintext_Privacy_Random_EncDST
+	5 mem_mesh_Privacy_Plaintext_Privacy_Random_EncTransportPDU_or_NetMIC
+	16 mem_mesh_PECB
+
+	//basic function
+	//aes-ccm
+	2 mem_nonce_ptr
+	1 mem_ccm_data_len
+	2 mem_ccm_data_ptr
+	8 mem_ccm_mic
+	1 mem_ccm_type
+
+
+)
+memalloc ali_mesh(
+
+	16 mem_mesh_Device_UUID
+
+	1 mem_mesh_receive_VID
+
+)
+memalloc ali_mesh(
+	2 mem_mesh_mic_cache_ptr
+	2 mem_adv_CRC_False_initValue
+	2 mem_CRC16_polynomial
+)
+memalloc ali_mesh(
+	1 mem_mesh_lower_transport_layer_payload_len
+
+)
+memalloc ali_mesh(
+	2 mem_mesh_loopcnt_tmep
+	2 mem_mesh_rega_temp
+	2 mem_mesh_regb_temp
+	2 mem_mesh_regc_temp
+	2 mem_mesh_alarm_temp
+
+)
+memalloc ali_mesh(
+	1 mem_mesh_message_Transport_NetMIC_length
+
+	1 mem_mesh_message_NID
+	1 mem_mesh_message_TTL
+	3 mem_mesh_message_SEQ
+	2 mem_mesh_message_SRC
+	2 mem_mesh_message_DST
+	0 mem_mesh_message_Proxy_TransportPDU_opcode
+	0 mem_mesh_message_Transport_NetMIC
+	1 mem_mesh_message_Transport_Head
+	//unsegmented access message
+	0 mem_mesh_message_Proxy_TransportPDU_Parameters
+	0 mem_mesh_message_Transport_unsegmented_access_messagePDU
+	//segmented access message
+	0 mem_mesh_message_Transport_segmented_access_messagePDU
+	3 mem_mesh_message_segment_access_SZMIC_SeqZero_SegO_SegN
+	0 mem_mesh_message_Transport_segmented_access_messagePDU_Segment
+	16 mem_mesh_message_Transport_NetMIC_end
+
+	13 mem_mesh_nonce_struct
+
+	2 mem_mesh_send_message_DST
+	3 mem_mesh_last_message_SEQ
+	1 mem_mesh_network_packet_type
+
+	1 mem_mesh_receive_message_count
+	2 mem_mesh_receive_message_first_unicast_address
+	2 mem_mesh_receive_message_second_unicast_address
+	2 mem_mesh_receive_message_third_unicast_address
+	2 mem_mesh_receive_message_fourth_unicast_address
+
+)
+memalloc ali_mesh(
+	0 mem_mesh_Proxy_Nonce
+	1 mem_mesh_Proxy_Nonce_Nonce_Type
+	1 mem_mesh_Proxy_Nonce_Pad
+	3 mem_mesh_Proxy_Nonce_SEQ
+	2 mem_mesh_Proxy_Nonce_SRC
+	2 mem_mesh_Proxy_Nonce_Pad2
+	4 mem_mesh_Proxy_Nonce_IV_Index
+
+	16 mem_mesh_white_list
+	2 mem_mesh_white_list_num
+	1 mem_mesh_addressed_filter_type
+)
+memalloc ali_mesh(
+	2 mem_mesh_upper_transport_layer_payload_ptr
+	1 mem_mesh_segmented_upper_transport_layer_payload_len
+	2 mem_mesh_segmented_lower_transport_layer_SegZero
+	1 mem_mesh_segmented_lower_transport_layer_SegO
+	1 mem_mesh_segmented_lower_transport_layer_SegN
+	1 mem_mesh_segmented_last_packet_upper_teansport_payload_len
+
+	0 mem_mesh_upper_tran_layer_queue_temp
+	1 mem_mesh_upper_tran_layer_temp_packet_flag
+	2 mem_mesh_upper_tran_layer_temp_packet_transmit_delay
+	1 mem_mesh_upper_tran_layer_temp_packet_TID
+	1 mem_mesh_upper_tran_layer_temp_packet_header_IVI_NID
+	1 mem_mesh_upper_tran_layer_temp_packet_header_CTL_TTL
+	3 mem_mesh_upper_tran_layer_temp_packet_header_SEQ
+	2 mem_mesh_upper_tran_layer_temp_packet_header_SRC
+	2 mem_mesh_upper_tran_layer_temp_packet_header_DST
+	1 mem_mesh_upper_tran_layer_temp_packet_length
+	108 mem_mesh_upper_tran_layer_temp_packet_payload
+
+
+	64 mem_mesh_network_dup_cache
+	80 mem_mesh_network_msg_cache
+
+	1 mem_mesh_network_relay_gatt_queue_each_size
+	1 mem_mesh_network_relay_gatt_queue_length
+	1 mem_mesh_network_relay_gatt_queue_current_num
+	1 mem_mesh_network_relay_gatt_queue_read_ptr
+	1 mem_mesh_network_relay_gatt_queue_write_ptr
+	340 mem_mesh_network_relay_gatt_queue_ele
+
+
+
+
+
+)
+memalloc usb_dongle(
+256 mem_dg_rssi_noise_buffer
+256 mem_dg_rssi_noise_dg_buffer
+256 mem_dg_rssi_noise_ms_buffer
+256 mem_dg_rssi_noise_kb_buffer
+
+)
+memalloc module(
+	//ble
+	2 mem_module_le_rx_data_len
+	2 mem_module_le_rx_data_address
+	2 mem_module_le_rx_data_handle
+
+ifdef COMPILE_WECHAT
+	0 mem_wechat_tx_buffer
+	1 mem_wechat_tx_bMagicNumber
+	1 mem_wechat_tx_bVer
+	2 mem_wechat_tx_nLength
+	2 mem_wechat_tx_nCmdId
+	2 mem_wechat_tx_nSeq1
+	255 mem_wechat_tx_payload
+
+	0 mem_wechat_rx_buffer
+	1 mem_wechat_rx_bMagicNumber
+	1 mem_wechat_rx_bVer
+	2 mem_wechat_rx_nLength
+	2 mem_wechat_rx_nCmdId
+	2 mem_wechat_rx_nSeq
+	255 mem_wechat_rx_payload
+
+	255 mem_module_wechat_local_data_buffer
+
+endif
+)
+memalloc mouse(
+2 mem_init_cnt
+2 mem_data_pre
+2 mem_data_current
+3 mem_data_sum
+2 mem_data_value
+
+
+)
+memalloc hci_boot(
+2 mem_hci_opcode_ocf
+1 mem_hci_opcode_ogf
+
+//event head
+1 mem_hci_event_head_type
+1 mem_hci_event_head_event_code
+1 mem_hci_event_para_total_length
+
+//command complete
+1 mem_hci_command_complete_num_hci_command_packet
+0 mem_hci_command_complete_command_opcode
+2 mem_hci_opcode
+0 mem_hci_command_complete_return_parameter
+1 mem_hci_command_complete_return_parameter_status
+0 mem_hci_command_complete_return_parameter_chip_id
+
+)
+memalloc usb(
+2 mem_usb_status
+1 mem_usb_fifo_empty
+2 mem_usb_read_len
+65 mem_usb_txbuf
+10 mem_usb_txbuf1
+10 mem_usb_txbuf2
+64 mem_usb_rxbuf
+1 mem_usb_rxbuf_end
+2 mem_bufptr
+1 mem_remain
+2 mem_hidreportdesc_kb
+2 mem_hidreportdesc_m
+19 mem_devicedesc
+60 mem_confdesc
+5 mem_string0
+30 mem_string1
+30 mem_string2
+30 mem_string3
+2 mem_cb_usb_config
+
+1 mem_usb_tx_interval
+9 mem_usb_vid_pid
+2 mem_usb_zero_packet
+2 mem_usb_ones_packet
+2 mem_usb_two_packet
+1 mem_usb0_state
+1 mem_usb_offline_check_gpio
+
+0 mem_usb_clear_mem_start
+0 mem_usb_setup
+1 mem_usb_setup_bmRequestType
+1 mem_usb_setup_bRequest
+1 mem_usb_setup_bValue
+1 mem_usb_setup_bValueH
+2 mem_usb_setup_wIndex
+1 mem_usb_setup_bLength
+1 mem_usb_setup_bLengthH
+64 mem_usb0_set_report_data
+64 mem_usb0_get_report_data
+2 mem_usb_setup_bValue_temp
+1 mem_usb0_get_set_report
+1 mem_usb0_data_ready_report
+1 mem_usb_tx_win_enable
+1 mem_usb_tx_mac_enable
+1 mem_usb_idle_flag
+1 mem_usb_idle_rate
+1 mem_usb_get_protocol_flag
+1 mem_usb_set_protocol_status
+1 mem_usb_set_protocol_value
+1 mem_usb_state
+1 mem_usb_remote_wakeup
+1 mem_usb_clear_remote_wakeup
+1 mem_sdsystem_wakeup_flag
+1 mem_usb_ep0_stall_status
+1 mem_usb_ep1_stall_status
+1 mem_usb_ep2_stall_status
+1 mem_usb_ep3_stall_status
+2 mem_dsc_info_data_pointer
+1 mem_dsc_info_len
+1 mem_usb_ep1_data
+1 mem_usb_ep2_data
+1 mem_usb_tx_enable
+1 mem_usb_device_enumeration_endflag
+1 mem_usb_wakestate_onetime_flag
+1 mem_usb_mac_wakeup_trig
+1 mem_usb_set_high_addr_flag
+1 mem_usb_clear_halt
+16 mem_usb_mouse_data
+16 mem_usb_kb_data
+16 mem_usb_kb_multikey
+16 mem_usb_kb_system
+2 mem_usb_test_cnt
+10 mem_usb_test_kb
+0 mem_usb_clear_mem_end
+64 mem_usb_ccid_buf
+)
+amemalloc mem_le_update_new_param(
+//update connection parameter
+	0 mem_le_new_param
+	1 mem_le_new_transmitwindowsize
+	2 mem_le_new_transmitwindowoffset
+	2 mem_le_new_conninterval
+	2 mem_le_new_connslavelatency
+	2 mem_le_new_connsupervisiontimeout
+)
+amemalloc mem_le_update_new_param(
+//update map parameter
+	5 mem_le_new_map
+)
+amemalloc mem_le_update_new_param(
+//update phy parameter
+	1 mem_le_new_m2s_phy
+	1 mem_le_new_s2m_phy
+)
+amemalloc mem_le_rxbuf(
+//data channel PDU
+	1 mem_le_rxbuf_data_header
+	1 mem_le_rxbuf_data_length
+	255 mem_le_rxbuf_data_payload
+)
+amemalloc mem_le_rxbuf(
+//data channel LL control PDU
+	1 mem_le_rxbuf_data_ll_header
+	1 mem_le_rxbuf_data_ll_length
+	1 mem_le_rxbuf_data_ll_opcode
+	26 mem_le_rxbuf_data_ll_control_data
+)
+amemalloc mem_le_rxbuf(
+//advertising channel PDU
+	1 mem_le_rxbuf_adv_header
+	1 mem_le_rxbuf_adv_length
+	255 mem_le_rxbuf_adv_payload
+)
+amemalloc mem_le_rxbuf(
+//advertising channel PDU
+//Scan Req
+	1 mem_le_rxbuf_adv_scan_req_header
+	1 mem_le_rxbuf_adv_scan_req_length
+	6 mem_le_rxbuf_adv_scan_req_scan_address
+	6 mem_le_rxbuf_adv_scan_req_adv_address
+)
+amemalloc mem_le_rxbuf(
+//advertising channel PDU
+//Connect IND
+	1 mem_le_rxbuf_adv_connect_ind_header
+	1 mem_le_rxbuf_adv_connect_ind_length
+	6 mem_le_rxbuf_adv_connect_ind_init_address
+	6 mem_le_rxbuf_adv_connect_ind_adv_address
+	4 mem_le_rxbuf_adv_connect_ind_access_address
+	3 mem_le_rxbuf_adv_connect_ind_crc_init
+	1 mem_le_rxbuf_adv_connect_ind_win_size
+	2 mem_le_rxbuf_adv_connect_ind_win_offset
+	2 mem_le_rxbuf_adv_connect_ind_interval
+	2 mem_le_rxbuf_adv_connect_ind_latency
+	2 mem_le_rxbuf_adv_connect_ind_timeout
+	5 mem_le_rxbuf_adv_connect_ind_channel_map
+	1 mem_le_rxbuf_adv_connect_ind_hop_and_sca
+)
+amemalloc mem_temp_block2(
+	2 mem_le_search_handle_start
+	2 mem_le_search_handle_end
+	0 mem_le_att_offset
+	1 mem_le_search_att_type_length
+	16 mem_le_search_att_type
+
+	1 mem_le_curr_att_len
+
+	2 mem_le_cur_attlist_start_ptr
+	2 mem_le_cur_handle_start
+	2 mem_le_cur_handle_end
+	1 mem_le_cur_uuid_length
+	16 mem_le_cur_uuid
+	2 mem_le_cur_handle
+)
+amemalloc mem_le_rxbuf(
+//data channel ATT start PDU
+	1 mem_le_rxbuf_data_att_header
+	1 mem_le_rxbuf_data_att_length
+	2 mem_le_rxbuf_data_att_l2cap_length
+	2 mem_le_rxbuf_data_att_cid
+	1 mem_le_rxbuf_data_att_opcode
+	250 mem_le_rxbuf_data_att_payload
+)
+amemalloc mem_le_rxbuf(
+//data channel ATT continue PDU
+	1 mem_le_rxbuf_data_continue_header
+	1 mem_le_rxbuf_data_continue_length
+	255 mem_le_rxbuf_data_continue_payload
+)
+amemalloc mem_le_rxbuf(
+//data channel ATT write request PDU
+	1 mem_le_rxbuf_data_att_write_header
+	1 mem_le_rxbuf_data_att_write_length
+	2 mem_le_rxbuf_data_att_write_l2cap_length
+	2 mem_le_rxbuf_data_att_write_cid
+	1 mem_le_rxbuf_data_att_write_opcode
+	2 mem_le_rxbuf_data_att_write_handle
+	248 mem_le_rxbuf_data_att_write_payload
+)
+amemalloc mem_le_rxbuf(
+//data channel ATT prepare write request PDU
+	1 mem_le_rxbuf_data_prepare_att_write_header
+	1 mem_le_rxbuf_data_prepare_att_write_length
+	2 mem_le_rxbuf_data_prepare_att_write_l2cap_length
+	2 mem_le_rxbuf_data_prepare_att_write_cid
+	1 mem_le_rxbuf_data_prepare_att_write_opcode
+	2 mem_le_rxbuf_data_prepare_att_write_handle
+	2 mem_le_rxbuf_data_prepare_att_write_offset
+	246 mem_le_rxbuf_data_prepare_att_write_payload
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	3 mem_mesh_NETKeyindex_and_APPKeyindex
+	16 mem_mesh_receive_application_key
+)
+amemalloc mem_mesh_vendor_timer_timing_palyload(
+	1 mem_mesh_vendor_timer_timing_index_cyclic
+	2 mem_mesh_vendor_timer_timing_time_cyclic
+	2 mem_mesh_vendor_timer_timing_zone_cyclic
+	1 mem_mesh_vendor_timer_timing_weekdays_cyclic
+	2 mem_mesh_vendor_timer_timing_attr_type_cyclic
+	1 mem_mesh_vendor_timer_timing_attr_para_len_cyclic
+	8 mem_mesh_vendor_timer_timing_attr_para_cyclic
+	1 mem_mesh_vendor_timer_timing_cyclic_flag
+)
+amemalloc mem_mesh_vendor_timer_timing_palyload(
+	1 mem_mesh_vendor_timer_timing_index
+	4 mem_mesh_vendor_timer_timing_time
+	2 mem_mesh_vendor_timer_timing_attr_type
+	1 mem_mesh_vendor_timer_timing_attr_para_len
+	8 mem_mesh_vendor_timer_timing_attr_para
+	2 mem_mesh_vendor_timer_timing_flag
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	2 mem_mesh_vendor_message_cid
+	1 mem_mesh_vendor_message_tid
+	2 mem_mesh_vendor_message_attr_type
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_header
+	0 mem_mesh_vendor_attr_parameter
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_delay_close_time_header
+	2 mem_mesh_vendor_delay_close_time
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_night_light_onoff_header
+	1 mem_mesh_vendor_night_light_onoff
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_color_header
+	2 mem_mesh_vendor_color_lightness
+	2 mem_mesh_vendor_color_hue
+	2 mem_mesh_vendor_color_saturation
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_back_light_onoff_header
+	1 mem_mesh_vendor_back_light_onoff
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_main_light_onoff_header
+	1 mem_mesh_vendor_main_light_onoff
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_standby_brightness_header
+	2 mem_mesh_vendor_standby_brightness
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	5 mem_mesh_vendor_message_current_time_header
+	4 mem_mesh_vendor_message_current_time
+)
+amemalloc mem_mesh_access_layer_payload(
+	//ali mesh vendor struct
+	1 mem_mesh_access_layer_payload_vendor_command
+	2 mem_mesh_access_layer_payload_vendor_CID
+	1 mem_mesh_access_layer_payload_vendor_tid
+	2 mem_mesh_access_layer_payload_vendor_attr_type
+	1 mem_mesh_access_layer_payload_vendor_attr_parameter
+)
+amemalloc mem_temp_block0(
+	64 mem_mesh_subscription_eep_temp
+)
+amemalloc mem_mesh_queue_ele_temp(
+	2 mem_mesh_gatt_package_receive_msg_buffer_ptr
+	0 mem_mesh_gatt_package_receive_msg_buffer_temp
+	2 mem_mesh_gatt_package_receive_msg_id
+	0 mem_mesh_gatt_package_receive_MAC
+	1 mem_mesh_gatt_package_receive_msg_num
+	1 mem_mesh_gatt_package_receive_msg_total_length
+	29 mem_mesh_gatt_package_receive_msg_payload
+)
+amemalloc mem_mesh_Device_UUID(
+	2 mem_mesh_receive_service_uuid_company_id
+	1 mem_mesh_receive_service_uuid_vid
+	1 mem_mesh_receive_service_uuid_provisioning_type
+	2 mem_mesh_receive_service_uuid_mac
+	1 mem_mesh_receive_service_uuid_msg_id
+	1 mem_mesh_receive_service_uuid_package_num
+	1 mem_mesh_receive_service_uuid_length
+	7 mem_mesh_receive_service_uuid_payload_data
+)
+amemalloc mem_le_txheader_mesh_temp(
+	1 mem_mesh_fast_pair_packet_type
+)
+amemalloc mem_mesh_send_packet_timeout(
+	2 mem_mesh_fast_pairing_timer
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	1 mem_mesh_configuration_health_message_opcode
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	1 mem_mesh_configuration_health_message_opcode_config_model_subscription
+	2 mem_mesh_subscription_element_address
+	2 mem_mesh_subscription_value_address
+	2 mem_mesh_subscription_model_identifier
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	1 mem_mesh_configuration_health_message_opcode_config_model_subscription_ow  //overwrite
+	2 mem_mesh_subscription_element_address_ow
+	1 mem_mesh_subscription_list_num_ow
+	2 mem_mesh_subscription_value_address_start_ow
+)
+amemalloc mem_mesh_sha256_chunk_start(
+	0 mem_chip_clear_paired_info
+)
+amemalloc mem_mesh_send_access_lower_transport_layer(
+	//proxy configuration messages -----Filter Status message format
+	1 mem_mesh_filter_status_message_opcode
+	1 mem_mesh_filter_status_message_FilterType
+	2 mem_mesh_filter_status_message_ListSize
+	8 mem_mesh_filter_status_message_MIC
+)
+amemalloc mem_mesh_send_access_lower_transport_layer(
+	//bit7 is SEQ 0=Unsegment Message
+	//bit6 is AKF
+	//bit5-bit0 is AID
+	1 mem_mesh_unsegmented_access_lower_transport_layer_head
+	11 mem_mesh_unsegmented_access_lower_transport_layer_parameters
+	4 mem_mesh_unsegmented_access_lower_transport_layer_mic
+)
+amemalloc mem_mesh_send_access_lower_transport_layer(
+	//bit7 is SEQ 1=segment Message
+	//bit6 is AKF
+	//bit5-bit0 is AID
+	1 mem_mesh_segmented_access_lower_transport_layer_head
+	//bit23 is SZMIC size of transMIC
+	//bit22-bit10 is SeqZero Least significant bits of SeqAuth
+	//bit9-bit5 is SegO Segment offset number
+	//bit4-bit0 is SegN Last Segment number
+	3 mem_mesh_segmented_access_lower_transport_layer_SZMIC_SeqZero_SegO_SegN
+	8 mem_mesh_segmented_access_lower_transport_layer_parameters
+	4 mem_mesh_segmented_access_lower_transport_layer_mic
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	1 mem_mesh_module_message_opcode
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	//generic OnOff Set
+	1 mem_mesh_module_message_opcode_onoff_set
+	1 mem_mesh_generic_onoff_set_payload_OnOff
+	1 mem_mesh_generic_onoff_set_payload_TID
+	1 mem_mesh_generic_onoff_set_payload_Transition_Time
+	1 mem_mesh_generic_onoff_set_payload_Delay
+
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	//Scene recall ģʽ����
+	1 mem_mesh_module_message_opcode_scene_recall
+	2 mem_mesh_scene_recall_payload_scene_number
+	1 mem_mesh_scene_recall_payload_TID
+	1 mem_mesh_scene_recall_payload_Transition_Time
+	1 mem_mesh_scene_recall_payload_Delay
+
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	//light lightness
+	1 mem_mesh_module_message_opcode_set_light_lightness
+	2 mem_mesh_light_lightness_set_payload_lightness
+	1 mem_mesh_light_lightness_set_payload_TID
+	1 mem_mesh_light_lightness_set_payload_Transition_Time
+	1 mem_mesh_light_lightness_set_payload_Delay
+	1 mem_mesh_light_lightness_calc_lightness
+)
+amemalloc mem_mesh_receive_model_message_payload(
+	//light CTL
+	1 mem_mesh_module_message_opcode_set_light_ctl
+	2 mem_mesh_CTL_Lightness
+	2 mem_mesh_CTL_Temperature
+	2 mem_mesh_CTL_Delta_UV
+	1 mem_mesh_CTL_lightness_TID
+	1 mem_mesh_CTL_lightness_Transition_Time
+	1 mem_mesh_CTL_lightness_Delay
+	1 mem_mesh_CTL_calc_lightness
+	1 mem_mesh_CTL_calc_temperature
+
+)
+amemalloc mem_k2_T2(
+	16 mem_k2_EncryptionKey
+)
+amemalloc mem_k2_T3(
+	16 mem_k2_PrivacyKey
+)
+amemalloc mem_mesh_nonce_struct(
+	//DST and TransportPDU encryption
+	0 mem_mesh_Network_Nonce
+	1 mem_mesh_Network_Nonce_nonce_type
+	1 mem_mesh_Network_Nonce_CTL_and_TTL
+	3 mem_mesh_Network_Nonce_SEQ
+	2 mem_mesh_Network_Nonce_SRC
+	2 mem_mesh_Network_Nonce_Pad	//0x0000
+	4 mem_mesh_Network_Nonce_IV_Index
+
+)
+amemalloc mem_le_txheader_mesh_temp(
+	1 mem_mesh_network_packet_type_temp
+
+	1 mem_mesh_message_NID_temp
+	1 mem_mesh_message_TTL_temp
+	3 mem_mesh_message_SEQ_temp
+	2 mem_mesh_message_SRC_temp
+	2 mem_mesh_message_DST_temp
+	20  mem_mesh_message_Transport_PDU_temp
+)
+amemalloc mem_mesh_nonce_struct(
+	//application payload encryption
+	0 mem_mesh_Application_Nonce
+	1 mem_mesh_Application_Nonce_Nonce_Type
+	//bit7 is ASZMIC
+	1 mem_mesh_Application_Nonce_ASZMIC_and_Pad	//
+	3 mem_mesh_Application_Nonce_SEQ
+	2 mem_mesh_Application_Nonce_SRC
+	2 mem_mesh_Application_Nonce_DST
+	4 mem_mesh_Application_Nonce_IV_Index
+)
+amemalloc mem_mesh_nonce_struct(
+	//application payload encryption
+	0 mem_mesh_Device_Nonce
+	1 mem_mesh_Device_Nonce_Nonce_Type
+	1 mem_mesh_Device_Nonce_ASZMIC_and_Pad	//
+	3 mem_mesh_Device_Nonce_SEQ
+	2 mem_mesh_Device_Nonce_SRC
+	2 mem_mesh_Device_Nonce_DST
+	4 mem_mesh_Device_Nonce_IV_Index
+)
+amemalloc mem_mesh_access_layer_payload_len(
+	1 mem_mesh_upper_transport_layer_payload_len
+)
+amemalloc mem_mesh_upper_tran_layer_temp_packet_payload(
+//unsegment access message
+	0 mem_mesh_upper_tran_layer_temp_pakcet_AKF_AID
+	1 mem_mesh_upper_tran_layer_temp_unsegmented_pakcet_AKF_AID
+	4 mem_mesh_upper_tran_layer_temp_unsegmented_packet_fill
+	0 mem_mesh_upper_tran_layer_temp_pakcet_upper_tran_access_pdu
+	15 mem_mesh_upper_tran_layer_temp_unsegmented_pakcet_upper_tran_access_pdu
+)
+amemalloc mem_mesh_upper_tran_layer_temp_packet_payload(
+//segment access message
+	1 mem_mesh_upper_tran_layer_temp_segmented_pakcet_AKF_AID
+	2 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SeqZero
+	1 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SegO
+	1 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SegN
+	104 mem_mesh_upper_tran_layer_temp_segmented_pakcet_upper_tran_access_pdu
+)
+amemalloc mem_otp_temp(
+	8 mem_otp_adc
+	8 mem_otp_temp0
+	1 mem_otp_core_ldo
+	1 mem_otp_verf_bg
+	1 mem_otp_charge_pump
+	1 mem_otp_dpll_ibais
+	8 mem_otp_temp1
+	1 mem_otp_hv_sel
+	1 mem_otp_ldo_vsel
+	1 mem_otp_load_delay
+	1 mem_otp_load_check_sum
+)
+xmemalloc(
+/* patch enable 0x4000-0x403f  */
+
+1 mem_patch00
+1 mem_patch01
+1 mem_patch02
+1 mem_patch03
+1 mem_patch04
+1 mem_patch05
+1 mem_patch06
+1 mem_patch07
+1 mem_patch08
+1 mem_patch09
+1 mem_patch0a
+1 mem_patch0b
+1 mem_patch0c
+1 mem_patch0d
+1 mem_patch0e
+1 mem_patch0f
+1 mem_patch10
+1 mem_patch11
+1 mem_patch12
+1 mem_patch13
+1 mem_patch14
+1 mem_patch15
+1 mem_patch16
+1 mem_patch17
+1 mem_patch18
+1 mem_patch19
+1 mem_patch1a
+1 mem_patch1b
+1 mem_patch1c
+1 mem_patch1d
+1 mem_patch1e
+1 mem_patch1f
+1 mem_patch20
+1 mem_patch21
+1 mem_patch22
+1 mem_patch23
+1 mem_patch24
+1 mem_patch25
+1 mem_patch26
+1 mem_patch27
+1 mem_patch28
+1 mem_patch29
+1 mem_patch2a
+1 mem_patch2b
+1 mem_patch2c
+1 mem_patch2d
+1 mem_patch2e
+1 mem_patch2f
+1 mem_patch30
+1 mem_patch31
+1 mem_patch32
+1 mem_patch33
+1 mem_patch34
+1 mem_patch35
+1 mem_patch36
+1 mem_patch37
+1 mem_patch38
+1 mem_patch39
+1 mem_patch3a
+1 mem_patch3b
+1 mem_patch3c
+1 mem_patch3d
+1 mem_patch3e
+1 mem_patch3f
+
+	/* 3 device contexts  */
+83 mem_context
+1 mem_current_amaddr
+1 mem_lpm_mode
+4 mem_last_clkn
+
+	/* parameters */
+1 mem_fcomp_div
+2 mem_rx_window_sniff
+2 mem_rf_init_ptr
+
+
+1 mem_rf_rccal
+1 mem_handle_num
+
+
+	/* lpm related */
+2 mem_chip_functions
+2 mem_lpm_wake_lock
+2 mem_lpm_interval
+1 mem_lpm_overhead
+1 mem_lpm_hibernate_switch
+1 mem_sniff_unint_lost
+4 mem_sleep_counter
+4 mem_sleep_counter_all
+6 mem_sleep_clkn
+3 mem_sniff_rcv
+3 mem_sniff_lost
+3 mem_clks_per_lpo
+
+1 mem_lpm_mult
+1 mem_lpm_mult_timeout
+1 mem_lpm_mult_cnt
+
+1 mem_lpm_xtalcnt
+1 mem_lpm_buckcnt
+1 mem_lpm_ldocnt
+1 mem_lpm_isogate
+1 mem_lpm_isogate_stage2
+1 mem_lpm_isogate_final
+1 mem_lpm_ldo_sel
+1 mem_lpm_sysctl
+1 mem_lpm_hv_sel
+
+24 mem_saved_gpio
+3 mem_saved_gsel
+8 mem_saved_mark
+1 mem_saved_spidctrl
+2 mem_patch_ptr
+2 mem_patch_len
+
+32 mem_timers
+
+
+/* HCI */
+1 mem_hci_cmd
+1 mem_hci_conn_handle
+3 mem_hci_plap
+1 mem_hci_puap
+2 mem_hci_pnap
+
+
+1 mem_xtal_c_sel
+24 mem_ghpc_table
+12 mem_aac_res_table
+1 mem_tx_power
+1 mem_modem_rssi
+1 mem_gain_fix
+3 mem_gain_table
+1 mem_gain_second_agc_en
+1 mem_system_clk
+
+ifdef DEBUG_RF_INIT
+18 mem_rf_init_data
+endif
+1 mem_otp_charge_pump_x
+1 mem_otp_dpll_ibais_x
+
+1 mem_xtal_freq
+)
+xmemalloc(
+1 mem_version
+2 mem_company_id
+2 mem_sub_version
+
+2 mem_le_dsniff
+2 mem_le_conn_interval
+1 mem_le_tx_ifs_defference
+1 mem_le_tx2m_delay
+
+1 mem_le_txheader
+1 mem_le_txlen
+256 mem_le_txpayload
+
+//modified name
+1 mem_le_name_len
+30 mem_le_name
+
+
+/* smp related */
+
+16 mem_le_ltk
+1 mem_ltk_exists
+16 mem_le_rconfirm
+16 mem_le_srand
+1 mem_le_iat
+1 mem_le_rat
+1 mem_le_preq
+1 mem_le_preq_iocap
+1 mem_le_preq_oob
+1 mem_le_preq_auth
+1 mem_le_preq_max_keysize
+1 mem_le_preq_init_key_distribution
+1 mem_le_preq_resp_key_distribution
+1 mem_le_pres
+1 mem_le_pres_iocap
+1 mem_le_pres_oob
+1 mem_le_pres_auth
+1 mem_le_pres_max_keysize
+1 mem_le_pres_init_key_distribution
+1 mem_le_pres_resp_key_distribution
+
+
+
+//START of LE conn parameter structure
+0 mem_le_conn_param
+1 mem_le_conn_peer_addr_type
+6 mem_le_conn_peer_addr
+1 mem_le_conn_own_addr_type
+2 mem_le_interval_min
+2 mem_le_interval_max
+2 mem_le_latency
+2 mem_le_timeout
+//START of LE conn parameter structure
+
+
+3 mem_le_lap
+1 mem_le_uap
+2 mem_le_nap
+
+
+2 mem_le_local_mtu
+2 mem_le_remote_mtu
+
+8 mem_le_skdm
+8 mem_le_skds
+
+2 mem_le_init_superto
+2 mem_ui_le_uuid_table
+
+1 mem_le_secure_connect_flag
+1 mem_le_secure_connect_state
+1 mem_le_sc_confirm_gkey_flag
+
+
+1 mem_le_pairing_state
+1 mem_le_enc_state
+1 mem_le_pairing_mode
+4 mem_le_tk
+2 mem_le_ediv
+8 mem_le_rand
+16 mem_le_irk
+
+//LE attribute list
+4 mem_le_transmit_window
+
+//ble General configuration
+1 mem_le_configuration
+16 mem_le_fixed_ltk
+2 mem_le_pairing_handle
+
+
+1 mem_le_packet_llid
+
+//for continue
+2 mem_le_l2cap_size
+2 mem_le_packet_len_recved
+2 mem_le_payload_ptr
+
+
+//ble gatt signaling
+1 mem_le_signaling_identifier
+2 mem_le_l2cap_signaling_conn_param_update_rsp_result
+
+1 mem_le_md_count
+2 mem_ble_l2cap_tx_buff0_ptr
+2 mem_ble_l2cap_tx_buff_size_ptr
+)
+xmemalloc(
+// parameters
+1 mem_le_scan_enable
+2 mem_le_scan_interval
+2 mem_le_scan_window
+
+
+1 mem_le_adv_data_len
+31 mem_le_adv_data
+1 mem_le_scan_data_len
+31 mem_le_scan_data
+
+//START of LE adv parameter structure
+1 mem_le_adv_enable
+0 mem_le_adv_param
+2 mem_le_adv_interval
+1 mem_le_adv_type
+1 mem_le_adv_own_addr_type
+6 mem_le_adv_direct_addr
+1 mem_le_adv_channel_map
+//END of LE adv parameter structure
+
+//START of LE scan parameter structure
+0 mem_le_scan_params
+1 mem_le_scan_type
+1 mem_le_scan_own_addr_type
+//END of LE scan parameter structure
+)
+xmemalloc(
+	1 mem_le_l2cap_att_states
+
+
+	/* should be together */
+	1 mem_le_att_opcode
+	2 mem_le_att_handle
+	1 mem_le_search_res
+
+	2 mem_le_notify_handle
+	1 mem_le_search_uuid_length
+	16 mem_le_search_uuid
+)
+xmemalloc(
+8 mem_le_local_feature
+1 mem_le_tx_phys
+1 mem_le_rx_phys
+
+2 mem_remote_rx_max_octets
+2 mem_remote_rx_max_time
+2 mem_remote_tx_max_octets
+2 mem_remote_tx_max_time
+2 mem_local_rx_max_octets
+2 mem_local_rx_max_time
+2 mem_local_tx_max_octets
+2 mem_local_tx_max_time
+
+)
+xmemalloc(
+2 mem_ucode_ptr
+1 mem_ucode_flag
+1 mem_device_option
+1 mem_peripheral_lock_flag
+6 mem_bistfix_val
+
+/*App Callback Functons*/
+2 mem_cb_check_wakelock
+2 mem_cb_before_hibernate
+2 mem_cb_before_lpm
+2 mem_cb_le_process
+2 mem_cb_idle_process
+2 mem_cb_bb_event_process
+2 mem_cb_att_write
+2 mem_cb_ble_transmit
+2 mem_cb_event_timer
+2 mem_cb_bt_set_mult
+2 mem_cb_spi_flash_write_complate
+2 mem_cb_before_lpm_sleep
+
+2 mem_eeprom_base
+
+//lpm mode
+1 mem_wake_up_delay_timer
+
+1 mem_app_connection_options
+
+//
+2 mem_app_disconn_reason
+2 mem_app_disconn_reason_flag
+1 mem_xrecord_mode
+
+1 mem_eeprom_block_size
+1 mem_spi_init_clk
+1 mem_spi_init_delay_time
+1 mem_spi_ncs_gpio
+
+2 mem_nv_data_ptr
+1 mem_nv_data_number
+
+2 mem_queue_ptr
+
+
+//adc
+0 mem_reference_inter1p8v_2v_adc_io_data
+0 mem_inter1v_adc_ft_data
+2 mem_3v_adc_io_data
+0 mem_reference_inter1p8v_2p6v_adc_vdcdc_data
+0 mem_inter1p2v_adc_ft_data
+2 mem_2v_adc_hvin_data
+0 mem_reference_inter1p8v_1v_adc_io_data
+0 mem_io1v_adc_ft_data
+2 mem_1v_adc_io_data
+0 mem_reference_inter1p8v_4p6v_adc_vdcdc_data
+0 mem_io2v_adc_ft_data
+2 mem_3v_adc_hvin_data
+0 mem_adc_ratio
+2 mem_reference_voltage
+1 mem_adc_config_flag
+1 mem_adc_channel
+1 mem_adc_clkdiv
+2 mem_adc_current_value
+1 mem_adc_power_flag	//bit0:low power falg ; bit1:no power flag
+2 mem_adc_saddr_ptr
+2 mem_adc_eaddr_ptr
+1 mem_adc_dma_enable
+1 mem_adc_cal_c0
+1 mem_adc_cal_c1
+1 mem_adc_cal_c2
+1 mem_adc_cal_c3
+1 mem_adc_cal_c4
+1 mem_adc_cal_c5
+1 mem_adc_cal_c6
+
+3 mem_spi_write_addr
+2 mem_spi_write_ptr
+2 mem_spi_write_len
+1 mem_spi_write_flash_sm
+
+
+1 mem_spi_cs_gpio
+1 mem_spi_si_gpio
+1 mem_spi_so_gpio
+1 mem_spi_sclk_gpio
+1 mem_spi_wp_gpio
+1 mem_spi_hold_gpio
+
+
+1 mem_eeprom_wp_gpio
+1 mem_eeprom_scl_gpio
+1 mem_eeprom_sda_gpio
+2 mem_kscan_ptr
+0 mem_key_num_ptr
+2 mem_keyscan_ptr
+2 mem_key_value_retention
+2 mem_power_param_ptr
+
+1 mem_seqi
+0 mem_adc_cal_c7
+1 mem_set_cdb_on
+1 mem_syn_cal_ctrl
+
+1 mem_nec_decode_error_value
+
+ifdef AC_50HZ
+1 mem_ac_detect_gpio
+0 mem_ac_detect_control
+1 mem_ac_detect_div
+1 mem_ac_detect_window
+endif
+
+1 mem_wdt_always_work
+
+1 mem_power_ctrl_disable
+
+1 mem_ring_ibias_trim
+2 mem_ring_ibias_vtune_low
+2 mem_ring_ibias_vtune_high
+1 mem_ring_ibias_calc_adc_gpio
+1 mem_ring_ibias_calc_adc_channel
+)
+xmemalloc(
+
+1 mem_rf_debug_rx_gpio
+1 mem_rf_debug_tx_gpio
+)
+xmemalloc(
+0 mem_l2cap_xmem_start
+
+//*******************L2CAP malloc********************//
+1 mem_used_map
+0 mem_tx_fifo0
+1 mem_tx_fifo0_map
+2 mem_tx_fifo0_ptr
+0 mem_tx_fifo1
+1 mem_tx_fifo1_map
+2 mem_tx_fifo1_ptr
+0 mem_tx_fifo2
+1 mem_tx_fifo2_map
+2 mem_tx_fifo2_ptr
+0 mem_tx_fifo3
+1 mem_tx_fifo3_map
+2 mem_tx_fifo3_ptr
+0 mem_tx_fifo_end
+
+2 mem_l2cap_lpm_txbuf_ptr
+0 mem_l2cap_xmem_end
+
+)
+xmemalloc(
+5 mem_ccm_pcnt_tx
+5 mem_ccm_pcnt_rx
+4 mem_ccm_last_mic
+0 mem_ccm_iv
+4 mem_ccm_ivm
+4 mem_ccm_ivs
+2 mem_ccm_len
+2 mem_ccm_rx_ptr
+)
+xmemalloc(
+1 mem_sc_only_mode
+1 mem_sp_debug_mode
+1 mem_secure_connections_enable
+1 mem_sc_calc
+1 mem_sc_local_key_invalid
+
+
+32 mem_sc_private_key_256
+32 mem_sc_pubkey_local_x_256
+32 mem_sc_pubkey_local_y_256
+
+
+0 mem_sp_state_xmem
+1 mem_authentication_passkey_times
+1 mem_passkey_1bit
+0 mem_sp_state_xmem_end
+)
+xmemalloc(
+//UI Work area
+1 mem_ipc_lock_bt
+1 mem_ipc_lock_c51
+8 mem_ipc_fifo_bt2c51
+8 mem_ipc_fifo_c512bt
+
+1 mem_ui_button_timer
+1 mem_ui_button_last_state
+4 mem_ui_timer_last_btclk
+2 mem_ui_state_map
+
+1 mem_ui_button_timeout
+1 mem_ui_button_gpio
+1 mem_ui_led_init_state_set
+
+1 mem_ui_led_struct_num
+2 mem_ui_led_struct_ptr
+
+)
+xmemalloc g24(
+6 mem_24g_lap
+34 mem_24g_rxbuf
+32 mem_24g_txbuf
+36 mem_24g_txpayload
+32 mem_24g_rxpayload
+1 mem_24g_rxdata_length
+1 mem_24g_pid
+1 mem_24g_no_ack
+3 mem_24g_sta_crc
+3 mem_24g_last_crc
+1 mem_24g_sta_pid
+1 mem_24g_last_pid
+1 mem_24g_datalen
+1 mem_24g_data_type
+1 mem_24g_txlen
+2 mem_24g_rx_window
+1 mem_24g_ch
+1 mem_24g_current_ch_number
+4 mem_24g_addr
+4 mem_24g_ch_map1
+4 mem_24g_ch_map2
+4 mem_24g_ch_map3
+4 mem_24g_ch_map4
+4 mem_24g_tx_btclk
+1 mem_24g_interval
+1 mem_24g_interval_min
+1 mem_24g_interval_max
+2 mem_24g_syncword
+1 mem_24g_syncword_crc8
+1 mem_24g_get_syncword_crc8
+1 mem_24g_pair_switch
+8 mem_24g_enter_hibernate
+
+1 mem_24g_rx_phy
+1 mem_24g_tx_phy
+
+1 mem_24g_ch_map_update
+4 mem_24g_ch_update_map1
+4 mem_24g_ch_update_map2
+4 mem_24g_ch_update_map3
+4 mem_24g_ch_update_map4
+
+1 mem_24g_disable_fec1
+1 mem_24g_off_type
+)
+xmemalloc g24_tx(
+1 mem_rssi_hex_received
+
+)
+xmemalloc g24(
+4 mem_24g_pair_addr
+1 mem_24g_pair_ch
+1 mem_24g_pair_tx_power
+
+)
+xmemalloc g24_tx(
+1 mem_24g_pair_sm
+1 mem_24g_pair_no_ack
+2 mem_24g_pair_timeout_init
+2 mem_24g_pair_timeout
+2 mem_24g_pair_count
+)
+xmemalloc g24_rx(
+1 mem_24g_device1_bind_step
+1 mem_24g_device2_bind_step
+1 mem_24g_bind_device_status
+8 mem_24g_bind_payload
+1 mem_24g_device1_bind_disable
+1 mem_24g_device2_bind_disable
+
+)
+xmemalloc g24_rx(
+2 mem_cb_24g_receive_process
+2 mem_cb_24g_ackpayload
+2 mem_cb_24g_data_device1
+2 mem_cb_24g_data_device2
+34 mem_24g_rxdata_temp
+1 mem_24g_abort_packet
+4 mem_24g_hop_btclk
+1 mem_24g_hop_interval
+1 mem_24g_pair_mode
+1 mem_24g_ackpayload_enable
+1 mem_24g_hop_packet
+1 mem_24g_mode_switch
+1 mem_24g_nodata_timer_enable
+
+1 mem_24g_mode_init
+1 mem_24g_work_mode
+1 mem_24g_time_slice
+1 mem_24g_self_last_ch
+1 mem_24g_self_ch_number
+1 mem_24g_self_config_ch_once
+1 mem_24g_device1_last_ch
+1 mem_24g_device1_ch_number
+1 mem_24g_device1_config_ch_once
+1 mem_24g_device2_last_ch
+1 mem_24g_device2_ch_number
+1 mem_24g_device2_config_ch_once
+1 mem_24g_led_status
+1 mem_24g_bind_mode_continue
+
+1 mem_tx_power_temp
+
+1 mem_24g_mode_B_S_switch
+1 mem_24g_mode_B_S_switch_init
+2 mem_24g_mode_B_S_switch_cnt
+1 mem_24g_mode_B_S_switch_exit
+1 mem_24g_B_S_time_slice
+1 mem_24g_B_S_mode_switch_disable
+
+1 mem_24g_bind_device_living
+)
+xmemalloc g24_tx(
+2 mem_24g_reconn_timeout_init
+2 mem_24g_reconn_timeout
+2 mem_24g_reconn_count
+1 mem_24g_reconn_type
+1 mem_24g_fast_conn_enable
+4 mem_24g_fast_conn_addr
+4 mem_24g_receiver_addr
+1 mem_24g_fast_conn_temp_ch
+1 mem_24g_receiver_temp_ch
+1 mem_24g_device_temp_ch
+
+)
+xmemalloc g24_rx(
+4 mem_24g_transmitter_addr
+4 mem_24g_device1_addr
+4 mem_24g_device2_addr
+
+)
+xmemalloc g24(
+1 mem_rssi_buff_index
+)
+xmemalloc g24_tx(
+1 mem_rssi_signal_index
+2 mem_rssi_signal_buf_ptr
+
+)
+xmemalloc g24_rx(
+1 mem_rssi_noise_avg
+1 mem_rssi_noise_index
+
+1 mem_rssi_noise_self_avg
+1 mem_rssi_noise_device1_avg
+1 mem_rssi_noise_device2_avg
+1 mem_rssi_noise_self_index
+1 mem_rssi_noise_device1_index
+1 mem_rssi_noise_device2_index
+
+2 mem_rssi_noise_buffer_ptr
+2 mem_rssi_noise_self_buffer_ptr
+2 mem_rssi_noise_device1_buffer_ptr
+2 mem_rssi_noise_device2_buffer_ptr
+
+)
+xmemalloc g24_tx(
+2 mem_cb_24g_transmit_data
+2 mem_cb_24g_search_receiver
+2 mem_cb_24g_lpm_before
+2 mem_cb_24g_transmit_short_sleep
+2 mem_cb_24g_transmit_long_sleep
+
+1 mem_24g_conn_sm
+
+1 mem_24g_ensure
+2 mem_24g_txfail_cnt
+1 mem_24g_attempt_fail_flag
+
+1 mem_24g_retry
+1 mem_24g_abort_pac
+1 mem_24g_max_retry
+4 mem_24g_device_addr
+3 mem_24g_short_sleep_set
+8 mem_24g_long_sleep_set
+4 mem_24g_long_sleep_set1
+
+1 mem_24g_pac_index
+1 mem_24g_transmit_by_interrupt
+2 mem_24g_transmit_by_interrupt_exit_count
+2 mem_24g_transmit_by_interrupt_exit_count_init
+2 mem_24g_long_sleep_param_update_timer_init
+2 mem_24g_long_sleep_param_update_timer
+
+1 mem_24g_fast_hop_count
+2 mem_24g_retransmit
+)
+xmemalloc g24_tx(
+1 mem_rssi_avg_received
+1 mem_power_ctrl_level
+1 mem_power_ctrl_pac_succ_cnt
+1 mem_power_ctrl_pac_succ_cnt_init
+
+1 mem_rssi_dis_min_24g
+1 mem_rssi_dis_max_24g
+1 mem_rssi_hex_received_max_value
+
+1 mem_rssi_dis_min_ble
+1 mem_rssi_dis_max_ble
+)
+xmemalloc ali_mesh(
+	1 mem_mesh_vendor_mesh_receive_tid
+	1 mem_mesh_vendor_mesh_send_tid
+
+	4 mem_mesh_vendor_timer_current_time
+	4 mem_system_time
+
+	0 mem_mesh_vendor_timer_timing_delete_index1
+	1 mem_mesh_vendor_timer_timing_index1
+	0 mem_mesh_vendor_timer_timing_delete_index2
+	4 mem_mesh_vendor_timer_timing_time1
+	2 mem_mesh_vendor_timer_timing_attr_type1
+	1 mem_mesh_vendor_timer_timing_attr_para1
+	234 mem_mesh_vendor_timer_timing_buffer
+
+	18 mem_mesh_vendor_timer_timing_palyload
+	2  mem_mesh_vendor_timer_timing_temp
+
+	1 mem_mesh_vendor_timer_timing_time_cyclic_temp
+	1 mem_mesh_vendor_timer_check_loop
+	1 mem_tmall_revd_device_power_on_msge_flag
+	2 mem_tmall_send_power_on_msge_timeout
+
+	2 mem_mesh_vendor_timer_timing_temp1
+	1 mem_mesh_timer_index_buffer_len
+	32 mem_mesh_timer_index_buffer
+	1 mem_mesh_timer_index_count
+)
+xmemalloc ali_mesh(
+
+
+	1 mem_mesh_adv_data_len
+	31 mem_mesh_adv_data
+
+	1 mem_mesh_adv_scan_channel
+)
+xmemalloc ali_mesh(
+	1 mem_mesh_advertising_unprovisioned_device_beacon_switch
+	//δ�����㲥���
+	2 mem_mesh_advertising_unprovisioned_device_beacon_timer
+
+	//�㲥��������
+	1 mem_mesh_advertising_unprovisioned_device_beacon_duration
+	//�㲥����֮��ļ��
+	1 mem_mesh_advertising_unprovisioned_device_beacon_interval
+
+)
+xmemalloc ali_mesh(
+
+	0 mem_mesh_calc_ConfirmationCloud_data
+	8 mem_mesh_ConfirmationCloud_RandomB
+	8 mem_mesh_ConfirmationCloud_RandomA
+	16 mem_mesh_AuthValueProv
+	16 mem_mesh_ConfirmationCloud
+
+
+	//provisioning random  / provisioning_confirmation
+	0 mem_mesh_ConfirmationDevice
+	0 mem_mesh_calc_ConfirmationDevice_data
+	8 mem_mesh_provisioning_random_A
+	8 mem_mesh_provisioning_random_B
+	16 mem_mesh_AuthValueDevice
+
+	16 mem_mesh_Device_Key
+
+
+// CMAC Key
+	16 mem_mesh_Confirmationkey
+
+	//sha256 init data
+	15 mem_mesh_sha256_ConfirmationKey_ascii
+	10 mem_mesh_sha256_SessionKey_ascii
+	9 mem_mesh_sha256_DeviceKey_ascii
+
+	//sha256
+	1 mem_mesh_sha256_load_first_data_flag
+
+	8 mem_mesh_sha256_data_len_byte
+	8 mem_mesh_sha256_data_len_bit
+	2 mem_mesh_sha256_data_end_addr
+	2 mem_mesh_sha256_data_len_addr
+	1 mem_mesh_sha256_chunk_count
+	2 mem_mesh_sha256_chunk_data_ptr
+	2 mem_mesh_sha256_chunk_ptr
+
+
+	//function K2
+	//f2 input
+	1 mem_k2_P_len
+	16 mem_k2_P
+	16 mem_k2_N
+	//f2 init data
+	16 mem_k2_SALT
+	//f2 output
+	16 mem_k2_T
+	0 mem_k2_T0
+	16 mem_k2_T1
+	1 mem_k2_NID
+	16 mem_k2_T3
+	16 mem_k2_T2
+
+
+	//k4 function
+	16 mem_k4_SALT
+	16 mem_k4_T
+	16 mem_k4_id6_01
+	16 mem_k4_k4N
+	1 mem_mesh_transport_AID
+
+	16 mem_k3_SALT
+	16 mem_k3_T
+	5 mem_k3_id64_01
+	8 mem_k3_k4N
+	8 mem_mesh_network_id
+
+
+)
+xmemalloc ali_mesh(
+
+	// provisioning flag ��־�Ƿ�����
+	1 mem_mesh_provisioned_flag
+
+	//����ʱ��״̬��
+	1 mem_mesh_Provisioning_State_Flag
+
+	1 mem_mesh_Device_PID
+	1 mem_mesh_UUID_FeatureFlag
+	1 mem_mesh_UUID_FeatureFlag1
+	1 mem_mesh_PDU_RFU
+	2 mem_mesh_OOB_information
+
+	//Provisioning_Data
+	0 mem_mesh_Encrypt_Provisioning_Data
+	2 mem_mesh_provisioning_data_Mac_addr
+	1 mem_mesh_KeyFresh_and_Update_flag
+	16 mem_mesh_Network_Key
+	1 mem_mesh_last_IV_Index_byte
+	2 mem_mesh_Unicast_Address
+
+	1 mem_mesh_recv_cfg_appkey_add_timer
+
+	1 mem_mesh_report_power_on_timer
+	1 mem_mesh_report_full_attribute_timer
+
+	1 mem_mesh_health_node_reset_timer
+//	4 mem_mesh_adv_last_time
+	2 mem_mesh_send_packet_timeout
+
+	1 mem_mesh_gatt_package_send_msg_id
+
+)
+xmemalloc ali_mesh(
+
+	1 mem_mesh_gatt_receive_msg_timer
+	//fast pairing
+	//APP control
+
+
+
+)
+xmemalloc ali_mesh(
+	4 mem_mesh_three_tuple_ProductID
+	6 mem_mesh_three_tuple_MAC
+	16 mem_mesh_three_tuple_secret
+
+
+	2 mem_mesh_cb_receive_advertising
+
+
+	2 mem_mesh_cb_receive_access_message
+
+
+	2 mem_mesh_cb_receive_config_appkey_add
+
+
+	2 mem_mesh_cb_pairing_fail
+
+	//ali vendor message cb
+	2 mem_mesh_cb_recv_vendor
+
+	2 mem_mesh_scan_selete_next_ch
+
+	2 mem_mesh_cb_generic_onoff_get
+	2 mem_mesh_cb_generic_onoff_set
+	2 mem_mesh_cb_scene_recall
+	2 mem_mesh_cb_light_lightness_set
+	2 mem_mesh_cb_light_lightness_get
+	2 mem_mesh_cb_light_ctl_set
+
+	2 mem_mesh_cb_main_light_onoff_set
+	2 mem_mesh_cb_background_onoff_set
+	2 mem_mesh_cb_color_set
+
+
+	2 mem_mesh_cb_network_relay
+
+
+	2 mem_mesh_cb_receive_node_reset
+
+
+	2 mem_mesh_cb_seq_changed
+
+	2 mem_mesh_cb_subscriptuion_list_changed
+
+
+	2 mem_mesh_cb_vendor_timing_changed
+
+
+	2 mem_mesh_core_feature
+
+	1 mem_mesh_element_number
+	2 mem_mesh_element_device_ptr
+	2 mem_mesh_element_device_length
+
+	2 mem_mesh_clear_provisioning_data
+
+	2 mem_mesh_app_deport_device_state
+
+	1 mem_mesh_chip_select
+
+
+)
+xmemalloc ali_mesh_element(
+	0 mem_mesh_element_device
+	2 mem_mesh_element_device_group_addr
+	2 mem_mesh_element_device_queue_buffer_ptr
+	2 mem_mesh_element_device_timing_ptr
+	16 mem_mesh_element_device_element_subscription_label
+	1 mem_mesh_element_upper_adv_flag
+	2 mem_mesh_element_upper_queue_buffer_ptr
+	1 mem_mesh_element_tran_package_tid
+	1 mem_mesh_element_tran_package_type
+
+	SIZEOF_ELEMENT_DEVICE mem_mesh_element_device1
+	SIZEOF_ELEMENT_DEVICE mem_mesh_element_device2
+)
+xmemalloc ali_mesh_element(
+	MESH_SEGMENT_SIZE mem_mesh_segmented_access_message_Segment
+)
+xmemalloc ali_mesh_element_timer(
+	MESH_TIMER_BUFFER_SIZE mem_mesh_element_timing
+	MESH_TIMER_BUFFER_SIZE mem_mesh_element_timing1
+	MESH_TIMER_BUFFER_SIZE mem_mesh_element_timing2
+)
+xmemalloc ali_mesh(
+	//current segmented access message head
+	1 mem_mesh_segmented_access_message_SZMIC
+	2 mem_mesh_segmented_access_message_SeqZero
+	1 mem_mesh_segmented_access_message_SegO
+	1 mem_mesh_segmented_access_message_SegN
+
+	4 mem_mesh_segmented_access_message_BlockAck
+	1 mem_mesh_segmented_access_message_receive_finish
+	1 mem_mesh_segmented_access_message_current_length
+
+	1 mem_mesh_segmented_access_message_SegN_upper_limit
+	2 mem_mesh_segmented_access_message_Segment_ptr
+)
+xmemalloc ali_mesh(
+	2 mem_mesh_last_CTL_Temperature
+)
+xmemalloc ali_mesh(
+	1 mem_mesh_receive_group_address
+	1 mem_mesh_receive_element_number
+)
+xmemalloc ali_mesh(
+	1 mem_mesh_network_dup_cache_next
+	1 mem_mesh_network_msg_cache_next
+	2 mem_mesh_network_proxy_unicast_address
+
+	4 mem_mesh_IV_Index
+
+
+
+// mesh SRC/SEQ  cache
+	0 mem_mesh_TMALL_cache_start
+	2 mem_mesh_TMALL_SRC1
+	3 mem_mesh_TMALL_SEQ1
+	45 mem_mesh_TMALL_cache
+	0 mem_mesh_TMALL_cache_end
+
+	0 mem_mesh_transport_message_mic_cache
+	4 mem_mesh_transport_message_mic_cache_buff1
+	36 mem_mesh_transport_message_mic_cache_buff2_10
+
+	0 mem_mesh_network_relay_queue
+	1 mem_mesh_network_relay_queue_each_size
+	1 mem_mesh_network_relay_queue_length
+	1 mem_mesh_network_relay_queue_current_num
+	1 mem_mesh_network_relay_queue_read_ptr
+	1 mem_mesh_network_relay_queue_write_ptr
+	136 mem_mesh_network_relay_queue_ele
+
+)
+xmemalloc ali_mesh_element(
+	196 mem_mesh_le_att_list
+	3 mem_mesh_send_message_SEQ_temp
+
+)
+xmemalloc ali_mesh(
+	16 mem_mesh_application_key
+	1 mem_mesh_ASZMIC
+
+	0 mem_mesh_access_message_mic_cache
+	4 mem_mesh_access_message_mic_cache_buff1
+	36 mem_mesh_access_message_mic_cache_buff2_10
+
+	3 mem_mesh_send_message_SEQ
+
+	2 mem_mesh_send_message_SRC
+
+	1 mem_mesh_send_message_TTL
+
+	//Upper transport access PDU
+	1 mem_mesh_send_upper_layer_IVI_and_NID
+	1 mem_mesh_send_upper_layer_CTL_and_TTL
+	3 mem_mesh_send_upper_layer_SEQ
+	2 mem_mesh_send_upper_layer_SRC
+	2 mem_mesh_send_upper_layer_DST
+	16 mem_mesh_send_access_lower_transport_layer
+	4 mem_mesh_send_network_layer_NetMIC
+
+	1 mem_mesh_upper_tran_layer_packet_advertising
+	1 mem_mesh_upper_tran_layer_packet_tid
+	1 mem_mesh_upper_tran_layer_packet_type
+
+	1 mem_mesh_upper_receive_new_message_timer
+
+	1 mem_mesh_upper_tran_layer_queue_each_size
+	1 mem_mesh_upper_tran_layer_queue_length
+	1 mem_mesh_upper_tran_layer_queue_current_num
+	1 mem_mesh_upper_tran_layer_queue_read_ptr
+	1 mem_mesh_upper_tran_layer_queue_write_ptr
+	40 mem_mesh_upper_tran_layer_queue_element_1
+	40 mem_mesh_upper_tran_layer_queue_element_2
+	40 mem_mesh_upper_tran_layer_queue_element_3
+	40 mem_mesh_upper_tran_layer_queue_element_4
+
+	1 mem_mesh_queue_each_size
+	1 mem_mesh_queue_length
+	1 mem_mesh_queue_current_num
+	1 mem_mesh_queue_read_ptr
+	1 mem_mesh_queue_write_ptr
+	136 mem_mesh_queue_ele
+
+)
+xmemalloc g24_rx_car_adpcm(
+	16 mem_ad_indexTable
+	356 mem_ad_stepsizeTable
+
+	4 mem_ad_state_valpred
+	4 mem_ad_state_index
+	1 mem_ad_in_numSamples
+	2 mem_ad_in_ptr
+	2 mem_ad_out_ptr
+	1 mem_ad_sign
+	1 mem_ad_delta
+	4 mem_ad_step
+	4 mem_ad_valpred
+	4 mem_ad_index
+	4 mem_ad_vpdiff
+	4 mem_ad_inputbuffer
+	1 mem_ad_bufferstep
+)
+xmemalloc g24_rx_car(
+1 mem_car_hard_soft_switch
+1 mem_car_queue_each_size
+1 mem_car__queue_length
+
+1 mem_car_queue_curr_num
+1 mem_car_queue_read_ptr
+1 mem_car_queue_write_ptr
+120 mem_car_queue_ele
+
+20 mem_car_pop_queue_buff
+
+1 mem_car_led_num
+10 mem_car_led_map
+
+1 mem_car_style1_led_type
+1 mem_car_style1_blink_count
+1 mem_car_style1_struct_led_gpio
+2 mem_car_style1_on_time
+2 mem_car_style1_off_time
+2 mem_car_style1_cb_ledon
+2 mem_car_style1_cb_ledoff
+
+1 mem_car_style2_led_type
+1 mem_car_style2_blink_count
+1 mem_car_style2_struct_led_gpio
+2 mem_car_style2_on_time
+2 mem_car_style2_off_time
+2 mem_car_style2_cb_ledon
+2 mem_car_style2_cb_ledoff
+
+//////motor
+0 mem_le_receive_data
+2 mem_le_receive_packet_head
+1 mem_le_receive_cmd
+2 mem_le_receive_length
+10 mem_le_receive_payload
+1 mem_le_receive_checksum
+1 mem_motor1_status
+1 mem_motor1_speed
+1 mem_motor2_status
+1 mem_motor2_speed
+1 mem_motor3_status
+1 mem_motor3_speed
+
+0 mem_motor1_pwm_set
+1 mem_motor1_pwm_pin1_set
+1 mem_motor1_pwm_pin2_set
+1 mem_motor1_pwm_pin_set
+1 mem_motor1_pwm_channel_set
+3 mem_motor1_pwm_freq_set
+1 mem_motor1_pwm_dute_set
+0 mem_motor2_pwm_set
+1 mem_motor2_pwm_pin1_set
+1 mem_motor2_pwm_pin2_set
+1 mem_motor2_pwm_pin_set
+1 mem_motor2_pwm_channel_set
+3 mem_motor2_pwm_freq_set
+1 mem_motor2_pwm_dute_set
+0 mem_motor3_pwm_set
+1 mem_motor3_pwm_pin1_set
+1 mem_motor3_pwm_pin2_set
+1 mem_motor3_pwm_pin_set
+1 mem_motor3_pwm_channel_set
+3 mem_motor3_pwm_freq_set
+1 mem_motor3_pwm_dute_set
+
+1 mem_motor_select_p_n
+1 mem_car_motor_status
+1 mem_car_motor_speed
+0 mem_motor_pwm_set
+1 mem_motor_pwm_pin1_set
+1 mem_motor_pwm_pin2_set
+1 mem_motor_pwm_pin_set
+1 mem_motor_pwm_channel_set
+3 mem_motor_pwm_freq_set
+1 mem_motor_pwm_dute_set
+
+1 mem_ir_rx_gpio
+2 mem_ir_data
+2 mem_ir_rx_buf
+4 mem_ir_receive_clkn
+
+3 mem_ir_notify_data
+5 mem_ir_notify_data_head
+2 mem_ir_notify_data_payload
+1 mem_ir_notify_data_check_sum
+1 mem_car_ir_breakdown_check_timer
+1 mem_car_ir_breakdown_flag
+
+0 mem_car_led_control
+1 mem_car_led1_status
+1 mem_car_led2_status
+1 mem_car_led3_status
+1 mem_car_led4_status
+1 mem_car_led5_status
+1 mem_car_led6_status
+1 mem_car_led7_status
+1 mem_car_led8_status
+1 mem_car_led_control_timer
+1 mem_car_led_blink_status
+1 mem_car_led_no
+
+3 mem_car_info_request
+5 mem_car_info_request_head
+8 mem_car_info_request_payload
+1 mem_car_info_request_checksum
+
+0 mem_car_config_param
+1 mem_car_config_setting_flag
+1 mem_car_config_device_select
+1 mem_car_config_motor_layout
+1 mem_car_config_ir_enable
+1 mem_car_config_ir_rx_gpio
+1 mem_car_config_pairing_led_conn_status
+1 mem_car_config_pairing_led_gpio
+1 mem_car_config_led_num
+0 mem_car_config_blood_led_gpio
+1 mem_car_config_blood_led1_gpio
+1 mem_car_config_blood_led2_gpio
+1 mem_car_config_blood_led3_gpio
+1 mem_car_config_blood_led4_gpio
+1 mem_car_config_blood_led5_gpio
+1 mem_car_config_blood_led6_gpio
+1 mem_car_config_blood_led7_gpio
+1 mem_car_config_blood_led8_gpio
+1 mem_car_config_bat_notify_enable
+1 mem_car_config_low_voltage_led_gpio
+1 mem_car_config_low_voltage_percent
+1 mem_car_config_soft_switch_enable
+1 mem_car_config_soft_switch_gpio
+
+1 mem_car_notify_vdd_count
+1 mem_car_notify_vdd_timer
+1 mem_car_notify_vdd_value_last
+1 mem_car_notify_vdd_percent
+1 mem_car_working_flag
+1 mem_low_bat_flag
+
+3 mem_notify_bat_packet
+5 mem_notify_bat_head
+1 mem_notify_bat_payload
+1 mem_notify_bat_check_sum
+
+1 mem_vdd_notify_flag
+2 mem_car_current_vdd_value_temp
+2 mem_car_last_vdd_value
+
+0 mem_vdd_calculate_set
+2 mem_vdd_full_vol
+2 mem_vdd_empty_vol
+2 mem_vdd_low_vol
+2 mem_vdd_now_vol
+
+
+1 mem_car_24g_status
+2 mem_car_24g_no_data_timeout_count
+2 mem_car_24g_no_data_timeout_timer
+
+1 mem_car_24g_ir_receive_attack_count
+1 mem_car_24g_go_die_flag
+1 mem_car_attack_shake_timer
+1 mem_car_attack_shake_flag
+
+0 mem_car_soft_power
+1 mem_car_power_state
+1 mem_car_power_timer
+1 mem_car_power_off_timeout
+1 mem_car_power_starting_timeout
+2 mem_car_power_off_cb
+2 mem_car_power_starting_cb
+2 mem_car_power_standby_cb
+2 mem_car_ui_button_up_cb
+
+
+500 mem_car_le_att_list
+
+1 mem_car_moto1_blank_timer
+1 mem_car_moto2_blank_timer
+1 mem_car_moto3_blank_timer
+
+1 mem_car_motor_gpio_num
+0 mem_car_motor_gpio_map
+1 mem_car_motor_left_gpio
+1 mem_car_motor_right_gpio
+1 mem_car_motor_front_gpio
+1 mem_car_motor_back_gpio
+1 mem_car_gpio
+1 mem_car_app_send_speed
+
+2 mem_rssi_sum
+2 mem_check_rssi_high_count
+8 mem_rssi_data
+
+1 mem_car_24g_received_pac
+1 mem_car_24g_bind_enable_delay_count
+
+0 mem_car_keyscan
+1 mem_car_key_num
+2 mem_cb_car_keyscan
+
+2 mem_car_enter_lpm_timer_count
+2 mem_car_enter_lpm_timer
+1 mem_car_enter_lpm_flag
+
+1 mem_car_24g_ch_polling
+
+8 mem_car_rssi_noise_buffer
+8 mem_car_rssi_noise_car_buffer
+8 mem_car_rssi_noise_remote_buffer
+
+
+4 mem_car_24g_commom_addr
+4 mem_car_24g_commom_addr_temp
+4 mem_car_24g_commom_addr_read
+1 mem_car_save_addr_flag
+400 mem_ble_att_list
+)
+xmemalloc g24_rx_dongle(
+1 mem_dg_kb_bind_flag
+8 mem_dg_kb_data_sta_data
+8 mem_dg_kb_data_last_data
+3 mem_dg_kb_multikey_sta_data
+3 mem_dg_kb_multikey_last_data
+3 mem_dg_kb_system_sta_data
+3 mem_dg_kb_system_last_data
+1 mem_dg_kb_blank_data_enable
+1 mem_dg_kb_mul_blank_data_enable
+1 mem_dg_kb_system_crtl_blank_data_enable
+1 mem_dg_ms_blank_data_enable
+
+1 mem_dg_sys_config
+9 mem_dg_usb_vid_pid
+1 mem_dg_usb_tx_interval
+30 mem_dg_usb_device_name
+1 mem_dg_kb_bind_success
+1 mem_dg_pc_sleep_flag
+
+1 mem_dg_24g_tx_power_default
+)
+xmemalloc g24_tx_hid_keyboard(
+1 mem_power_on_flag
+6 mem_mouse_factory_addr
+8 mem_keyboard_flag
+
+10 mem_keyboard_tx_data
+1 mem_keyboard_data_send_flag
+
+//le conn param update
+1 mem_keyboard_le_send_conn_param_update
+1 mem_keyboard_le_send_conn_param_update_timer
+1 mem_le_start_auto_reco_timer
+
+1 mem_mcu_stb_gpio
+1 mem_mcu_clk_gpio
+1 mem_mcu_rstb_gpio
+1 mem_keyboard_caps_led_gpio
+1 mem_keyboard_num_led_gpio
+1 mem_keyboard_power_led_gpio
+2 mem_keyboard_caps_led_on_timer
+
+
+1 mem_keyboard_led_r_gpio
+1 mem_keyboard_led_g_gpio
+1 mem_keyboard_led_b_gpio
+
+8 mem_key_row_gpio
+20 mem_key_col_gpio
+12 mem_key_excol_gpio
+2 mem_kb_row_ptr
+2 mem_kb_col_ptr
+2 mem_kb_excol_ptr
+
+20 mem_keyscan_value_current
+20 mem_keyscan_value_check
+20 mem_keyscan_value_old
+11 mem_keyscan_exmcu_value
+2 mem_keyscan_value_ptr
+2 mem_keyscan_exmcu_value_ptr
+1 mem_keyscan_value_temp
+1 mem_keyscan_col_loop_count
+2 mem_keyscan_exmcu_wait_wake_count
+
+1 mem_same_keyvalue_timerout_flag
+2 mem_same_keyvalue_timer_init
+2 mem_same_keyvalue_timer
+
+1 mem_keyboard_current_col_press_key_count
+1 mem_keyboard_all_press_key_count
+1 mem_keyboard_same_row_press_key_count
+1 mem_keyboard_ghost_flag
+1 mem_keyboard_data_change_flag
+1 mem_keyboard_keyvalue_temp
+1 mem_keyboard_press_flag_temp
+1 mem_keyboard_keyvalue_bit_loop_count
+9 mem_keyboard_keyvalue_buffer
+160 mem_keyboard_keyvalue_map
+
+1 mem_keyboard_fn_flag
+1 mem_keyboard_control_key_flag
+1 mem_keyboard_bt_button_flag
+1 mem_keyboard_pairing_type
+2 mem_keyboard_commbination_key_bt
+2 mem_keyboard_commbination_key_24g
+1 mem_24g_repeat_send_flag
+1 mem_keyboard_led_status
+1 mem_keyboard_led_status_get
+1 mem_keyboard_led_status_get_timer
+1 mem_keyboard_led_status_get_timer_last
+
+0 mem_keyboard_fn_esc_f1_f12
+1 mem_keyboard_fn_first
+1 mem_keyboard_fn_esc
+1 mem_keyboard_fn_f1
+1 mem_keyboard_fn_f2
+1 mem_keyboard_fn_f3
+1 mem_keyboard_fn_f4
+1 mem_keyboard_fn_f5
+1 mem_keyboard_fn_f6
+1 mem_keyboard_fn_f7
+1 mem_keyboard_fn_f8
+1 mem_keyboard_fn_f9
+1 mem_keyboard_fn_f10
+1 mem_keyboard_fn_f11
+1 mem_keyboard_fn_f12
+1 mem_keyboard_fn_del
+
+1 mem_keyboard_fn_arrow_enable_flag
+1 mem_keyboard_fn_left_ctrl_enable_flag
+1 mem_keyboard_fn_space_enable_flag
+1 mem_keyboard_fn_system_switch_enable_flag
+
+1 mem_keyboard_commbination_key_step
+1 mem_keyboard_commbination_control_key_value
+1 mem_keyboard_commbination_standard_key_value
+1 mem_keyboard_commbination_control_key_delay_release_timer
+
+1 mem_keyboard_consumer_key_status
+
+1 mem_kb_computer_system
+24 mem_otp_read_retention_memory
+2 mem_otp_read_retention_offset
+16 mem_le_search_service_uuid
+1 mem_le_connect_ios_mac_flag
+2 mem_le_search_mac_uuid
+9 mem_le_search_mac_manu_name
+2 mem_keybord_appearance
+2 mem_keyboard_commbination_fast_conn_bt
+
+//patch area
+6 mem_keyboard_factory_addr
+1 mem_keyboard_device_poweron_timer_count_init
+1 mem_keyboard_device_poweron_timer_count
+2 mem_keyboard_disconvey_led_blink_time
+//led struct
+1 mem_keyboard_led_type
+1 mem_keyboard_blink_count
+1 mem_keyboard_struct_led_gpio
+2 mem_keyboard_on_time
+2 mem_keyboard_off_time
+2 mem_keyboard_cb_ledon
+2 mem_keyboard_cb_ledoff
+//struct end
+160 mem_keyboard_keyvalue_map_new
+1 mem_keyboard_customer_key
+1 mem_keyboard_customer_data_trigger
+1 mem_keyboard_customer_data_trigger_last
+1 mem_keyscan_exmcu_reset_count
+1 mem_power_on_flag_new
+2 mem_keyboard_le_map_len
+220 mem_keyboard_le_hid_map
+1 mem_keyboard_change_vid_pid_flag
+1 mem_keybaord_pnp_vid_source
+2 mem_keyboard_vid
+2 mem_keyboard_pid
+2 mem_keyboard_product_version
+
+1 mem_keyboard_switch_device_flag
+1 mem_keyboard_usb_enable
+1 mem_keyboard_switch_g24_enable
+1 mem_keyboard_switch_g24_press_timer
+1 mem_keyboard_switch_bt_enable
+1 mem_keyboard_switch_bt_press_timer
+1 mem_keyboard_switch_usb_enable
+3 mem_keyboard_switch_device_to_g24
+3 mem_keyboard_switch_device_to_bt1
+3 mem_keyboard_switch_device_to_bt2
+3 mem_keyboard_switch_device_to_bt3
+3 mem_keyboard_switch_device_to_usb
+
+1 mem_keyboard_24g_led_gpio
+1 mem_keyboard_bt1_led_gpio
+1 mem_keyboard_bt2_led_gpio
+1 mem_keyboard_bt3_led_gpio
+1 mem_keyboard_scroll_led_gpio
+1 mem_keyboard_low_voltage_alarm_gpio
+
+1 mem_usb_level_check_gpio
+1 mem_mouse_usb_vdd_status_current
+1 mem_mouse_usb_vdd_status_last
+1 mem_mouse_usb_wait_updata_timer
+9 mem_usb_vid_pid_new
+1 mem_keyboard_mode_led_on_timer
+
+6 mem_rgb_pwm_conf
+1 mem_rgb_pwm_breathe_flag
+1 mem_rgb_on_color_temp
+7 mem_rgb_on_color
+1 mem_pwm_lpm_mode_flag
+
+4 mem_ui_check_timer_setup
+2 mem_customize_timer_setup
+1 mem_backlight_on_flag
+1 mem_backlight_on_type
+1 mem_backlight_breathe_type
+2 mem_keyboard_led_on_time_init
+1 mem_device_flag_temp_new
+1 mem_otp_store_device_info_flag
+1 mem_otp_store_system_flag
+0 mem_adc_reference3v_ft_data
+2 mem_adc_reference3v_gpio1v_ft_data
+2 mem_adc_reference3v_gpio2v_ft_data
+2 mem_adc_reference3v_vdcdc3p6v_ft_data
+2 mem_adc_reference3v_vdcdc4p6v_ft_data
+2 mem_adc_reference3v_inter1v_ft_data
+2 mem_adc_reference3v_inter1v_now_data
+1 mem_adc_reference_mode
+1 mem_le_conn_rcv_new
+1 mem_le_conn_first_rcv
+1 mem_le_check_retransmit_flag
+1 mem_le_retransmit_cnt
+1 mem_le_check_retransmit_discon_flag
+64 mem_le_tx_buffer0_omemalloc_new
+64 mem_le_tx_buffer1_omemalloc_new
+64 mem_le_tx_buffer2_omemalloc_new
+64 mem_le_tx_buffer3_omemalloc_new
+12 mem_keyscan_exmcu_value_new
+1 mem_keyboard_pair_led_flag
+1 mem_keyboard_adc_low_volatage_led_timer_count
+2 mem_adc_low_volatage_led_blink_timer
+1 mem_keyboard_low_volatage_led_flag
+1 mem_keyboard_low_volatage_led_blink_new_data_enable
+1 mem_qdec_set_flag
+2 mem_otp_read_retention_max_size
+1 mem_keyboard_reuse_led_bit
+1 mem_keyboard_delay_lpm_flag
+
+4 mem_keyboard_evt_btclk
+1 mem_keyboard_evt_timer_count
+)
+xmemalloc module(
+	2 mem_soft_version_num
+	1 mem_module_wake_up_gpio
+	1 mem_module_state_gpio
+	1 mem_module_connect_state_gpio
+
+	2 mem_current_packet_length
+	1 mem_module_state
+
+	1 mem_module_mcu_wake_pin
+	4 mem_module_mcu_wake_delay_us
+
+	1 mem_module_le_lpm_mult
+	1 mem_module_bluetooth_stauts_by_command
+
+	//uart
+	2 mem_module_uart_rx_buffer
+	2 mem_module_uart_rx_buffer_end
+	2 mem_module_uart_tx_buffer
+	2 mem_module_uart_tx_buffer_end
+	2 mem_module_uarta_baud_rate
+
+	//ADC
+	1 mem_module_read_vdd_flag
+	1 mem_module_read_vdd_count
+	1 mem_module_vdd_quotient
+	1 mem_module_vdd_remainder
+
+	//ble
+	1 mem_module_ble_data_uart_max_length
+
+	//flag
+	2 mem_module_flag
+
+	1 mem_module_hci_notify_len
+	2 mem_module_hci_notify_handle
+	2 mem_module_hci_nofiy_addr
+	1 mem_module_hci_notify_type
+
+	1 mem_le_conn_flag
+
+ifdef COMPILE_WECHAT
+	1 mem_module_wechat_indication_handle
+	1 mem_module_wechat_write_handle
+	2 mem_module_wechat_tx_buffer_ptr
+	2 mem_module_wechat_rx_buffer_ptr
+	2 mem_module_wechat_rx_push_data_cb
+	2 mem_module_wechat_tx_nSeq
+	2 mem_module_wechat_tx_len
+	2 mem_module_wechat_tx_address
+	2 mem_module_wechat_rx_len
+	2 mem_module_wechat_rx_address
+	1 mem_module_wechat_receive_push_data
+endif
+
+	600 mem_module_le_att_list
+	0 mem_module_le_att_list_end
+	0 mem_module_nv_data
+	34 mem_module_nv_data0
+	34 mem_module_nv_data1
+	34 mem_module_nv_data2
+	34 mem_module_nv_data3
+	34 mem_module_nv_data4
+	0 mem_module_nv_data_end
+)
+xmemalloc g24_tx_hid(
+
+// adc
+//adc struct
+0 mem_mouse_vdd_calculate_set
+2 mem_mouse_vdd_full_vol
+2 mem_mouse_vdd_empty_vol
+2 mem_mouse_vdd_low_vol
+2 mem_mouse_vdd_now_vol
+1 mem_adc_channel_gpio
+1 mem_adc_mux_status
+1 mem_mouse_adc_last_low_voltage_flag
+2 mem_mouse_discovery_timeout
+2 mem_mouse_24g_pair_timeout_init
+1 mem_mouse_direct_timeout
+1 mem_mouse_24g_reconn_timeout_init
+1 mem_mouse_24g_pair_tx_power
+1 mem_rssi_dis_min_24g_init
+1 mem_rssi_dis_max_24g_init
+1 mem_rssi_hex_received_max_value_init
+1 mem_rssi_dis_min_ble_init
+1 mem_rssi_dis_max_ble_init
+
+0 mem_mouse_param_config
+1 mem_lbutton_gpio
+1 mem_mbutton_gpio
+1 mem_rbutton_gpio
+1 mem_bk_button_gpio
+1 mem_fw_button_gpio
+1 mem_dpi_button_gpio
+1 mem_whee_a_data_gpio
+1 mem_whee_b_data_gpio
+1 mem_mouse_sensor_sclk_gpio
+1 mem_mouse_sensor_sdio_gpio
+1 mem_select_sensor_angle_gpio
+1 mem_sensor_angle_default
+1 mem_sensor_angle_switch
+1 mem_config_sensor_dpi
+1 mem_whee_ta_data_gpio
+1 mem_whee_tb_data_gpio
+1 mem_matrix_public_gpio
+1 mem_config_select_device_button_gpio
+1 mem_customer_key_gpio
+1 mem_firebutton_gpio
+1 mem_dpi_another_button_gpio
+1 mem_sensor_motion_gpio
+1 mem_device_switch_gpio
+1 mem_mouse_reuse_2ice_gpio
+1 mem_mouse_logo_led_gpio
+1 mem_mouse_1io2led_multi_24gled
+1 mem_mouse_1io2led_multi_bt1led
+1 mem_mouse_1io2led_multi_bt2led
+1 mem_mouse_low_voltage_alarm_gpio
+1 mem_mouse_dpi_gpio
+0 mem_mouse_param_config_end
+
+// usb
+1 mem_wire_usb_interval
+1 mem_usb_addr
+1 mem_mouse_usb_vdd_status
+1 mem_mouse_usb_keyboard_flag
+
+//three devices param
+//eeprom/flash
+0 mem_mouse_information_start
+1 mem_device_flag
+1 mem_device1_type
+6 mem_device1_addr
+6 mem_device1_locall_addr
+
+1 mem_device2_type
+6 mem_device2_addr
+6 mem_device2_locall_addr
+
+1 mem_device3_type
+6 mem_device3_addr
+6 mem_device3_locall_addr
+2 mem_store_flag
+1 mem_mouse_dpi
+4 mem_mouse_24g_addr
+2 mem_random_addr_increase_count
+79 mem_mouse_retention
+0 mem_mouse_information_end
+
+6 mem_mouse_compare_addr
+3 mem_flash_base
+4 mem_write_flash_head_temp
+1 mem_store_information_delay_timer
+1 mem_store_information_delay_timer_init
+
+// 2.4G
+1 mem_mouse_search_dongle_interval
+1 mem_mouse_search_dongle_ch
+1 mem_mouse_search_dongle_count
+1 mem_mouse_search_dongle_action
+1 mem_24g_enter_lpm_timer
+1 mem_mouse_24g_enter_lpm_enable
+
+//	LED
+//mediacy
+1 mem_mouse_multi_led_blink_enable
+1 mem_mouse_multi_led_type
+1 mem_mouse_multi_led_state
+1 mem_mouse_multi_led_blink_type				//00:rtn	01:24g blink	02:le blink		03:reconn blink 	04:low blink	05:dpi blink
+
+//time parm
+1 mem_mouse_le_reconn_blink_limit
+1 mem_mouse_multi_led_powon_timer_init		//power on time
+1 mem_mouse_multi_led_powon_timer
+1 mem_mouse_multi_24gled_blink_timer_init	//24gled blink time
+1 mem_mouse_multi_le_discovery_blink_timer_init	//le discovery blink time
+1 mem_mouse_multi_le_reconn_blink_timer_init	//le reconn blink time
+1 mem_mouse_dpi_led_blink_timer_init		//dpi blink time
+1 mem_mouse_multi_led_blink_timer
+1 mem_mouse_low_led_blink_timer			//low blink time
+1 mem_mouse_low_led_blink_half_timer
+1 mem_adc_low_volatage_led_timer_count
+//blink count
+1 mem_mouse_multi_24gled_blink_count_init	//24g count
+1 mem_mouse_multi_le_reconn_blink_count_init	//le reconn count
+1 mem_mouse_multi_led_blink_count
+1 mem_mouse_multi_lowled_blink_count_init	//low count
+1 mem_mouse_multi_low_led_blink_count
+2 mem_mouse_logo_led_on_time_init
+1 mem_mouse_dpi_led_delay_count
+1 mem_mouse_dpi_led_delay_count_init
+//	LED end
+
+// mouse configured param
+8 mem_mouse_flag
+1 mem_device_number
+2 mem_mouse_page_to
+1 mem_mouse_fast_direct_timeout
+2 mem_mouse_fast_page_to
+2 mem_mouse_24g_power_on_fast_conn_timer
+2 mem_mouse_24g_search_dongle_time_init
+2 mem_mouse_no_data_timeout
+
+1 mem_mouse_commbination_key_bt
+1 mem_mouse_commbination_key_24g
+
+1 mem_mouse_customer_function
+9 mem_customer_key_press
+9 mem_customer_key_release
+3 mem_mouse_set_high_impedance_bit_set
+
+1 mem_sensor_shutdown_flag
+1 mem_24g_long_sleep_set_level
+
+2 mem_tx_power_factory_param
+
+//lost-packet compensation
+3 mem_mouse_24g_short_sleep_set_4ms
+3 mem_mouse_24g_long_sleep_set_4ms
+1 mem_mouse_24g_fast_hop_count_4ms
+3 mem_mouse_24g_short_sleep_set_8ms
+3 mem_mouse_24g_long_sleep_set_8ms
+1 mem_mouse_24g_fast_hop_count_8ms
+
+4 mem_mouse_24g_tsniff
+4 mem_mouse_24g_tsniff_4ms
+4 mem_mouse_24g_tsniff_8ms
+3 mem_mouse_24g_short_sleep_set_init
+
+1 mem_mouse_24g_tx_count
+6 mem_mouse_24g_tx_time_last
+4 mem_mouse_24g_tx_time_last_delt
+5 mem_mouse_24g_tx_time_sum
+1 mem_mouse_24g_tx_time_sum_count
+1 mem_mouse_24g_tx_time_offset
+1 mem_mouse_24g_sleep_miss
+4 mem_mouse_24g_sleep_time_temp
+4 mem_mouse_24g_sleep_miss_temp
+
+1 mem_mouse_sleep_deal_type
+
+1 mem_mouse_24g_long_sleep_flag
+
+//no motion pin
+1 mem_mouse_long_mult_flag
+1 mem_mouse_current_mult_timer
+
+1 mem_reconn_times
+1 mem_reconn_times_init
+2 mem_mouse_no_data_timer
+8 mem_mouse_rssi_signal_buf
+4 mem_btclk_sensor
+1 mem_mouse_bluetooth_fast_conn_flag
+2 mem_mouse_discovery_timer
+1 mem_mouse_bluetooth_reconnect_timeout
+1 mem_mouse_need_soft_reset
+
+// le
+1 mem_mouse_le_bb_connected_flag
+1 mem_mouse_le_reconnect_flag
+1 mem_mouse_send_secutiry_request_timer
+
+3 mem_mouse_le_lap_temp
+3 mem_le_adv_ind
+3 mem_le_adv_direct_ind
+20 mem_le_adv_swift_pair
+1 mem_le_data_len
+2 mem_le_keyboard_handle
+2 mem_le_multimedia_handle
+2 mem_le_systemctrl_handle
+2 mem_le_battery_level_handle
+1 mem_le_battery_level_percentage
+2 mem_le_battery_level_updata_timer_init
+2 mem_le_battery_level_updata_timer
+1 mem_mouse_le_conn_param_reject
+32 mem_le_tx_buffer0_omemalloc
+32 mem_le_tx_buffer1_omemalloc
+32 mem_le_tx_buffer2_omemalloc
+32 mem_le_tx_buffer3_omemalloc
+1 mem_le_connect_status_flag
+1 mem_le_start_encrypt_timer
+1 mem_mouse_direct_timer
+
+)
+xmemalloc g24_tx_hid_mouse(
+// Mouse Work Area
+1 mem_mouse_key
+2 mem_mouse_x
+2 mem_mouse_y
+1 mem_mouse_z
+1 mem_mouse_tz
+1 mem_mouse_xy_h
+1 mem_mouse_key_last
+
+//mouse wheel
+1 mem_wheel_tb_old_pinlevel
+1 mem_wheel_tb_new_pinlevel
+1 mem_wheel_tog
+1 mem_mouse_tz_data
+1 mem_mwheel_b_old_pinlevel
+1 mem_mwheel_b_new_pinlevel
+1 mem_mwheel_tog
+1 mem_mouse_z_data
+1 mem_mouse_wheel_trigger
+1 mem_mouse_wheel_trigger_timer
+
+//sensor param
+1 mem_sensor_id1
+1 mem_sensor_id2
+
+1 mem_sensor_shutter_hi
+1 mem_sensor_shutter_lo
+1 mem_sensor_smart_flag
+1 mem_sensor_squal_reg
+1 mem_sensor_iqc
+1 mem_mouse_move_flag
+
+1 mem_mouse_asm_flag
+2 mem_mouse_x_pre
+2 mem_mouse_y_pre
+1 mem_mouse_data_xtemp
+1 mem_mouse_data_ytemp
+
+0 mem_mouse_dpi_seting
+1 mem_320x_dpi_0
+1 mem_320x_dpi_1
+1 mem_320x_dpi_2
+1 mem_320x_dpi_3
+1 mem_3212_dpi_0
+1 mem_3212_dpi_1
+1 mem_3212_dpi_2
+1 mem_3212_dpi_3
+1 mem_ka8g2_dpi_0
+1 mem_ka8g2_dpi_1
+1 mem_ka8g2_dpi_2
+1 mem_ka8g2_dpi_3
+//S210x
+0 mem_sensor_s201_dpi
+1 mem_sensor_s201_dpi_0
+1 mem_sensor_s201_dpi_1
+1 mem_sensor_s201_dpi_2
+1 mem_sensor_s201_dpi_3
+1 mem_sensor_s201_dpi_4
+
+1 mem_mouse_cpi_count
+1 mem_mouse_dpi_button_state
+1 mem_mouse_dpi_long_press_flag
+
+10 mem_sensor_3212_init
+10 mem_sensor_3204_init
+10 mem_sensor_3205_init
+26 mem_sensor_32xx_init
+34 mem_sensor_32xx_init_1
+38 mem_sensor_8650_init
+30 mem_sensor_ka8ul_init
+16 mem_sensor_8009_init
+16 mem_sensor_ka8g2_init
+12 mem_sensor_p6520_init
+8 mem_sensor_poweron_init
+8 mem_sensor_ka8g2_poweron_init
+
+1 mem_mouse_clear_sensor_data_flag
+1 mem_config_sensor_type
+1 mem_config_sensor_angle
+1 mem_bluetooth_125hz_cnt
+
+//bt
+7 mem_device_addr_temp
+1 mem_mouse_bt_boot_mode
+5 mem_mouse_bt_boot_data
+1 mem_bt_send_max_slot_req_accept_after_switch
+1 mem_mouse_bt_send_first_package_timer
+1 mem_mouse_bt_send_first_package_flag
+1 mem_lmi_opcode_temp
+1 mem_lpm_mult_init
+
+// mouse key
+1 mem_customer_key
+1 mem_customer_data_trigger
+1 mem_customer_data_trigger_last
+
+1 mem_mouse_lkey_press_status
+1 mem_mouse_rkey_press_status
+1 mem_mouse_mkey_press_status
+1 mem_mouse_bkkey_press_status
+1 mem_mouse_fwkey_press_status
+1 mem_mouse_dpikey_press_status
+1 mem_mouse_pbkey_press_status
+1 mem_mouse_customerkey_press_status
+1 mem_mouse_key_temp
+1 mem_mouse_key_status
+
+1 mem_mouse_matrix_key_cow_count
+1 mem_mouse_matrix_key_row_count
+1 mem_mouse_ghost_flag
+1 mem_bt_discovery_count
+1 mem_select_device_count
+1 mem_mouse_commbination_key
+1 mem_select_device_button_statue
+1 mem_commbination_key_statue
+1 mem_combination_ui_button_count
+
+//fire key
+1 mem_fire_key_status
+4 mem_fire_key_delay
+1 mem_fire_key_flag
+
+//another dpi key
+1 mem_dpi_another_press_status
+1 mem_dpi_another_button_state
+1 mem_dpi_another_button_down_enable
+1 mem_mouse_key_temp_patch
+
+//le name modify
+1 mem_le_name_patch_len
+19 mem_le_name_patch
+
+//device otp data
+1 mem_device_flag_last
+1 mem_device_flag_temp
+1 mem_device_flag_value
+
+6 mem_mouse_le_addr1_last
+6 mem_mouse_le_addr1_temp
+6 mem_mouse_le_locall_addr1_last
+6 mem_mouse_le_locall_addr1_temp
+
+6 mem_mouse_le_addr2_last
+6 mem_mouse_le_addr2_temp
+6 mem_mouse_le_locall_addr2_last
+6 mem_mouse_le_locall_addr2_temp
+
+1 mem_mouse_dpi_last
+1 mem_mouse_dpi_temp
+1 mem_mouse_otp_dpi_value
+
+4 mem_mouse_24g_addr_last
+4 mem_mouse_24g_addr_temp
+
+2 mem_random_addr_increase_count_last
+2 mem_random_addr_increase_count_temp
+
+//otp store info offset
+2 mem_otp_offset_device_flag
+2 mem_otp_offset_device_flag_end
+
+2 mem_otp_offset_24g_addr
+2 mem_otp_offset_24g_addr_end
+
+2 mem_otp_offset_le_addr1
+2 mem_otp_offset_le_addr1_end
+
+2 mem_otp_offset_le_locall_addr1
+2 mem_otp_offset_le_locall_addr1_end
+
+2 mem_otp_offset_le_addr2
+2 mem_otp_offset_le_addr2_end
+
+2 mem_otp_offset_le_locall_addr2
+2 mem_otp_offset_le_locall_addr2_end
+
+2 mem_otp_offset_dpi
+2 mem_otp_offset_dpi_end
+
+2 mem_otp_offset_le_addr_increase_count
+2 mem_otp_offset_le_addr_increase_count_end
+
+2 mem_otp_offset_app_initflag
+
+)
+xmemalloc g24_tx_hid_mouse_flippen(
+16 mem_24g_txpayload_buf
+1 mem_release_data_from_receiver_enable
+1 mem_release_data_from_transmiter_enable
+
+1 mem_flippen_key0_gpio
+1 mem_flippen_key1_gpio
+1 mem_flippen_key2_gpio
+1 mem_flippen_key3_gpio
+1 mem_flippen_key4_gpio
+1 mem_flippen_key5_gpio
+1 mem_flippen_key6_gpio
+1 mem_flippen_key7_gpio
+
+1 mem_flippen_key0_press_status
+1 mem_flippen_key1_press_status
+1 mem_flippen_key2_press_status
+1 mem_flippen_key3_press_status
+1 mem_flippen_key4_press_status
+1 mem_flippen_key5_press_status
+1 mem_flippen_key6_press_status
+1 mem_flippen_key7_press_status
+
+0 mem_key_press_data
+9 mem_key_pageup_data
+9 mem_key_pagedown_data
+9 mem_key_shift_f5_data
+9 mem_key_esc_data
+9 mem_key_b_data
+9 mem_key_tab
+9 mem_key_enter
+9 mem_key_alt_tab
+9 mem_key_alt_f4
+9 mem_key_play_pause
+9 mem_key_vol_up
+9 mem_key_vol_down
+9 mem_standard_key_release
+9 mem_system_ctrl_key_release
+9 mem_media_key_release
+
+1 mem_key0_long_press_flag
+1 mem_key1_long_press_flag
+1 mem_key2_long_press_flag
+1 mem_key3_long_press_flag
+1 mem_key4_long_press_flag
+
+1 mem_key0_long_press_event
+1 mem_key1_long_press_event
+1 mem_key2_long_press_event
+1 mem_key3_long_press_event
+1 mem_key4_long_press_event
+
+1 mem_key0_short_press_flag
+1 mem_key1_short_press_flag
+1 mem_key2_short_press_flag
+1 mem_key3_short_press_flag
+1 mem_key4_short_press_flag
+
+1 mem_key0_press_timer_count
+1 mem_key1_press_timer_count
+1 mem_key2_press_timer_count
+1 mem_key3_press_timer_count
+1 mem_key4_press_timer_count
+
+1 mem_combination_key_down_flag
+1 mem_combination_key_longpress_flag
+1 mem_key_disable_timer
+1 mem_24g_calculate_package_id_disable
+1 mem_24g_package_id_abandon_flag
+1 mem_24g_package_id
+
+1 mem_key_state
+1 mem_key_press_state
+1 mem_poweron_first_blank_data_enable
+
+2 mem_flippen_no_data_timeout
+2 mem_flippen_start_pair_no_data_timeout
+2 mem_key_longpress_timer_init
+2 mem_key_longpress_timer
+
+1 mem_low_voltage_led_blink_flag
+1 mem_low_voltage_led_blink_start_timer
+1 mem_poweron_led_blink_flag
+
+1 mem_24g_pair_enable_flag
+1 mem_24g_ch_work
+1 mem_24g_pair_key_down_flag
+1 mem_24g_pairing_stop_flag
+1 mem_longpress_24g_enter_hibernate_flag
+1 mem_g24_connected_state
+1 mem_g24_pairing_stop_flag
+1 mem_send_package_before_check
+)
+xmemalloc g24_tx_remote(
+1 mem_remote_car_hard_soft_switch
+
+1 mem_remote_car_queue_each_size
+1 mem_remote_car_queue_length
+
+1 mem_remote_car_queue_curr_num
+1 mem_remote_car_queue_read_ptr
+1 mem_remote_car_queue_write_ptr
+90 mem_remote_car_queue_ele
+
+1 mem_remote_style_led_type
+1 mem_remote_style_blink_count
+1 mem_remote_style_struct_led_gpio
+2 mem_remote_style_on_time
+2 mem_remote_style_off_time
+2 mem_remote_style_cb_ledon
+2 mem_remote_style_cb_ledoff
+
+
+1 mem_remote_car_led_num
+8 mem_remote_car_led_map
+
+0 mem_remote_car_keyscan
+1 mem_remote_car_key_num
+2 mem_cb_remote_car_keyscan
+
+0 mem_remote_car_key_conf0
+1 mem_remote_car_key_conf0_pin
+0 mem_remote_car_key_conf1
+1 mem_remote_car_key_conf1_pin
+0 mem_remote_car_key_conf2
+1 mem_remote_car_key_conf2_pin
+0 mem_remote_car_key_conf3
+1 mem_remote_car_key_conf3_pin
+0 mem_remote_car_key_conf4
+1 mem_remote_car_key_conf4_pin
+0 mem_remote_car_key_conf5
+1 mem_remote_car_key_conf5_pin
+0 mem_remote_car_key_conf6
+1 mem_remote_car_key_conf6_pin
+
+
+//rocker
+1 mem_rocker_negative_flag
+1 mem_rocker_work_status
+2 mem_current_vdd_value_default_mid_x
+2 mem_current_vdd_value_default_mid_y
+2 mem_current_vdd_value_default_mid_temp
+2 mem_current_vdd_default_range
+2 mem_rocker_last_status
+0 mem_rocker_status
+1 mem_rocker_x_status
+1 mem_rocker_y_status
+
+0 mem_remote_car_config_param
+1 mem_remote_car_config_setting_flag
+1 mem_remote_car_config_key_map
+1 mem_remote_car_config_layout
+1 mem_remote_car_config_connect_led_gpio
+1 mem_remote_car_config_check_way
+1 mem_remote_car_config_soft_switch_enable
+1 mem_remote_car_config_soft_switch_gpio
+1 mem_remote_car_config_timeout_shutdown_enable
+
+0 mem_remote_car_24g_motor_packet
+1 mem_remote_car_24g_motor_packet_lenght
+2 mem_remote_car_24g_motor_send_packet_head
+1 mem_remote_car_24g_motor_send_cmd
+2 mem_remote_car_24g_motor_send_length
+0 mem_remote_car_24g_motor_send_payload
+2 mem_remote_car_24g_motor1_payload
+2 mem_remote_car_24g_motor2_payload
+2 mem_remote_car_24g_motor3_payload
+1 mem_remote_car_24g_motor_send_checksum
+
+0 mem_remote_car_24g_fire_packet
+1 mem_remote_car_24g_fire_packet_lenght
+2 mem_remote_car_24g_fire_send_packet_head
+1 mem_remote_car_24g_fire_send_cmd
+2 mem_remote_car_24g_fire_send_length
+2 mem_remote_car_24g_fire_send_payload
+1 mem_remote_car_24g_fire_send_checksum
+
+15 mem_remote_car_24g_tx_temp
+
+2 mem_remote_car_no_data_timeout
+2 mem_remote_car_no_data_timer
+
+0 mem_remote_car_soft_power
+1 mem_remote_car_power_state
+1 mem_remote_car_power_timer
+1 mem_remote_car_power_off_timeout
+1 mem_remote_car_power_starting_timeout
+2 mem_remote_car_power_off_cb
+2 mem_remote_car_power_starting_cb
+2 mem_remote_car_power_standby_cb
+
+1 mem_remote_key_status
+1 mem_remote_car_24g_status
+
+1 mem_remote_car_24g_auto_work_step
+1 mem_remote_car_24g_pair_success_flag
+1 mem_remote_car_empty_packet
+
+1 mem_remote_car_motor1_key0_press_state
+1 mem_remote_car_motor1_key1_press_state
+1 mem_remote_car_motor2_key2_press_state
+1 mem_remote_car_motor2_key3_press_state
+1 mem_remote_car_motor1_rel_state
+1 mem_remote_car_motor2_rel_state
+
+1 mem_remote_car_no_data_check
+
+4 mem_remote_24g_commom_addr
+4 mem_remote_24g_commom_addr_temp
+4 mem_remote_24g_commom_addr_read
+1 mem_remote_save_addr_flag
+)
+xmemalloc shutter(
+
+////////////////////////////////////
+//ble shutter config
+1 mem_ble_shutter_enable_notify
+2 mem_ble_shutter_reconn_adv_interval
+2 mem_ble_shutter_discovery_adv_interval
+2 mem_ble_shutter_reconn_timeout
+2 mem_ble_shutter_reconn_timer
+2 mem_ble_shutter_reconn_blink_on_time
+2 mem_ble_shutter_reconn_blink_off_time
+2 mem_ble_shutter_discovery_blink_on_time
+2 mem_ble_shutter_discovery_blink_off_time
+
+2 mem_ble_shutter_interval_min
+2 mem_ble_shutter_interval_max
+2 mem_ble_shutter_latency
+2 mem_ble_shutter_timeout
+
+2 mem_ble_shutter_interval_min_new
+2 mem_ble_shutter_interval_max_new
+2 mem_ble_shutter_latency_new
+2 mem_ble_shutter_timeout_new
+
+//////////////////shutter sleep timeout//////////////////
+2 mem_ble_shutter_discovery_timeout
+2 mem_ble_shutter_connect_timeout
+2 mem_shutter_sleep_timeout
+2 mem_shutter_sleep_timer
+
+/////////////////////////////////////////////////////////////////
+1 mem_shutter_hard_soft_switch_case
+1 mem_shutter_soft_switch_button_gpio
+1 mem_shutter_soft_switch_power_state
+1 mem_shutter_soft_switch_poweron_time
+1 mem_shutter_soft_switch_poweroff_time
+2 mem_shutter_soft_switch_poweron_callback_function
+2 mem_shutter_soft_switch_poweroff_callback_function
+
+
+0 mem_shutter_keyscan
+1 mem_shutter_key_num
+2 mem_cb_shutter_keycan
+1 mem_shutter_key_conf0
+1 mem_shutter_key_conf1
+1 mem_shutter_key_conf2
+1 mem_shutter_key_conf3
+1 mem_shutter_key_conf4
+1 mem_shutter_key_conf5
+1 mem_shutter_key_conf6
+1 mem_shutter_key_conf7
+
+
+5 mem_key0_press
+5 mem_key1_press
+5 mem_key2_press
+5 mem_key3_press
+5 mem_key4_press
+5 mem_key5_press
+5 mem_key6_press
+5 mem_key7_press
+
+5 mem_key0_release
+5 mem_key1_release
+5 mem_key2_release
+5 mem_key3_release
+5 mem_key4_release
+5 mem_key5_release
+5 mem_key6_release
+5 mem_key7_release
+
+5 mem_ble_data_buffer1
+5 mem_ble_data_buffer2
+5 mem_ble_data_buffer3
+5 mem_ble_data_buffer4
+5 mem_ble_data_buffer5
+5 mem_ble_data_buffer6
+5 mem_ble_data_buffer7
+5 mem_ble_data_buffer8
+50 mem_ble_data_buffer9_58
+
+1 mem_queue_each_size
+1 mem_queue_length
+1 mem_queue_curr_num
+1 mem_queue_read_ptr
+1 mem_queue_write_ptr
+32 mem_queue_ele
+
+170 mem_shutter_nv_data
+
+0 mem_shutter_led_struct_app_led
+1 mem_shutter_led_struct_app_led_type
+1 mem_shutter_led_struct_app_led_blink_count
+1 mem_shutter_led_struct_app_led_gpio
+2 mem_shutter_led_struct_app_led_on_time
+2 mem_shutter_led_struct_app_led_off_time
+2 mem_shutter_led_struct_app_led_on_callback
+2 mem_shutter_led_struct_app_led_off_callback
+
+0 mem_shutter_power_off_led_style
+1 mem_shutter_power_off_led_style_type
+1 mem_shutter_power_off_led_style_blink_count
+1 mem_shutter_power_off_led_style_gpio
+2 mem_shutter_power_off_led_style_on_time
+2 mem_shutter_power_off_led_style_off_time
+2 mem_shutter_power_off_led_style_on_callback
+2 mem_shutter_power_off_led_style_off_callback
+
+1 mem_shutter_soft_swtich_botton_down
+11 mem_shutter_soft_swtich_led_struct_temp
+1 mem_shutter_power_off_timeout
+1 mem_shutter_power_off_timer
+2 mem_shutter_key_conf0_temp
+1 mem_shutter_led_struct_app_led_gpio_temp
+1 mem_shutter_hard_soft_switch_case_temp
+1 mem_shutter_soft_switch_button_gpio_temp
+
+1 mem_shutter_soft_switch_first_power_on
+1 mem_shutter_dy_conf
+420 mem_shutter_le_uuid_sup
+40 mem_shutter_key_value_list
+8 mem_shutter_discovery_time_conf
+8 mem_shutter_reconn_or_discovery_blink_time_conf
+)
+xmemalloc shutter_dy(
+
+////////////////////////////////////
+//shutter common config
+
+//timers
+1 mem_shutter_1s_timer
+2 mem_shutter_timer_625us
+
+//patch variable
+11 mem_rf_init_data_new
+2 mem_key_value_xmem
+290 mem_shutter_le_hid_map
+//420 mem_shutter_dy_le_uuid_sup
+2 mem_shutter_le_map_len_android
+2 mem_shutter_le_map_len_ios
+16 mem_dy_le_search_service_uuid
+1 mem_iphone_flag
+1 mem_send_data_delay
+4 mem_key_send_clk
+10 mem_shutter_key_state0
+10 mem_shutter_key_state1
+10 mem_shutter_key_state2
+10 mem_shutter_key_state3
+10 mem_shutter_key_state4
+10 mem_shutter_key_state5
+10 mem_shutter_key_state6
+
+15 mem_key0_release_new
+15 mem_key1_release_new
+15 mem_key2_release_new
+15 mem_key3_release_new
+15 mem_key4_release_new
+15 mem_key5_release_new
+15 mem_key6_release_new
+
+3 mem_key0_long_press
+3 mem_key1_long_press
+3 mem_key2_long_press
+3 mem_key3_long_press
+3 mem_key4_long_press
+3 mem_key5_long_press
+3 mem_key6_long_press
+
+3 mem_key0_long_release
+3 mem_key1_long_release
+3 mem_key2_long_release
+3 mem_key3_long_release
+3 mem_key4_long_release
+3 mem_key5_long_release
+3 mem_key6_long_release
+
+2 mem_combine_key0
+2 mem_combine_key1
+2 mem_combine_key2
+2 mem_combine_key3
+2 mem_combine_key4
+2 mem_combine_key5
+
+2 mem_combine_key_state0
+
+10 mem_combine_key0_press
+10 mem_combine_key1_press
+10 mem_combine_key2_press
+10 mem_combine_key3_press
+10 mem_combine_key4_press
+10 mem_combine_key5_press
+10 mem_combine_key_release
+
+4 mem_shutter_move_data
+
+10 mem_key0_press_i
+10 mem_key1_press_i
+10 mem_key2_press_i
+10 mem_key3_press_i
+10 mem_key4_press_i
+10 mem_key5_press_i
+
+15 mem_key0_release_new_i
+15 mem_key1_release_new_i
+15 mem_key2_release_new_i
+15 mem_key3_release_new_i
+15 mem_key4_release_new_i
+15 mem_key5_release_new_i
+15 mem_key6_release_new_i
+
+3 mem_key0_long_press_i
+3 mem_key1_long_press_i
+3 mem_key2_long_press_i
+3 mem_key3_long_press_i
+3 mem_key4_long_press_i
+3 mem_key5_long_press_i
+3 mem_key6_long_press_i
+
+3 mem_key0_long_release_i
+3 mem_key1_long_release_i
+3 mem_key2_long_release_i
+3 mem_key3_long_release_i
+3 mem_key4_long_release_i
+3 mem_key5_long_release_i
+3 mem_key6_long_release_i
+
+
+10 mem_key3_release_new_t
+10 mem_key3_release_new_i_t
+1 mem_key3_press_count
+1 mem_shutter_like_timeout
+1 mem_shutter_key_pressed
+1 mem_shutter_combine_key_release
+680 mem_shutter_mousekey_value_list
+1 mem_shutter_back_count
+1 mem_shutter_le_conned
+
+0 mem_move_config
+1 mem_shutter_iphone_beyond_x_count
+1 mem_shutter_iphone_beyond_y_count
+2 mem_shutter_move_data_x
+2 mem_shutter_move_data_y
+1 mem_last_shutter_le_iphone_flag
+0 mem_move_config_end
+1 mem_shutter_back_count_cache
+1 mem_shutter_iphone_beyond_x_cache
+1 mem_shutter_iphone_beyond_y_cache
+10 mem_shutter_iphone_move_mid
+1 mem_shutter_long_key_released_flag
+1 mem_shutter_move_mid_timer
+1 mem_shutter_pairing_success
+2 mem_combine_key_release_value
+1 mem_last_press_key_value
+1 mem_shutter_first_move
+1 mem_move_mode_set
+1 mem_move_mode_key_index
+1 mem_move_mode_trigger_enable
+5 mem_shutter_android_move_mid
+10 mem_shutter_iphone_up_mid
+10 mem_shutter_iphone_like_mid
+1 mem_shutter_key_num_conf
+7 mem_shutter_dy_key_conf
+11 mem_le_dy_adv_data
+12 mem_le_dy_scan_data
+8 mem_ble_shutter_dy_interval_min_new
+8 mem_shutter_ble_discovery_time_conf
+2 mem_queue_dy_each_size
+10 mem_dy_key0_press
+10 mem_dy_key1_press
+10 mem_dy_key2_press
+10 mem_dy_key3_press
+10 mem_dy_key4_press
+10 mem_dy_key5_press
+10 mem_dy_key6_press
+7 mem_shutter_led_on_light_dark_led_conf
+7 mem_shutter_led_off_light_dark_led_conf
+4 mem_shutter_reconn_blink_on_time_conf
+4 mem_shutter_discovery_blink_on_time_conf
+2 mem_shutter_efuse_start_offset
+2 mem_shutter_efuse_end_offset
+
+0 mem_initial_move_conf
+2 mem_android_initial_move_x
+2 mem_android_initial_move_y
+2 mem_iphone_initial_move_x
+2 mem_iphone_initial_move_y
+//修改增加保存参数
+0 mem_otp_move_config
+2 mem_otp_shutter_move_data_x
+2 mem_otp_shutter_move_data_y
+1 mem_otp_last_shutter_le_iphone_flag
+0 mem_otp_move_config_end
+2 mem_otp_write_offset_addr
+2 mem_otp_read_offset_addr
+2 mem_otp_read_ios_android_addr
+2 mem_shutter_le_pairing_handle
+2 mem_shutter_temp_count
+1 mem_shutter_first_read_flag
+1 mem_shutter_valid_data_flag
+1 mem_shutter_volume_timer
+1 mem_shutter_link_timer
+8 mem_shutter_link_data
+8 mem_shutter_link_data_i
+1 mem_shutter_link_loop_flag
+0 mem_shutter_end
+)
+xmemalloc hci_boot(
+1 mem_hci_uart_tx_gpio
+1 mem_hci_uart_rx_gpio
+1 mem_hci_uart_rts_gpio
+1 mem_hci_uart_cts_gpio
+1 mem_hci_pwm_12mhz_gpio
+)
Index: output/bt_format.meta
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_format.meta	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_format.meta	(working copy)
@@ -0,0 +1,12900 @@
+0x0000 mem_le_adv_transmit
+0x0001 mem_le_adv_waitcnt
+0x0002 mem_le_adv_rcv
+0x0003 mem_le_req_rcv
+0x0004 mem_le_scanrsp_rcv
+0x0005 mem_le_conn_rcv
+0x0006 mem_current_context
+0x0007 mem_le_ch_mapped
+0x0008 mem_last_freq
+0x0009 mem_rssi
+0x000a mem_context_ptr
+0x000c mem_rx_window
+0x000e mem_lpm_adjust
+0x000f mem_sync_clke
+0x0015 mem_lpm_current_mult
+0x0016 mem_gpio_wakeup_cfg
+0x0022 mem_clkn_bt
+0x0026 mem_clke_bt
+0x002a mem_dpll_clkn
+0x002e mem_slot_offset
+0x0030 mem_loadcode_times
+0x0031 mem_select_list_item
+0x0032 mem_temp_reconn_record
+0x0032 mem_record_bt_mode
+0x0033 mem_list_item_ptr
+0x0035 mem_rssi_hex
+0x0036 mem_param_tx_setup
+0x0038 mem_param_rf_setup
+0x003a mem_param_conn_access
+0x003c mem_param_clke_cal
+0x003e mem_param_pll_setup
+0x0040 mem_param_rx_setup
+0x0042 mem_param_dpll_start_delay
+0x0044 mem_param_rt_rthalfslot
+0x0046 mem_param_clke_cal_le_1m
+0x0048 mem_param_clke_cal_le_2m
+0x004a mem_param_clke_cal_le_coded
+0x004c mem_le_rxbuf
+0x0150 mem_le_mic
+0x0154 mem_le_peer_mic
+0x0158 mem_le_mrand
+0x0168 mem_le_state
+0x0169 mem_le_mode
+0x016a mem_le_tsniff
+0x016c mem_le_anchor
+0x0170 mem_le_clk_offset
+0x0176 mem_le_receive_window
+0x0178 mem_le_plap
+0x017e mem_le_conn_handle
+0x017f mem_le_arq
+0x0180 mem_le_ch
+0x0181 mem_le_hop
+0x0182 mem_le_event_count
+0x0184 mem_le_supervision_timer
+0x0188 mem_le_instant
+0x018a mem_le_channels
+0x018b mem_le_op
+0x018c mem_le_access
+0x0190 mem_le_crcinit
+0x0193 mem_le_window_size
+0x0194 mem_le_slave_latency
+0x0196 mem_le_superto
+0x0198 mem_le_channel_map
+0x019d mem_le_rx_phy
+0x019e mem_le_tx_phy
+0x019f mem_le_update_new_param
+0x01a8 mem_le_sk
+0x01b8 mem_le_peer_sca
+0x01b9 mem_le_err_code
+0x01ba mem_le_ll_pairing_fail_reason
+0x01bb mem_le_testtype
+0x01bc mem_cmd_le_create_conn
+0x01bd memresult
+0x01bd mem_sp_calc_result
+0x01bd memh
+0x01c1 memg
+0x01c5 memf
+0x01c9 meme
+0x01cd mem_sp_calc_result_high
+0x01cd memd
+0x01d1 memc
+0x01d5 memb
+0x01d9 mema
+0x01dd mem_ucode_status
+0x01de mem_spid_tbuf
+0x01df mem_iicd_tbuf
+0x01df mem_addr_hi
+0x01e0 mem_addr_mi
+0x01e1 mem_addr_lo
+0x01e2 mem_iicd_addr
+0x01e3 mem_spid_rbuf
+0x01e7 mem_ucode_buf
+0x01e9 mem_ucode_len
+0x01eb mem_sched_addr
+0x01ed mem_ucode_keybuf
+0x01fd mem_otp_temp
+0x021d mem_app_evt_timer_count
+0x021e mem_input_store
+0x022e mem_ec_loopc
+0x0230 mem_aes_cmac_data_length
+0x0231 mem_dat
+0x0291 mem_ax_256//32 bytes
+0x02b1 mem_ay_256// 32 bytes
+0x02d1 mem_az_256// 32 bytes
+0x02f1 mem_bx_256// 32 bytes
+0x0311 mem_by_256// 31 bytes
+0x0331 mem_bz_256//32 bytes
+0x0331 mem_tmp1
+0x0331 memahbak
+0x0349 mem_tmp5
+0x0351 mem_cx_256//32 bytes
+0x0371 mem_cy_256// 32 bytes
+0x0390 mem_cy5_256// 1 byte
+0x0391 mem_cz_256// 32 bytes
+0x03b1 mem_k_256//32 bytes
+0x03d1 mem_tmp1_256//32 bytes
+0x03f1 mem_tmp5_256
+0x0411 mem_tmp2_256
+0x0431 mem_tmp3_256
+0x0431 mem_t1_256
+0x0451 mem_tmp0_256
+0x0451 mem_t0_256
+0x0471 mem_t2_256
+0x0491 mem_t3_256
+0x04b1 mem_t7_256
+0x04d1 mem_p
+0x04e9 mem_a
+0x0501 mem_b
+0x0519 mem_gx
+0x0531 mem_gy
+0x0549 memh0
+0x0569 mem_p_256
+0x0589 mem_a_256
+0x05a9 mem_gx_256
+0x05c9 mem_gy_256
+0x05e9 mem_le_slat
+0x05f9 mem_sp_state_start
+0x05f9 mem_sp_dhkey_invalid
+0x05fa mem_gkey
+0x05fe mem_sp_state_end
+0x05fe mem_le_pubkey_remote_x_256
+0x061e mem_le_pubkey_remote_y_256
+0x063e mem_le_dhkey_256
+0x065e mem_sp_confirm_remote
+0x066e mem_ipc_skip_continue_proc
+0x066f mem_fifo_temp
+0x0670 mem_pdatatemp
+0x0678 mem_temp//8 bytes
+0x0680 mem_timeup// 4 bytes
+0x0684 mem_rega//4 bytes
+0x0688 mem_regb//4 bytes
+0x068c mem_regc//3 bytes
+0x068f mem_contr//2 bytes
+0x0691 mem_contw//2 bytes
+0x0693 mem_contus
+0x0695 mem_contue
+0x0697 mem_contu
+0x0699 mem_queue
+0x069b mem_loopcnt
+0x069d mem_saved_gpio_in
+0x06a1 mem_module_rx_error_data_buffer
+0x06a1 mem_le_adv_channel_map_temp
+0x06a1 mem_le_data_len_temp//1byte
+0x06a1 mem_event_cmd_response_content//2byte
+0x06a1 mem_le_prand//16byte
+0x06a1 mem_AES_CMAC_k//16 bytes
+0x06a1 mem_regext_index//1 bytes
+0x06a1 mem_temp_block0
+0x06a2 mem_le_data_temp//15bytes
+0x06a2 mem_temp_block1
+0x06b1 mem_le_tx_buf_temp//48byte
+0x06b1 mem_le_aes_128//16byte
+0x06b1 mem_regext//64 bytes
+0x06b1 mem_AES_CMAC_k1//16 bytes
+0x06b1 mem_temp_block2
+0x06c1 mem_AES_CMAC_k2//16 bytes
+0x06c1 mem_temp_block3
+0x06d1 mem_AES_CMAC_temp// 16 bytes
+0x06d1 mem_temp_block4
+0x06e1 mem_AES_CMAC_M_last// 16 bytes
+0x06e1 mem_module_uart_cmd
+0x06e2 mem_module_uart_opcode
+0x06e3 mem_module_uart_len
+0x06e4 mem_module_temp_nl_discard_packet
+0x06e5 mem_temp_block5
+0x06f1 mem_le_mackey//16 bytes
+0x06f1 mem_app_receive_temp
+0x06f1 mem_key_value_temp
+0x06f3 mem_key_value
+0x06f5 mem_key_value_temp1
+0x06f6 mem_key_value_temp2
+0x06f7 mem_key_value_temp3
+0x06f8 mem_key_value_temp4
+0x06f9 mem_key_value_temp5
+0x06fa mem_key_value_temp6
+0x06fb mem_temp_block6
+0x0701 mem_scale_ratio
+0x0704 mem_xcnt
+0x0707 mem_scale_ratio_temp
+0x0709 mem_mesh_receive_model_message_payload_len
+0x070a mem_mesh_receive_model_message_payload_opcode
+0x070b mem_mesh_receive_model_message_payload
+0x0722 mem_mesh_access_layer_payload_len
+0x0723 mem_mesh_access_layer_payload
+0x0723 mem_mesh_access_payload
+0x0755 mem_mesh_access_payload_padding//Ϊ��͸��ģ��Ԥ��
+0x0787 mem_mesh_queue_ele_temp
+0x0787 mem_mesh_queue_ele_duration
+0x0788 mem_mesh_queue_ele_gatt_msg_id
+0x0789 mem_mesh_queue_ele_len
+0x078a mem_mesh_queue_ele_payload
+0x07a9 mem_mesh_queue_ele_padding
+0x07aa mem_le_txheader_mesh_temp
+0x07d1 mem_mesh_sha256_chunk_start
+0x07d1 mem_mesh_sha256_chunk1
+0x0811 mem_mesh_sha256_chunk2
+0x0851 mem_mesh_sha256_chunk3
+0x0891 mem_mesh_sha256_chunk4
+0x08d1 mem_mesh_Privacy_Plaintext
+0x08d1 mem_mesh_Privacy_Plaintext_Zero_String
+0x08d6 mem_mesh_Privacy_Plaintext_IV_Index
+0x08da mem_mesh_Privacy_Plaintext_Privacy_Random
+0x08da mem_mesh_Privacy_Plaintext_Privacy_Random_EncDST
+0x08dc mem_mesh_Privacy_Plaintext_Privacy_Random_EncTransportPDU_or_NetMIC
+0x08e1 mem_mesh_PECB
+0x08f1 mem_nonce_ptr
+0x08f3 mem_ccm_data_len
+0x08f4 mem_ccm_data_ptr
+0x08f6 mem_ccm_mic
+0x08fe mem_ccm_type
+0x08ff mem_mesh_Device_UUID
+0x090f mem_mesh_receive_VID
+0x0910 mem_mesh_mic_cache_ptr
+0x0912 mem_adv_CRC_False_initValue
+0x0914 mem_CRC16_polynomial
+0x0916 mem_mesh_lower_transport_layer_payload_len
+0x0917 mem_mesh_loopcnt_tmep
+0x0919 mem_mesh_rega_temp
+0x091b mem_mesh_regb_temp
+0x091d mem_mesh_regc_temp
+0x091f mem_mesh_alarm_temp
+0x0921 mem_mesh_message_Transport_NetMIC_length
+0x0922 mem_mesh_message_NID
+0x0923 mem_mesh_message_TTL
+0x0924 mem_mesh_message_SEQ
+0x0927 mem_mesh_message_SRC
+0x0929 mem_mesh_message_DST
+0x092b mem_mesh_message_Proxy_TransportPDU_opcode
+0x092b mem_mesh_message_Transport_NetMIC
+0x092b mem_mesh_message_Transport_Head
+0x092c mem_mesh_message_Proxy_TransportPDU_Parameters
+0x092c mem_mesh_message_Transport_unsegmented_access_messagePDU
+0x092c mem_mesh_message_Transport_segmented_access_messagePDU
+0x092c mem_mesh_message_segment_access_SZMIC_SeqZero_SegO_SegN
+0x092f mem_mesh_message_Transport_segmented_access_messagePDU_Segment
+0x092f mem_mesh_message_Transport_NetMIC_end
+0x093f mem_mesh_nonce_struct
+0x094c mem_mesh_send_message_DST
+0x094e mem_mesh_last_message_SEQ
+0x0951 mem_mesh_network_packet_type
+0x0952 mem_mesh_receive_message_count
+0x0953 mem_mesh_receive_message_first_unicast_address
+0x0955 mem_mesh_receive_message_second_unicast_address
+0x0957 mem_mesh_receive_message_third_unicast_address
+0x0959 mem_mesh_receive_message_fourth_unicast_address
+0x095b mem_mesh_Proxy_Nonce
+0x095b mem_mesh_Proxy_Nonce_Nonce_Type
+0x095c mem_mesh_Proxy_Nonce_Pad
+0x095d mem_mesh_Proxy_Nonce_SEQ
+0x0960 mem_mesh_Proxy_Nonce_SRC
+0x0962 mem_mesh_Proxy_Nonce_Pad2
+0x0964 mem_mesh_Proxy_Nonce_IV_Index
+0x0968 mem_mesh_white_list
+0x0978 mem_mesh_white_list_num
+0x097a mem_mesh_addressed_filter_type
+0x097b mem_mesh_upper_transport_layer_payload_ptr
+0x097d mem_mesh_segmented_upper_transport_layer_payload_len
+0x097e mem_mesh_segmented_lower_transport_layer_SegZero
+0x0980 mem_mesh_segmented_lower_transport_layer_SegO
+0x0981 mem_mesh_segmented_lower_transport_layer_SegN
+0x0982 mem_mesh_segmented_last_packet_upper_teansport_payload_len
+0x0983 mem_mesh_upper_tran_layer_queue_temp
+0x0983 mem_mesh_upper_tran_layer_temp_packet_flag
+0x0984 mem_mesh_upper_tran_layer_temp_packet_transmit_delay
+0x0986 mem_mesh_upper_tran_layer_temp_packet_TID
+0x0987 mem_mesh_upper_tran_layer_temp_packet_header_IVI_NID
+0x0988 mem_mesh_upper_tran_layer_temp_packet_header_CTL_TTL
+0x0989 mem_mesh_upper_tran_layer_temp_packet_header_SEQ
+0x098c mem_mesh_upper_tran_layer_temp_packet_header_SRC
+0x098e mem_mesh_upper_tran_layer_temp_packet_header_DST
+0x0990 mem_mesh_upper_tran_layer_temp_packet_length
+0x0991 mem_mesh_upper_tran_layer_temp_packet_payload
+0x09fd mem_mesh_network_dup_cache
+0x0a3d mem_mesh_network_msg_cache
+0x0a8d mem_mesh_network_relay_gatt_queue_each_size
+0x0a8e mem_mesh_network_relay_gatt_queue_length
+0x0a8f mem_mesh_network_relay_gatt_queue_current_num
+0x0a90 mem_mesh_network_relay_gatt_queue_read_ptr
+0x0a91 mem_mesh_network_relay_gatt_queue_write_ptr
+0x0a92 mem_mesh_network_relay_gatt_queue_ele
+0x0709 mem_hci_opcode_ocf
+0x070b mem_hci_opcode_ogf
+0x070c mem_hci_event_head_type
+0x070d mem_hci_event_head_event_code
+0x070e mem_hci_event_para_total_length
+0x070f mem_hci_command_complete_num_hci_command_packet
+0x0710 mem_hci_command_complete_command_opcode
+0x0710 mem_hci_opcode
+0x0712 mem_hci_command_complete_return_parameter
+0x0712 mem_hci_command_complete_return_parameter_status
+0x0713 mem_hci_command_complete_return_parameter_chip_id
+0x0709 mem_module_le_rx_data_len
+0x070b mem_module_le_rx_data_address
+0x070d mem_module_le_rx_data_handle
+0x0709 mem_init_cnt
+0x070b mem_data_pre
+0x070d mem_data_current
+0x070f mem_data_sum
+0x0712 mem_data_value
+0x0709 mem_le_test_sync
+0x070b mem_le_test_pcnt
+0x070d mem_tst_pktcnt_crc
+0x070f mem_tst_pktcnt_dmh
+0x0711 mem_tmp_buffer_head
+0x0714 mem_tmp_buffer
+0x0709 mem_usb_status
+0x070b mem_usb_fifo_empty
+0x070c mem_usb_read_len
+0x070e mem_usb_txbuf
+0x074f mem_usb_txbuf1
+0x0759 mem_usb_txbuf2
+0x0763 mem_usb_rxbuf
+0x07a3 mem_usb_rxbuf_end
+0x07a4 mem_bufptr
+0x07a6 mem_remain
+0x07a7 mem_hidreportdesc_kb
+0x07a9 mem_hidreportdesc_m
+0x07ab mem_devicedesc
+0x07be mem_confdesc
+0x07fa mem_string0
+0x07ff mem_string1
+0x081d mem_string2
+0x083b mem_string3
+0x0859 mem_cb_usb_config
+0x085b mem_usb_tx_interval
+0x085c mem_usb_vid_pid
+0x0865 mem_usb_zero_packet
+0x0867 mem_usb_ones_packet
+0x0869 mem_usb_two_packet
+0x086b mem_usb0_state
+0x086c mem_usb_offline_check_gpio
+0x086d mem_usb_clear_mem_start
+0x086d mem_usb_setup
+0x086d mem_usb_setup_bmRequestType
+0x086e mem_usb_setup_bRequest
+0x086f mem_usb_setup_bValue
+0x0870 mem_usb_setup_bValueH
+0x0871 mem_usb_setup_wIndex
+0x0873 mem_usb_setup_bLength
+0x0874 mem_usb_setup_bLengthH
+0x0875 mem_usb0_set_report_data
+0x08b5 mem_usb0_get_report_data
+0x08f5 mem_usb_setup_bValue_temp
+0x08f7 mem_usb0_get_set_report
+0x08f8 mem_usb0_data_ready_report
+0x08f9 mem_usb_tx_win_enable
+0x08fa mem_usb_tx_mac_enable
+0x08fb mem_usb_idle_flag
+0x08fc mem_usb_idle_rate
+0x08fd mem_usb_get_protocol_flag
+0x08fe mem_usb_set_protocol_status
+0x08ff mem_usb_set_protocol_value
+0x0900 mem_usb_state
+0x0901 mem_usb_remote_wakeup
+0x0902 mem_usb_clear_remote_wakeup
+0x0903 mem_sdsystem_wakeup_flag
+0x0904 mem_usb_ep0_stall_status
+0x0905 mem_usb_ep1_stall_status
+0x0906 mem_usb_ep2_stall_status
+0x0907 mem_usb_ep3_stall_status
+0x0908 mem_dsc_info_data_pointer
+0x090a mem_dsc_info_len
+0x090b mem_usb_ep1_data
+0x090c mem_usb_ep2_data
+0x090d mem_usb_tx_enable
+0x090e mem_usb_device_enumeration_endflag
+0x090f mem_usb_wakestate_onetime_flag
+0x0910 mem_usb_mac_wakeup_trig
+0x0911 mem_usb_set_high_addr_flag
+0x0912 mem_usb_clear_halt
+0x0913 mem_usb_mouse_data
+0x0923 mem_usb_kb_data
+0x0933 mem_usb_kb_multikey
+0x0943 mem_usb_kb_system
+0x0953 mem_usb_test_cnt
+0x0955 mem_usb_test_kb
+0x095f mem_usb_clear_mem_end
+0x095f mem_usb_ccid_buf
+0x099f mem_dg_rssi_noise_buffer
+0x0a9f mem_dg_rssi_noise_dg_buffer
+0x0b9f mem_dg_rssi_noise_ms_buffer
+0x0c9f mem_dg_rssi_noise_kb_buffer
+
+0x019f mem_le_new_param
+0x019f mem_le_new_transmitwindowsize
+0x01a0 mem_le_new_transmitwindowoffset
+0x01a2 mem_le_new_conninterval
+0x01a4 mem_le_new_connslavelatency
+0x01a6 mem_le_new_connsupervisiontimeout
+0x019f mem_le_new_map
+0x019f mem_le_new_m2s_phy
+0x01a0 mem_le_new_s2m_phy
+0x004c mem_le_rxbuf_data_header
+0x004d mem_le_rxbuf_data_length
+0x004e mem_le_rxbuf_data_payload
+0x004c mem_le_rxbuf_data_ll_header
+0x004d mem_le_rxbuf_data_ll_length
+0x004e mem_le_rxbuf_data_ll_opcode
+0x004f mem_le_rxbuf_data_ll_control_data
+0x004c mem_le_rxbuf_adv_header
+0x004d mem_le_rxbuf_adv_length
+0x004e mem_le_rxbuf_adv_payload
+0x004c mem_le_rxbuf_adv_scan_req_header
+0x004d mem_le_rxbuf_adv_scan_req_length
+0x004e mem_le_rxbuf_adv_scan_req_scan_address
+0x0054 mem_le_rxbuf_adv_scan_req_adv_address
+0x004c mem_le_rxbuf_adv_connect_ind_header
+0x004d mem_le_rxbuf_adv_connect_ind_length
+0x004e mem_le_rxbuf_adv_connect_ind_init_address
+0x0054 mem_le_rxbuf_adv_connect_ind_adv_address
+0x005a mem_le_rxbuf_adv_connect_ind_access_address
+0x005e mem_le_rxbuf_adv_connect_ind_crc_init
+0x0061 mem_le_rxbuf_adv_connect_ind_win_size
+0x0062 mem_le_rxbuf_adv_connect_ind_win_offset
+0x0064 mem_le_rxbuf_adv_connect_ind_interval
+0x0066 mem_le_rxbuf_adv_connect_ind_latency
+0x0068 mem_le_rxbuf_adv_connect_ind_timeout
+0x006a mem_le_rxbuf_adv_connect_ind_channel_map
+0x006f mem_le_rxbuf_adv_connect_ind_hop_and_sca
+0x06b1 mem_le_search_handle_start
+0x06b3 mem_le_search_handle_end
+0x06b5 mem_le_att_offset
+0x06b5 mem_le_search_att_type_length
+0x06b6 mem_le_search_att_type
+0x06c6 mem_le_curr_att_len
+0x06c7 mem_le_cur_attlist_start_ptr
+0x06c9 mem_le_cur_handle_start
+0x06cb mem_le_cur_handle_end
+0x06cd mem_le_cur_uuid_length
+0x06ce mem_le_cur_uuid
+0x06de mem_le_cur_handle
+0x004c mem_le_rxbuf_data_att_header
+0x004d mem_le_rxbuf_data_att_length
+0x004e mem_le_rxbuf_data_att_l2cap_length
+0x0050 mem_le_rxbuf_data_att_cid
+0x0052 mem_le_rxbuf_data_att_opcode
+0x0053 mem_le_rxbuf_data_att_payload
+0x004c mem_le_rxbuf_data_continue_header
+0x004d mem_le_rxbuf_data_continue_length
+0x004e mem_le_rxbuf_data_continue_payload
+0x004c mem_le_rxbuf_data_att_write_header
+0x004d mem_le_rxbuf_data_att_write_length
+0x004e mem_le_rxbuf_data_att_write_l2cap_length
+0x0050 mem_le_rxbuf_data_att_write_cid
+0x0052 mem_le_rxbuf_data_att_write_opcode
+0x0053 mem_le_rxbuf_data_att_write_handle
+0x0055 mem_le_rxbuf_data_att_write_payload
+0x004c mem_le_rxbuf_data_prepare_att_write_header
+0x004d mem_le_rxbuf_data_prepare_att_write_length
+0x004e mem_le_rxbuf_data_prepare_att_write_l2cap_length
+0x0050 mem_le_rxbuf_data_prepare_att_write_cid
+0x0052 mem_le_rxbuf_data_prepare_att_write_opcode
+0x0053 mem_le_rxbuf_data_prepare_att_write_handle
+0x0055 mem_le_rxbuf_data_prepare_att_write_offset
+0x0057 mem_le_rxbuf_data_prepare_att_write_payload
+0x070b mem_mesh_NETKeyindex_and_APPKeyindex
+0x070e mem_mesh_receive_application_key
+0x070b mem_mesh_vendor_message_cid
+0x070d mem_mesh_vendor_message_tid
+0x070e mem_mesh_vendor_message_attr_type
+0x070b mem_mesh_vendor_message_header
+0x0710 mem_mesh_vendor_attr_parameter
+0x070b mem_mesh_vendor_message_delay_close_time_header
+0x0710 mem_mesh_vendor_delay_close_time
+0x070b mem_mesh_vendor_message_night_light_onoff_header
+0x0710 mem_mesh_vendor_night_light_onoff
+0x070b mem_mesh_vendor_message_color_header
+0x0710 mem_mesh_vendor_color_lightness
+0x0712 mem_mesh_vendor_color_hue
+0x0714 mem_mesh_vendor_color_saturation
+0x070b mem_mesh_vendor_message_back_light_onoff_header
+0x0710 mem_mesh_vendor_back_light_onoff
+0x070b mem_mesh_vendor_message_main_light_onoff_header
+0x0710 mem_mesh_vendor_main_light_onoff
+0x070b mem_mesh_vendor_message_standby_brightness_header
+0x0710 mem_mesh_vendor_standby_brightness
+0x070b mem_mesh_vendor_message_current_time_header
+0x0710 mem_mesh_vendor_message_current_time
+0x0723 mem_mesh_access_layer_payload_vendor_command
+0x0724 mem_mesh_access_layer_payload_vendor_CID
+0x0726 mem_mesh_access_layer_payload_vendor_tid
+0x0727 mem_mesh_access_layer_payload_vendor_attr_type
+0x0729 mem_mesh_access_layer_payload_vendor_attr_parameter
+0x06a1 mem_mesh_subscription_eep_temp
+0x0787 mem_mesh_gatt_package_receive_msg_buffer_ptr
+0x0789 mem_mesh_gatt_package_receive_msg_buffer_temp
+0x0789 mem_mesh_gatt_package_receive_msg_id
+0x078b mem_mesh_gatt_package_receive_MAC
+0x078b mem_mesh_gatt_package_receive_msg_num
+0x078c mem_mesh_gatt_package_receive_msg_total_length
+0x078d mem_mesh_gatt_package_receive_msg_payload
+0x08ff mem_mesh_receive_service_uuid_company_id
+0x0901 mem_mesh_receive_service_uuid_vid
+0x0902 mem_mesh_receive_service_uuid_provisioning_type
+0x0903 mem_mesh_receive_service_uuid_mac
+0x0905 mem_mesh_receive_service_uuid_msg_id
+0x0906 mem_mesh_receive_service_uuid_package_num
+0x0907 mem_mesh_receive_service_uuid_length
+0x0908 mem_mesh_receive_service_uuid_payload_data
+0x07aa mem_mesh_fast_pair_packet_type
+0x070b mem_mesh_configuration_health_message_opcode
+0x070b mem_mesh_configuration_health_message_opcode_config_model_subscription
+0x070c mem_mesh_subscription_element_address
+0x070e mem_mesh_subscription_value_address
+0x0710 mem_mesh_subscription_model_identifier
+0x070b mem_mesh_configuration_health_message_opcode_config_model_subscription_ow//overwrite
+0x070c mem_mesh_subscription_element_address_ow
+0x070e mem_mesh_subscription_list_num_ow
+0x070f mem_mesh_subscription_value_address_start_ow
+0x07d1 mem_chip_clear_paired_info
+0x070b mem_mesh_module_message_opcode
+0x070b mem_mesh_module_message_opcode_onoff_set
+0x070c mem_mesh_generic_onoff_set_payload_OnOff
+0x070d mem_mesh_generic_onoff_set_payload_TID
+0x070e mem_mesh_generic_onoff_set_payload_Transition_Time
+0x070f mem_mesh_generic_onoff_set_payload_Delay
+0x070b mem_mesh_module_message_opcode_scene_recall
+0x070c mem_mesh_scene_recall_payload_scene_number
+0x070e mem_mesh_scene_recall_payload_TID
+0x070f mem_mesh_scene_recall_payload_Transition_Time
+0x0710 mem_mesh_scene_recall_payload_Delay
+0x070b mem_mesh_module_message_opcode_set_light_lightness
+0x070c mem_mesh_light_lightness_set_payload_lightness
+0x070e mem_mesh_light_lightness_set_payload_TID
+0x070f mem_mesh_light_lightness_set_payload_Transition_Time
+0x0710 mem_mesh_light_lightness_set_payload_Delay
+0x0711 mem_mesh_light_lightness_calc_lightness
+0x070b mem_mesh_module_message_opcode_set_light_ctl
+0x070c mem_mesh_CTL_Lightness
+0x070e mem_mesh_CTL_Temperature
+0x0710 mem_mesh_CTL_Delta_UV
+0x0712 mem_mesh_CTL_lightness_TID
+0x0713 mem_mesh_CTL_lightness_Transition_Time
+0x0714 mem_mesh_CTL_lightness_Delay
+0x0715 mem_mesh_CTL_calc_lightness
+0x0716 mem_mesh_CTL_calc_temperature
+0x093f mem_mesh_Network_Nonce
+0x093f mem_mesh_Network_Nonce_nonce_type
+0x0940 mem_mesh_Network_Nonce_CTL_and_TTL
+0x0941 mem_mesh_Network_Nonce_SEQ
+0x0944 mem_mesh_Network_Nonce_SRC
+0x0946 mem_mesh_Network_Nonce_Pad//0x0000
+0x0948 mem_mesh_Network_Nonce_IV_Index
+0x07aa mem_mesh_network_packet_type_temp
+0x07ab mem_mesh_message_NID_temp
+0x07ac mem_mesh_message_TTL_temp
+0x07ad mem_mesh_message_SEQ_temp
+0x07b0 mem_mesh_message_SRC_temp
+0x07b2 mem_mesh_message_DST_temp
+0x07b4 mem_mesh_message_Transport_PDU_temp
+0x093f mem_mesh_Application_Nonce
+0x093f mem_mesh_Application_Nonce_Nonce_Type
+0x0940 mem_mesh_Application_Nonce_ASZMIC_and_Pad//
+0x0941 mem_mesh_Application_Nonce_SEQ
+0x0944 mem_mesh_Application_Nonce_SRC
+0x0946 mem_mesh_Application_Nonce_DST
+0x0948 mem_mesh_Application_Nonce_IV_Index
+0x093f mem_mesh_Device_Nonce
+0x093f mem_mesh_Device_Nonce_Nonce_Type
+0x0940 mem_mesh_Device_Nonce_ASZMIC_and_Pad//
+0x0941 mem_mesh_Device_Nonce_SEQ
+0x0944 mem_mesh_Device_Nonce_SRC
+0x0946 mem_mesh_Device_Nonce_DST
+0x0948 mem_mesh_Device_Nonce_IV_Index
+0x0722 mem_mesh_upper_transport_layer_payload_len
+0x0991 mem_mesh_upper_tran_layer_temp_pakcet_AKF_AID
+0x0991 mem_mesh_upper_tran_layer_temp_unsegmented_pakcet_AKF_AID
+0x0992 mem_mesh_upper_tran_layer_temp_unsegmented_packet_fill
+0x0996 mem_mesh_upper_tran_layer_temp_pakcet_upper_tran_access_pdu
+0x0996 mem_mesh_upper_tran_layer_temp_unsegmented_pakcet_upper_tran_access_pdu
+0x0991 mem_mesh_upper_tran_layer_temp_segmented_pakcet_AKF_AID
+0x0992 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SeqZero
+0x0994 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SegO
+0x0995 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SegN
+0x0996 mem_mesh_upper_tran_layer_temp_segmented_pakcet_upper_tran_access_pdu
+0x01fd mem_otp_adc
+0x0205 mem_otp_temp0
+0x020d mem_otp_core_ldo
+0x020e mem_otp_verf_bg
+0x020f mem_otp_charge_pump
+0x0210 mem_otp_dpll_ibais
+0x0211 mem_otp_temp1
+0x0219 mem_otp_hv_sel
+0x021a mem_otp_ldo_vsel
+0x021b mem_otp_load_delay
+0x021c mem_otp_load_check_sum
+0x4000 mem_patch00
+0x4001 mem_patch01
+0x4002 mem_patch02
+0x4003 mem_patch03
+0x4004 mem_patch04
+0x4005 mem_patch05
+0x4006 mem_patch06
+0x4007 mem_patch07
+0x4008 mem_patch08
+0x4009 mem_patch09
+0x400a mem_patch0a
+0x400b mem_patch0b
+0x400c mem_patch0c
+0x400d mem_patch0d
+0x400e mem_patch0e
+0x400f mem_patch0f
+0x4010 mem_patch10
+0x4011 mem_patch11
+0x4012 mem_patch12
+0x4013 mem_patch13
+0x4014 mem_patch14
+0x4015 mem_patch15
+0x4016 mem_patch16
+0x4017 mem_patch17
+0x4018 mem_patch18
+0x4019 mem_patch19
+0x401a mem_patch1a
+0x401b mem_patch1b
+0x401c mem_patch1c
+0x401d mem_patch1d
+0x401e mem_patch1e
+0x401f mem_patch1f
+0x4020 mem_patch20
+0x4021 mem_patch21
+0x4022 mem_patch22
+0x4023 mem_patch23
+0x4024 mem_patch24
+0x4025 mem_patch25
+0x4026 mem_patch26
+0x4027 mem_patch27
+0x4028 mem_patch28
+0x4029 mem_patch29
+0x402a mem_patch2a
+0x402b mem_patch2b
+0x402c mem_patch2c
+0x402d mem_patch2d
+0x402e mem_patch2e
+0x402f mem_patch2f
+0x4030 mem_patch30
+0x4031 mem_patch31
+0x4032 mem_patch32
+0x4033 mem_patch33
+0x4034 mem_patch34
+0x4035 mem_patch35
+0x4036 mem_patch36
+0x4037 mem_patch37
+0x4038 mem_patch38
+0x4039 mem_patch39
+0x403a mem_patch3a
+0x403b mem_patch3b
+0x403c mem_patch3c
+0x403d mem_patch3d
+0x403e mem_patch3e
+0x403f mem_patch3f
+0x4040 mem_context
+0x4093 mem_current_amaddr
+0x4094 mem_lpm_mode
+0x4095 mem_last_clkn
+0x4099 mem_fcomp_div
+0x409a mem_rx_window_sniff
+0x409c mem_rf_init_ptr
+0x409e mem_rf_rccal
+0x409f mem_handle_num
+0x40a0 mem_chip_functions
+0x40a2 mem_lpm_wake_lock
+0x40a4 mem_lpm_interval
+0x40a6 mem_lpm_overhead
+0x40a7 mem_lpm_hibernate_switch
+0x40a8 mem_sniff_unint_lost
+0x40a9 mem_sleep_counter
+0x40ad mem_sleep_counter_all
+0x40b1 mem_sleep_clkn
+0x40b7 mem_sniff_rcv
+0x40ba mem_sniff_lost
+0x40bd mem_clks_per_lpo
+0x40c0 mem_lpm_mult
+0x40c1 mem_lpm_mult_timeout
+0x40c2 mem_lpm_mult_cnt
+0x40c3 mem_lpm_xtalcnt
+0x40c4 mem_lpm_buckcnt
+0x40c5 mem_lpm_ldocnt
+0x40c6 mem_lpm_isogate
+0x40c7 mem_lpm_isogate_stage2
+0x40c8 mem_lpm_isogate_final
+0x40c9 mem_lpm_ldo_sel
+0x40ca mem_lpm_sysctl
+0x40cb mem_lpm_hv_sel
+0x40cc mem_saved_gpio
+0x40e4 mem_saved_gsel
+0x40e7 mem_saved_mark
+0x40ef mem_saved_spidctrl
+0x40f0 mem_patch_ptr
+0x40f2 mem_patch_len
+0x40f4 mem_timers
+0x4114 mem_hci_cmd
+0x4115 mem_hci_conn_handle
+0x4116 mem_hci_plap
+0x4119 mem_hci_puap
+0x411a mem_hci_pnap
+0x411c mem_xtal_c_sel
+0x411d mem_ghpc_table
+0x4135 mem_aac_res_table
+0x4141 mem_tx_power
+0x4142 mem_modem_rssi
+0x4143 mem_gain_fix
+0x4144 mem_gain_table
+0x4147 mem_gain_second_agc_en
+0x4148 mem_system_clk
+0x4149 mem_rf_init_data
+0x415b mem_otp_charge_pump_x
+0x415c mem_otp_dpll_ibais_x
+0x415d mem_xtal_freq
+0x415e mem_version
+0x415f mem_company_id
+0x4161 mem_sub_version
+0x4163 mem_le_dsniff
+0x4165 mem_le_conn_interval
+0x4167 mem_le_tx_ifs_defference
+0x4168 mem_le_tx2m_delay
+0x4169 mem_le_txheader
+0x416a mem_le_txlen
+0x416b mem_le_txpayload
+0x426b mem_le_name_len
+0x426c mem_le_name
+0x428a mem_le_ltk
+0x429a mem_ltk_exists
+0x429b mem_le_rconfirm
+0x42ab mem_le_srand
+0x42bb mem_le_iat
+0x42bc mem_le_rat
+0x42bd mem_le_preq
+0x42be mem_le_preq_iocap
+0x42bf mem_le_preq_oob
+0x42c0 mem_le_preq_auth
+0x42c1 mem_le_preq_max_keysize
+0x42c2 mem_le_preq_init_key_distribution
+0x42c3 mem_le_preq_resp_key_distribution
+0x42c4 mem_le_pres
+0x42c5 mem_le_pres_iocap
+0x42c6 mem_le_pres_oob
+0x42c7 mem_le_pres_auth
+0x42c8 mem_le_pres_max_keysize
+0x42c9 mem_le_pres_init_key_distribution
+0x42ca mem_le_pres_resp_key_distribution
+0x42cb mem_le_conn_param
+0x42cb mem_le_conn_peer_addr_type
+0x42cc mem_le_conn_peer_addr
+0x42d2 mem_le_conn_own_addr_type
+0x42d3 mem_le_interval_min
+0x42d5 mem_le_interval_max
+0x42d7 mem_le_latency
+0x42d9 mem_le_timeout
+0x42db mem_le_lap
+0x42de mem_le_uap
+0x42df mem_le_nap
+0x42e1 mem_le_local_mtu
+0x42e3 mem_le_remote_mtu
+0x42e5 mem_le_skdm
+0x42ed mem_le_skds
+0x42f5 mem_le_init_superto
+0x42f7 mem_ui_le_uuid_table
+0x42f9 mem_le_secure_connect_flag
+0x42fa mem_le_secure_connect_state
+0x42fb mem_le_sc_confirm_gkey_flag
+0x42fc mem_le_pairing_state
+0x42fd mem_le_enc_state
+0x42fe mem_le_pairing_mode
+0x42ff mem_le_tk
+0x4303 mem_le_ediv
+0x4305 mem_le_rand
+0x430d mem_le_irk
+0x431d mem_le_transmit_window
+0x4321 mem_le_configuration
+0x4322 mem_le_fixed_ltk
+0x4332 mem_le_pairing_handle
+0x4334 mem_le_packet_llid
+0x4335 mem_le_l2cap_size
+0x4337 mem_le_packet_len_recved
+0x4339 mem_le_payload_ptr
+0x433b mem_le_signaling_identifier
+0x433c mem_le_l2cap_signaling_conn_param_update_rsp_result
+0x433e mem_le_md_count
+0x433f mem_ble_l2cap_tx_buff0_ptr
+0x4341 mem_ble_l2cap_tx_buff_size_ptr
+0x4343 mem_le_scan_enable
+0x4344 mem_le_scan_interval
+0x4346 mem_le_scan_window
+0x4348 mem_le_adv_data_len
+0x4349 mem_le_adv_data
+0x4368 mem_le_scan_data_len
+0x4369 mem_le_scan_data
+0x4388 mem_le_adv_enable
+0x4389 mem_le_adv_param
+0x4389 mem_le_adv_interval
+0x438b mem_le_adv_type
+0x438c mem_le_adv_own_addr_type
+0x438d mem_le_adv_direct_addr
+0x4393 mem_le_adv_channel_map
+0x4394 mem_le_scan_params
+0x4394 mem_le_scan_type
+0x4395 mem_le_scan_own_addr_type
+0x4396 mem_le_l2cap_att_states
+0x4397 mem_le_att_opcode
+0x4398 mem_le_att_handle
+0x439a mem_le_search_res
+0x439b mem_le_notify_handle
+0x439d mem_le_search_uuid_length
+0x439e mem_le_search_uuid
+0x43ae mem_le_local_feature
+0x43b6 mem_le_tx_phys
+0x43b7 mem_le_rx_phys
+0x43b8 mem_remote_rx_max_octets
+0x43ba mem_remote_rx_max_time
+0x43bc mem_remote_tx_max_octets
+0x43be mem_remote_tx_max_time
+0x43c0 mem_local_rx_max_octets
+0x43c2 mem_local_rx_max_time
+0x43c4 mem_local_tx_max_octets
+0x43c6 mem_local_tx_max_time
+0x43c8 mem_ucode_ptr
+0x43ca mem_ucode_flag
+0x43cb mem_device_option
+0x43cc mem_peripheral_lock_flag
+0x43cd mem_bistfix_val
+0x43d3 mem_cb_check_wakelock
+0x43d5 mem_cb_before_hibernate
+0x43d7 mem_cb_before_lpm
+0x43d9 mem_cb_le_process
+0x43db mem_cb_idle_process
+0x43dd mem_cb_bb_event_process
+0x43df mem_cb_att_write
+0x43e1 mem_cb_ble_transmit
+0x43e3 mem_cb_event_timer
+0x43e5 mem_cb_bt_set_mult
+0x43e7 mem_cb_spi_flash_write_complate
+0x43e9 mem_cb_before_lpm_sleep
+0x43eb mem_eeprom_base
+0x43ed mem_wake_up_delay_timer
+0x43ee mem_app_connection_options
+0x43ef mem_app_disconn_reason
+0x43f1 mem_app_disconn_reason_flag
+0x43f3 mem_xrecord_mode
+0x43f4 mem_eeprom_block_size
+0x43f5 mem_spi_init_clk
+0x43f6 mem_spi_init_delay_time
+0x43f7 mem_spi_ncs_gpio
+0x43f8 mem_nv_data_ptr
+0x43fa mem_nv_data_number
+0x43fb mem_queue_ptr
+0x43fd mem_reference_inter1p8v_2v_adc_io_data
+0x43fd mem_inter1v_adc_ft_data
+0x43fd mem_3v_adc_io_data
+0x43ff mem_reference_inter1p8v_2p6v_adc_vdcdc_data
+0x43ff mem_inter1p2v_adc_ft_data
+0x43ff mem_2v_adc_hvin_data
+0x4401 mem_reference_inter1p8v_1v_adc_io_data
+0x4401 mem_io1v_adc_ft_data
+0x4401 mem_1v_adc_io_data
+0x4403 mem_reference_inter1p8v_4p6v_adc_vdcdc_data
+0x4403 mem_io2v_adc_ft_data
+0x4403 mem_3v_adc_hvin_data
+0x4405 mem_adc_ratio
+0x4405 mem_reference_voltage
+0x4407 mem_adc_config_flag
+0x4408 mem_adc_channel
+0x4409 mem_adc_clkdiv
+0x440a mem_adc_current_value
+0x440c mem_adc_power_flag//bit0:low power falg ; bit1:no power flag
+0x440d mem_adc_saddr_ptr
+0x440f mem_adc_eaddr_ptr
+0x4411 mem_adc_dma_enable
+0x4412 mem_adc_cal_c0
+0x4413 mem_adc_cal_c1
+0x4414 mem_adc_cal_c2
+0x4415 mem_adc_cal_c3
+0x4416 mem_adc_cal_c4
+0x4417 mem_adc_cal_c5
+0x4418 mem_adc_cal_c6
+0x4419 mem_spi_write_addr
+0x441c mem_spi_write_ptr
+0x441e mem_spi_write_len
+0x4420 mem_spi_write_flash_sm
+0x4421 mem_spi_cs_gpio
+0x4422 mem_spi_si_gpio
+0x4423 mem_spi_so_gpio
+0x4424 mem_spi_sclk_gpio
+0x4425 mem_spi_wp_gpio
+0x4426 mem_spi_hold_gpio
+0x4427 mem_eeprom_wp_gpio
+0x4428 mem_eeprom_scl_gpio
+0x4429 mem_eeprom_sda_gpio
+0x442a mem_kscan_ptr
+0x442c mem_key_num_ptr
+0x442c mem_keyscan_ptr
+0x442e mem_key_value_retention
+0x4430 mem_power_param_ptr
+0x4432 mem_seqi
+0x4433 mem_adc_cal_c7
+0x4433 mem_set_cdb_on
+0x4434 mem_syn_cal_ctrl
+0x4435 mem_nec_decode_error_value
+0x4436 mem_wdt_always_work
+0x4437 mem_power_ctrl_disable
+0x4438 mem_ring_ibias_trim
+0x4439 mem_ring_ibias_vtune_low
+0x443b mem_ring_ibias_vtune_high
+0x443d mem_ring_ibias_calc_adc_gpio
+0x443e mem_ring_ibias_calc_adc_channel
+0x443f mem_rf_debug_rx_gpio
+0x4440 mem_rf_debug_tx_gpio
+0x4441 mem_l2cap_xmem_start
+0x4441 mem_used_map
+0x4442 mem_tx_fifo0
+0x4442 mem_tx_fifo0_map
+0x4443 mem_tx_fifo0_ptr
+0x4445 mem_tx_fifo1
+0x4445 mem_tx_fifo1_map
+0x4446 mem_tx_fifo1_ptr
+0x4448 mem_tx_fifo2
+0x4448 mem_tx_fifo2_map
+0x4449 mem_tx_fifo2_ptr
+0x444b mem_tx_fifo3
+0x444b mem_tx_fifo3_map
+0x444c mem_tx_fifo3_ptr
+0x444e mem_tx_fifo_end
+0x444e mem_l2cap_lpm_txbuf_ptr
+0x4450 mem_l2cap_xmem_end
+0x4450 mem_ccm_pcnt_tx
+0x4455 mem_ccm_pcnt_rx
+0x445a mem_ccm_last_mic
+0x445e mem_ccm_iv
+0x445e mem_ccm_ivm
+0x4462 mem_ccm_ivs
+0x4466 mem_ccm_len
+0x4468 mem_ccm_rx_ptr
+0x446a mem_sc_only_mode
+0x446b mem_sp_debug_mode
+0x446c mem_secure_connections_enable
+0x446d mem_sc_calc
+0x446e mem_sc_local_key_invalid
+0x446f mem_sc_private_key_256
+0x448f mem_sc_pubkey_local_x_256
+0x44af mem_sc_pubkey_local_y_256
+0x44cf mem_sp_state_xmem
+0x44cf mem_authentication_passkey_times
+0x44d0 mem_passkey_1bit
+0x44d1 mem_sp_state_xmem_end
+0x44d1 mem_ipc_lock_bt
+0x44d2 mem_ipc_lock_c51
+0x44d3 mem_ipc_fifo_bt2c51
+0x44db mem_ipc_fifo_c512bt
+0x44e3 mem_ui_button_timer
+0x44e4 mem_ui_button_last_state
+0x44e5 mem_ui_timer_last_btclk
+0x44e9 mem_ui_state_map
+0x44eb mem_ui_button_timeout
+0x44ec mem_ui_button_gpio
+0x44ed mem_ui_led_init_state_set
+0x44ee mem_ui_led_struct_num
+0x44ef mem_ui_led_struct_ptr
+0x44f1 mem_mesh_vendor_mesh_receive_tid
+0x44f2 mem_mesh_vendor_mesh_send_tid
+0x44f3 mem_mesh_vendor_timer_current_time
+0x44f7 mem_system_time
+0x44fb mem_mesh_vendor_timer_timing_delete_index1
+0x44fb mem_mesh_vendor_timer_timing_index1
+0x44fc mem_mesh_vendor_timer_timing_delete_index2
+0x44fc mem_mesh_vendor_timer_timing_time1
+0x4500 mem_mesh_vendor_timer_timing_attr_type1
+0x4502 mem_mesh_vendor_timer_timing_attr_para1
+0x4503 mem_mesh_vendor_timer_timing_buffer
+0x45ed mem_mesh_vendor_timer_timing_palyload
+0x45ff mem_mesh_vendor_timer_timing_temp
+0x4601 mem_mesh_vendor_timer_timing_time_cyclic_temp
+0x4602 mem_mesh_vendor_timer_check_loop
+0x4603 mem_tmall_revd_device_power_on_msge_flag
+0x4604 mem_tmall_send_power_on_msge_timeout
+0x4606 mem_mesh_vendor_timer_timing_temp1
+0x4608 mem_mesh_timer_index_buffer_len
+0x4609 mem_mesh_timer_index_buffer
+0x4629 mem_mesh_timer_index_count
+0x462a mem_mesh_adv_data_len
+0x462b mem_mesh_adv_data
+0x464a mem_mesh_adv_scan_channel
+0x464b mem_mesh_advertising_unprovisioned_device_beacon_switch
+0x464c mem_mesh_advertising_unprovisioned_device_beacon_timer
+0x464e mem_mesh_advertising_unprovisioned_device_beacon_duration
+0x464f mem_mesh_advertising_unprovisioned_device_beacon_interval
+0x4650 mem_mesh_calc_ConfirmationCloud_data
+0x4650 mem_mesh_ConfirmationCloud_RandomB
+0x4658 mem_mesh_ConfirmationCloud_RandomA
+0x4660 mem_mesh_AuthValueProv
+0x4670 mem_mesh_ConfirmationCloud
+0x4680 mem_mesh_ConfirmationDevice
+0x4680 mem_mesh_calc_ConfirmationDevice_data
+0x4680 mem_mesh_provisioning_random_A
+0x4688 mem_mesh_provisioning_random_B
+0x4690 mem_mesh_AuthValueDevice
+0x46a0 mem_mesh_Device_Key
+0x46b0 mem_mesh_Confirmationkey
+0x46c0 mem_mesh_sha256_ConfirmationKey_ascii
+0x46cf mem_mesh_sha256_SessionKey_ascii
+0x46d9 mem_mesh_sha256_DeviceKey_ascii
+0x46e2 mem_mesh_sha256_load_first_data_flag
+0x46e3 mem_mesh_sha256_data_len_byte
+0x46eb mem_mesh_sha256_data_len_bit
+0x46f3 mem_mesh_sha256_data_end_addr
+0x46f5 mem_mesh_sha256_data_len_addr
+0x46f7 mem_mesh_sha256_chunk_count
+0x46f8 mem_mesh_sha256_chunk_data_ptr
+0x46fa mem_mesh_sha256_chunk_ptr
+0x46fc mem_k2_P_len
+0x46fd mem_k2_P
+0x470d mem_k2_N
+0x471d mem_k2_SALT
+0x472d mem_k2_T
+0x473d mem_k2_T0
+0x473d mem_k2_T1
+0x474d mem_k2_NID
+0x474e mem_k2_T3
+0x475e mem_k2_T2
+0x476e mem_k4_SALT
+0x477e mem_k4_T
+0x478e mem_k4_id6_01
+0x479e mem_k4_k4N
+0x47ae mem_mesh_transport_AID
+0x47af mem_k3_SALT
+0x47bf mem_k3_T
+0x47cf mem_k3_id64_01
+0x47d4 mem_k3_k4N
+0x47dc mem_mesh_network_id
+0x47e4 mem_mesh_provisioned_flag
+0x47e5 mem_mesh_Provisioning_State_Flag
+0x47e6 mem_mesh_Device_PID
+0x47e7 mem_mesh_UUID_FeatureFlag
+0x47e8 mem_mesh_UUID_FeatureFlag1
+0x47e9 mem_mesh_PDU_RFU
+0x47ea mem_mesh_OOB_information
+0x47ec mem_mesh_Encrypt_Provisioning_Data
+0x47ec mem_mesh_provisioning_data_Mac_addr
+0x47ee mem_mesh_KeyFresh_and_Update_flag
+0x47ef mem_mesh_Network_Key
+0x47ff mem_mesh_last_IV_Index_byte
+0x4800 mem_mesh_Unicast_Address
+0x4802 mem_mesh_recv_cfg_appkey_add_timer
+0x4803 mem_mesh_report_power_on_timer
+0x4804 mem_mesh_report_full_attribute_timer
+0x4805 mem_mesh_health_node_reset_timer
+0x4806 mem_mesh_send_packet_timeout
+0x4808 mem_mesh_gatt_package_send_msg_id
+0x4809 mem_mesh_gatt_receive_msg_timer
+0x480a mem_mesh_three_tuple_ProductID
+0x480e mem_mesh_three_tuple_MAC
+0x4814 mem_mesh_three_tuple_secret
+0x4824 mem_mesh_cb_receive_advertising
+0x4826 mem_mesh_cb_receive_access_message
+0x4828 mem_mesh_cb_receive_config_appkey_add
+0x482a mem_mesh_cb_pairing_fail
+0x482c mem_mesh_cb_recv_vendor
+0x482e mem_mesh_scan_selete_next_ch
+0x4830 mem_mesh_cb_generic_onoff_get
+0x4832 mem_mesh_cb_generic_onoff_set
+0x4834 mem_mesh_cb_scene_recall
+0x4836 mem_mesh_cb_light_lightness_set
+0x4838 mem_mesh_cb_light_lightness_get
+0x483a mem_mesh_cb_light_ctl_set
+0x483c mem_mesh_cb_main_light_onoff_set
+0x483e mem_mesh_cb_background_onoff_set
+0x4840 mem_mesh_cb_color_set
+0x4842 mem_mesh_cb_network_relay
+0x4844 mem_mesh_cb_receive_node_reset
+0x4846 mem_mesh_cb_seq_changed
+0x4848 mem_mesh_cb_subscriptuion_list_changed
+0x484a mem_mesh_cb_vendor_timing_changed
+0x484c mem_mesh_core_feature
+0x484e mem_mesh_element_number
+0x484f mem_mesh_element_device_ptr
+0x4851 mem_mesh_element_device_length
+0x4853 mem_mesh_clear_provisioning_data
+0x4855 mem_mesh_app_deport_device_state
+0x4857 mem_mesh_chip_select
+0x4858 mem_mesh_segmented_access_message_SZMIC
+0x4859 mem_mesh_segmented_access_message_SeqZero
+0x485b mem_mesh_segmented_access_message_SegO
+0x485c mem_mesh_segmented_access_message_SegN
+0x485d mem_mesh_segmented_access_message_BlockAck
+0x4861 mem_mesh_segmented_access_message_receive_finish
+0x4862 mem_mesh_segmented_access_message_current_length
+0x4863 mem_mesh_segmented_access_message_SegN_upper_limit
+0x4864 mem_mesh_segmented_access_message_Segment_ptr
+0x4866 mem_mesh_last_CTL_Temperature
+0x4868 mem_mesh_receive_group_address
+0x4869 mem_mesh_receive_element_number
+0x486a mem_mesh_network_dup_cache_next
+0x486b mem_mesh_network_msg_cache_next
+0x486c mem_mesh_network_proxy_unicast_address
+0x486e mem_mesh_IV_Index
+0x4872 mem_mesh_TMALL_cache_start
+0x4872 mem_mesh_TMALL_SRC1
+0x4874 mem_mesh_TMALL_SEQ1
+0x4877 mem_mesh_TMALL_cache
+0x48a4 mem_mesh_TMALL_cache_end
+0x48a4 mem_mesh_transport_message_mic_cache
+0x48a4 mem_mesh_transport_message_mic_cache_buff1
+0x48a8 mem_mesh_transport_message_mic_cache_buff2_10
+0x48cc mem_mesh_network_relay_queue
+0x48cc mem_mesh_network_relay_queue_each_size
+0x48cd mem_mesh_network_relay_queue_length
+0x48ce mem_mesh_network_relay_queue_current_num
+0x48cf mem_mesh_network_relay_queue_read_ptr
+0x48d0 mem_mesh_network_relay_queue_write_ptr
+0x48d1 mem_mesh_network_relay_queue_ele
+0x4959 mem_mesh_application_key
+0x4969 mem_mesh_ASZMIC
+0x496a mem_mesh_access_message_mic_cache
+0x496a mem_mesh_access_message_mic_cache_buff1
+0x496e mem_mesh_access_message_mic_cache_buff2_10
+0x4992 mem_mesh_send_message_SEQ
+0x4995 mem_mesh_send_message_SRC
+0x4997 mem_mesh_send_message_TTL
+0x4998 mem_mesh_send_upper_layer_IVI_and_NID
+0x4999 mem_mesh_send_upper_layer_CTL_and_TTL
+0x499a mem_mesh_send_upper_layer_SEQ
+0x499d mem_mesh_send_upper_layer_SRC
+0x499f mem_mesh_send_upper_layer_DST
+0x49a1 mem_mesh_send_access_lower_transport_layer
+0x49b1 mem_mesh_send_network_layer_NetMIC
+0x49b5 mem_mesh_upper_tran_layer_packet_advertising
+0x49b6 mem_mesh_upper_tran_layer_packet_tid
+0x49b7 mem_mesh_upper_tran_layer_packet_type
+0x49b8 mem_mesh_upper_receive_new_message_timer
+0x49b9 mem_mesh_upper_tran_layer_queue_each_size
+0x49ba mem_mesh_upper_tran_layer_queue_length
+0x49bb mem_mesh_upper_tran_layer_queue_current_num
+0x49bc mem_mesh_upper_tran_layer_queue_read_ptr
+0x49bd mem_mesh_upper_tran_layer_queue_write_ptr
+0x49be mem_mesh_upper_tran_layer_queue_element_1
+0x49e6 mem_mesh_upper_tran_layer_queue_element_2
+0x4a0e mem_mesh_upper_tran_layer_queue_element_3
+0x4a36 mem_mesh_upper_tran_layer_queue_element_4
+0x4a5e mem_mesh_queue_each_size
+0x4a5f mem_mesh_queue_length
+0x4a60 mem_mesh_queue_current_num
+0x4a61 mem_mesh_queue_read_ptr
+0x4a62 mem_mesh_queue_write_ptr
+0x4a63 mem_mesh_queue_ele
+0x4aeb mem_mesh_element_device
+0x4aeb mem_mesh_element_device_group_addr
+0x4aed mem_mesh_element_device_queue_buffer_ptr
+0x4aef mem_mesh_element_device_timing_ptr
+0x4af1 mem_mesh_element_device_element_subscription_label
+0x4b01 mem_mesh_element_upper_adv_flag
+0x4b02 mem_mesh_element_upper_queue_buffer_ptr
+0x4b04 mem_mesh_element_tran_package_tid
+0x4b05 mem_mesh_element_tran_package_type
+0x4b06 mem_mesh_element_device1
+0x4b21 mem_mesh_element_device2
+0x4b3c mem_mesh_segmented_access_message_Segment
+0x4b60 mem_mesh_le_att_list
+0x4c24 mem_mesh_send_message_SEQ_temp
+0x4c27 mem_mesh_element_timing
+0x4d67 mem_mesh_element_timing1
+0x4ea7 mem_mesh_element_timing2
+0x44f1 mem_24g_lap
+0x44f7 mem_24g_rxbuf
+0x4519 mem_24g_txbuf
+0x4539 mem_24g_txpayload
+0x455d mem_24g_rxpayload
+0x457d mem_24g_rxdata_length
+0x457e mem_24g_pid
+0x457f mem_24g_no_ack
+0x4580 mem_24g_sta_crc
+0x4583 mem_24g_last_crc
+0x4586 mem_24g_sta_pid
+0x4587 mem_24g_last_pid
+0x4588 mem_24g_datalen
+0x4589 mem_24g_data_type
+0x458a mem_24g_txlen
+0x458b mem_24g_rx_window
+0x458d mem_24g_ch
+0x458e mem_24g_current_ch_number
+0x458f mem_24g_addr
+0x4593 mem_24g_ch_map1
+0x4597 mem_24g_ch_map2
+0x459b mem_24g_ch_map3
+0x459f mem_24g_ch_map4
+0x45a3 mem_24g_tx_btclk
+0x45a7 mem_24g_interval
+0x45a8 mem_24g_interval_min
+0x45a9 mem_24g_interval_max
+0x45aa mem_24g_syncword
+0x45ac mem_24g_syncword_crc8
+0x45ad mem_24g_get_syncword_crc8
+0x45ae mem_24g_pair_switch
+0x45af mem_24g_enter_hibernate
+0x45b7 mem_24g_rx_phy
+0x45b8 mem_24g_tx_phy
+0x45b9 mem_24g_ch_map_update
+0x45ba mem_24g_ch_update_map1
+0x45be mem_24g_ch_update_map2
+0x45c2 mem_24g_ch_update_map3
+0x45c6 mem_24g_ch_update_map4
+0x45ca mem_24g_disable_fec1
+0x45cb mem_24g_off_type
+0x45cc mem_24g_pair_addr
+0x45d0 mem_24g_pair_ch
+0x45d1 mem_24g_pair_tx_power
+0x45d2 mem_rssi_buff_index
+0x45d3 mem_24g_device1_bind_step
+0x45d4 mem_24g_device2_bind_step
+0x45d5 mem_24g_bind_device_status
+0x45d6 mem_24g_bind_payload
+0x45de mem_24g_device1_bind_disable
+0x45df mem_24g_device2_bind_disable
+0x45e0 mem_cb_24g_receive_process
+0x45e2 mem_cb_24g_ackpayload
+0x45e4 mem_cb_24g_data_device1
+0x45e6 mem_cb_24g_data_device2
+0x45e8 mem_24g_rxdata_temp
+0x460a mem_24g_abort_packet
+0x460b mem_24g_hop_btclk
+0x460f mem_24g_hop_interval
+0x4610 mem_24g_pair_mode
+0x4611 mem_24g_ackpayload_enable
+0x4612 mem_24g_hop_packet
+0x4613 mem_24g_mode_switch
+0x4614 mem_24g_nodata_timer_enable
+0x4615 mem_24g_mode_init
+0x4616 mem_24g_work_mode
+0x4617 mem_24g_time_slice
+0x4618 mem_24g_self_last_ch
+0x4619 mem_24g_self_ch_number
+0x461a mem_24g_self_config_ch_once
+0x461b mem_24g_device1_last_ch
+0x461c mem_24g_device1_ch_number
+0x461d mem_24g_device1_config_ch_once
+0x461e mem_24g_device2_last_ch
+0x461f mem_24g_device2_ch_number
+0x4620 mem_24g_device2_config_ch_once
+0x4621 mem_24g_led_status
+0x4622 mem_24g_bind_mode_continue
+0x4623 mem_tx_power_temp
+0x4624 mem_24g_mode_B_S_switch
+0x4625 mem_24g_mode_B_S_switch_init
+0x4626 mem_24g_mode_B_S_switch_cnt
+0x4628 mem_24g_mode_B_S_switch_exit
+0x4629 mem_24g_B_S_time_slice
+0x462a mem_24g_B_S_mode_switch_disable
+0x462b mem_24g_bind_device_living
+0x462c mem_24g_transmitter_addr
+0x4630 mem_24g_device1_addr
+0x4634 mem_24g_device2_addr
+0x4638 mem_rssi_noise_avg
+0x4639 mem_rssi_noise_index
+0x463a mem_rssi_noise_self_avg
+0x463b mem_rssi_noise_device1_avg
+0x463c mem_rssi_noise_device2_avg
+0x463d mem_rssi_noise_self_index
+0x463e mem_rssi_noise_device1_index
+0x463f mem_rssi_noise_device2_index
+0x4640 mem_rssi_noise_buffer_ptr
+0x4642 mem_rssi_noise_self_buffer_ptr
+0x4644 mem_rssi_noise_device1_buffer_ptr
+0x4646 mem_rssi_noise_device2_buffer_ptr
+0x4648 mem_car_hard_soft_switch
+0x4649 mem_car_queue_each_size
+0x464a mem_car__queue_length
+0x464b mem_car_queue_curr_num
+0x464c mem_car_queue_read_ptr
+0x464d mem_car_queue_write_ptr
+0x464e mem_car_queue_ele
+0x46c6 mem_car_pop_queue_buff
+0x46da mem_car_led_num
+0x46db mem_car_led_map
+0x46e5 mem_car_style1_led_type
+0x46e6 mem_car_style1_blink_count
+0x46e7 mem_car_style1_struct_led_gpio
+0x46e8 mem_car_style1_on_time
+0x46ea mem_car_style1_off_time
+0x46ec mem_car_style1_cb_ledon
+0x46ee mem_car_style1_cb_ledoff
+0x46f0 mem_car_style2_led_type
+0x46f1 mem_car_style2_blink_count
+0x46f2 mem_car_style2_struct_led_gpio
+0x46f3 mem_car_style2_on_time
+0x46f5 mem_car_style2_off_time
+0x46f7 mem_car_style2_cb_ledon
+0x46f9 mem_car_style2_cb_ledoff
+0x46fb mem_le_receive_data
+0x46fb mem_le_receive_packet_head
+0x46fd mem_le_receive_cmd
+0x46fe mem_le_receive_length
+0x4700 mem_le_receive_payload
+0x470a mem_le_receive_checksum
+0x470b mem_motor1_status
+0x470c mem_motor1_speed
+0x470d mem_motor2_status
+0x470e mem_motor2_speed
+0x470f mem_motor3_status
+0x4710 mem_motor3_speed
+0x4711 mem_motor1_pwm_set
+0x4711 mem_motor1_pwm_pin1_set
+0x4712 mem_motor1_pwm_pin2_set
+0x4713 mem_motor1_pwm_pin_set
+0x4714 mem_motor1_pwm_channel_set
+0x4715 mem_motor1_pwm_freq_set
+0x4718 mem_motor1_pwm_dute_set
+0x4719 mem_motor2_pwm_set
+0x4719 mem_motor2_pwm_pin1_set
+0x471a mem_motor2_pwm_pin2_set
+0x471b mem_motor2_pwm_pin_set
+0x471c mem_motor2_pwm_channel_set
+0x471d mem_motor2_pwm_freq_set
+0x4720 mem_motor2_pwm_dute_set
+0x4721 mem_motor3_pwm_set
+0x4721 mem_motor3_pwm_pin1_set
+0x4722 mem_motor3_pwm_pin2_set
+0x4723 mem_motor3_pwm_pin_set
+0x4724 mem_motor3_pwm_channel_set
+0x4725 mem_motor3_pwm_freq_set
+0x4728 mem_motor3_pwm_dute_set
+0x4729 mem_motor_select_p_n
+0x472a mem_car_motor_status
+0x472b mem_car_motor_speed
+0x472c mem_motor_pwm_set
+0x472c mem_motor_pwm_pin1_set
+0x472d mem_motor_pwm_pin2_set
+0x472e mem_motor_pwm_pin_set
+0x472f mem_motor_pwm_channel_set
+0x4730 mem_motor_pwm_freq_set
+0x4733 mem_motor_pwm_dute_set
+0x4734 mem_ir_rx_gpio
+0x4735 mem_ir_data
+0x4737 mem_ir_rx_buf
+0x4739 mem_ir_receive_clkn
+0x473d mem_ir_notify_data
+0x4740 mem_ir_notify_data_head
+0x4745 mem_ir_notify_data_payload
+0x4747 mem_ir_notify_data_check_sum
+0x4748 mem_car_ir_breakdown_check_timer
+0x4749 mem_car_ir_breakdown_flag
+0x474a mem_car_led_control
+0x474a mem_car_led1_status
+0x474b mem_car_led2_status
+0x474c mem_car_led3_status
+0x474d mem_car_led4_status
+0x474e mem_car_led5_status
+0x474f mem_car_led6_status
+0x4750 mem_car_led7_status
+0x4751 mem_car_led8_status
+0x4752 mem_car_led_control_timer
+0x4753 mem_car_led_blink_status
+0x4754 mem_car_led_no
+0x4755 mem_car_info_request
+0x4758 mem_car_info_request_head
+0x475d mem_car_info_request_payload
+0x4765 mem_car_info_request_checksum
+0x4766 mem_car_config_param
+0x4766 mem_car_config_setting_flag
+0x4767 mem_car_config_device_select
+0x4768 mem_car_config_motor_layout
+0x4769 mem_car_config_ir_enable
+0x476a mem_car_config_ir_rx_gpio
+0x476b mem_car_config_pairing_led_conn_status
+0x476c mem_car_config_pairing_led_gpio
+0x476d mem_car_config_led_num
+0x476e mem_car_config_blood_led_gpio
+0x476e mem_car_config_blood_led1_gpio
+0x476f mem_car_config_blood_led2_gpio
+0x4770 mem_car_config_blood_led3_gpio
+0x4771 mem_car_config_blood_led4_gpio
+0x4772 mem_car_config_blood_led5_gpio
+0x4773 mem_car_config_blood_led6_gpio
+0x4774 mem_car_config_blood_led7_gpio
+0x4775 mem_car_config_blood_led8_gpio
+0x4776 mem_car_config_bat_notify_enable
+0x4777 mem_car_config_low_voltage_led_gpio
+0x4778 mem_car_config_low_voltage_percent
+0x4779 mem_car_config_soft_switch_enable
+0x477a mem_car_config_soft_switch_gpio
+0x477b mem_car_notify_vdd_count
+0x477c mem_car_notify_vdd_timer
+0x477d mem_car_notify_vdd_value_last
+0x477e mem_car_notify_vdd_percent
+0x477f mem_car_working_flag
+0x4780 mem_low_bat_flag
+0x4781 mem_notify_bat_packet
+0x4784 mem_notify_bat_head
+0x4789 mem_notify_bat_payload
+0x478a mem_notify_bat_check_sum
+0x478b mem_vdd_notify_flag
+0x478c mem_car_current_vdd_value_temp
+0x478e mem_car_last_vdd_value
+0x4790 mem_vdd_calculate_set
+0x4790 mem_vdd_full_vol
+0x4792 mem_vdd_empty_vol
+0x4794 mem_vdd_low_vol
+0x4796 mem_vdd_now_vol
+0x4798 mem_car_24g_status
+0x4799 mem_car_24g_no_data_timeout_count
+0x479b mem_car_24g_no_data_timeout_timer
+0x479d mem_car_24g_ir_receive_attack_count
+0x479e mem_car_24g_go_die_flag
+0x479f mem_car_attack_shake_timer
+0x47a0 mem_car_attack_shake_flag
+0x47a1 mem_car_soft_power
+0x47a1 mem_car_power_state
+0x47a2 mem_car_power_timer
+0x47a3 mem_car_power_off_timeout
+0x47a4 mem_car_power_starting_timeout
+0x47a5 mem_car_power_off_cb
+0x47a7 mem_car_power_starting_cb
+0x47a9 mem_car_power_standby_cb
+0x47ab mem_car_ui_button_up_cb
+0x47ad mem_car_le_att_list
+0x49a1 mem_car_moto1_blank_timer
+0x49a2 mem_car_moto2_blank_timer
+0x49a3 mem_car_moto3_blank_timer
+0x49a4 mem_car_motor_gpio_num
+0x49a5 mem_car_motor_gpio_map
+0x49a5 mem_car_motor_left_gpio
+0x49a6 mem_car_motor_right_gpio
+0x49a7 mem_car_motor_front_gpio
+0x49a8 mem_car_motor_back_gpio
+0x49a9 mem_car_gpio
+0x49aa mem_car_app_send_speed
+0x49ab mem_rssi_sum
+0x49ad mem_check_rssi_high_count
+0x49af mem_rssi_data
+0x49b7 mem_car_24g_received_pac
+0x49b8 mem_car_24g_bind_enable_delay_count
+0x49b9 mem_car_keyscan
+0x49b9 mem_car_key_num
+0x49ba mem_cb_car_keyscan
+0x49bc mem_car_enter_lpm_timer_count
+0x49be mem_car_enter_lpm_timer
+0x49c0 mem_car_enter_lpm_flag
+0x49c1 mem_car_24g_ch_polling
+0x49c2 mem_car_rssi_noise_buffer
+0x49ca mem_car_rssi_noise_car_buffer
+0x49d2 mem_car_rssi_noise_remote_buffer
+0x49da mem_car_24g_commom_addr
+0x49de mem_car_24g_commom_addr_temp
+0x49e2 mem_car_24g_commom_addr_read
+0x49e6 mem_car_save_addr_flag
+0x49e7 mem_ble_att_list
+0x4b77 mem_ad_indexTable
+0x4b87 mem_ad_stepsizeTable
+0x4ceb mem_ad_state_valpred
+0x4cef mem_ad_state_index
+0x4cf3 mem_ad_in_numSamples
+0x4cf4 mem_ad_in_ptr
+0x4cf6 mem_ad_out_ptr
+0x4cf8 mem_ad_sign
+0x4cf9 mem_ad_delta
+0x4cfa mem_ad_step
+0x4cfe mem_ad_valpred
+0x4d02 mem_ad_index
+0x4d06 mem_ad_vpdiff
+0x4d0a mem_ad_inputbuffer
+0x4d0e mem_ad_bufferstep
+0x4648 mem_dg_kb_bind_flag
+0x4649 mem_dg_kb_data_sta_data
+0x4651 mem_dg_kb_data_last_data
+0x4659 mem_dg_kb_multikey_sta_data
+0x465c mem_dg_kb_multikey_last_data
+0x465f mem_dg_kb_system_sta_data
+0x4662 mem_dg_kb_system_last_data
+0x4665 mem_dg_kb_blank_data_enable
+0x4666 mem_dg_kb_mul_blank_data_enable
+0x4667 mem_dg_kb_system_crtl_blank_data_enable
+0x4668 mem_dg_ms_blank_data_enable
+0x4669 mem_dg_sys_config
+0x466a mem_dg_usb_vid_pid
+0x4673 mem_dg_usb_tx_interval
+0x4674 mem_dg_usb_device_name
+0x4692 mem_dg_kb_bind_success
+0x4693 mem_dg_pc_sleep_flag
+0x4694 mem_dg_24g_tx_power_default
+0x45d3 mem_rssi_hex_received
+0x45d4 mem_24g_pair_sm
+0x45d5 mem_24g_pair_no_ack
+0x45d6 mem_24g_pair_timeout_init
+0x45d8 mem_24g_pair_timeout
+0x45da mem_24g_pair_count
+0x45dc mem_24g_reconn_timeout_init
+0x45de mem_24g_reconn_timeout
+0x45e0 mem_24g_reconn_count
+0x45e2 mem_24g_reconn_type
+0x45e3 mem_24g_fast_conn_enable
+0x45e4 mem_24g_fast_conn_addr
+0x45e8 mem_24g_receiver_addr
+0x45ec mem_24g_fast_conn_temp_ch
+0x45ed mem_24g_receiver_temp_ch
+0x45ee mem_24g_device_temp_ch
+0x45ef mem_rssi_signal_index
+0x45f0 mem_rssi_signal_buf_ptr
+0x45f2 mem_cb_24g_transmit_data
+0x45f4 mem_cb_24g_search_receiver
+0x45f6 mem_cb_24g_lpm_before
+0x45f8 mem_cb_24g_transmit_short_sleep
+0x45fa mem_cb_24g_transmit_long_sleep
+0x45fc mem_24g_conn_sm
+0x45fd mem_24g_ensure
+0x45fe mem_24g_txfail_cnt
+0x4600 mem_24g_attempt_fail_flag
+0x4601 mem_24g_retry
+0x4602 mem_24g_abort_pac
+0x4603 mem_24g_max_retry
+0x4604 mem_24g_device_addr
+0x4608 mem_24g_short_sleep_set
+0x460b mem_24g_long_sleep_set
+0x4613 mem_24g_long_sleep_set1
+0x4617 mem_24g_pac_index
+0x4618 mem_24g_transmit_by_interrupt
+0x4619 mem_24g_transmit_by_interrupt_exit_count
+0x461b mem_24g_transmit_by_interrupt_exit_count_init
+0x461d mem_24g_long_sleep_param_update_timer_init
+0x461f mem_24g_long_sleep_param_update_timer
+0x4621 mem_24g_fast_hop_count
+0x4622 mem_24g_retransmit
+0x4624 mem_rssi_avg_received
+0x4625 mem_power_ctrl_level
+0x4626 mem_power_ctrl_pac_succ_cnt
+0x4627 mem_power_ctrl_pac_succ_cnt_init
+0x4628 mem_rssi_dis_min_24g
+0x4629 mem_rssi_dis_max_24g
+0x462a mem_rssi_hex_received_max_value
+0x462b mem_rssi_dis_min_ble
+0x462c mem_rssi_dis_max_ble
+0x462d mem_mouse_vdd_calculate_set
+0x462d mem_mouse_vdd_full_vol
+0x462f mem_mouse_vdd_empty_vol
+0x4631 mem_mouse_vdd_low_vol
+0x4633 mem_mouse_vdd_now_vol
+0x4635 mem_adc_channel_gpio
+0x4636 mem_adc_mux_status
+0x4637 mem_mouse_adc_last_low_voltage_flag
+0x4638 mem_mouse_discovery_timeout
+0x463a mem_mouse_24g_pair_timeout_init
+0x463c mem_mouse_direct_timeout
+0x463d mem_mouse_24g_reconn_timeout_init
+0x463e mem_mouse_24g_pair_tx_power
+0x463f mem_rssi_dis_min_24g_init
+0x4640 mem_rssi_dis_max_24g_init
+0x4641 mem_rssi_hex_received_max_value_init
+0x4642 mem_rssi_dis_min_ble_init
+0x4643 mem_rssi_dis_max_ble_init
+0x4644 mem_mouse_param_config
+0x4644 mem_lbutton_gpio
+0x4645 mem_mbutton_gpio
+0x4646 mem_rbutton_gpio
+0x4647 mem_bk_button_gpio
+0x4648 mem_fw_button_gpio
+0x4649 mem_dpi_button_gpio
+0x464a mem_whee_a_data_gpio
+0x464b mem_whee_b_data_gpio
+0x464c mem_mouse_sensor_sclk_gpio
+0x464d mem_mouse_sensor_sdio_gpio
+0x464e mem_select_sensor_angle_gpio
+0x464f mem_sensor_angle_default
+0x4650 mem_sensor_angle_switch
+0x4651 mem_config_sensor_dpi
+0x4652 mem_whee_ta_data_gpio
+0x4653 mem_whee_tb_data_gpio
+0x4654 mem_matrix_public_gpio
+0x4655 mem_config_select_device_button_gpio
+0x4656 mem_customer_key_gpio
+0x4657 mem_firebutton_gpio
+0x4658 mem_dpi_another_button_gpio
+0x4659 mem_sensor_motion_gpio
+0x465a mem_device_switch_gpio
+0x465b mem_mouse_reuse_2ice_gpio
+0x465c mem_mouse_logo_led_gpio
+0x465d mem_mouse_1io2led_multi_24gled
+0x465e mem_mouse_1io2led_multi_bt1led
+0x465f mem_mouse_1io2led_multi_bt2led
+0x4660 mem_mouse_low_voltage_alarm_gpio
+0x4661 mem_mouse_dpi_gpio
+0x4662 mem_mouse_param_config_end
+0x4662 mem_wire_usb_interval
+0x4663 mem_usb_addr
+0x4664 mem_mouse_usb_vdd_status
+0x4665 mem_mouse_usb_keyboard_flag
+0x4666 mem_mouse_information_start
+0x4666 mem_device_flag
+0x4667 mem_device1_type
+0x4668 mem_device1_addr
+0x466e mem_device1_locall_addr
+0x4674 mem_device2_type
+0x4675 mem_device2_addr
+0x467b mem_device2_locall_addr
+0x4681 mem_device3_type
+0x4682 mem_device3_addr
+0x4688 mem_device3_locall_addr
+0x468e mem_store_flag
+0x4690 mem_mouse_dpi
+0x4691 mem_mouse_24g_addr
+0x4695 mem_random_addr_increase_count
+0x4697 mem_mouse_retention
+0x46e6 mem_mouse_information_end
+0x46e6 mem_mouse_compare_addr
+0x46ec mem_flash_base
+0x46ef mem_write_flash_head_temp
+0x46f3 mem_store_information_delay_timer
+0x46f4 mem_store_information_delay_timer_init
+0x46f5 mem_mouse_search_dongle_interval
+0x46f6 mem_mouse_search_dongle_ch
+0x46f7 mem_mouse_search_dongle_count
+0x46f8 mem_mouse_search_dongle_action
+0x46f9 mem_24g_enter_lpm_timer
+0x46fa mem_mouse_24g_enter_lpm_enable
+0x46fb mem_mouse_multi_led_blink_enable
+0x46fc mem_mouse_multi_led_type
+0x46fd mem_mouse_multi_led_state
+0x46fe mem_mouse_multi_led_blink_type//00:rtn	01:24g blink	02:le blink		03:reconn blink 	04:low blink	05:dpi blink
+0x46ff mem_mouse_le_reconn_blink_limit
+0x4700 mem_mouse_multi_led_powon_timer_init//power on time
+0x4701 mem_mouse_multi_led_powon_timer
+0x4702 mem_mouse_multi_24gled_blink_timer_init//24gled blink time
+0x4703 mem_mouse_multi_le_discovery_blink_timer_init//le discovery blink time
+0x4704 mem_mouse_multi_le_reconn_blink_timer_init//le reconn blink time
+0x4705 mem_mouse_dpi_led_blink_timer_init//dpi blink time
+0x4706 mem_mouse_multi_led_blink_timer
+0x4707 mem_mouse_low_led_blink_timer//low blink time
+0x4708 mem_mouse_low_led_blink_half_timer
+0x4709 mem_adc_low_volatage_led_timer_count
+0x470a mem_mouse_multi_24gled_blink_count_init//24g count
+0x470b mem_mouse_multi_le_reconn_blink_count_init//le reconn count
+0x470c mem_mouse_multi_led_blink_count
+0x470d mem_mouse_multi_lowled_blink_count_init//low count
+0x470e mem_mouse_multi_low_led_blink_count
+0x470f mem_mouse_logo_led_on_time_init
+0x4711 mem_mouse_dpi_led_delay_count
+0x4712 mem_mouse_dpi_led_delay_count_init
+0x4713 mem_mouse_flag
+0x471b mem_device_number
+0x471c mem_mouse_page_to
+0x471e mem_mouse_fast_direct_timeout
+0x471f mem_mouse_fast_page_to
+0x4721 mem_mouse_24g_power_on_fast_conn_timer
+0x4723 mem_mouse_24g_search_dongle_time_init
+0x4725 mem_mouse_no_data_timeout
+0x4727 mem_mouse_commbination_key_bt
+0x4728 mem_mouse_commbination_key_24g
+0x4729 mem_mouse_customer_function
+0x472a mem_customer_key_press
+0x4733 mem_customer_key_release
+0x473c mem_mouse_set_high_impedance_bit_set
+0x473f mem_sensor_shutdown_flag
+0x4740 mem_24g_long_sleep_set_level
+0x4741 mem_tx_power_factory_param
+0x4743 mem_mouse_24g_short_sleep_set_4ms
+0x4746 mem_mouse_24g_long_sleep_set_4ms
+0x4749 mem_mouse_24g_fast_hop_count_4ms
+0x474a mem_mouse_24g_short_sleep_set_8ms
+0x474d mem_mouse_24g_long_sleep_set_8ms
+0x4750 mem_mouse_24g_fast_hop_count_8ms
+0x4751 mem_mouse_24g_tsniff
+0x4755 mem_mouse_24g_tsniff_4ms
+0x4759 mem_mouse_24g_tsniff_8ms
+0x475d mem_mouse_24g_short_sleep_set_init
+0x4760 mem_mouse_24g_tx_count
+0x4761 mem_mouse_24g_tx_time_last
+0x4767 mem_mouse_24g_tx_time_last_delt
+0x476b mem_mouse_24g_tx_time_sum
+0x4770 mem_mouse_24g_tx_time_sum_count
+0x4771 mem_mouse_24g_tx_time_offset
+0x4772 mem_mouse_24g_sleep_miss
+0x4773 mem_mouse_24g_sleep_time_temp
+0x4777 mem_mouse_24g_sleep_miss_temp
+0x477b mem_mouse_sleep_deal_type
+0x477c mem_mouse_24g_long_sleep_flag
+0x477d mem_mouse_long_mult_flag
+0x477e mem_mouse_current_mult_timer
+0x477f mem_reconn_times
+0x4780 mem_reconn_times_init
+0x4781 mem_mouse_no_data_timer
+0x4783 mem_mouse_rssi_signal_buf
+0x478b mem_btclk_sensor
+0x478f mem_mouse_bluetooth_fast_conn_flag
+0x4790 mem_mouse_discovery_timer
+0x4792 mem_mouse_bluetooth_reconnect_timeout
+0x4793 mem_mouse_need_soft_reset
+0x4794 mem_mouse_le_bb_connected_flag
+0x4795 mem_mouse_le_reconnect_flag
+0x4796 mem_mouse_send_secutiry_request_timer
+0x4797 mem_mouse_le_lap_temp
+0x479a mem_le_adv_ind
+0x479d mem_le_adv_direct_ind
+0x47a0 mem_le_adv_swift_pair
+0x47b4 mem_le_data_len
+0x47b5 mem_le_keyboard_handle
+0x47b7 mem_le_multimedia_handle
+0x47b9 mem_le_systemctrl_handle
+0x47bb mem_le_battery_level_handle
+0x47bd mem_le_battery_level_percentage
+0x47be mem_le_battery_level_updata_timer_init
+0x47c0 mem_le_battery_level_updata_timer
+0x47c2 mem_mouse_le_conn_param_reject
+0x47c3 mem_le_tx_buffer0_omemalloc
+0x47e3 mem_le_tx_buffer1_omemalloc
+0x4803 mem_le_tx_buffer2_omemalloc
+0x4823 mem_le_tx_buffer3_omemalloc
+0x4843 mem_le_connect_status_flag
+0x4844 mem_le_start_encrypt_timer
+0x4845 mem_mouse_direct_timer
+0x4846 mem_power_on_flag
+0x4847 mem_mouse_factory_addr
+0x484d mem_keyboard_flag
+0x4855 mem_keyboard_tx_data
+0x485f mem_keyboard_data_send_flag
+0x4860 mem_keyboard_le_send_conn_param_update
+0x4861 mem_keyboard_le_send_conn_param_update_timer
+0x4862 mem_le_start_auto_reco_timer
+0x4863 mem_mcu_stb_gpio
+0x4864 mem_mcu_clk_gpio
+0x4865 mem_mcu_rstb_gpio
+0x4866 mem_keyboard_caps_led_gpio
+0x4867 mem_keyboard_num_led_gpio
+0x4868 mem_keyboard_power_led_gpio
+0x4869 mem_keyboard_caps_led_on_timer
+0x486b mem_keyboard_led_r_gpio
+0x486c mem_keyboard_led_g_gpio
+0x486d mem_keyboard_led_b_gpio
+0x486e mem_key_row_gpio
+0x4876 mem_key_col_gpio
+0x488a mem_key_excol_gpio
+0x4896 mem_kb_row_ptr
+0x4898 mem_kb_col_ptr
+0x489a mem_kb_excol_ptr
+0x489c mem_keyscan_value_current
+0x48b0 mem_keyscan_value_check
+0x48c4 mem_keyscan_value_old
+0x48d8 mem_keyscan_exmcu_value
+0x48e3 mem_keyscan_value_ptr
+0x48e5 mem_keyscan_exmcu_value_ptr
+0x48e7 mem_keyscan_value_temp
+0x48e8 mem_keyscan_col_loop_count
+0x48e9 mem_keyscan_exmcu_wait_wake_count
+0x48eb mem_same_keyvalue_timerout_flag
+0x48ec mem_same_keyvalue_timer_init
+0x48ee mem_same_keyvalue_timer
+0x48f0 mem_keyboard_current_col_press_key_count
+0x48f1 mem_keyboard_all_press_key_count
+0x48f2 mem_keyboard_same_row_press_key_count
+0x48f3 mem_keyboard_ghost_flag
+0x48f4 mem_keyboard_data_change_flag
+0x48f5 mem_keyboard_keyvalue_temp
+0x48f6 mem_keyboard_press_flag_temp
+0x48f7 mem_keyboard_keyvalue_bit_loop_count
+0x48f8 mem_keyboard_keyvalue_buffer
+0x4901 mem_keyboard_keyvalue_map
+0x49a1 mem_keyboard_fn_flag
+0x49a2 mem_keyboard_control_key_flag
+0x49a3 mem_keyboard_bt_button_flag
+0x49a4 mem_keyboard_pairing_type
+0x49a5 mem_keyboard_commbination_key_bt
+0x49a7 mem_keyboard_commbination_key_24g
+0x49a9 mem_24g_repeat_send_flag
+0x49aa mem_keyboard_led_status
+0x49ab mem_keyboard_led_status_get
+0x49ac mem_keyboard_led_status_get_timer
+0x49ad mem_keyboard_led_status_get_timer_last
+0x49ae mem_keyboard_fn_esc_f1_f12
+0x49ae mem_keyboard_fn_first
+0x49af mem_keyboard_fn_esc
+0x49b0 mem_keyboard_fn_f1
+0x49b1 mem_keyboard_fn_f2
+0x49b2 mem_keyboard_fn_f3
+0x49b3 mem_keyboard_fn_f4
+0x49b4 mem_keyboard_fn_f5
+0x49b5 mem_keyboard_fn_f6
+0x49b6 mem_keyboard_fn_f7
+0x49b7 mem_keyboard_fn_f8
+0x49b8 mem_keyboard_fn_f9
+0x49b9 mem_keyboard_fn_f10
+0x49ba mem_keyboard_fn_f11
+0x49bb mem_keyboard_fn_f12
+0x49bc mem_keyboard_fn_del
+0x49bd mem_keyboard_fn_arrow_enable_flag
+0x49be mem_keyboard_fn_left_ctrl_enable_flag
+0x49bf mem_keyboard_fn_space_enable_flag
+0x49c0 mem_keyboard_fn_system_switch_enable_flag
+0x49c1 mem_keyboard_commbination_key_step
+0x49c2 mem_keyboard_commbination_control_key_value
+0x49c3 mem_keyboard_commbination_standard_key_value
+0x49c4 mem_keyboard_commbination_control_key_delay_release_timer
+0x49c5 mem_keyboard_consumer_key_status
+0x49c6 mem_kb_computer_system
+0x49c7 mem_otp_read_retention_memory
+0x49df mem_otp_read_retention_offset
+0x49e1 mem_le_search_service_uuid
+0x49f1 mem_le_connect_ios_mac_flag
+0x49f2 mem_le_search_mac_uuid
+0x49f4 mem_le_search_mac_manu_name
+0x49fd mem_keybord_appearance
+0x49ff mem_keyboard_commbination_fast_conn_bt
+0x4a01 mem_keyboard_factory_addr
+0x4a07 mem_keyboard_device_poweron_timer_count_init
+0x4a08 mem_keyboard_device_poweron_timer_count
+0x4a09 mem_keyboard_disconvey_led_blink_time
+0x4a0b mem_keyboard_led_type
+0x4a0c mem_keyboard_blink_count
+0x4a0d mem_keyboard_struct_led_gpio
+0x4a0e mem_keyboard_on_time
+0x4a10 mem_keyboard_off_time
+0x4a12 mem_keyboard_cb_ledon
+0x4a14 mem_keyboard_cb_ledoff
+0x4a16 mem_keyboard_keyvalue_map_new
+0x4ab6 mem_keyboard_customer_key
+0x4ab7 mem_keyboard_customer_data_trigger
+0x4ab8 mem_keyboard_customer_data_trigger_last
+0x4ab9 mem_keyscan_exmcu_reset_count
+0x4aba mem_power_on_flag_new
+0x4abb mem_keyboard_le_map_len
+0x4abd mem_keyboard_le_hid_map
+0x4b99 mem_keyboard_change_vid_pid_flag
+0x4b9a mem_keybaord_pnp_vid_source
+0x4b9b mem_keyboard_vid
+0x4b9d mem_keyboard_pid
+0x4b9f mem_keyboard_product_version
+0x4ba1 mem_keyboard_switch_device_flag
+0x4ba2 mem_keyboard_usb_enable
+0x4ba3 mem_keyboard_switch_g24_enable
+0x4ba4 mem_keyboard_switch_g24_press_timer
+0x4ba5 mem_keyboard_switch_bt_enable
+0x4ba6 mem_keyboard_switch_bt_press_timer
+0x4ba7 mem_keyboard_switch_usb_enable
+0x4ba8 mem_keyboard_switch_device_to_g24
+0x4bab mem_keyboard_switch_device_to_bt1
+0x4bae mem_keyboard_switch_device_to_bt2
+0x4bb1 mem_keyboard_switch_device_to_bt3
+0x4bb4 mem_keyboard_switch_device_to_usb
+0x4bb7 mem_keyboard_24g_led_gpio
+0x4bb8 mem_keyboard_bt1_led_gpio
+0x4bb9 mem_keyboard_bt2_led_gpio
+0x4bba mem_keyboard_bt3_led_gpio
+0x4bbb mem_keyboard_scroll_led_gpio
+0x4bbc mem_keyboard_low_voltage_alarm_gpio
+0x4bbd mem_usb_level_check_gpio
+0x4bbe mem_mouse_usb_vdd_status_current
+0x4bbf mem_mouse_usb_vdd_status_last
+0x4bc0 mem_mouse_usb_wait_updata_timer
+0x4bc1 mem_usb_vid_pid_new
+0x4bca mem_keyboard_mode_led_on_timer
+0x4bcb mem_rgb_pwm_conf
+0x4bd1 mem_rgb_pwm_breathe_flag
+0x4bd2 mem_rgb_on_color_temp
+0x4bd3 mem_rgb_on_color
+0x4bda mem_pwm_lpm_mode_flag
+0x4bdb mem_ui_check_timer_setup
+0x4bdf mem_customize_timer_setup
+0x4be1 mem_backlight_on_flag
+0x4be2 mem_backlight_on_type
+0x4be3 mem_backlight_breathe_type
+0x4be4 mem_keyboard_led_on_time_init
+0x4be6 mem_device_flag_temp_new
+0x4be7 mem_otp_store_device_info_flag
+0x4be8 mem_otp_store_system_flag
+0x4be9 mem_adc_reference3v_ft_data
+0x4be9 mem_adc_reference3v_gpio1v_ft_data
+0x4beb mem_adc_reference3v_gpio2v_ft_data
+0x4bed mem_adc_reference3v_vdcdc3p6v_ft_data
+0x4bef mem_adc_reference3v_vdcdc4p6v_ft_data
+0x4bf1 mem_adc_reference3v_inter1v_ft_data
+0x4bf3 mem_adc_reference3v_inter1v_now_data
+0x4bf5 mem_adc_reference_mode
+0x4bf6 mem_le_conn_rcv_new
+0x4bf7 mem_le_conn_first_rcv
+0x4bf8 mem_le_check_retransmit_flag
+0x4bf9 mem_le_retransmit_cnt
+0x4bfa mem_le_check_retransmit_discon_flag
+0x4bfb mem_le_tx_buffer0_omemalloc_new
+0x4c3b mem_le_tx_buffer1_omemalloc_new
+0x4c7b mem_le_tx_buffer2_omemalloc_new
+0x4cbb mem_le_tx_buffer3_omemalloc_new
+0x4cfb mem_keyscan_exmcu_value_new
+0x4d07 mem_keyboard_pair_led_flag
+0x4d08 mem_keyboard_adc_low_volatage_led_timer_count
+0x4d09 mem_adc_low_volatage_led_blink_timer
+0x4d0b mem_keyboard_low_volatage_led_flag
+0x4d0c mem_keyboard_low_volatage_led_blink_new_data_enable
+0x4d0d mem_qdec_set_flag
+0x4d0e mem_otp_read_retention_max_size
+0x4d10 mem_keyboard_reuse_led_bit
+0x4d11 mem_keyboard_delay_lpm_flag
+0x4d12 mem_keyboard_evt_btclk
+0x4d16 mem_keyboard_evt_timer_count
+0x4846 mem_mouse_key
+0x4847 mem_mouse_x
+0x4849 mem_mouse_y
+0x484b mem_mouse_z
+0x484c mem_mouse_tz
+0x484d mem_mouse_xy_h
+0x484e mem_mouse_key_last
+0x484f mem_wheel_tb_old_pinlevel
+0x4850 mem_wheel_tb_new_pinlevel
+0x4851 mem_wheel_tog
+0x4852 mem_mouse_tz_data
+0x4853 mem_mwheel_b_old_pinlevel
+0x4854 mem_mwheel_b_new_pinlevel
+0x4855 mem_mwheel_tog
+0x4856 mem_mouse_z_data
+0x4857 mem_mouse_wheel_trigger
+0x4858 mem_mouse_wheel_trigger_timer
+0x4859 mem_sensor_id1
+0x485a mem_sensor_id2
+0x485b mem_sensor_shutter_hi
+0x485c mem_sensor_shutter_lo
+0x485d mem_sensor_smart_flag
+0x485e mem_sensor_squal_reg
+0x485f mem_sensor_iqc
+0x4860 mem_mouse_move_flag
+0x4861 mem_mouse_asm_flag
+0x4862 mem_mouse_x_pre
+0x4864 mem_mouse_y_pre
+0x4866 mem_mouse_data_xtemp
+0x4867 mem_mouse_data_ytemp
+0x4868 mem_mouse_dpi_seting
+0x4868 mem_320x_dpi_0
+0x4869 mem_320x_dpi_1
+0x486a mem_320x_dpi_2
+0x486b mem_320x_dpi_3
+0x486c mem_3212_dpi_0
+0x486d mem_3212_dpi_1
+0x486e mem_3212_dpi_2
+0x486f mem_3212_dpi_3
+0x4870 mem_ka8g2_dpi_0
+0x4871 mem_ka8g2_dpi_1
+0x4872 mem_ka8g2_dpi_2
+0x4873 mem_ka8g2_dpi_3
+0x4874 mem_sensor_s201_dpi
+0x4874 mem_sensor_s201_dpi_0
+0x4875 mem_sensor_s201_dpi_1
+0x4876 mem_sensor_s201_dpi_2
+0x4877 mem_sensor_s201_dpi_3
+0x4878 mem_sensor_s201_dpi_4
+0x4879 mem_mouse_cpi_count
+0x487a mem_mouse_dpi_button_state
+0x487b mem_mouse_dpi_long_press_flag
+0x487c mem_sensor_3212_init
+0x4886 mem_sensor_3204_init
+0x4890 mem_sensor_3205_init
+0x489a mem_sensor_32xx_init
+0x48b4 mem_sensor_32xx_init_1
+0x48d6 mem_sensor_8650_init
+0x48fc mem_sensor_ka8ul_init
+0x491a mem_sensor_8009_init
+0x492a mem_sensor_ka8g2_init
+0x493a mem_sensor_p6520_init
+0x4946 mem_sensor_poweron_init
+0x494e mem_sensor_ka8g2_poweron_init
+0x4956 mem_mouse_clear_sensor_data_flag
+0x4957 mem_config_sensor_type
+0x4958 mem_config_sensor_angle
+0x4959 mem_bluetooth_125hz_cnt
+0x495a mem_device_addr_temp
+0x4961 mem_mouse_bt_boot_mode
+0x4962 mem_mouse_bt_boot_data
+0x4967 mem_bt_send_max_slot_req_accept_after_switch
+0x4968 mem_mouse_bt_send_first_package_timer
+0x4969 mem_mouse_bt_send_first_package_flag
+0x496a mem_lmi_opcode_temp
+0x496b mem_lpm_mult_init
+0x496c mem_customer_key
+0x496d mem_customer_data_trigger
+0x496e mem_customer_data_trigger_last
+0x496f mem_mouse_lkey_press_status
+0x4970 mem_mouse_rkey_press_status
+0x4971 mem_mouse_mkey_press_status
+0x4972 mem_mouse_bkkey_press_status
+0x4973 mem_mouse_fwkey_press_status
+0x4974 mem_mouse_dpikey_press_status
+0x4975 mem_mouse_pbkey_press_status
+0x4976 mem_mouse_customerkey_press_status
+0x4977 mem_mouse_key_temp
+0x4978 mem_mouse_key_status
+0x4979 mem_mouse_matrix_key_cow_count
+0x497a mem_mouse_matrix_key_row_count
+0x497b mem_mouse_ghost_flag
+0x497c mem_bt_discovery_count
+0x497d mem_select_device_count
+0x497e mem_mouse_commbination_key
+0x497f mem_select_device_button_statue
+0x4980 mem_commbination_key_statue
+0x4981 mem_combination_ui_button_count
+0x4982 mem_fire_key_status
+0x4983 mem_fire_key_delay
+0x4987 mem_fire_key_flag
+0x4988 mem_dpi_another_press_status
+0x4989 mem_dpi_another_button_state
+0x498a mem_dpi_another_button_down_enable
+0x498b mem_mouse_key_temp_patch
+0x498c mem_le_name_patch_len
+0x498d mem_le_name_patch
+0x49a0 mem_device_flag_last
+0x49a1 mem_device_flag_temp
+0x49a2 mem_device_flag_value
+0x49a3 mem_mouse_le_addr1_last
+0x49a9 mem_mouse_le_addr1_temp
+0x49af mem_mouse_le_locall_addr1_last
+0x49b5 mem_mouse_le_locall_addr1_temp
+0x49bb mem_mouse_le_addr2_last
+0x49c1 mem_mouse_le_addr2_temp
+0x49c7 mem_mouse_le_locall_addr2_last
+0x49cd mem_mouse_le_locall_addr2_temp
+0x49d3 mem_mouse_dpi_last
+0x49d4 mem_mouse_dpi_temp
+0x49d5 mem_mouse_otp_dpi_value
+0x49d6 mem_mouse_24g_addr_last
+0x49da mem_mouse_24g_addr_temp
+0x49de mem_random_addr_increase_count_last
+0x49e0 mem_random_addr_increase_count_temp
+0x49e2 mem_otp_offset_device_flag
+0x49e4 mem_otp_offset_device_flag_end
+0x49e6 mem_otp_offset_24g_addr
+0x49e8 mem_otp_offset_24g_addr_end
+0x49ea mem_otp_offset_le_addr1
+0x49ec mem_otp_offset_le_addr1_end
+0x49ee mem_otp_offset_le_locall_addr1
+0x49f0 mem_otp_offset_le_locall_addr1_end
+0x49f2 mem_otp_offset_le_addr2
+0x49f4 mem_otp_offset_le_addr2_end
+0x49f6 mem_otp_offset_le_locall_addr2
+0x49f8 mem_otp_offset_le_locall_addr2_end
+0x49fa mem_otp_offset_dpi
+0x49fc mem_otp_offset_dpi_end
+0x49fe mem_otp_offset_le_addr_increase_count
+0x4a00 mem_otp_offset_le_addr_increase_count_end
+0x4a02 mem_otp_offset_app_initflag
+0x4a04 mem_24g_txpayload_buf
+0x4a14 mem_release_data_from_receiver_enable
+0x4a15 mem_release_data_from_transmiter_enable
+0x4a16 mem_flippen_key0_gpio
+0x4a17 mem_flippen_key1_gpio
+0x4a18 mem_flippen_key2_gpio
+0x4a19 mem_flippen_key3_gpio
+0x4a1a mem_flippen_key4_gpio
+0x4a1b mem_flippen_key5_gpio
+0x4a1c mem_flippen_key6_gpio
+0x4a1d mem_flippen_key7_gpio
+0x4a1e mem_flippen_key0_press_status
+0x4a1f mem_flippen_key1_press_status
+0x4a20 mem_flippen_key2_press_status
+0x4a21 mem_flippen_key3_press_status
+0x4a22 mem_flippen_key4_press_status
+0x4a23 mem_flippen_key5_press_status
+0x4a24 mem_flippen_key6_press_status
+0x4a25 mem_flippen_key7_press_status
+0x4a26 mem_key_press_data
+0x4a26 mem_key_pageup_data
+0x4a2f mem_key_pagedown_data
+0x4a38 mem_key_shift_f5_data
+0x4a41 mem_key_esc_data
+0x4a4a mem_key_b_data
+0x4a53 mem_key_tab
+0x4a5c mem_key_enter
+0x4a65 mem_key_alt_tab
+0x4a6e mem_key_alt_f4
+0x4a77 mem_key_play_pause
+0x4a80 mem_key_vol_up
+0x4a89 mem_key_vol_down
+0x4a92 mem_standard_key_release
+0x4a9b mem_system_ctrl_key_release
+0x4aa4 mem_media_key_release
+0x4aad mem_key0_long_press_flag
+0x4aae mem_key1_long_press_flag
+0x4aaf mem_key2_long_press_flag
+0x4ab0 mem_key3_long_press_flag
+0x4ab1 mem_key4_long_press_flag
+0x4ab2 mem_key0_long_press_event
+0x4ab3 mem_key1_long_press_event
+0x4ab4 mem_key2_long_press_event
+0x4ab5 mem_key3_long_press_event
+0x4ab6 mem_key4_long_press_event
+0x4ab7 mem_key0_short_press_flag
+0x4ab8 mem_key1_short_press_flag
+0x4ab9 mem_key2_short_press_flag
+0x4aba mem_key3_short_press_flag
+0x4abb mem_key4_short_press_flag
+0x4abc mem_key0_press_timer_count
+0x4abd mem_key1_press_timer_count
+0x4abe mem_key2_press_timer_count
+0x4abf mem_key3_press_timer_count
+0x4ac0 mem_key4_press_timer_count
+0x4ac1 mem_combination_key_down_flag
+0x4ac2 mem_combination_key_longpress_flag
+0x4ac3 mem_key_disable_timer
+0x4ac4 mem_24g_calculate_package_id_disable
+0x4ac5 mem_24g_package_id_abandon_flag
+0x4ac6 mem_24g_package_id
+0x4ac7 mem_key_state
+0x4ac8 mem_key_press_state
+0x4ac9 mem_poweron_first_blank_data_enable
+0x4aca mem_flippen_no_data_timeout
+0x4acc mem_flippen_start_pair_no_data_timeout
+0x4ace mem_key_longpress_timer_init
+0x4ad0 mem_key_longpress_timer
+0x4ad2 mem_low_voltage_led_blink_flag
+0x4ad3 mem_low_voltage_led_blink_start_timer
+0x4ad4 mem_poweron_led_blink_flag
+0x4ad5 mem_24g_pair_enable_flag
+0x4ad6 mem_24g_ch_work
+0x4ad7 mem_24g_pair_key_down_flag
+0x4ad8 mem_24g_pairing_stop_flag
+0x4ad9 mem_longpress_24g_enter_hibernate_flag
+0x4ada mem_g24_connected_state
+0x4adb mem_g24_pairing_stop_flag
+0x4adc mem_send_package_before_check
+0x462d mem_remote_car_hard_soft_switch
+0x462e mem_remote_car_queue_each_size
+0x462f mem_remote_car_queue_length
+0x4630 mem_remote_car_queue_curr_num
+0x4631 mem_remote_car_queue_read_ptr
+0x4632 mem_remote_car_queue_write_ptr
+0x4633 mem_remote_car_queue_ele
+0x468d mem_remote_style_led_type
+0x468e mem_remote_style_blink_count
+0x468f mem_remote_style_struct_led_gpio
+0x4690 mem_remote_style_on_time
+0x4692 mem_remote_style_off_time
+0x4694 mem_remote_style_cb_ledon
+0x4696 mem_remote_style_cb_ledoff
+0x4698 mem_remote_car_led_num
+0x4699 mem_remote_car_led_map
+0x46a1 mem_remote_car_keyscan
+0x46a1 mem_remote_car_key_num
+0x46a2 mem_cb_remote_car_keyscan
+0x46a4 mem_remote_car_key_conf0
+0x46a4 mem_remote_car_key_conf0_pin
+0x46a5 mem_remote_car_key_conf1
+0x46a5 mem_remote_car_key_conf1_pin
+0x46a6 mem_remote_car_key_conf2
+0x46a6 mem_remote_car_key_conf2_pin
+0x46a7 mem_remote_car_key_conf3
+0x46a7 mem_remote_car_key_conf3_pin
+0x46a8 mem_remote_car_key_conf4
+0x46a8 mem_remote_car_key_conf4_pin
+0x46a9 mem_remote_car_key_conf5
+0x46a9 mem_remote_car_key_conf5_pin
+0x46aa mem_remote_car_key_conf6
+0x46aa mem_remote_car_key_conf6_pin
+0x46ab mem_rocker_negative_flag
+0x46ac mem_rocker_work_status
+0x46ad mem_current_vdd_value_default_mid_x
+0x46af mem_current_vdd_value_default_mid_y
+0x46b1 mem_current_vdd_value_default_mid_temp
+0x46b3 mem_current_vdd_default_range
+0x46b5 mem_rocker_last_status
+0x46b7 mem_rocker_status
+0x46b7 mem_rocker_x_status
+0x46b8 mem_rocker_y_status
+0x46b9 mem_remote_car_config_param
+0x46b9 mem_remote_car_config_setting_flag
+0x46ba mem_remote_car_config_key_map
+0x46bb mem_remote_car_config_layout
+0x46bc mem_remote_car_config_connect_led_gpio
+0x46bd mem_remote_car_config_check_way
+0x46be mem_remote_car_config_soft_switch_enable
+0x46bf mem_remote_car_config_soft_switch_gpio
+0x46c0 mem_remote_car_config_timeout_shutdown_enable
+0x46c1 mem_remote_car_24g_motor_packet
+0x46c1 mem_remote_car_24g_motor_packet_lenght
+0x46c2 mem_remote_car_24g_motor_send_packet_head
+0x46c4 mem_remote_car_24g_motor_send_cmd
+0x46c5 mem_remote_car_24g_motor_send_length
+0x46c7 mem_remote_car_24g_motor_send_payload
+0x46c7 mem_remote_car_24g_motor1_payload
+0x46c9 mem_remote_car_24g_motor2_payload
+0x46cb mem_remote_car_24g_motor3_payload
+0x46cd mem_remote_car_24g_motor_send_checksum
+0x46ce mem_remote_car_24g_fire_packet
+0x46ce mem_remote_car_24g_fire_packet_lenght
+0x46cf mem_remote_car_24g_fire_send_packet_head
+0x46d1 mem_remote_car_24g_fire_send_cmd
+0x46d2 mem_remote_car_24g_fire_send_length
+0x46d4 mem_remote_car_24g_fire_send_payload
+0x46d6 mem_remote_car_24g_fire_send_checksum
+0x46d7 mem_remote_car_24g_tx_temp
+0x46e6 mem_remote_car_no_data_timeout
+0x46e8 mem_remote_car_no_data_timer
+0x46ea mem_remote_car_soft_power
+0x46ea mem_remote_car_power_state
+0x46eb mem_remote_car_power_timer
+0x46ec mem_remote_car_power_off_timeout
+0x46ed mem_remote_car_power_starting_timeout
+0x46ee mem_remote_car_power_off_cb
+0x46f0 mem_remote_car_power_starting_cb
+0x46f2 mem_remote_car_power_standby_cb
+0x46f4 mem_remote_key_status
+0x46f5 mem_remote_car_24g_status
+0x46f6 mem_remote_car_24g_auto_work_step
+0x46f7 mem_remote_car_24g_pair_success_flag
+0x46f8 mem_remote_car_empty_packet
+0x46f9 mem_remote_car_motor1_key0_press_state
+0x46fa mem_remote_car_motor1_key1_press_state
+0x46fb mem_remote_car_motor2_key2_press_state
+0x46fc mem_remote_car_motor2_key3_press_state
+0x46fd mem_remote_car_motor1_rel_state
+0x46fe mem_remote_car_motor2_rel_state
+0x46ff mem_remote_car_no_data_check
+0x4700 mem_remote_24g_commom_addr
+0x4704 mem_remote_24g_commom_addr_temp
+0x4708 mem_remote_24g_commom_addr_read
+0x470c mem_remote_save_addr_flag
+0x44f1 mem_hci_uart_tx_gpio
+0x44f2 mem_hci_uart_rx_gpio
+0x44f3 mem_hci_uart_rts_gpio
+0x44f4 mem_hci_uart_cts_gpio
+0x44f5 mem_hci_pwm_12mhz_gpio
+0x44f1 mem_soft_version_num
+0x44f3 mem_module_wake_up_gpio
+0x44f4 mem_module_state_gpio
+0x44f5 mem_module_connect_state_gpio
+0x44f6 mem_current_packet_length
+0x44f8 mem_module_state
+0x44f9 mem_module_mcu_wake_pin
+0x44fa mem_module_mcu_wake_delay_us
+0x44fe mem_module_le_lpm_mult
+0x44ff mem_module_bluetooth_stauts_by_command
+0x4500 mem_module_uart_rx_buffer
+0x4502 mem_module_uart_rx_buffer_end
+0x4504 mem_module_uart_tx_buffer
+0x4506 mem_module_uart_tx_buffer_end
+0x4508 mem_module_uarta_baud_rate
+0x450a mem_module_read_vdd_flag
+0x450b mem_module_read_vdd_count
+0x450c mem_module_vdd_quotient
+0x450d mem_module_vdd_remainder
+0x450e mem_module_ble_data_uart_max_length
+0x450f mem_module_flag
+0x4511 mem_module_hci_notify_len
+0x4512 mem_module_hci_notify_handle
+0x4514 mem_module_hci_nofiy_addr
+0x4516 mem_module_hci_notify_type
+0x4517 mem_le_conn_flag
+0x4518 mem_module_le_att_list
+0x4770 mem_module_le_att_list_end
+0x4770 mem_module_nv_data
+0x4770 mem_module_nv_data0
+0x4792 mem_module_nv_data1
+0x47b4 mem_module_nv_data2
+0x47d6 mem_module_nv_data3
+0x47f8 mem_module_nv_data4
+0x481a mem_module_nv_data_end
+0x44f1 mem_ble_shutter_enable_notify
+0x44f2 mem_ble_shutter_reconn_adv_interval
+0x44f4 mem_ble_shutter_discovery_adv_interval
+0x44f6 mem_ble_shutter_reconn_timeout
+0x44f8 mem_ble_shutter_reconn_timer
+0x44fa mem_ble_shutter_reconn_blink_on_time
+0x44fc mem_ble_shutter_reconn_blink_off_time
+0x44fe mem_ble_shutter_discovery_blink_on_time
+0x4500 mem_ble_shutter_discovery_blink_off_time
+0x4502 mem_ble_shutter_interval_min
+0x4504 mem_ble_shutter_interval_max
+0x4506 mem_ble_shutter_latency
+0x4508 mem_ble_shutter_timeout
+0x450a mem_ble_shutter_interval_min_new
+0x450c mem_ble_shutter_interval_max_new
+0x450e mem_ble_shutter_latency_new
+0x4510 mem_ble_shutter_timeout_new
+0x4512 mem_ble_shutter_discovery_timeout
+0x4514 mem_ble_shutter_connect_timeout
+0x4516 mem_shutter_sleep_timeout
+0x4518 mem_shutter_sleep_timer
+0x451a mem_shutter_hard_soft_switch_case
+0x451b mem_shutter_soft_switch_button_gpio
+0x451c mem_shutter_soft_switch_power_state
+0x451d mem_shutter_soft_switch_poweron_time
+0x451e mem_shutter_soft_switch_poweroff_time
+0x451f mem_shutter_soft_switch_poweron_callback_function
+0x4521 mem_shutter_soft_switch_poweroff_callback_function
+0x4523 mem_shutter_keyscan
+0x4523 mem_shutter_key_num
+0x4524 mem_cb_shutter_keycan
+0x4526 mem_shutter_key_conf0
+0x4527 mem_shutter_key_conf1
+0x4528 mem_shutter_key_conf2
+0x4529 mem_shutter_key_conf3
+0x452a mem_shutter_key_conf4
+0x452b mem_shutter_key_conf5
+0x452c mem_shutter_key_conf6
+0x452d mem_shutter_key_conf7
+0x452e mem_key0_press
+0x4533 mem_key1_press
+0x4538 mem_key2_press
+0x453d mem_key3_press
+0x4542 mem_key4_press
+0x4547 mem_key5_press
+0x454c mem_key6_press
+0x4551 mem_key7_press
+0x4556 mem_key0_release
+0x455b mem_key1_release
+0x4560 mem_key2_release
+0x4565 mem_key3_release
+0x456a mem_key4_release
+0x456f mem_key5_release
+0x4574 mem_key6_release
+0x4579 mem_key7_release
+0x457e mem_ble_data_buffer1
+0x4583 mem_ble_data_buffer2
+0x4588 mem_ble_data_buffer3
+0x458d mem_ble_data_buffer4
+0x4592 mem_ble_data_buffer5
+0x4597 mem_ble_data_buffer6
+0x459c mem_ble_data_buffer7
+0x45a1 mem_ble_data_buffer8
+0x45a6 mem_ble_data_buffer9_58
+0x45d8 mem_queue_each_size
+0x45d9 mem_queue_length
+0x45da mem_queue_curr_num
+0x45db mem_queue_read_ptr
+0x45dc mem_queue_write_ptr
+0x45dd mem_queue_ele
+0x45fd mem_shutter_nv_data
+0x46a7 mem_shutter_led_struct_app_led
+0x46a7 mem_shutter_led_struct_app_led_type
+0x46a8 mem_shutter_led_struct_app_led_blink_count
+0x46a9 mem_shutter_led_struct_app_led_gpio
+0x46aa mem_shutter_led_struct_app_led_on_time
+0x46ac mem_shutter_led_struct_app_led_off_time
+0x46ae mem_shutter_led_struct_app_led_on_callback
+0x46b0 mem_shutter_led_struct_app_led_off_callback
+0x46b2 mem_shutter_power_off_led_style
+0x46b2 mem_shutter_power_off_led_style_type
+0x46b3 mem_shutter_power_off_led_style_blink_count
+0x46b4 mem_shutter_power_off_led_style_gpio
+0x46b5 mem_shutter_power_off_led_style_on_time
+0x46b7 mem_shutter_power_off_led_style_off_time
+0x46b9 mem_shutter_power_off_led_style_on_callback
+0x46bb mem_shutter_power_off_led_style_off_callback
+0x46bd mem_shutter_soft_swtich_botton_down
+0x46be mem_shutter_soft_swtich_led_struct_temp
+0x46c9 mem_shutter_power_off_timeout
+0x46ca mem_shutter_power_off_timer
+0x46cb mem_shutter_key_conf0_temp
+0x46cd mem_shutter_led_struct_app_led_gpio_temp
+0x46ce mem_shutter_hard_soft_switch_case_temp
+0x46cf mem_shutter_soft_switch_button_gpio_temp
+0x46d0 mem_shutter_soft_switch_first_power_on
+0x46d1 mem_shutter_dy_conf
+0x46d2 mem_shutter_le_uuid_sup
+0x4876 mem_shutter_key_value_list
+0x489e mem_shutter_discovery_time_conf
+0x48a6 mem_shutter_reconn_or_discovery_blink_time_conf
+0x48ae mem_shutter_1s_timer
+0x48af mem_shutter_timer_625us
+0x48b1 mem_rf_init_data_new
+0x48bc mem_key_value_xmem
+0x48be mem_shutter_le_hid_map
+0x49e0 mem_shutter_le_map_len_android
+0x49e2 mem_shutter_le_map_len_ios
+0x49e4 mem_dy_le_search_service_uuid
+0x49f4 mem_iphone_flag
+0x49f5 mem_send_data_delay
+0x49f6 mem_key_send_clk
+0x49fa mem_shutter_key_state0
+0x4a04 mem_shutter_key_state1
+0x4a0e mem_shutter_key_state2
+0x4a18 mem_shutter_key_state3
+0x4a22 mem_shutter_key_state4
+0x4a2c mem_shutter_key_state5
+0x4a36 mem_shutter_key_state6
+0x4a40 mem_key0_release_new
+0x4a4f mem_key1_release_new
+0x4a5e mem_key2_release_new
+0x4a6d mem_key3_release_new
+0x4a7c mem_key4_release_new
+0x4a8b mem_key5_release_new
+0x4a9a mem_key6_release_new
+0x4aa9 mem_key0_long_press
+0x4aac mem_key1_long_press
+0x4aaf mem_key2_long_press
+0x4ab2 mem_key3_long_press
+0x4ab5 mem_key4_long_press
+0x4ab8 mem_key5_long_press
+0x4abb mem_key6_long_press
+0x4abe mem_key0_long_release
+0x4ac1 mem_key1_long_release
+0x4ac4 mem_key2_long_release
+0x4ac7 mem_key3_long_release
+0x4aca mem_key4_long_release
+0x4acd mem_key5_long_release
+0x4ad0 mem_key6_long_release
+0x4ad3 mem_combine_key0
+0x4ad5 mem_combine_key1
+0x4ad7 mem_combine_key2
+0x4ad9 mem_combine_key3
+0x4adb mem_combine_key4
+0x4add mem_combine_key5
+0x4adf mem_combine_key_state0
+0x4ae1 mem_combine_key0_press
+0x4aeb mem_combine_key1_press
+0x4af5 mem_combine_key2_press
+0x4aff mem_combine_key3_press
+0x4b09 mem_combine_key4_press
+0x4b13 mem_combine_key5_press
+0x4b1d mem_combine_key_release
+0x4b27 mem_shutter_move_data
+0x4b2b mem_key0_press_i
+0x4b35 mem_key1_press_i
+0x4b3f mem_key2_press_i
+0x4b49 mem_key3_press_i
+0x4b53 mem_key4_press_i
+0x4b5d mem_key5_press_i
+0x4b67 mem_key0_release_new_i
+0x4b76 mem_key1_release_new_i
+0x4b85 mem_key2_release_new_i
+0x4b94 mem_key3_release_new_i
+0x4ba3 mem_key4_release_new_i
+0x4bb2 mem_key5_release_new_i
+0x4bc1 mem_key6_release_new_i
+0x4bd0 mem_key0_long_press_i
+0x4bd3 mem_key1_long_press_i
+0x4bd6 mem_key2_long_press_i
+0x4bd9 mem_key3_long_press_i
+0x4bdc mem_key4_long_press_i
+0x4bdf mem_key5_long_press_i
+0x4be2 mem_key6_long_press_i
+0x4be5 mem_key0_long_release_i
+0x4be8 mem_key1_long_release_i
+0x4beb mem_key2_long_release_i
+0x4bee mem_key3_long_release_i
+0x4bf1 mem_key4_long_release_i
+0x4bf4 mem_key5_long_release_i
+0x4bf7 mem_key6_long_release_i
+0x4bfa mem_key3_release_new_t
+0x4c04 mem_key3_release_new_i_t
+0x4c0e mem_key3_press_count
+0x4c0f mem_shutter_like_timeout
+0x4c10 mem_shutter_key_pressed
+0x4c11 mem_shutter_combine_key_release
+0x4c12 mem_shutter_mousekey_value_list
+0x4eba mem_shutter_back_count
+0x4ebb mem_shutter_le_conned
+0x4ebc mem_move_config
+0x4ebc mem_shutter_iphone_beyond_x_count
+0x4ebd mem_shutter_iphone_beyond_y_count
+0x4ebe mem_shutter_move_data_x
+0x4ec0 mem_shutter_move_data_y
+0x4ec2 mem_last_shutter_le_iphone_flag
+0x4ec3 mem_move_config_end
+0x4ec3 mem_shutter_back_count_cache
+0x4ec4 mem_shutter_iphone_beyond_x_cache
+0x4ec5 mem_shutter_iphone_beyond_y_cache
+0x4ec6 mem_shutter_iphone_move_mid
+0x4ed0 mem_shutter_long_key_released_flag
+0x4ed1 mem_shutter_move_mid_timer
+0x4ed2 mem_shutter_pairing_success
+0x4ed3 mem_combine_key_release_value
+0x4ed5 mem_last_press_key_value
+0x4ed6 mem_shutter_first_move
+0x4ed7 mem_move_mode_set
+0x4ed8 mem_move_mode_key_index
+0x4ed9 mem_move_mode_trigger_enable
+0x4eda mem_shutter_android_move_mid
+0x4edf mem_shutter_iphone_up_mid
+0x4ee9 mem_shutter_iphone_like_mid
+0x4ef3 mem_shutter_key_num_conf
+0x4ef4 mem_shutter_dy_key_conf
+0x4efb mem_le_dy_adv_data
+0x4f06 mem_le_dy_scan_data
+0x4f12 mem_ble_shutter_dy_interval_min_new
+0x4f1a mem_shutter_ble_discovery_time_conf
+0x4f22 mem_queue_dy_each_size
+0x4f24 mem_dy_key0_press
+0x4f2e mem_dy_key1_press
+0x4f38 mem_dy_key2_press
+0x4f42 mem_dy_key3_press
+0x4f4c mem_dy_key4_press
+0x4f56 mem_dy_key5_press
+0x4f60 mem_dy_key6_press
+0x4f6a mem_shutter_led_on_light_dark_led_conf
+0x4f71 mem_shutter_led_off_light_dark_led_conf
+0x4f78 mem_shutter_reconn_blink_on_time_conf
+0x4f7c mem_shutter_discovery_blink_on_time_conf
+0x4f80 mem_shutter_efuse_start_offset
+0x4f82 mem_shutter_efuse_end_offset
+0x4f84 mem_initial_move_conf
+0x4f84 mem_android_initial_move_x
+0x4f86 mem_android_initial_move_y
+0x4f88 mem_iphone_initial_move_x
+0x4f8a mem_iphone_initial_move_y
+0x4f8c mem_otp_move_config
+0x4f8c mem_otp_shutter_move_data_x
+0x4f8e mem_otp_shutter_move_data_y
+0x4f90 mem_otp_last_shutter_le_iphone_flag
+0x4f91 mem_otp_move_config_end
+0x4f91 mem_otp_write_offset_addr
+0x4f93 mem_otp_read_offset_addr
+0x4f95 mem_otp_read_ios_android_addr
+0x4f97 mem_shutter_le_pairing_handle
+0x4f99 mem_shutter_temp_count
+0x4f9b mem_shutter_first_read_flag
+0x4f9c mem_shutter_valid_data_flag
+0x4f9d mem_shutter_volume_timer
+0x4f9e mem_shutter_link_timer
+0x4f9f mem_shutter_link_data
+0x4fa7 mem_shutter_link_data_i
+0x4faf mem_shutter_link_loop_flag
+0x4fb0 mem_shutter_end
+
+0x45ed mem_mesh_vendor_timer_timing_index_cyclic
+0x45ee mem_mesh_vendor_timer_timing_time_cyclic
+0x45f0 mem_mesh_vendor_timer_timing_zone_cyclic
+0x45f2 mem_mesh_vendor_timer_timing_weekdays_cyclic
+0x45f3 mem_mesh_vendor_timer_timing_attr_type_cyclic
+0x45f5 mem_mesh_vendor_timer_timing_attr_para_len_cyclic
+0x45f6 mem_mesh_vendor_timer_timing_attr_para_cyclic
+0x45fe mem_mesh_vendor_timer_timing_cyclic_flag
+0x45ed mem_mesh_vendor_timer_timing_index
+0x45ee mem_mesh_vendor_timer_timing_time
+0x45f2 mem_mesh_vendor_timer_timing_attr_type
+0x45f4 mem_mesh_vendor_timer_timing_attr_para_len
+0x45f5 mem_mesh_vendor_timer_timing_attr_para
+0x45fd mem_mesh_vendor_timer_timing_flag
+0x4806 mem_mesh_fast_pairing_timer
+0x49a1 mem_mesh_filter_status_message_opcode
+0x49a2 mem_mesh_filter_status_message_FilterType
+0x49a3 mem_mesh_filter_status_message_ListSize
+0x49a5 mem_mesh_filter_status_message_MIC
+0x49a1 mem_mesh_unsegmented_access_lower_transport_layer_head
+0x49a2 mem_mesh_unsegmented_access_lower_transport_layer_parameters
+0x49ad mem_mesh_unsegmented_access_lower_transport_layer_mic
+0x49a1 mem_mesh_segmented_access_lower_transport_layer_head
+0x49a2 mem_mesh_segmented_access_lower_transport_layer_SZMIC_SeqZero_SegO_SegN
+0x49a5 mem_mesh_segmented_access_lower_transport_layer_parameters
+0x49ad mem_mesh_segmented_access_lower_transport_layer_mic
+0x475e mem_k2_EncryptionKey
+0x474e mem_k2_PrivacyKey
+(//mem_system_clk
+12 SYSTEM_CLK_12M
+24 SYSTEM_CLK_24M
+)
+(//bluetooth tx power
+0x00 TX_POWER_0DB
+0x03 TX_POWER_3DB
+0x05 TX_POWER_5DB
+0x06 TX_POWER_6DB
+0x07 TX_POWER_7DB
+0x0a TX_POWER_10DB
+
+0x83 TX_POWER_F3DB
+0x85 TX_POWER_F5DB
+0x8a TX_POWER_F10DB
+0x94 TX_POWER_F20DB
+0x9e TX_POWER_F30DB
+0xaa TX_POWER_FACTORY
+)
+(
+0x01 coffset_mode
+0x02 coffset_tsniff
+0x04 coffset_sniff_anchor
+0x08 coffset_clk_offset
+0x0e coffset_rx_window
+0x10 coffset_plap
+0x16 coffset_conn_handle
+0x17 coffset_arq
+	
+
+	
+0x18 coffset_le_ch
+0x19 coffset_le_hop
+0x1a coffset_le_event_cnt
+0x1c coffset_le_supervision_timer
+0x20 coffset_le_instant
+0x22 coffset_le_channels
+0x23 coffset_le_op
+0x24 coffset_le_access
+0x28 coffset_le_crcinit
+0x2b coffset_le_window_size
+0x2c coffset_le_slave_latency
+0x2e coffset_le_slave_superto
+0x30 coffset_le_channel_map
+0x35 coffset_le_rx_phy
+0x36 coffset_le_tx_phy
+0x37 coffset_le_new_map
+0x37 coffset_le_new_m2s_phy
+0x38 coffset_le_new_s2m_phy
+0x37 coffest_le_new_transmitwindowsize
+0x38 coffest_le_new_transmitwindowoffset
+0x3a coffest_le_new_conninterval
+0x3c coffest_le_new_connslavelatency
+0x3e coffest_le_new_connsupervisiontimeout
+0x40 coffset_le_sk
+0x50 coffset_le_peer_sca
+0x53 coffset_le_transmit_window
+
+83 context_size
+1 context_num
+)
+(
+0 lpm_flag_wake
+1 lpm_flag_loadcode
+)
+(
+0x0a00 param_snooze_setup_orig
+0x5353 param_snooze_ahead_orig
+
+
+
+0x0e43 param_tx_setup
+0x0600 param_rf_setup
+0x0600 param_conn_access
+0x03bb param_clke_cal
+0x0500 param_pll_setup		// 120 is minimum
+0x0d00 param_rx_setup	// 114us before sync
+2000 param_dpll_start_delay
+3750 param_rt_rthalfslot
+
+480 param_clke_cal_le_1m	//preamble(1B) & access address(4B) time (1+4)*8*1 * 12
+288 	param_clke_cal_le_2m	//preamble(2B) & access address(4B) time (1+4)*8*1 * 12
+282 param_clke_cal_le_coded	//preamble(80us) & access address(256us)-312.5us(0.5slot)
+
+110 param_lpm_fix
+10 param_lpo_extra
+200 param_lpm_adjmax
+
+-1 param_hibernate_clks
+
+1000 param_chgpump_delay_100us
+6000 param_chgpump_delay_500us
+12000 param_chgpump_delay_1ms
+
+
+0x000a04 param_lmp_version
+0x12e9 param_lmp_subversion
+0x0012 param_tisw
+0x0012 param_tpsw
+0x1000 param_tisi
+0x0800 param_tpsi
+39 param_fcomp_div
+2 param_fcomp_mul
+
+)
+(
+0        always        
+1        true          
+2        positive      
+3        timeout       
+4        init_adpcm
+5        zero          
+6        crc_failed    
+7        enable_white  
+8        enable_parity 
+9        enable_crc    
+10       enable_hec    
+11       decode_fec1   
+12       decode_fec2   
+13       decode_fec0   
+14       encrypt       
+15       crc16       
+16       swfine	
+20       rqst_freq    
+21       recalc        
+22       init_encrypt  
+23       mhalfbnd    
+24       sync          
+25       user10    
+26       kc_p_activate  
+27       encode_fec1   
+28       encode_fec2   
+29       encode_fec0   
+30       packet_end    
+32       is_tx         
+33       is_rx         
+34       halfslot     
+35       oneslot      
+36       mslotbnd     
+37       expire       
+38       meet         
+39       tx_clear     
+40       user         
+41       master        
+42       rxon         
+43       wake           
+44       user2        
+45       match         
+46       attempt        
+47       user3          
+48       clknt         
+49	   user7 	
+50       synchronize   
+51       lpo_edge  
+52       blank         
+53       modone          
+55       aes_ready	
+56       encode_fec3   
+57       dewhiten_code_calc   
+58       lr_s2en       
+60	   ble_coded_info	//1:s2 0:s8
+63       never         
+)
+default flag = always
+(
+0        mark   
+1        type   
+2        temp   
+3        contu  
+3	 contru	
+3	 contwu	
+4        am_addr      
+5        contw        
+6        contr        
+7        queue    
+8        debug    
+9        access   
+10       contus   
+11       timeup        
+12       pwindow       
+13       fhs_parity    
+14       white_init    
+15       crc24_init        
+16       contue    
+17       rega          
+18       regb          
+19       regc          
+20       regab         
+21       radio_ctrl   
+
+23       freq_index   
+24       regd    
+25       clkn              
+26       clke              
+27       stop_watch
+28       fhs_misc   
+29       fhs_class  
+30       fhs0   
+31       fhs1   
+32       bt_adr 
+33       bt_clk 
+34       clkn_bt  
+35       clkn_rt  
+36       freq_mode
+37       xin   
+38       N_tx_slot 
+39 	   auxcnt
+40       clke_bt  
+41       clke_rt  
+42       branch_addr	
+43       rege         
+44       lap
+45       uap
+46       nap
+47       regext		
+48       alarm             
+49       lpo_time          
+50       kc_ls             
+51       kc_ms             
+52       g1l               
+53		mask3ff		
+54       aes_ctrl
+55       regf			
+56       regext_index   
+57	     loopcnt
+58      stack			
+59       stack_ptr		
+61         pc 
+62       null              
+63       pdata 
+)
+default reg = pdata
+(
+0 regidx_data
+4 regidx_key
+8 regidx_xor
+12 regidx_result
+)
+(
+0 TXGFSK
+1 PSK
+2 PSK3M
+3 RESET
+)
+(
+0 bucket
+1 rxf
+2 back
+3 mod
+)
+default dest = bucket
+(
+1 txf
+3 demod
+)
+default source = 0
+(
+5  mark_loopback
+9  mark_context
+13 mark_lpm_mult_enable
+14 mark_usb_first_resp
+15 mark_old_packet
+35 mark_isstr
+36 mark_loadcode
+37 mark_ext_patch
+38 mark_24g
+39 mark_24g_rxmode
+40 mark_eeprom_size
+41 mark_ble_tx_md
+42 mark_ble_rx_md
+43 mark_otp_encrypt
+44 mark_temp
+45 mark_ble_2M
+46 mark_ble_lr_s8
+47 mark_ble_lr
+48 mark_ble_crc_fail
+50 mark_ble_encryption
+51 mark_first_packet
+)
+(
+1 reload_type_otp
+2 reload_type_spi
+3 reload_type_iic
+)
+(
+0 le_adv_interval_timer
+2 le_scan_interval_timer
+9 key_scan_timer
+7 smp_pairing_timer
+11  ui_led_blink
+
+8 G24_TIMER_NODATA
+13 G24_TIMER_MS_BLANK
+12 G24_TIMER_KB_MUL_BLANK
+10 G24_TIMER_KB_SYS_CRTL_BLANK
+14 G24_TIMER_KB_BLANK
+
+1 USB_TIMER_NAK
+15 USB_TIMER_WAKEUP
+)
+(
+
+27 hci_cmd_le_create_conn
+29 hci_cmd_le_disconn
+30 hci_cmd_le_att_req
+)
+(
+0 mode_le
+1 mode_master
+)
+(
+0 state_inconn
+1 state_insniff
+)
+(
+3 op_disconn
+)
+(
+0 wake_lock_ble_rx
+1 wake_lock_ble_tx
+
+3 wake_lock_key_press
+4 wake_lock_ble_tx_patch
+5 wake_lock_uart_tx
+6 wake_lock_uart_rx
+7 wake_lock_button
+8 wake_lock_cmd
+9 wake_lock_app
+12 wake_lock_l2cap_tx
+13 wake_lock_l2cap_rx
+14 wake_lock_ipc_c512bt
+15 wake_lock_ipc_bt2c51
+
+)
+(//mem_fcomp_div
+0x18 XTAL_24M
+0x10 XTAL_16M
+)
+( //verion
+6 BLUETOOTH_CORE_SPECIFICATION_4_0
+7 BLUETOOTH_CORE_SPECIFICATION_4_1
+8 BLUETOOTH_CORE_SPECIFICATION_4_2
+9 BLUETOOTH_CORE_SPECIFICATION_5_0
+10 BLUETOOTH_CORE_SPECIFICATION_5_1
+)
+(
+0x050e COMPANY_ID_YICHIP
+)
+(
+0x33  REC_3_MODE
+0x34  REC_4_MODE
+0x35  REC_4_MODE_STATIC_ADDRESS
+0x36  REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS
+0x37  REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS
+)
+(
+0 bt_disabled
+1 ble_disabled
+2 module_disable
+)
+(//mem_le_T_IFS
+150 PARAM_T_IFS_150US
+20000 PARAM_20MS_INIT
+-11 PARAM_SYNC_TIME_DIFFERENCE
+40 PARAM_CODED_C1_TERM1_TIME_40US
+1666 PARAM_WINDOWN_SIZE
+//T_IFS = 150-modem(CRC time)
+15000 param_sifs
+)
+(
+0 DEFAULT_STATES
+1 IPHONE_LOST_LTK
+2 MODULE_LOST_LTK
+3 LTK_NOT_LOST
+)
+	(
+	0x01 ERROR_UNKNOWN_HCI_COMMAND
+	0x02 ERROR_NO_CONNECTION
+	0x03 ERROR_HARDWARE_FAILURE
+	0x04 ERROR_PAGE_TIMEOUT
+	0x05 ERROR_AUTHENTICATION_FAILURE
+	0x06 ERROR_KEY_MISSING
+	0x07 ERROR_MEMORY_FULL
+	0x08 ERROR_CONNECTION_TIMEOUT
+	0x09 ERROR_MAX_CONNECTIONS
+	0x0A ERROR_MAX_SCO_CONNECTIONS
+	0x0B ERROR_MAX_ACL_CONNECTIONS
+	0x0C ERROR_COMMAND_DISALLOWED
+	0x0D ERROR_HOST_REJECT_LIMITED_RESOURCES
+	0x0E ERROR_HOST_REJECT_SECURITY_REASONS
+	0x0F ERROR_HOST_REJECT_REMOTE_IS_ONLY_PERSONAL
+	0x10 ERROR_HOST_TIMEOUT
+	0x11 ERROR_UNSUPPORTED_FEATURE_OR_PARAMETER_VALUE
+	0x12 ERROR_INVALID_HCI_COMMAND_PARAMETERS
+	0x13 ERROR_REMOTE_USER_TERMINATED_CONNECTION
+	0x14 ERROR_REMOTE_LOW_RESOURCES
+	0x15 ERROR_REMOTE_POWERING_OFF
+	0x16 ERROR_CONNECTION_TERMINATED_BY_LOCAL_HOST
+	0x17 ERROR_REPEATED_ATTEMPTS
+	0x18 ERROR_PAIRING_NOT_ALLOWED
+	0x19 ERROR_UNKNOWN_LMP_PDU
+	0x1A ERROR_UNSUPPORTED_REMOTE_FEATURE
+	0x1B ERROR_SCO_OFFSET_REJECTED
+	0x1C ERROR_SCO_INTERVAL_REJECTED
+	0x1D ERROR_SCO_AIR_MODE_REJECTED
+	0x1E ERROR_INVALID_LMP_PARAMETER
+	0x1F ERROR_UNSPECIFIED_ERROR
+	0x20 ERROR_UNSUPPORTED_LMP_PARAMETER_VALUE
+	0x21 ERROR_ROLE_CHANGE_NOT_ALLOWD
+	0x22 ERROR_LMP_RESPONSE_TIMEOUT
+	0x23 ERROR_ERROR_TRANSACTION_COLLISION
+	0x24 ERROR_LMP_PDU_NOT_ALLOWED
+	0x25 ERROR_ENCRYPTION_MODE_NOT_ACCEPTABLE
+	0x26 ERROR_UNIT_KEY_USED
+	0x27 ERROR_QOS_NOT_SUPPORTED
+	0x28 ERROR_INSTANT_PASSED
+	0x29 ERROR_PAIRING_W_UNIT_KEY_NOT_SUPPORTED
+	0x2a ERROR_DIFFERENT_TRANSACTION_COLLISION
+	0x2c ERROR_QOS_UNACCEPTABLE_PARAMETER
+	0x2d ERROR_QOS_REJECTED
+	0x2e ERROR_CHANNEL_CLASSIFICATION_NOT_SUPPORTED
+	0x2f ERROR_INSUFFICIENT_SECURITY
+	0x30 ERROR_PARAMETER_OUT_OF_MANDATORY_PANGE
+	0x32 ERROR_ROLE_SWITCH_PENDING
+	0x34 ERROR_RESERVED_SLOT_VIOLATION
+	0x35 ERROR_ROLE_SWITCH_FAILED
+	0x36 ERROR_EXTENDED_INQUIRY_RESPONSE_TOO_LARGE
+	0x37 ERROR_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST
+	0x38 ERROR_HOST_BUSY_PAIRING
+	0x3d ERROR_MIC_FAILURE
+	)
+	(
+	0X20 SPACE
+	)
+	(
+	0x0004 LE_L2CAP_CID_ATT
+	0x0005 LE_L2CAP_CID_SIGNAL
+	0x0006 LE_L2CAP_CID_SMP
+	)
+	(
+	0 LE_ADDR_TYPE_PUBLIC
+	1 LE_ADDR_TYPE_RANDOM
+	)
+	(
+	7 LE_RECEIVER_ADDR_BIT
+	6 LE_SENDER_ADDR_BIT
+	)
+	(
+	0x00 LE_SCAN_TYPE_PASSIVE //no SCAN_REQ shall be sent
+	0x01 LE_SCAN_TYPE_ACTIVE
+	)
+	(
+	0x00 LE_SCAN_DISABLE
+	0x01 LE_SCAN_ENABLE
+	0x0101 LE_ACTIVE_SCAN_ENABLE
+	)
+	(
+	0x01 UUID_SIZE_16BIT
+	0x02 UUID_SIZE_128BIT
+	)
+(
+3 lestate_got_first_packet
+4 lestate_encryption
+5 lestate_update_param
+6 lestate_update_map
+7 lestate_update_phy
+)
+(
+0 lemode_idle
+1 lemode_slave
+3 lemode_master
+5 lemode_2m
+6 lemode_lr
+7 lemode_lr_s8
+
+0x20 mode_2m
+0x40 mode_lr_s2
+0xc0 mode_lr_s8
+
+)
+(
+0 llid0
+1 llid1
+2 nesn
+3 sn
+4 md
+5 wak
+6 txdat
+)
+(
+0x00 LLID_RESERVED
+0x01 LLID_CONTINUE
+0x02 LLID_START
+0x03 LLID_LE_LL
+0x01 LLID_EMPTY
+)
+(
+4 LE_TX_BUFF_COUNT
+3 LE_TX_BUFF_UPDATE_LOOPCNT //LE_TX_BUFF_COUNT-1
+
+12 LE_MD_MAX_COUNT
+)
+(
+0 LE_INITATOR_LTK_BIT
+1 LE_INITATOR_IRK_BIT
+2 LE_INITATOR_CSRK_BIT
+)
+(
+0  LE_FIND_BY_TYPE_VAL_RES_NOT_FOUND
+1  LE_FIND_BY_TYPE_VAL_RES_FOUND_STARTING_HANDLE
+2  LE_FIND_BY_TYPE_VAL_RES_FOUND_ENDING_HANDLE
+
+)
+(
+0 MASTER_PUBLIC_ADDR
+1 MASTER_RANDOM_ADDR
+)
+(
+0x06 LE_ERR_PIN_OR_KEY_MISSING
+)
+(
+39 LE_CCM_DIRECTIONBIT
+)
+(
+36 BR_CCM_0_LENGTH_CONTINUATION
+37 BR_CCM_DIRECTIONBIT
+)
+(
+96000 TIMER_SMP_PAIRING_TIMEOUT //30S
+)
+(
+0 FLAG_LE_ENC_NULL
+1 FLAG_LE_RCV_ENC_START
+2 FLAG_LE_ENC_PAUSE
+3 FLAG_LE_RCV_START_ENC_RSP
+4 FLAG_LE_SEND_START_ENC_RSP
+5 FLAG_LE_SEND_START_ENC_REQ
+0xff FLAG_LE_ENC_END
+)
+(//mem_le_configuration
+//bit0:use fixed key , ble passkey pairing
+0 BIT_BLE_PASSKEY_FIXED_KEY
+//bit1:ble pairing use fixed long term key
+1 BIT_BLE_PAIRING_FIXED_LTK
+//bit2:ble transmit packet will set more data flag
+2 BIT_BLE_TRANSMIT_PACKET_BY_MD
+//bit3:master read handle, with requires an authenticated link
+3 BIT_BLE_READ_AUTH
+//bit4:master write handle, with requires an authenticated link
+4 BIT_BLE_WRITE_AUTH
+//bit5:cannot enter long sleep
+5 BIT_BLE_SHORT_MULT
+//bit6:DEAL baseband packet
+6 BIT_BLE_DEAL_BB_PACKET
+)
+(
+0x01	GAP_ADTYPE_FLAGS
+0x02	GAP_ADTYPE_16BIT_MORE
+0x03	GAP_ADTYPE_16BIT_COMPLETE
+0x04	GAP_ADTYPE_32BIT_MORE
+0x05	GAP_ADTYPE_32BIT_COMPLETE
+0x06	GAP_ADTYPE_128BIT_MORE
+0x07	GAP_ADTYPE_128BIT_COMPLETE
+0x08	GAP_ADTYPE_LOCAL_NAME_SHORT
+0x09	GAP_ADTYPE_LOCAL_NAME_COMPLETE
+0x0a	GAP_ADTYPE_POWER_LEVEL
+0x16	GAP_ADTYPE_SERVICE_DATA
+0x2a	GAP_ADTYPE_MESH_MESSAGE
+0x2b 	GAP_ADTYPE_MESH_BEACON
+0xff	GAP_ADTYPE_MANUFACTURER_SPECIFIC
+)
+(
+0 ADV_IND
+1 ADV_DIRECT_IND
+2 ADV_NONCONN_IND
+3 SCAN_REQ
+3 AUX_SCAN_REQ
+4 SCAN_RSP
+5 CONNECT_REQ
+5 AUX_CONNECT_REQ
+6 ADV_SCAN_IND
+)
+(
+0 BIT_ADV_CHANNEL_MAP_37
+1 BIT_ADV_CHANNEL_MAP_38
+2 BIT_ADV_CHANNEL_MAP_39
+)
+(
+0xa0 param_le_sca
+)
+(//bit of mem_le_l2cap_att_states
+0 BLE_L2CAP_SEND_INDICATION_PACKET
+0 BLE_L2CAP_RECV_CONFIRMATION_PACKET
+1 BLE_L2CAP_DEAL_WITH_CONTINUE_PACKET
+)
+(//bit map of att handle
+14 BIT_OF_ATT_HANDLE_READ_AUTHENTICATED
+15 BIT_OF_ATT_HANDLE_WRITE_AUTHENTICATED
+)
+(
+0 BIT_CHARACTERISTIC_BROADCAST
+1 BIT_CHARACTERISTIC_READ
+2 BIT_CHARACTERISTIC_WRITE_WITHOUT_RESPONSE
+3 BIT_CHARACTERISTIC_WRITE
+4 BIT_CHARACTERISTIC_NOTIFY
+5 BIT_CHARACTERISTIC_INDICATE
+6 BIT_CHARACTERISTIC_SIGNED_WRITE
+7 BIT_CHARACTERISTIC_EXTENDED_PROPERTIES
+)
+(
+0x01 ATTOP_ERROR_RESPONSE
+0x02 ATTOP_EXCHANGE_MTU_REQUEST
+0x03 ATTOP_EXCHANGE_MTU_RESPONSE
+0x04 ATTOP_FIND_INFORMATION_REQUEST
+0x05 ATTOP_FIND_INFORMATION_RESPONSE
+0x06 ATTOP_FIND_BY_TYPE_VALUE_REQUEST
+0x07 ATTOP_FIND_BY_TYPE_VALUE_RESPONSE
+0x08 ATTOP_READ_BY_TYPE_REQUEST
+0x09 ATTOP_READ_BY_TYPE_RESPONSE
+0x0A ATTOP_READ_REQUEST
+0x0B ATTOP_READ_RESPONSE
+0x0C ATTOP_READ_BLOB_REQUEST
+0x0D ATTOP_READ_BLOB_RESPONSE
+0x0E ATTOP_READ_MULTIPLE_REQUEST
+0x0F ATTOP_READ_MULTIPLE_RESPONSE
+0x10 ATTOP_READ_BY_GROUP_TYPE_REQUEST
+0x11 ATTOP_READ_BY_GROUP_TYPE_RESPONSE
+0x12 ATTOP_WRITE_REQUEST
+0x13 ATTOP_WRITE_RESPONSE
+0x16 ATTOP_PREPARE_WRITE_REQUEST
+0x17 ATTOP_PREPARE_WRITE_RESPONSE
+0x18 ATTOP_EXECUTE_WRITE_REQUEST
+0x19 ATTOP_EXECUTE_WRITE_RESPONSE
+0x1B ATTOP_HANDLE_VALUE_NOTIFICATION
+0x1D ATTOP_HANDLE_VALUE_INDICATION
+0x1E ATTOP_HANDLE_VALUE_CONFIRMATION
+0x52 ATTOP_WRITE_COMMAND
+0xD2 ATTOP_SIGNED_WRITE_COMMAND
+0x1f ATTOP_CONTINUE
+0x9e EMPTY_LE_DATA_PRE
+0x9f EMPTY_LE_DATA
+)
+(
+0x01 ATT_ERR_INVALID_HANDLE
+0x02 ATT_ERR_READ_NOT_PERMITTED
+0x03 ATT_ERR_WRITE_NOT_PERMITTED
+0x04 ATT_ERR_INVALID_PDU
+0x05 ATT_ERR_INSUFFICIENT_AUTHENTICATION
+0x06 ATT_ERR_REQUEST_NOT_SUPPORTED
+0x07 ATT_ERR_INVALID_OFFSET
+0x08 ATT_ERR_INSUFFICIENT_AUTHORIZATION
+0x09 ATT_ERR_PREPARE_QUEUE_FULL
+0x0A ATT_ERR_ATTRIBUTE_NOT_FOUND
+0x0B ATT_ERR_ATTRIBUTE_NOT_LONG
+0x0C ATT_ERR_INSUFFICIENT_ENCRYPTION_KEY_SIZE
+0x0D ATT_ERR_INVALID_ATTRIBUTE_VALUE_LENGTH
+0x0E ATT_ERR_UNLIKELY_ERROR
+0x0F ATT_ERR_INSUFFICIENT_ENCRYPTION
+0x10 ATT_ERR_UNSUPPORTED_GROUP_TYPE
+0x11 ATT_ERR_INSUFFICIENT_RESOURCES
+)
+(
+0X2900 CHARACTERTIC_EXTENDED_PROPERTIES
+0X2901 CHARACTERTIC_USER_DESCRIPTION
+0X2902 CLIENT_CHARACTERTIC_CONFIGURATION
+0X2903 SERVER_CHARACTERTIC_CONFIGURATION
+0X2904 CHARACTERTIC_PRESENTATION_FORMAT
+0X2905 CHARACTERTIC_AGGREGATE
+0X2906 VALID_RANGE
+0X2907 EXTERNAL_REPORT_REFERENCE
+0X2908 REPORT_REFERENCE
+0X290B ENVIR_SENSING_CONFIGURATION
+0X290C ENVIR_SENSING_MEASUREMENT
+0X290D ENVIR_SENSING_TRIGGER_SETTING
+)
+(
+0x1800 UUID_SERVICE_GENERIC_ACC
+0x1801 UUID_SERVICE_GENERIC_ATT
+0x180a UUID_SERVICE_DEVICE_INFO
+0x180f UUID_SERVICE_BATTERY
+0x1812 UUID_SERVICE_HIDS
+0x2800 UUID_GATT_PRIMARY_SERVICE
+0x2801 UUID_GATT_SECONDARY_SERVICE
+0X2802 UUID_GATT_INCLUDE
+0X2803 UUID_GATT_CHARACTERISTIC
+0X2A00 UUID_CHRCTR_DEVICE_NAME
+0X2A19 UUID_CHRCTR_BATTERY_LEVEL
+0X2A22 UUID_CHRCTR_KEYBOARD_INPUT
+0X2A23 UUID_CHRCTR_SYSTEM_ID
+0X2A25 UUID_CHRCTR_SERIAL_NUMBER
+0X2A26 UUID_CHRCTR_FIRMWARE
+0X2A32 UUID_CHRCTR_KEYBOARD_OUTPUT
+0X2A33 UUID_CHRCTR_MOUSE_INPUT
+0X2A4A UUID_CHRCTR_HID_INFO
+0X2A4B UUID_CHRCTR_REPORT_MAP
+0X2A4C UUID_CHRCTR_HID_CTRL_POINT
+0X2A4D UUID_CHRCTR_REPORT
+0X2A4E UUID_CHRCTR_PROTOCOL_MODE
+0X2A50 UUID_CHRCTR_PNP_ID
+)
+
+(
+23 ATT_DEFAULT_MTU
+)
+(
+0x12 L2CAP_CONNECTION_PARAMETER_UPDATE_REQUEST
+0x13 L2CAP_CONNECTION_PARAMETER_UPDATE_RESPONSE
+)
+(
+0x0000 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_ACCEPTED
+0x0001 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_REJECTED
+)
+(
+0x00 LE_PAIRING_MODE_NONE
+0x01 LE_PAIRING_MODE_LAGACY_JUSTWORK
+0x02 LE_PAIRING_MODE_LAGACY_PASSKEY
+0x04 LE_PAIRING_MODE_LAGACY_PASSKEY_RES_INPUT
+0x81 LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK
+0x82 LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC
+0x83 LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY
+0x84 LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY_RES_INPUT
+
+7 LE_PAIRING_MODE_SECURE_CONNECT_BIT
+)
+(
+0 FLAG_IOCAP_DISPLAYONLY
+1 FLAG_IOCAP_DISPLAYYESNO
+2 FLAG_IOCAP_KEYBOARDONLY
+3 FLAG_IOCAP_NOINPUTNOOUTPUT
+4 FLAG_IOCAP_KEYBOARDDISPLAY
+
+0x00 FLAG_OOB_DATA_FLAG_NO
+)
+(
+0x00 FLAG_LE_NO_BONDING_NO_MITM
+0x01 FLAG_LE_BONDING_NO_MITM
+0x04 FLAG_LE_NO_BONDING_MITM
+0x05 FLAG_LE_BONDING_MITM
+0x09 FLAG_LE_BONDING_NO_MITM_SECURE
+0x0D FLAG_LE_BONDING_MITM_SECURE
+
+2 LE_AUTH_MITM_BIT
+3 LE_AUTH_SECURE_CONNECTION_PAIRING_BIT
+)
+(
+0 FLAG_LE_PAIRING_NULL
+1 FLAG_LE_PAIRING_START
+2 FLAG_LE_PAIRING_SEND_RECURITY_REQ
+3 FLAG_LE_PAIRING_RCV_PAIRING_REQ
+4 FLAG_LE_PAIRING_WAIT_STK_GENERATION
+5 FLAG_LE_PAIRING_RECEIVE_PAIRING_CONFIRM
+6 FLAG_LE_PAIRING_SEND_PAIRING_CONFIRM
+7 FLAG_LE_PAIRING_RECEIVE_PAIRING_RANDOM
+8 FLAG_LE_PAIRING_SEND_PAIRING_RANDOM
+9 FLAG_LE_PAIRING_AFTER_AUTH
+10 FLAG_LE_PAIRING_SEND_START_ENC_RSP
+11 FLAG_LE_PARING_SEND_ENC_INFORMATION
+12 FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION
+13 FLAG_LE_PARING_SEND_INDENTITY_INFORMATION
+0xff FLAG_LE_PAIRING_END
+)
+(
+0x01 SMP_PAIRING_REQUEST
+0x02 SMP_PAIRING_RESPONSE
+0x03 SMP_PAIRING_CONFIRM
+0x04 SMP_PAIRING_RANDOM
+0x05 SMP_PAIRING_FAILED
+0x06 SMP_ENCRYPTION_INFORMATION
+0x07 SMP_MASTER_IDENTIFICATION
+0x08 SMP_IDENTITY_INFORMATION
+0x09 SMP_IDENTITY_ADDRESS_INFORMATION
+0x0A SMP_SIGNING_INFORMATION
+0x0B SMP_SECURITY_REQUEST
+0x0c SMP_PAIRING_PUBLIC_KEY
+0x0d SMP_PAIRING_DHKEY_CHECK
+)
+(// pairing failed reason
+0x00 PAIRING_FAILED_RESERVED
+0X01 PAIRING_FAILED_PASSKEY_ENTRY_FAILED
+0X02 PAIRING_FAILED_OOB_NOT_AVAILABLE
+0X03 PAIRING_FAILED_AUTHENTICATION_REQUIRE
+0X04 PAIRING_FAILED_CONFIRM_VALUE_FAILED
+0X05 PAIRING_FAILED_PAIRING_NOT_SUPPORTED
+0X06 PAIRING_FAILED_ENCRYPTION_KEY_SIZE
+0X07 PAIRING_FAILED_COMMAND_NOT_SUPPORTED
+0X08 PAIRING_FAILED_UNSPECIFIED_REASON
+0X09 PAIRING_FAILED_REPEATED_ATTEMPTS
+0X0A PAIRING_FAILED_INVALID_PARAMETERS
+0X0B PAIRING_FAILED_DHKEY_CHECK_FAILED
+0X0C PAIRING_FAILED_NUMERIC_COMPARISON_FAILED
+0X0D PAIRING_FAILED_BR_EDR_PAIRING_IN_PROGRESS
+0X0E PAIRING_FAILED_KEY_DERIVATION_GENERATION_NOT_ALLOWED
+)
+(
+0x00 LE_SC_STAT_NULL
+0x01 LE_SC_STAT_RECEIVE_PUBLIC_KEY
+0x02 LE_SC_STAT_WAIT_SEND_PUBLIC_KEY
+0x03 LE_SC_STAT_SEND_PUBLIC_KEY
+0x04 LE_SC_STAT_RECEIVE_RANDOM
+0x05 LE_SC_STAT_SEND_RANDOM
+0x06 LE_SC_STAT_RECEIVE_DHKEY
+0x07 LE_SC_STAT_WAIT_CONFIRM_GKEY
+0x08 LE_SC_STAT_PASSKEY_WAIT_CONFIRM
+)
+(
+0 FLAG_LE_SC_CONFRIM_NULL
+1 FLAG_LE_SC_CONFRIM_GKEY_OK
+)
+(
+0x00 LL_CONNECTION_UPDATE_IND
+0x01 LL_CHANNEL_MAP_IND
+0x02 LL_TERMINATE_IND
+0x03 LL_ENC_REQ
+0x04 LL_ENC_RSP
+0x05 LL_START_ENC_REQ
+0x06 LL_START_ENC_RSP
+0x07 LL_UNKNOWN_RSP
+0x08 LL_FEATURE_REQ
+0x09 LL_FEATURE_RSP
+0x0A LL_PAUSE_ENC_REQ
+0x0B LL_PAUSE_ENC_RSP
+0x0C LL_VERSION_IND
+0x0D LL_REJECT_IND
+0x0E LL_SLAVE_FEATURE_REQ
+0x0F LL_CONNECTION_PARAM_REQ
+0x10 LL_CONNECTION_PARAM_RSP
+0x11 LL_REJECT_IND_EXT
+0x12 LL_PING_REQ
+0x13 LL_PING_RSP
+0x14 LL_LENGTH_REQ
+0x15 LL_LENGTH_RSP
+0x16 LL_PHY_REQ
+0x17 LL_PHY_RSP
+0x18 LL_PHY_UPDATE_IND
+0x19 LL_MIN_USED_CHANNELS_IND
+0x1A LL_CTE_REQ
+0x1B LL_CTE_RSP
+0x1C LL_PERIODIC_SYNC_IND
+0x1D LL_CLOCK_ACCURACY_REQ
+0x1E LL_CLOCK_ACCURACY_RSP
+0x1F LL_CIS_REQ
+0x20 LL_CIS_RSP
+0x21 LL_CIS_IND
+0x22 LL_CIS_TERMINATE_IND
+0x23 LL_POWER_CONTROL_REQ
+0x24 LL_POWER_CONTROL_RSP
+0x25 LL_POWER_CHANGE_IND
+)
+(//bit map of mem_le_ll_feature
+//LL_FEATURE_REQ
+0 BIT_LL_FEATURE_LE_ENCRYPTION
+1 BIT_LL_FEATURE_CONNECTION_PARAMETERS_REQUEST_PROCEDURE
+2 BIT_LL_FEATURE_EXTENDED_REJECT_INDICATION
+3 BIT_LL_FEATURE_SLAVE_INITIATED_FEATURES_EXCHANGE
+4 BIT_LL_FEATURE_LE_PING
+5 BIT_LL_FEATURE_LE_DATA_PACKET_LENGTH_EXTENSION
+6 BIT_LL_FEATURE_LL_PRIVACY
+7 BIT_LL_FEATURE_EXTENDED_SCANNER_FILTER_POLICIES
+8 BIT_LL_FEATURE_LE_2M_PHY
+9 BIT_LL_FEATURE_STABLE_MODULATION_INDEX_TRANSMITTER
+10 BIT_LL_FEATURE_STABLE_MODULATION_INDEX_RECEIVER
+11 BIT_LL_FEATURE_LE_CODED_PHY
+12 BIT_LL_FEATURE_LE_EXTENDED_ADVERTISING
+13 BIT_LL_FEATURE_LE_PERIODIC_ADVERTISING
+14 BIT_LL_FEATURE_CHANNEL_SELECTION_ALGORITHM
+15 BIT_LL_FEATURE_LE_POWER_CLASS_1
+16 BIT_LL_FEATURE_MINIMUM_NUMBER_OF_USED_CHANNELS_PROCEDURE
+)
+(//function map of mem_le_ll_feature
+//LL_FEATURE_REQ
+0x1 FUN_LL_FEATURE_LE_ENCRYPTION
+0x2 FUN_LL_FEATURE_CONNECTION_PARAMETERS_REQUEST_PROCEDURE
+0x4 FUN_LL_FEATURE_EXTENDED_REJECT_INDICATION
+0x8 FUN_LL_FEATURE_SLAVE_INITIATED_FEATURES_EXCHANGE
+0x10 FUN_LL_FEATURE_LE_PING
+0x20 FUN_LL_FEATURE_LE_DATA_PACKET_LENGTH_EXTENSION
+0x40 FUN_LL_FEATURE_LL_PRIVACY
+0x80 FUN_LL_FEATURE_EXTENDED_SCANNER_FILTER_POLICIES
+0x100 FUN_LL_FEATURE_LE_2M_PHY
+0x200 FUN_LL_FEATURE_STABLE_MODULATION_INDEX_TRANSMITTER
+0x400 FUN_LL_FEATURE_STABLE_MODULATION_INDEX_RECEIVER
+0x800 FUN_LL_FEATURE_LE_CODED_PHY
+0x1000 FUN_LL_FEATURE_LE_EXTENDED_ADVERTISING
+0x2000 FUN_LL_FEATURE_LE_PERIODIC_ADVERTISING
+0x4000 FUN_LL_FEATURE_CHANNEL_SELECTION_ALGORITHM
+0x8000 FUN_LL_FEATURE_LE_POWER_CLASS_1
+0x10000 FUN_LL_FEATURE_MINIMUM_NUMBER_OF_USED_CHANNELS_PROCEDURE
+)
+(//bit of mem_le_tx_phys and mem_le_rx_phys
+0x00 BIT_LE_1M_PHY
+0x01 BIT_LE_2M_PHY
+0x02 BIT_LE_CODED_PHY
+
+0x02 BIT_LE_CODED_PHY_S2
+0x07 BIT_LE_CODED_PHY_S8
+)
+(//map of mem_le_tx_phys and mem_le_rx_phys
+0x01 FUN_TX_LL_1M_PHY
+0x02 FUN_TX_LL_2M_PHY
+0x04 FUN_TX_LL_CODED_PHY
+
+0x01 FUN_RX_LL_1M_PHY
+0x02 FUN_RX_LL_2M_PHY
+0x04 FUN_RX_LL_CODED_PHY
+)
+(//mem_24g_data_type
+1 TYPE_MS
+2 TYPE_KB
+0x07 bits_data
+//0-2 data type
+3 bit_abort
+4 bit_hop
+5 bit_sync
+//6-7 channel offset
+)
+(
+0 ERR_NULL
+1 ERR_SYNC_TO
+2 ERR_HEC
+3 ERR_LR_LEN
+4 ERR_TYPE
+5 ERR_LEN_OVER
+6 ERR_CRC
+)
+(//mem_24g_pair_sm
+0 STATE_24G_PAIRING_NULL
+1 STATE_24G_PAIRING_1
+2 STATE_24G_PAIRING_2
+3 STATE_24G_PAIRING_3
+4 STATE_24G_PAIRING_4
+0X11 STATE_24G_PAIRING_1_WAITING_ACK
+0X12 STATE_24G_PAIRING_2_WAITING_ACK
+0X13 STATE_24G_PAIRING_3_WAITING_ACK
+0X14 STATE_24G_PAIRING_4_WAITING_ACK
+0XFF STATE_24G_PAIRING_SUCCESS
+)
+(
+0x01 DATATYPE_DEVICE1	//mouse
+0x02 DATATYPE_DEVICE2	//keyboard
+0xaa DATATYPE_BIND		//bind step 1
+0x55 DATATYPE_CONFIG	//bind step 2
+0x22 DATATYPE_OK		//bind step 3
+0xff DATATYPE_ATTEMP	//reconn
+)
+(
+5 BIND_MODE_CONTINUE
+)
+(
+0 bit_ack_24g
+)
+(//mem_24g_reconn_type
+0 DEFAULT_24G_DEVICE
+1 FAST_CONN_AND_RECEIVER
+2 FAST_CONN_AND_3_0_ADDR
+3 RECEIVER_AND_3_0_ADDR
+4 PAIR_AND_3_0_ADDR
+)
+(
+0x50 RSSI_THRESH_NOISE
+)
+(
+1 NO_ACK_24G
+0 WITH_ACK_24G
+)
+(//mem_24g_conn_sm
+0 STATE_24G_STOP
+0 STATE_24G_START
+1 STATE_24G_PAIR
+2 STATE_24G_RECONN
+)
+(//mem_24g_transmit_by_interrupt
+1 G24_TX_TIMER_INT_ENABLE
+0 G24_TX_TIMER_INT_DISABLE
+)
+(
+1 OFFSET_DATA_TYPE
+2 OFFSET_LR_DATA_TYPE
+)
+(
+0x017700 G24_LONG_SLEEP_STEP1	//8ms
+0x36ee80 G24_LONG_SLEEP_STEP2	//300ms
+0x124f80 G24_LONG_SLEEP_STEP3	//100ms
+63500 G24_8MS_INTERVAL_PARAM		//8ms
+12210 G24_4MS_INTERVAL_PARAM
+)
+(
+50 POWER_CTRL_DECRS_THRESHOLD
+)
+(//status codes
+0 STATUS_CODE_SUCCESS
+)
+(
+0xD0 VENDOR_MESSAGE_ATTR_GET
+0xD1 VENDOR_MESSAGE_ATTR_SET
+0xD2 VENDOR_MESSAGE_ATTR_SET_UNACKNOWLEDGED
+0xD3 VENDOR_MESSAGE_ATTR_STATUS
+0xD4 VENDOR_MESSAGE_ATTR_INDICATION
+0xD5 VENDOR_MESSAGE_ATTR_CONFIRMATION
+0xCF VENDOR_MESSAGE_TRANSPARENT_MSG
+)
+(//configuration message and health message opcode
+0x80 MESH_CONFIGURATION_AND_HEALTH_MESSAGE_OPCODE_HEADER
+
+0x00 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_ADD
+0x01 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_UPDATE
+0x02 MESH_MESSAGE_OPCODE_CONFIG_COMPOSITION_DATA_STATUS
+0x03 MESH_MESSAGE_OPCODE_CONFIG_CONFIG_MODEL_PUBLICATION_SET
+0x04 MESH_MESSAGE_OPCODE_HEALTH_CURRENT_STATUS
+0x05 MESH_MESSAGE_OPCODE_HEALTH_FAULT_STATUS
+0x06 MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_PUBLICATION_STATUS
+0x00 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_DELETE_NO_HEAD
+0x01 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_GET_NO_HEAD
+0x02 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_LIST_NO_HEAD
+0x03 MESH_MESSAGE_OPCODE_CONFIG_APPKEY_STATUS_NO_HEAD
+0x04 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_GET_NO_HEAD
+0x05 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_SET_NO_HEAD
+0x06 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_SET_UNACKNOWLEDGED_NO_HEAD
+0x07 MESH_MESSAGE_OPCODE_HEALTH_ATTENTION_STATUS_NO_HEAD
+0x08 MESH_MESSAGE_OPCODE_CONFIG_COMPOSITION_DATA_GET_NO_HEAD
+0x09 MESH_MESSAGE_OPCODE_CONFIG_BEACON_GET_NO_HEAD
+0x0A MESH_MESSAGE_OPCODE_CONFIG_BEACON_SET_NO_HEAD
+0x0B MESH_MESSAGE_OPCODE_CONFIG_BEACON_STATUS_NO_HEAD
+0x0C MESH_MESSAGE_OPCODE_CONFIG_DEFAULT_TTL_GET_NO_HEAD
+0x0D MESH_MESSAGE_OPCODE_CONFIG_DEFAULT_TTL_SET_NO_HEAD
+0x0E MESH_MESSAGE_OPCODE_CONFIG_DEFAULT_TTL_STATUS_NO_HEAD
+0x0F MESH_MESSAGE_OPCODE_CONFIG_FRIEND_GET_NO_HEAD
+0x10 MESH_MESSAGE_OPCODE_CONFIG_FRIEND_SET_NO_HEAD
+0x11 MESH_MESSAGE_OPCODE_CONFIG_FRIEND_STATUS_NO_HEAD
+0x12 MESH_MESSAGE_OPCODE_CONFIG_GATT_PROXY_GET_NO_HEAD
+0x13 MESH_MESSAGE_OPCODE_CONFIG_GATT_PROXY_SET_NO_HEAD
+0x14 MESH_MESSAGE_OPCODE_CONFIG_GATT_PROXY_STATUS_NO_HEAD
+0x15 MESH_MESSAGE_OPCODE_CONFIG_KEY_REFRESH_PHASE_GET_NO_HEAD
+0x16 MESH_MESSAGE_OPCODE_CONFIG_KEY_REFRESH_PHASE_SET_NO_HEAD
+0x17 MESH_MESSAGE_OPCODE_CONFIG_KEY_REFRESH_PHASE_STATUS_NO_HEAD
+0x18 MESH_MESSAGE_OPCODE_CONFIG_MODEL_PUBLICATION_GET_NO_HEAD
+0x19 MESH_MESSAGE_OPCODE_CONFIG_MODEL_PUBLICATION_STATUS_NO_HEAD
+0x1A MESH_MESSAGE_OPCODE_CONFIG_MODEL_PUBLICATION_VIRTUAL_ADDRESS_SET_NO_HEAD
+0x1B MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_ADD_NO_HEAD
+0x1C MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_DELETE_NO_HEAD
+0x1D MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_DELETE_ALL_NO_HEAD
+0x1E MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_OVERWRITE_NO_HEAD
+0x1F MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_STATUS_NO_HEAD
+0x20 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_VIRTUAL_ADDRESS_ADD_NO_HEAD
+0x21 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_VIRTUAL_ADDRESS_DELETE_NO_HEAD
+0x22 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_VIRTUAL_ADDRESS_OVERWRITE_NO_HEAD
+0x23 MESH_MESSAGE_OPCODE_CONFIG_NETWORK_TRANSMIT_GET_NO_HEAD
+0x24 MESH_MESSAGE_OPCODE_CONFIG_NETWORK_TRANSMIT_SET_NO_HEAD
+0x25 MESH_MESSAGE_OPCODE_CONFIG_NETWORK_TRANSMIT_STATUS_NO_HEAD
+0x26 MESH_MESSAGE_OPCODE_CONFIG_RELAY_GET_NO_HEAD
+0x27 MESH_MESSAGE_OPCODE_CONFIG_RELAY_SET_NO_HEAD
+0x28 MESH_MESSAGE_OPCODE_CONFIG_RELAY_STATUS_NO_HEAD
+0x29 MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_SUBSCRIPTION_GET_NO_HEAD
+0x2A MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_SUBSCRIPTION_LIST_NO_HEAD
+0x2B MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_SUBSCRIPTION_GET_NO_HEAD
+0x2C MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_SUBSCRIPTION_LIST_NO_HEAD
+0x2D MESH_MESSAGE_OPCODE_CONFIG_LOW_POWER_NODE_POLLTIMEOUT_GET_NO_HEAD
+0x2E MESH_MESSAGE_OPCODE_CONFIG_LOW_POWER_NODE_POLLTIMEOUT_STATUS_NO_HEAD
+0x2F MESH_MESSAGE_OPCODE_HEALTH_FAULT_CLEAR_NO_HEAD
+0x30 MESH_MESSAGE_OPCODE_HEALTH_FAULT_CLEAR_UNACKNOWLEDGED_NO_HEAD
+0x31 MESH_MESSAGE_OPCODE_HEALTH_FAULT_GET_NO_HEAD
+0x32 MESH_MESSAGE_OPCODE_HEALTH_FAULT_TEST_NO_HEAD
+0x33 MESH_MESSAGE_OPCODE_HEALTH_FAULT_TEST_UNACKNOWLEDGED_NO_HEAD
+0x34 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_GET_NO_HEAD
+0x35 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_SET_NO_HEAD
+0x36 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_SET_UNACKNOWLEDGED_NO_HEAD
+0x37 MESH_MESSAGE_OPCODE_HEALTH_PERIOD_STATUS_NO_HEAD
+0x38 MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_PUBLICATION_GET_NO_HEAD
+0x39 MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_PUBLICATION_SET_NO_HEAD
+0x3A MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_SUBSCRIPTION_GET_NO_HEAD
+0x3B MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_SUBSCRIPTION_SET_NO_HEAD
+0x3C MESH_MESSAGE_OPCODE_CONFIG_HEARTBEAT_SUBSCRIPTION_STATUS_NO_HEAD
+0x3D MESH_MESSAGE_OPCODE_CONFIG_MODEL_APP_BIND_NO_HEAD
+0x3E MESH_MESSAGE_OPCODE_CONFIG_MODEL_APP_STATUS_NO_HEAD
+0x3F MESH_MESSAGE_OPCODE_CONFIG_MODEL_APP_UNBIND_NO_HEAD
+0x40 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_ADD_NO_HEAD
+0x41 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_DELETE_NO_HEAD
+0x42 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_GET_NO_HEAD
+0x43 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_LIST_NO_HEAD
+0x44 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_STATUS_NO_HEAD
+0x45 MESH_MESSAGE_OPCODE_CONFIG_NETKEY_UPDATE_NO_HEAD
+0x46 MESH_MESSAGE_OPCODE_CONFIG_NODE_IDENTITY_GET_NO_HEAD
+0x47 MESH_MESSAGE_OPCODE_CONFIG_NODE_IDENTITY_SET_NO_HEAD
+0x48 MESH_MESSAGE_OPCODE_CONFIG_NODE_IDENTITY_STATUS_NO_HEAD
+0x49 MESH_MESSAGE_OPCODE_CONFIG_NODE_RESET_NO_HEAD
+0x4A MESH_MESSAGE_OPCODE_CONFIG_NODE_RESET_STATUS_NO_HEAD
+0x4B MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_APP_GET_NO_HEAD
+0x4C MESH_MESSAGE_OPCODE_CONFIG_SIG_MODEL_APP_LIST_NO_HEAD
+0x4D MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_APP_GET_NO_HEAD
+0x4E MESH_MESSAGE_OPCODE_CONFIG_VENDOR_MODEL_APP_LIST_NO_HEAD
+0xF2 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_ADD_OW_NO_HEAD   //overwrite
+0xF3 MESH_MESSAGE_OPCODE_CONFIG_MODEL_SUBSCRIPTION_ADD_OW_STATUS
+)
+(//Modle message opcode
+0x82 MESH_MODULE_MESSAGE_OPCODE_HEADER
+
+0x01 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_GET_NO_HEAD
+0x02 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_SET_NO_HEAD
+0x03 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_SET_UNACKNOWLEDGED_NO_HEAD
+0x04 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONOFF_STATUS_NO_HEAD
+0x05 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_GET_NO_HEAD
+0x06 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_SET_NO_HEAD
+0x07 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_SET_UNACKNOWLEDGED_NO_HEAD
+0x08 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LEVEL_STATUS_NO_HEAD
+0x09 MESH_MODULE_MESSAGE_OPCODE_GENERIC_DELTA_SET_NO_HEAD
+0x0A MESH_MODULE_MESSAGE_OPCODE_GENERIC_DELTA_SET_UNACKNOWLEDGED_NO_HEAD
+0x0B MESH_MODULE_MESSAGE_OPCODE_GENERIC_MOVE_SET_NO_HEAD
+0x0C MESH_MODULE_MESSAGE_OPCODE_GENERIC_MOVE_SET_UNACKNOWLEDGED_NO_HEAD
+0x0D MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_GET_NO_HEAD
+0x0E MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_SET_NO_HEAD
+0x0F MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_SET_UNACKNOWLEDGED_NO_HEAD
+0x10 MESH_MODULE_MESSAGE_OPCODE_GENERIC_DEFAULT_TRANSITION_TIME_STATUS_NO_HEAD
+0x11 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_GET_NO_HEAD
+0x12 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_STATUS_NO_HEAD
+0x13 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_SET_NO_HEAD
+0x14 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ONPOWERUP_SET_UNACKNOWLEDGED_NO_HEAD
+0x15 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_GET_NO_HEAD
+0x16 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_SET_NO_HEAD
+0x17 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_SET_UNACKNOWLEDGED_NO_HEAD
+0x18 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LEVEL_STATUS_NO_HEAD
+0x19 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LAST_GET_NO_HEAD
+0x1A MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_LAST_STATUS_NO_HEAD
+0x1B MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_GET_NO_HEAD
+0x1C MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_STATUS_NO_HEAD
+0x1D MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_GET_NO_HEAD
+0x1E MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_STATUS_NO_HEAD
+0x1F MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_SET_NO_HEAD
+0x20 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x21 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_SET_NO_HEAD
+0x22 MESH_MODULE_MESSAGE_OPCODE_GENERIC_POWER_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x23 MESH_MODULE_MESSAGE_OPCODE_GENERIC_BATTERY_GET_NO_HEAD
+0x24 MESH_MODULE_MESSAGE_OPCODE_GENERIC_BATTERY_STATUS_NO_HEAD
+0x25 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_GET_NO_HEAD
+0x40 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_STATUS
+0x26 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_GET_NO_HEAD
+0x27 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_STATUS_NO_HEAD
+0x41 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_SET
+0x42 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_GLOBAL_SET_UNACKNOWLEDGED
+0x28 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_SET_NO_HEAD
+0x29 MESH_MODULE_MESSAGE_OPCODE_GENERIC_LOCATION_LOCAL_SET_UNACKNOWLEDGED_NO_HEAD
+0x2A MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTIES_GET_NO_HEAD
+0x43 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTIES_STATUS
+0x2B MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_GET_NO_HEAD
+0x44 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_SET
+0x45 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_SET_UNACKNOWLEDGED
+0x46 MESH_MODULE_MESSAGE_OPCODE_GENERIC_MANUFACTURER_PROPERTY_STATUS
+0x2C MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTIES_GET_NO_HEAD
+0x47 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTIES_STATUS
+0x2D MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_GET_NO_HEAD
+0x48 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_SET
+0x49 MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_SET_UNACKNOWLEDGED
+0x4A MESH_MODULE_MESSAGE_OPCODE_GENERIC_ADMIN_PROPERTY_STATUS
+0x2E MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTIES_GET_NO_HEAD
+0x4B MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTIES_STATUS
+0x2F MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_GET_NO_HEAD
+0x4C MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_SET
+0x4D MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_SET_UNACKNOWLEDGED
+0x4E MESH_MODULE_MESSAGE_OPCODE_GENERIC_USER_PROPERTY_STATUS
+0x4F MESH_MODULE_MESSAGE_OPCODE_GENERIC_CLIENT_PROPERTIES_GET
+0x50 MESH_MODULE_MESSAGE_OPCODE_GENERIC_CLIENT_PROPERTIES_STATUS
+0x30 MESH_MODULE_MESSAGE_OPCODE_SENSOR_DESCRIPTOR_GET_NO_HEAD
+0x51 MESH_MODULE_MESSAGE_OPCODE_SENSOR_DESCRIPTOR_STATUS
+0x31 MESH_MODULE_MESSAGE_OPCODE_SENSOR_GET_NO_HEAD
+0x52 MESH_MODULE_MESSAGE_OPCODE_SENSOR_STATUS
+0x32 MESH_MODULE_MESSAGE_OPCODE_SENSOR_COLUMN_GET_NO_HEAD
+0x53 MESH_MODULE_MESSAGE_OPCODE_SENSOR_COLUMN_STATUS
+0x33 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SERIES_GET_NO_HEAD
+0x54 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SERIES_STATUS
+0x34 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_GET_NO_HEAD
+0x55 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_SET
+0x56 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_SET_UNACKNOWLEDGED
+0x57 MESH_MODULE_MESSAGE_OPCODE_SENSOR_CADENCE_STATUS
+0x35 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTINGS_GET_NO_HEAD
+0x58 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTINGS_STATUS
+0x36 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_GET_NO_HEAD
+0x59 MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_SET
+0x5A MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_SET_UNACKNOWLEDGED
+0x5B MESH_MODULE_MESSAGE_OPCODE_SENSOR_SETTING_STATUS
+0x37 MESH_MODULE_MESSAGE_OPCODE_TIME_GET_NO_HEAD
+0x5C MESH_MODULE_MESSAGE_OPCODE_TIME_SET
+0x5D MESH_MODULE_MESSAGE_OPCODE_TIME_STATUS
+0x38 MESH_MODULE_MESSAGE_OPCODE_TIME_ROLE_GET_NO_HEAD
+0x39 MESH_MODULE_MESSAGE_OPCODE_TIME_ROLE_SET_NO_HEAD
+0x3A MESH_MODULE_MESSAGE_OPCODE_TIME_ROLE_STATUS_NO_HEAD
+0x3B MESH_MODULE_MESSAGE_OPCODE_TIME_ZONE_GET_NO_HEAD
+0x3C MESH_MODULE_MESSAGE_OPCODE_TIME_ZONE_SET_NO_HEAD
+0x3D MESH_MODULE_MESSAGE_OPCODE_TIME_ZONE_STATUS_NO_HEAD
+0x3E MESH_MODULE_MESSAGE_OPCODE_TAI_UTC_DELTA_GET_NO_HEAD
+0x3F MESH_MODULE_MESSAGE_OPCODE_TAI_UTC_DELTA_SET_NO_HEAD
+0x40 MESH_MODULE_MESSAGE_OPCODE_TAI_UTC_DELTA_STATUS_NO_HEAD
+0x41 MESH_MODULE_MESSAGE_OPCODE_SCENE_GET_NO_HEAD
+0x42 MESH_MODULE_MESSAGE_OPCODE_SCENE_RECALL_NO_HEAD
+0x43 MESH_MODULE_MESSAGE_OPCODE_SCENE_RECALL_UNACKNOWLEDGED_NO_HEAD
+0x5E MESH_MODULE_MESSAGE_OPCODE_SCENE_STATUS
+0x44 MESH_MODULE_MESSAGE_OPCODE_SCENE_REGISTER_GET_NO_HEAD
+0x45 MESH_MODULE_MESSAGE_OPCODE_SCENE_REGISTER_STATUS_NO_HEAD
+0x46 MESH_MODULE_MESSAGE_OPCODE_SCENE_STORE_NO_HEAD
+0x47 MESH_MODULE_MESSAGE_OPCODE_SCENE_STORE_UNACKNOWLEDGED_NO_HEAD
+0x9E MESH_MODULE_MESSAGE_OPCODE_SCENE_DELETE_NO_HEAD
+0x9F MESH_MODULE_MESSAGE_OPCODE_SCENE_DELETE_UNACKNOWLEDGED_NO_HEAD
+0x48 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_GET_NO_HEAD
+0x5F MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_STATUS
+0x49 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_GET_NO_HEAD
+0x4A MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_STATUS_NO_HEAD
+0x60 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_SET
+0x61 MESH_MODULE_MESSAGE_OPCODE_SCHEDULER_ACTION_SET_UNACKNOWLEDGED
+0x4B MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LIGHT_LIGHTNESS_GET_NO_HEAD
+0x4C MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_SET_NO_HEAD
+0x4D MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_SET_UNACKNOWLEDGED_NO_HEAD
+0x4E MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_STATUS_NO_HEAD
+0x4F MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_GET_NO_HEAD
+0x50 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_SET_NO_HEAD
+0x51 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_SET_UNACKNOWLEDGED_NO_HEAD
+0x52 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LINEAR_STATUS_NO_HEAD
+0x53 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LAST_GET_NO_HEAD
+0x54 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_LAST_STATUS_NO_HEAD
+0x55 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_GET_NO_HEAD
+0x56 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_STATUS_NO_HEAD
+0x57 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_GET_NO_HEAD
+0x58 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_STATUS_NO_HEAD
+0x59 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_SET_NO_HEAD
+0x5A MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x5B MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_SET_NO_HEAD
+0x5C MESH_MODULE_MESSAGE_OPCODE_LIGHT_LIGHTNESS_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x5D MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_GET_NO_HEAD
+0x5E MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_SET_NO_HEAD
+0x5F MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_SET_UNACKNOWLEDGED_NO_HEAD
+0x60 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_STATUS_NO_HEAD
+0x61 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_GET_NO_HEAD
+0x62 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_GET_NO_HEAD
+0x63 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_STATUS_NO_HEAD
+0x64 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_SET_NO_HEAD
+0x65 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_SET_UNACKNOWLEDGED_NO_HEAD
+0x66 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_STATUS_NO_HEAD
+0x67 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_GET_NO_HEAD
+0x68 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_STATUS_NO_HEAD
+0x69 MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_SET_NO_HEAD
+0x6A MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x6B MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_SET_NO_HEAD
+0x6C MESH_MODULE_MESSAGE_OPCODE_LIGHT_CTL_TEMPERATURE_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x6D MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_GET_NO_HEAD
+0x6E MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_GET_NO_HEAD
+0x6F MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_SET_NO_HEAD
+0x70 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_SET_UNACKNOWLEDGED_NO_HEAD
+0x71 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_HUE_STATUS_NO_HEAD
+0x72 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_GET_NO_HEAD
+0x73 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_SET_NO_HEAD
+0x74 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_SET_UNACKNOWLEDGED_NO_HEAD
+0x75 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SATURATION_STATUS_NO_HEAD
+0x76 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SET_NO_HEAD
+0x77 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_SET_UNACKNOWLEDGED_NO_HEAD
+0x78 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_STATUS_NO_HEAD
+0x79 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_TARGET_GET_NO_HEAD
+0x7A MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_TARGET_STATUS_NO_HEAD
+0x7B MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_GET_NO_HEAD
+0x7C MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_STATUS_NO_HEAD
+0x7D MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_RANGE_GET_NO_HEAD
+0x7E MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_RANGE_STATUS_NO_HEAD
+0x7F MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_SET_NO_HEAD
+0x80 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x81 MESH_MODULE_MESSAGE_OPCODE_LIGHT_HSL_RANGE_SET_NO_HEAD
+0x83 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_GET_NO_HEAD
+0x84 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_SET_NO_HEAD
+0x85 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_SET_UNACKNOWLEDGED_NO_HEAD
+0x86 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_STATUS_NO_HEAD
+0x87 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_TARGET_GET_NO_HEAD
+0x88 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_TARGET_STATUS_NO_HEAD
+0x89 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_GET_NO_HEAD
+0x8A MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_STATUS_NO_HEAD
+0x8B MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_GET_NO_HEAD
+0x8C MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_STATUS_NO_HEAD
+0x8D MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_SET_NO_HEAD
+0x8E MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_DEFAULT_SET_UNACKNOWLEDGED_NO_HEAD
+0x8F MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_SET_NO_HEAD
+0x90 MESH_MODULE_MESSAGE_OPCODE_LIGHT_XYL_RANGE_SET_UNACKNOWLEDGED_NO_HEAD
+0x91 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_GET_NO_HEAD
+0x92 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_SET_NO_HEAD
+0x93 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_SET_UNACKNOWLEDGED_NO_HEAD
+0x94 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_MODE_STATUS_NO_HEAD
+0x95 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_GET_NO_HEAD
+0x96 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_SET_NO_HEAD
+0x97 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_SET_UNACKNOWLEDGED_NO_HEAD
+0x98 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_OM_STATUS_NO_HEAD
+0x99 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_GET_NO_HEAD
+0x9A MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_SET_NO_HEAD
+0x9B MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_SET_UNACKNOWLEDGED_NO_HEAD
+0x9C MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_LIGHT_ONOFF_STATUS_NO_HEAD
+0x9D MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_GET_NO_HEAD
+0x62 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_SET
+0x63 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_SET_UNACKNOWLEDGED
+0x64 MESH_MODULE_MESSAGE_OPCODE_LIGHT_LC_PROPERTY_STATUS)
+
+// status code
+(
+0x00 MESH_SUCCESS
+0x01 MESH_INVALID_ADDRESS
+0x02 MESH_INVALID_MODEL
+0x03 MESH_INVALID_APPKEYINDEX
+0x04 MESH_INVALID_NETKEYINDEX
+0x05 MESH_INSUFFICIENT_RESOURCES
+0x06 MESH_KEYINDEX_ALREAD_STORED
+0x07 MESH_INVALID_PUBLISH_PARAMETERS
+0x08 MESH_NOT_A_SUBSCRIBE_MODEL
+0x09 MESH_STORAGE_FAILURE
+0x0a MESH_FEATURE_NOT_SUPPORTED
+0x0b MESH_CANNOT_UPDATE
+0x0c MESH_CANNOT_REMOVE
+0x0d MESH_CANNOT_BIND
+0x0e MESH_TEMPORARILY_UNABLE_TO_CHANGE_STATE
+0x0f MESH_CANNOT_SET
+0x10 MESH_UNSPECIFIED_ERROR
+0x11 MESH_INVALID_BINDING
+)
+(
+0x00F0 VENDOR_MESSAGE_TMALL_DST
+)
+(// vendor model attribute
+0x0123 VENDOR_ATTR_COLOR_SERVER
+0x0100 VENDOR_ATTR_GENERIC_ONOFF_SERVER
+0x0121 VENDOR_ATTR_LIGHTNESS_LEVEL_SERVER
+0x0122 VENDOR_ATTR_COLOR_TEMPERATURE_SERVER
+0x0534 VENDOR_ATTR_MAIN_LIGHT_SERVER
+0x0533 VENDOR_ATTR_BACKGROUND_LIGHT_ONOFF_SERVER
+0xf004 VENDOR_ATTR_SCENE_SERVER
+)
+(//Timer opcode
+0x01A8 VENDOR_MESSAGE_OPCODE_COMPANY_ID
+//ʱ��
+0xF01F VENDOR_MESSAGE_ATTR_TYPE_TIME
+//ʱ��
+0xF01E VENDOR_MESSAGE_ATTR_TYPE_TIME_ZONE
+//��ʱ
+0xF01D VENDOR_MESSAGE_ATTR_TYPE_ON_TIME
+//��ʱ
+0xF010 VENDOR_MESSAGE_ATTR_TYPE_TIMING
+//���ڶ�ʱ
+0xF011 VENDOR_MESSAGE_ATTR_TYPE_CYCLE_TIMING
+//ɾ����ʱ
+0xF012 VENDOR_MESSAGE_ATTR_TYPE_DELETE_TIMING
+
+//��ɫ
+0x0123 VENDOR_MESSAGE_ATTR_TYPE_COLOR
+//����
+0x0534 VENDOR_MESSAGE_ATTR_TYPE_MAIN_LIGHT
+//�����
+0x0533 VENDOR_MESSAGE_ATTR_TYPE_BACKGROUND_LIGHT
+)
+(//��èevent�¼���
+//�豸�������¼��������ϵ���߶�ʱ���
+0xF009 VENDOR_ATTR_TYPE_EVENT_TRIGGER
+
+//��è�豸�ϵ�
+0x03 VENDOR_MESSAGE_EVENT_DEVICE_POWER_ON
+//��è��ʱ���
+0x11 VENDOR_MESSAGE_EVENT_FINISH_TIMING
+)
+(
+0x80 VENDOR_MESSAGE_SEND_TID_MIN
+0xC0 VENDOR_MESSAGE_SEND_TID_MAX
+)
+(
+0x59 TIMER_CYCLICAL_FALG
+60 SECONDS_OF_MIN
+345600 SECONDS_OF_FOUR_DAYS
+604800 SECONDS_OF_WEEK
+86400 SECONDS_OF_DAY
+0x01e0 EIGHT_HOURS_TIME_ZONE_OFFSET
+
+)
+(
+0xF013 VENDOR_MSEEAGE_ATTR_TYPE_SET_TIME_SINGLE
+0xF014 VENDOR_MSEEAGE_ATTR_TYPE_SET_TIME_REPEAT
+0xF015 VENDOR_MSEEAGE_ATTR_TYPE_SET_TIME_CIRCULATION
+0xF016 VENDOR_MSEEAGE_ATTR_TYPE_TIMER_ENABLE
+0xF017 VENDOR_MESSAGE_ATTR_TYPE_TIMER_DELEATE
+0xF018 VENDOR_MESSAGE_ATTR_TYPE_TIMER_INQUIRE
+0xF019 VENDOR_MESSAGE_ATTR_TYPE_TIMER_EVENT_INQUIRE
+
+)
+(
+0xF020 VENDOR_ATTR_TYPE_EVENT_INDEX_REPORT
+)
+(
+0x0d MESH_X_TIMERS
+)
+(
+6 ADV_PACKET_MIN_LENGTH
+37 ADV_PACKET_MAX_LENGTH
+
+1 AD_TYPE_MIN_LENGTH
+30 AD_TYPE_MAX_LENGTH
+)
+(
+13 mesh_ble_rx_timer
+)
+(//transport mic cache parameter
+10 TRANSPORT_MIC_CACHE_SPACE_NUM
+4 TRANSPORT_MIC_CACHE_SPACE_SIZE
+//�ܳ�����һ��space
+36 TRANSPORT_MIC_CACHE_TOTAL_SIZE
+)
+(
+0x00 MESH_EEP_THREE_TUPLE_OFFSET
+0x1a MESH_EEP_NETWORK_KEY_OFFSET
+0x2d MESH_EEP_APPLICATION_KEY_OFFSET
+0x3d MESH_EEP_DEVICE_KEY_OFFSET
+0x4d MESH_EEP_RESET_COUNT_OFFSET
+0x4e MESH_EEP_SEQ_OFFSET
+0x51 MESH_EEP_SUBSCRIPTION_OFFSET
+0x91 MESH_EEP_PROV_RANDOM_OFFSET
+)
+(
+0x1a MESH_EEP_THREE_TUPLE_LENGTH
+0x13 MESH_EEP_NETWORK_KEY_LENGTH
+0x10 MESH_EEP_APPLICATION_KEY_LENGTH
+0x10 MESH_EEP_DEVICE_KEY_LENGTH
+0x01 MESH_EEP_RESET_COUNT_LENGTH
+0x03 MESH_EEP_SEQ_LENGTH
+0x10 MESH_EEP_SUBSCRIPTION_LENGTH
+0x40 MESH_EEP_SUBSCRIPTION_TOTAL_LENGTH
+0x04 MESH_EEP_PROV_RANDOM_LENGTH
+)
+(
+0x1e000 MESH_FLASH_NETWORK_KEY_ADDR
+0x1e100 MESH_FLASH_APPLICATION_KEY_ADDR
+0x1e200 MESH_FLASH_DEVICE_KEY_ADDR
+0x1f000 MESH_FLASH_MESSAGE_SEQ_ADDR
+0x1e400 MESH_FLASH_SUBSCRIPTION_ADDR
+0x1e500 MESH_FLASH_PROV_RANDOM_ADDR
+)
+(//mem_mesh_advertising_unprovisioned_device_beacon_switch
+0 DEVICE_BEACON_OFF
+1 DEVICE_BEACON_ON
+)
+(
+//δ�����㲥��ʱ10min
+0x1770	ADV_UNPROVISIONED_DEVICE_BEACON_TIMEOUT
+//δ�����㲥���500ms
+5		ADV_UNPROVISIONED_DEVICE_BEACON_INTERVAL
+//δ�����㲥ʱ��120ms=20ms*6
+6		ADV_UNPROVISIONED_DEVICE_BEACON_DURATION
+
+//��Ĭ�㲥��ʱ:��
+0		ADV_SILENCE_DEVICE_BEACON_TIMEOUT
+//��Ĭ�㲥���60s
+600		ADV_SILENCE_DEVICE_BEACON_INTERVAL
+//��Ĭ�㲥ʱ��120ms=20ms*6
+6		ADV_SILENCE_DEVICE_BEACON_DURATION
+
+
+//������㲥���
+0x4		ADV_PAIRING_MESH_MESSAGE_INTERVAL
+//������㲥ʱ��
+20		ADV_PAIRING_MESH_MESSAGE_DURATION
+
+30		ADV_RELAY_MESH_MESSAGE_DURATION
+)
+(
+0x12 MAX_APP_MSSAGE_PAYLOAD_LENGTH
+7 BIT_OF_APP_PACKAGE_NUM
+6 BIT_OF_ADV_IN_OFF
+)
+(
+//mesh �ظ�APP�㲥���24*0.625ms = 15ms
+0x15 MESH_ADV_APP_MESSAGE_INTERVAL
+//mesh�ظ�tmall�㲥���32*0.625ms = 20ms
+0x1d MESH_ADV_TMALL_MESSAGE_INTERVAL
+)
+(
+13 mesh_ble_adv_app
+//Tiny Mesh�㲥tmall�ظ�
+14 mesh_ble_adv_tmall
+//Tiny Mesh relay
+15 mesh_ble_relay_timer
+)
+(
+0x2c COMMA
+-4 DECREASED_FOUR
+
+)
+(
+0x19 MIC_SIZE_64BIT
+0x09 MIC_SIZE_32BIT
+)
+(
+33 GATT_RECEIVE_MSG_BUFFER_SIZE
+)
+(//mem_mesh_provisioned_flag
+0 PAIRED_STATUS
+1 UNPROVISIONED_BEACON_STATUS
+2 PAIRING_STATUS
+3 SILENCE_BEACON_STATUS
+4 RECEIVED_CONFIG_APPKEY_ADD
+5 WAIT_RECEIVE_APPKEY
+6 RECEIVE_CONFIG_COMPOSITION_DATA_GET
+)
+(//mem_mesh_UUID_FeatureFlag
+0 BIT_SILENCE_ADV_FLAG
+)
+(
+0x01 UNPROVISIONED_ADLEN_LENGTH
+0x01 UNPROVISIONED_ADTYPE_LENGTH
+0x01 UNPROVISIONED_DEVICE_BEACON_LENGTH
+0x10 UNPROVISIONED_DEVICE_UUID_LENGTH
+0x02 UNPROVISIONED_OOB_INFORMATION_LENGTH
+)
+(
+0x00 UNPROVISIONED_DEVICE_BEACON
+0x01 SECURE_NETWORK_BEACON
+0x1827 MESH_PROVISIONING_UUID
+0x1828 MESH_PROXY_SERVICE
+
+)
+(
+0x00 PROVISIONING_RANDOM
+0x01 PROVISIONING_CONFIRMATION
+0x02 PROVISIONING_DATA
+0x03 PROVISIONING_COMPLETE
+0x04 PROVISIONING_CONFIG
+0x05 PROVISIONING_CONFIG_ACK
+0x06 PROVISIONING_IOS_DATA
+0x07 PROVISIONING_SEND_IOS_DATA
+0x09 PROVISIONING_ADD_APPKEY
+0x0A PROVISIONING_ADD_APPKEY_ACK
+)
+(//mem_mesh_Provisioning_State_Flag
+// FLAG bit1:Provisioning Confirmation
+1 RECEIVE_PROVISIONING_RANDOM
+2 RECEIVE_PROVISIONING_DATA
+3 RECEIVE_PROVISIONING_ADD_APPKEY
+)
+(//provisioning packet info size
+3 PROVISIONING_PACKET_LENGTH_FLAGS
+6 PROVISIONING_PACKET_LENGTH_AD_TYPE_COMPANY_ID_VID_PROVISIONING_TYPE
+5 PROVISIONING_PACKET_AD_TYPE_COMPANY_ID_VID_PROVISIONING_TYPE
+1 PROVISIONING_PACKET_LENGTH
+1 PROVISIONING_PACKET_AD_TYPE
+2 PROVISIONING_PACKET_COMPANY_ID
+1 PROVISIONING_PACKET_VID
+1 PROVISIONING_PACKET_PROVISIONING_TYPE
+//provisioning random
+2 PROVISIONING_PACKET_RANDOM_MAC
+8 PROVISIONING_PACKET_RANDOM_RANDOM_A
+8 PROVISIONING_PACKET_RANDOM_RANDOM_B
+//provisioning confirmation
+2 PROVISIONING_PACKET_CONFIRMATION_MAC
+16 PROVISIONING_PACKET_CONFIRMATION_DEVICE
+//provisioning complete
+6 PROVISIONING_PACKET_COMPLETE_MAC
+//provisioning add appkey ack
+7 PROVISIONING_PACKET_ADD_APPKEY_ACK
+
+2 PROVISIONING_CONFIG_ACK_MAC
+1 PROVISIONING_CONFIG_ACK_FIELD
+
+)
+(
+0x01 PROVISIONING_CONFIG_ACK_NOTE
+)
+(//gatt package struct
+0 GATT_PACKAGE_MSG_ID
+1 GATT_PACKAGE_PACKAGE_NUM
+2 GATT_PACKAGE_LENGTH
+3 GATT_PACKAGE_PAYLOAD
+)
+(
+0x12 MAX_LENGTH_PRIVISIONING_CONTROL_MSG_ANDROID
+0x08 MAX_LENGTH_PRIVISIONING_CONTROL_MSG_IOS
+0x07 MAX_LENGTH_PRIVISIONING_PAIRING_MSG_IOS
+)
+(
+4 MAX_GATT_PACKAGE_NUM
+50 GATT_RECEIVE_TIMEOUT
+)
+(//mem_mesh_fast_pairing_timer
+300 FAST_PAIRING_TIMEOUT_PROVISIONING
+200 FAST_PAIRING_TIMEOUT_PROXY
+)
+(//mem_mesh_add_appkey_ack_timer
+2 FAST_PAIRING_TIMEOUT_ADD_APPKEY_ACK
+)
+(
+8 SUBSCRIPTION_MAX_COUNT
+)
+(
+20 HEALTH_NODE_RESET_TIMEOUT
+)
+(//typedef struct of mem_mesh_element_device
+0 ELEMENT_DEVICE_GROUP_ADDR
+2 ELEMENT_DEVICE_QUEUE_BUFFER_PTR
+4 ELEMENT_DEVICE_VENDOR_TIME_PTR
+6 ELEMENT_DEVICE_SUBSCRIPTION_LABEL
+22 ELEMENT_DEVICE_UPPER_ADV_FLAG
+23 ELEMENT_DEVICE_UPPER_QUEUE_PTR
+25 ELEMENT_DEVICE_TRAN_PACKAGE_TID
+26 ELEMENT_DEVICE_TRAN_PACKAGE_TYPE
+27 SIZEOF_ELEMENT_DEVICE
+
+)
+(
+36 MESH_SEGMENT_SIZE
+)
+(
+320 MESH_TIMER_BUFFER_SIZE
+)
+(//bit map of mem_mesh_core_feature
+0 MESH_FEATURE_DISABLE_LOG
+1 MESH_FEATURE_DISABLE_RELAY
+2 MESH_FEATURE_DISABLE_SUBSCRIPTION
+3 MESH_FEATURE_DISABLE_APP_PAIRING
+)
+(//taobao id
+0x01a8	COMPANY_IDENTIFIERS_ALIBABA
+0x0d	ALI_MESH_VID_NUMBER
+0x0da801 COMPANY_ID_ALIBABA_AND_VID
+0x0ea801 COMPANY_ID_ALIBABA_AND_VID_GATT
+)
+(
+0x00 MESH_CODE_INIT
+0x01 MESH_RECEIVE_PROVISIONING_PACKET
+0x02 MESH_RECEIVE_PROVISIONING_RANDOM_PACKET
+0x03 MESH_SEND_PROVISIONING_CONFIRMATION_PACKET
+0x04 MESH_RECEIVE_PROVISIONING_DATA_PACKET
+0x05 MESH_SEND_PROVISIONING_COMPLETE_PACKET
+0x06 MESH_RECEIVE_PROVISIONING_FAILED_PACKET
+0x07 MESH_RECEIVE_PROVISIONING_ADD_APPKEY_PACKET
+0x08 MESH_SEND_PROVISIONING_ADD_APPKEY_ACK_PACKET
+
+0x10 MESH_ENCRYPT_SHA256_FUNCTION_INPUT
+0x11 MESH_ENCRYPT_SHA256_FUNCTION_RESULT
+0x12 MESH_ENCRYPT_AES_CMAC_FUNCTION_INPUT_M
+0x13 MESH_ENCRYPT_AES_CMAC_FUNCTION_INPUT_K
+0x14 MESH_ENCRYPT_AES_CMAC_FUNCTION_RESULT
+
+0x20 MESH_NETWORK_RECEIVE_PACKET
+0x21 MESH_NETWORK_RELAY_PACKET
+
+0x30 MESH_LOWER_RECEIVE_PACKET
+0x40 MESH_UPPER_RECEIVE_PACKET
+0x41 MESH_UPPER_SEND_PACKET
+
+0x50 MESH_ACCESS_RECEIVE_MESSAGE
+
+0x60 MESH_PROXY_RECEIVE_MESSAGE_HANDLE
+0x61 MESH_PROXY_RECEIVE_MESSAGE
+
+0xF0 MESH_MESSAGE_GENERIC_ONOFF_SET
+0xF1 MESH_MESSAGE_SET_LIGHT_LIGHTNESS
+0xF2 MESH_MESSAGE_SET_CTL
+)
+(//LUA LOG
+0xAA LUA_LOG_PACKET_HEADER
+0x03 LUA_LOG_PAKCET_TYPE
+0xBB LUA_LOG_PACKET_TRAIL
+)
+(//logging level
+0 LOGGING_DEBUG
+1 LOGGING_INFO
+2 LOGGING_WARNING
+3 LOGGING_ERROR
+4 LOGGING_CRITICAL
+)
+(
+0x1c00 mem_mesh_uart_log_rx_buff
+0x1c01 mem_mesh_uart_log_rx_buff_end
+0x1c02 mem_mesh_uart_log_tx_buff
+0x1fff mem_mesh_uart_log_tx_buff_end
+)
+(
+0x77 MESH_PAIRED_INFO_LENGTH
+)
+(
+0x01 MESH_CHIP_FROM_EEPROM
+0x02 MESH_CHIP_FROM_FLASH
+)
+(
+7 TRANSPORT_HEAD_BIT_SEG
+6 TRANSPORT_HEAD_BIT_AKF
+05 TRANSPORT_HEAD_BIT_AID
+7 BIT_CTL
+)
+(//Generic OnOff
+0x00 GENERIC_ONOFF_CMD_OFF
+0x01 GENERIC_ONOFF_CMD_ON
+)
+(//LIGHTNESS
+0xFFFF ALI_MESH_LIGHTNESS_MAX
+0x0064 ALI_MESH_LIGHTNESS_LEVEL
+)
+(//TEMPERATURE
+0x4E20 ALI_MESH_TEMPERATURE_MAX
+0x0320 ALI_MESH_TEMPERATURE_MIN
+0x0064 ALI_MESH_TEMPERATURE_LEVEL
+)
+(//nonce type
+0x00 NETWORK_NONCE
+0x01 APPLICATION_NONCE
+0x02 DEVICE_NONCE
+0x03 PROXY_NONCE
+)
+(
+0x00c0 GROUP_ADDRESS_0XC000_little_endian
+0xffcf GROUP_ADDRESS_0XCFFF_little_endian
+0x02c0 GROUP_ADDRESS_0XC002_little_endian
+0x07c0 GROUP_ADDRESS_0XC007_little_endian
+0x01c0 GROUP_ADDRESS_0XC001_little_endian
+0xffff GROUP_ADDRESS_0XFFFF_little_endian
+)
+(//SRC SEQ cache parameter
+10 CACHE_SPACE_NUM
+5 CACHE_SPACE_SIZE
+)
+(
+12 MESH_NETWORK_PACKET_MIN_LENGTH
+30 MESH_NETWORK_PACKET_MAX_LENGTH
+)
+(
+0 MESH_MESSAGE_TMALL
+1 MESH_MESSAGE_APP
+2 MESH_MESSAGE_PROXY
+)
+(
+
+0x20 MESH_ADV_RELAY_MESSAGE_INTERVAL
+)
+(
+0x00 MESH_PROXY_SERVICE_DATA_ID_TYPE_NETWORK_ID
+0x01 MESH_PROXY_SERVICE_DATA_ID_TYPE_NODE_IDENTITY
+)
+(
+0x00 MESH_PROXY_MESSAGE_TYPE_NETWORK_PDU
+0x01 MESH_PROXY_MESSAGE_TYPE_MESH_BEACON
+0x02 MESH_PROXY_MESSAGE_TYPE_PROXY_CONFIGURATION
+0x03 MESH_PROXY_MESSAGE_TYPE_PROVISIONING_PDU
+)
+(
+0x0e	MESH_PROXY_DATA_IN_HANDLE
+0x10	MESH_PROXY_DATA_OUT_HANDLE
+0x11	MESH_PROXY_ENABLE_DATA_OUT_HANDLE
+0x14	MESH_PROVISIONING_DATA_IN_HANDLE
+0x16	MESH_PROVISIONING_DATA_OUT_HANDLE
+0x17	MESH_PROVISIONING_ENABLE_DATA_OUT_HANDLE
+)
+(
+0x00 PROXY_OPCODE_SET_FILTER_TYPE
+0x01 PROXY_OPCODE_ADD_ADDR_TO_FILTER
+0x02 PROXY_OPCODE_REMOVE_ADDR_TO_FILTER
+0x03 PROXY_OPCODE_FILTER_STATUS
+)
+(
+15 UNSEGMENTED_ACCESS_MESSAGE_MAX_UPPER_TRANSPORT_ACCESS_PDU_LEN
+12 SEGMENTED_ACCESS_MESSAGE_UNINT_PDU_LEN
+)
+(//bit of mem_mesh_upper_tran_layer_temp_packet_flag
+7 BIT_UPPER_FLAG_PROXY_CONTROL
+6 BIT_UPPER_FLAG_APP_CONTROL
+5 BIT_UPPER_FLAG_VENDOR_INDICATION
+4 BIT_UPPER_FLAG_RETRANSMIT
+//BIT3-0
+0x0f DATA_UPPER_FLAG_MAX_RETRY_COUNT
+
+1 UPPER_RETRY_COUNT_STATUS
+1 UPPER_RETRY_COUNT_INDICATION
+)
+(
+0 NULL_PACKET_ADVERTISING
+1 PACKET_IN_BEARER
+2 PACKET_IN_ADVERTING
+3 PACKET_RECEIVE_INDICATION
+)
+(
+1 UPPER_TRAN_TMALL_MESSAGE
+2 UPPER_TRAN_APP_MESSAGE
+3 UPPER_TRAN_TMALL_AND_APP
+
+0 BIT_UPPER_TRAN_TMALL_MESSAGE
+1 BIT_UPPER_TRAN_APP_MESSAGE
+2 BIT_UUPER_TRAN_PROXY_MESSAGE
+)
+(
+30 MESH_RECEIVE_NEW_MESSAGE_TIMER
+)
+(
+0 QUEUE_OFFSET_EACH_SIZE
+1 QUEUE_OFFSET_LENGTH
+2 QUEUE_OFFSET_CURR_NUM
+3 QUEUE_OFFSET_READ_PTR
+4 QUEUE_OFFSET_WRITE_PTR
+5 QUEUE_OFFSET_ELE_INIT_ADDR
+)
+(
+//Flash Register
+0x05 FLASH_READ_SATUS
+
+// Flash Status Register
+0x00 FLASH_STATUS_WIP
+0X01 FLASH_STATUS_WEL
+0X02 FLASH_STATUS_BP0
+0X03 FLASH_STATUS_BP1
+
+//Flash Write Sm
+0X00 FLASH_SM_NO_BUYS
+0X01 FLASH_SM_START
+0X02 FLASH_SM_ERASE_SECTOR
+0X03 FLASH_SM_WAIT_ERASE_SECTOR
+0X04 FLASH_SM_WRITE_DATA
+0X05 FLASH_SM_WAIT_WRITE_DATA
+
+
+//Flash Command
+0x02 FLASH_COMMAND_WRITE_DATA
+0x03 FLASH_COMMAND_READ_DATA
+0x06 FLASH_COMMAND_WRITE_ENABLE
+0x20 FLASH_COMMAND_SECTOR_ERASE
+0xAB FLASH_COMMAND_RELEASE_FROM_POWERDOWN
+0xB9 FLASH_COMMAND_POWERDOWN
+
+)
+(
+7 OTP_UFLAG_MEMFIX2
+6 OTP_UFLAG_MEMFIX1
+5 OTP_UFLAG_MEMFIX0
+4 OTP_UFLAG_BIST
+3 OTP_UFLAG_AES
+2 OTP_UFLAG_SKIP_EEP
+1 OTP_UFLAG_SKIP_FLASH
+0 OTP_UFLAG_HCI
+)
+(
+0 OTP_OFFSET_PATCH_PTR //2 byte
+2 OTP_OFFSET_UCODE_FLAG
+3 OTP_OFFSET_DEVICE_OPTION
+4 OTP_OFFSET_PERIPHERALS_LOCK
+5 OTP_OFFSET_SCHED_BISTFIX 	//2 byte
+7 OTP_OFFSET_XRAM_BISTFIX	//2 byte
+9 OTP_OFFSET_PATCH_BISTFIX	//2 byte
+
+0xfc0 OTP_OFFSET_ADC_PARAM_L_C0
+
+0xfd0 OTP_OFFSET_ADC_PARAM_L
+0xff0 OTP_OFFSET_UCODE_KEY_L
+0x1000 OTP_OFFSET_H
+
+//0x1fd0 OTP_OFFSET_ADC_PARAM
+//0x1fec OTP_OFFSET_HV_SEL
+//0x1fed OTP_OFFSET_LDO_VSEL
+//0x1fee OTP_OFFSET_LOADCODE_DELAY
+//0x1fef OTP_OFFSET_LOADCODE_CHECKSUM
+0x1ff0 OTP_OFFSET_UCODE_KEY
+)
+(
+4 DVC_OP_DONGLE
+5 DVC_OP_TEST
+6 DVC_OP_SHUTTER_DY
+8 DVC_OP_MOUSE
+9 DVC_OP_SHUTTER
+0X0A DVC_OP_MODULE
+0X0B DVC_OP_MESH
+0X0C DVC_OP_HCI_BOOT
+0X0D DVC_OP_REMOTE_CAR
+0X0E DVC_OP_CAR
+0X0F DVC_OP_KEYBOARD
+)
+(
+7 GPIO_ACTIVE_BIT
+)
+(
+5 LPM_WAKE_UP_DELAY_TIMER
+)
+(
+2 APP_DISC_RSN_SIZE
+)
+(
+0 APP_DISC_BY_BUTTON
+7 APP_DISC_BLE
+)
+(
+0xaa55 EEPROM_INIT_FLAG
+)
+(
+1 KEY_CONF_STRUCT_LEN
+0 KEY_PIN_OFFSET
+)
+(
+12000000 PWM_12MHZ
+24000000 PWM_24MHZ
+33000 PWM_33KHZ
+)
+(
+0 POWER_OFF
+1 POWER_STARTING
+2 POWER_STANDBY
+)
+(
+0 power_state_offset
+1 power_timer_offset
+2 power_off_timeout_offset
+3 power_starting_timeout_offset
+4 power_off_cb_offset
+6 power_starting_cb_offset
+8 power_standby_cb_offset
+10 ui_butten_up_cb_offset
+)
+(
+0x9000 MOUSE_BLE_ATT_LIST_ADDR
+0x9272 USB_KBDATA_VENDOR_DEFINE_ADDR
+0x928d USB_KBDATA_ADDR
+0x92cd USB_MSDATA_ADDR
+0x9371 USB_DEVICEDATA_ADDR
+0x9384 USB_CONFDATA_ADDR
+0x93c0 BLE_SHUTTER_GATT_LIST_ADDR
+0x94f9 BLE_SHUTTER_KEY_VALUE_LIST_ADDR
+0x9521 BLE_CAR_ATT_LIST_ADDR
+0x95ed BLE_MESH_SHA256_ADDR
+0x97fc mem_sim_slave
+)
+(//NEC 61212
+9000 NEC61212_BOOT_CODE_START_TIME
+4500 NEC61212_BOOT_CODE_END_TIME
+
+9000 NEC61212_REPEAT_START_TIME
+2250 NEC61212_REPEAT_END_TIME
+
+560 NEC61212_DATA_BIT_1_START_TIME
+1690 NEC61212_DATA_BIT_1_END_TIME
+
+560 NEC61212_DATA_BIT_0_START_TIME
+560 NEC61212_DATA_BIT_0_END_TIME
+
+560 NEC61212_STOP_TIME
+
+42580 NEC61212_DATA2REPEAT_TIME
+98190 NEC61212_REPEAT2REPEAT_TIME
+
+0xffff NEC61212_TIMEOUT_TIME
+)
+(
+1 CLK_CALIBRATION_DONE
+2 RC_CLK_CALIBRATION_DONE
+3 AES_DEC_KEY_INIT_DONE
+4 MEASURE_ADC_SUM_DONE
+5 SARADC_DONE
+)
+(
+1 ADC_CONFIG_HVIN
+2 ADC_CONFIG_GPIO
+)
+(
+0 ADC_CH_VBAT
+1 ADC_CH_VDCDC5V
+6 ADC_CH_GPIO_4
+7 ADC_CH_GPIO_2
+8 ADC_CH_GPIO_1
+9 ADC_CH_GPIO_3
+10 ADC_CH_GPIO_0
+11 ADC_CH_GPIO_5
+12 ADC_CH_GPIO_6
+13 ADC_CH_GPIO_7
+)
+(
+0x06 ADC_CH_GPIO18
+0x07 ADC_CH_GPIO10
+0x08 ADC_CH_GPIO9
+0x09 ADC_CH_GPIO12
+0x0a ADC_CH_GPIO6
+0x0b ADC_CH_GPIO20
+0x0c ADC_CH_GPIO21
+0x0d ADC_CH_GPIO22
+0x0e ADC_CH_GPIO13
+)
+(
+1 SADC_REFERENCE_INTER3V
+2 SADC_REFERENCE_INTER1P8V_DIV2
+)
+(
+//20ms
+0x0020	FAST_ADV_INTERVAL_VALUE_CAR
+)
+(
+0x19 ATT_CAR_CONTROL_HANDLE
+0x19 ATT_SPEED_SET_HANDLE
+)
+(
+0 TURN_FRONT
+1 TURN_LEFT
+2 TURN_RIGHT
+0 MOTOR_STOP
+1 GO_FRONT
+2 GO_BACK
+0x6b5a LE_RECEIVE_PACKET_HEAD
+)
+(
+0 FLAG_IR_DISABLE
+1 FLAG_IR_ENABLE
+)
+(
+0 DEVICE_CAR
+1 DEVICE_TANK
+2 DEVICE_BATTLE_CAR
+3 DEVICE_BATTLE_TANK
+4 DEVICE_REMOTE
+)
+(
+0 F_B_MOTOR
+1 L_R_MOTOR
+2 F_B_BATTERY
+3 L_R_BATTERY
+)
+(
+0 CAR_WORK	   		//connect mode normal
+1 CAR_BIND			//code pair mode
+2 CAR_TEST			//test mode
+3 CAR_CODE			//PC_application
+4 CAR_PCBA			//PCBA_TEST
+5 CAR_DEBUG
+6 CAR_MODE_MAX
+7 CAR_SEARCH
+)
+(
+1 SPEED_LEVEL_1
+2 SPEED_LEVEL_2
+3 SPEED_LEVEL_3
+4 SPEED_LEVEL_4
+5 SPEED_LEVEL_5
+6 SPEED_LEVEL_6
+7 SPEED_LEVEL_7
+8 SPEED_LEVEL_8
+9 SPEED_LEVEL_9
+10 SPEED_LEVEL_10
+)
+(
+0 PWM0_DUTY_SETTING
+1 PWM1_DUTY_SETTING
+2 PWM2_DUTY_SETTING
+)
+(
+1 CAR_CMD_BATTERY
+2 CAR_CMD_OLD_CAR_CONTROL
+3 CAR_CMD_OLD_SPEED_CONTROL
+4 CAR_CMD_L_R_MOTOR_CONTROL
+5 CAR_CMD_F_B_MOTOR_CONTROL
+6 CAR_CMD_IR_CONTROL
+7 CAR_CMD_LED_CONTROL
+8 CAR_CMD_DEVICE_INFO
+)
+(
+0 CAR_REMOTE_CHECK_BUTTON
+1 CAR_REMOTE_CHECK_ROCKER
+)
+(
+0x11 CAR_NOTIFY_HANDLE
+)
+(
+0 LED_OFF
+1 LED_ON
+2 LED_BLINK
+0xFF LED_INVALID
+)
+(
+0xFF INVALID_PIN_NUM
+)
+(
+0 POWER_ON
+1 WORK_PAIRED
+2 WORK_SEARCH
+)
+(
+0x700 OTP_OFFSET_CAR_COMMOM_START_ADDR
+0x7cc OTP_OFFSET_CAR_COMMOM_END_ADDR
+)
+(
+0x5A DONGLE_KB_BIND_SUCCESS
+0x1fdf DONGLE_KB_BIND_EFUSE_OFFECT
+)
+(
+5 WORK_MODE_DELAY
+7 BIND_MODE_DELAY
+)
+(
+0 DONGLE_WORK	   		//connect mode normal
+1 DONGLE_BIND			//code pair mode
+2 DONGLE_TEST			//test mode
+3 DONGLE_CODE			//PC_application
+4 DONGLE_PCBA			//PCBA_TEST
+5 DONGLE_DEBUG
+6 DONGLE_MODE_MAX
+7 DONGLE_SEARCH
+0 CLEAR_INIT
+)
+(
+0xa0 COMMAND_MODE     //BYTE 0
+0x81 COM_MODE_BIND	//BYTE 1
+0x82 COM_MODE_TEST	//BYTE 1
+)
+(
+0xa1 COMMAND_BIND		//BYTE 0
+0x01 COM_BIND_GET		//1
+0x84 COM_BIND_EXIT		//1
+0xa7 COM_READ_MODE		//1
+)
+(
+0xa2 COMMAND_TEST	//BYTE 0
+0x81 COM_TEST_SC		//	���뵥�ز�
+0x82 COM_TEST_CD		// fcc����
+0x83 COM_TEST_DAT		// ���ݲ���
+0x84 COM_TEST_LOW_CH  //��Ƶ��
+0x85 COM_TEST_MID_CH	//��Ƶ��
+0x86 COM_TEST_HIG_CH	//��Ƶ��
+0x87 COM_TEST_SW_HIG	//�Զ��л�Ƶ��Ϊ�� 1mhz
+0x88 COIM_TEST_SW_LOW	//�Զ��л�Ƶ��Ϊ�� 1mhz
+0x89 COM_TEST_SW_STOP	//ֹͣ�Զ��л�Ƶ��
+0x8a COM_TEST_POW_5		//�����������5dbm
+0x8b COM_TEST_POW_0		//0dbm
+0x8c COM_TEST_POW_N5		//-5dbm
+0x8d COM_TEST_POW_N10		//-10dbm
+0x8e COM_TEST_EXIT			//�˳�����ģʽ
+)
+(
+0xa6 COMMAND_CURRENT_PROJECT
+0xa7 COMMAND_CURRENT_MODE
+0xa9 COMMAND_CURRENT_FW_VERSION
+0xb0 COMMAND_USER_DEFINED		//user defined cmd
+)
+(
+0x15 PRODUCT_ID
+0 FW_VERSION0
+0 FW_VERSION1
+1 FW_VERSION2
+7 FW_VERSION3
+)
+(
+640 TIMER_NODATA_DELAY	//200ms
+
+384 TIMER_MS_BLANK_DELAY
+
+384 TIMER_KB_MUL_BLANK_DELAY
+
+384 TIMER_KB_SYS_CRTL_BLANK_DELAY
+
+384 TIMER_KB_BLANK_DELAY
+)
+(
+0 KB_NORMAL_REPORT_ID
+1 MS_REPORT_ID
+2 KB_SYSTEM_CONCTRL_REPORT_ID
+3 KB_MULTIKEY_REPORT_ID
+)
+(
+0x01 BIND_ACKPAYLOAD
+0x03 KB_LED_ACKPAYLOAD
+)
+(
+7 DG_ENABLE_XTAL_24M
+6 DG_ENABLE_NEW_CHMAP
+5 DG_ENABLE_EEPROM
+4 DG_ENABLE_KB_ICON
+3 DG_ENABLE_24G_2M
+)
+(
+0x00 DONGLE_KB_BIND_EEPROM_OFFECT
+)
+(
+0x20 MOUSE_BLE_L2CAP_TXBUFF_SIZE_NEW
+)
+(
+0x01 DEVICE_DATA_TPYE_MOUSE
+0x02 DEVICE_DATA_TPYE_STANDARD_KEYBOARD
+0x03 DEVICE_DATA_TPYE_NONSTARNDARD_KEYBOARD
+0x04 DEVICE_DATA_TPYE_CONSUMER
+0x05 DEVICE_DATA_TPYE_SYSTEM_CONCTOL
+)
+(
+0x00 HID_REPORTID_KEY_STANDARD
+0x01 HID_REPORTID_MOUSE
+0x02 HID_REPORTID_SYSTEM_CTRL
+0x03 HID_REPORTID_CONSUMER_KEY
+)
+(
+0x04	 	HID_KEY_A
+0x05        HID_KEY_B
+0x06        HID_KEY_C
+0x07        HID_KEY_D
+0x08        HID_KEY_E
+0x09        HID_KEY_F
+0x0a        HID_KEY_G
+0x0b        HID_KEY_H
+0x0c        HID_KEY_I
+0x0d        HID_KEY_J
+0x0e        HID_KEY_K
+0x0f        HID_KEY_L
+0x10        HID_KEY_M
+0x11        HID_KEY_N
+0x12        HID_KEY_O
+0x13        HID_KEY_P
+0x14        HID_KEY_Q
+0x15        HID_KEY_R
+0x16        HID_KEY_S
+0x17        HID_KEY_T
+0x18        HID_KEY_U
+0x19        HID_KEY_V
+0x1a        HID_KEY_W
+0x1b        HID_KEY_X
+0x1c        HID_KEY_Y
+0x1d        HID_KEY_Z
+
+0x1e        HID_KEY_1
+0x1f        HID_KEY_2
+0x20        HID_KEY_3
+0x21        HID_KEY_4
+0x22        HID_KEY_5
+0x23        HID_KEY_6
+0x24        HID_KEY_7
+0x25        HID_KEY_8
+0x26        HID_KEY_9
+0x27        HID_KEY_0
+
+0x28        HID_KEY_ENTER
+0x29        HID_KEY_ESC
+0x2a        HID_KEY_BACKSPACE
+0x2b        HID_KEY_TAB
+0x2c        HID_KEY_SPACE
+0x2d        HID_KEY_MINUS				 		// -_
+0x2e        HID_KEY_EQUAL				 		// =+
+0x2f        HID_KEY_LEFT_BRACKET 		 	// [{
+0x30        HID_KEY_RIGHT_BRACKET 	 		// ]}
+0x31        HID_KEY_BACK_SLASH 		 		// \|
+
+0x32        HID_KEY_K42
+0x33        HID_KEY_SEMICOLON			 	// ;:
+0x34        HID_KEY_QUOTE				 		// ' "
+0x35        HID_KEY_TILDE				 		// `~
+0x36        HID_KEY_LESS_THAN			 		// ,<
+0x37        HID_KEY_GREAT_THAN		 		// .>
+0x38        HID_KEY_SLASH				 		// /?
+0x39        HID_KEY_CAPS_LOCK
+
+0x3a        HID_KEY_F1
+0x3b        HID_KEY_F2
+0x3c        HID_KEY_F3
+0x3d        HID_KEY_F4
+0x3e        HID_KEY_F5
+0x3f        HID_KEY_F6
+0x40        HID_KEY_F7
+0x41        HID_KEY_F8
+0x42        HID_KEY_F9
+0x43        HID_KEY_F10
+0x44        HID_KEY_F11
+0x45        HID_KEY_F12
+
+0x46        HID_KEY_PRINT_SCREEN
+0x47        HID_KEY_SCROLL_LOCK
+0x48        HID_KEY_PAUSE
+0x49        HID_KEY_INSERT
+0x4a        HID_KEY_HOME
+0x4b        HID_KEY_PAGE_UP
+0x4c        HID_KEY_DELETE
+0x4d        HID_KEY_END
+0x4e        HID_KEY_PAGE_DOWN
+
+0x4f        HID_KEY_RIGHT_ARROW
+0x50        HID_KEY_LEFT_ARROW
+0x51        HID_KEY_DOWN_ARROW
+0x52        HID_KEY_UP_ARROW
+
+0x53        HID_KEY_NUM_LOCK
+0x54        HID_KEY_KP_SLASH
+0x55        HID_KEY_KP_ASTERISK
+0x56        HID_KEY_KP_MINUS
+0x57        HID_KEY_KP_PLUS
+0x58        HID_KEY_KP_ENTER
+0x59        HID_KEY_KP_1
+0x5a        HID_KEY_KP_2
+0x5b        HID_KEY_KP_3
+0x5c        HID_KEY_KP_4
+0x5d        HID_KEY_KP_5
+0x5e        HID_KEY_KP_6
+0x5f        HID_KEY_KP_7
+0x60        HID_KEY_KP_8
+0x61        HID_KEY_KP_9
+0x62        HID_KEY_KP_0
+0x63        HID_KEY_KP_DEL
+
+0x64        HID_KEY_K45
+0x65        HID_KEY_APP
+0x66        HID_KEY_POWER
+0x67        HID_KEY_KP_EQUAL
+
+
+0x87        HID_KEY_K56
+0x88        HID_KEY_K133
+0x89        HID_KEY_K14
+0x8a        HID_KEY_K132
+0x8b        HID_KEY_K131
+
+0x90        HID_KEY_KR_R
+0x91        HID_KEY_KR_L
+
+0xe0        HID_KEY_LEFT_CTRL
+0xe1        HID_KEY_LEFT_SHIFT
+0xe2        HID_KEY_LEFT_ALT
+0xe3        HID_KEY_LEFT_GUI
+0xe4        HID_KEY_RIGHT_CTRL
+0xe5        HID_KEY_RIGHT_SHIFT
+0xe6        HID_KEY_RIGHT_ALT
+0xe7        HID_KEY_RIGHT_GUI
+
+0xe8 	HID_KEY_MULTIKEY_MEDIA
+0xe9 	HID_KEY_MULTIKEY_PALY
+0xea 	HID_KEY_MULTIKEY_STOP
+0xeb 	HID_KEY_MULTIKEY_PRE_TRACK
+0xec 	HID_KEY_MULTIKEY_NEXT_TRACK
+0xed 	HID_KEY_MULTIKEY_VOL_DOWN
+0xee 	HID_KEY_MULTIKEY_VOL_UP
+0xef 	HID_KEY_MULTIKEY_MUTE
+0xf0 	HID_KEY_MY_COMPUTER
+0xf1 	HID_KEY_MAIL
+0xf2 	HID_KEY_CALCULATOR
+0xf3 	HID_KEY_LIGHT_DOWN
+0xf4 	HID_KEY_LIGHT_UP
+0xf5 	HID_KEY_AC_FAVORITES
+0xf6 	HID_KEY_AC_FORWARD
+0xf7 	HID_KEY_AC_BACK
+0xf8 	HID_KEY_AC_STOP
+0xf9 	HID_KEY_AC_REFRESH
+0xfa 	HID_KEY_AC_SEARCH
+0xfb 	HID_KEY_AC_HOME
+0xfc 	HID_KEY_IOS_ANDROID_OS_LOCK
+0xfd 	HID_KEY_OS_SOFT_KB
+0xfe 	HID_KEY_OS_LANGUAGE
+0xff 	HID_KEY_SYSTEM_SLEEP
+        // 0xe8~0xff reserved
+0xa5	HID_KEY_SELECT_ALL
+0xa6 	HID_KEY_COPY
+0xa7	HID_KEY_PASTE
+0xa8	HID_KEY_CUT
+0xa9	HID_KEY_ALL_OS_LOCK
+0xaa	HID_KEY_OSK
+0xab	HID_KEY_LANGUAGE
+0xac 	HID_KEY_APP_TILING
+0xad	HID_KEY_SEARCH
+	 // 0xa5~0xaf reserved
+0x7f     	HID_KEY_FN
+0xde     	HID_KEY_PB
+0x00     	HID_KEY_NULL
+0x70        HID_KEY_COPILOT
+0x72        HID_KEY_F23
+)
+(
+0x01 LEFT_CONTROL
+0x02 LEFT_SHIFT
+0x04 LEFT_ALT
+0x08 LEFT_GUI
+0x10 RIGHT_CONTROL
+0x20 RIGHT_SHIFT
+0x40 RIGHT_ALT
+0x80 RIGHT_GUI
+0x09 LEFT_GUI_CONTROL
+0x0a LEFT_SHIFT_GUI
+)
+(
+0x00 KB_PC_KEYSEL_NUMLOCK
+0x01 KB_PC_KEYSEL_CAPSLOCK
+0x02 KB_PC_KEYSEL_SCROLLLOCK
+)
+(
+8 KEYSCAN_COL_NUM
+20 KEYSCAN_ROW_NUM
+)
+(
+0 CAMMBINATION_KEY_FREE
+1 CAMMBINATION_KEY_PRESS
+2 CAMMBINATION_KEY_HOLD
+3 CAMMBINATION_KEY_COMPLETE
+4 CAMMBINATION_KEY_WAIT_RELEASE
+5 CAMMBINATION_KEY_RELEASE
+6 CAMMBINATION_KEY_NULL
+)
+(
+
+0x600 PNP_MICROSOFT
+0x4c00 PNP_IOS
+0x1208 PNP_MAC
+
+
+0 SYSTEM_OS_WINDOWS
+1 SYSTEM_OS_ANDRIOD
+2 SYSTEM_OS_IOS
+3 SYSTEM_OS_MAC
+
+)
+
+(
+0 KEYBOARD_REUSE_NUMLED_BIT
+1 KEYBOARD_REUSE_CAPSLED_BIT
+2 KEYBOARD_REUSE_SCROLLLED_BIT
+)
+
+(
+0 KEYBOARD_CONSUMER_KEY_STANDBY
+1 KEYBOARD_CONSUMER_KEY_PRESS
+2 KEYBOARD_CONSUMER_KEY_RELEASE
+)
+(
+0 KEYBOARD_FLAG_G24_DEVICE_BUTTON
+1 KEYBOARD_FLAG_BT_DEVICE_BUTTON
+)
+(
+0 KEYBOARD_RGB_BLUE_STATUS
+1 KEYBOARD_RGB_GREEN_STATUS
+2 KEYBOARD_RGB_RED_STATUS
+
+0 RGB_BACKLIGHT_STATUS_OFF
+1 RGB_BACKLIGHT_STATUS_ON
+2 RGB_BACKLIGHT_STATUS_BREATHE
+
+0 RGB_BACKLIGHT_ON_TPYE_RED
+1 RGB_BACKLIGHT_ON_TPYE_ORANGE
+2 RGB_BACKLIGHT_ON_TPYE_PURPLE
+3 RGB_BACKLIGHT_ON_TPYE_GREEN
+4 RGB_BACKLIGHT_ON_TPYE_CYAN
+5 RGB_BACKLIGHT_ON_TPYE_BLUE
+6 RGB_BACKLIGHT_ON_TPYE_WHITE
+
+0 RGB_BACKLIGHT_BREATHE_TPYE_BLUE
+1 RGB_BACKLIGHT_BREATHE_TPYE_GREEN
+2 RGB_BACKLIGHT_BREATHE_TPYE_RED
+3 RGB_BACKLIGHT_BREATHE_TPYE_CYAN
+4 RGB_BACKLIGHT_BREATHE_TPYE_PURPLE
+5 RGB_BACKLIGHT_BREATHE_TPYE_ORANGE
+6 RGB_BACKLIGHT_BREATHE_TPYE_WHITE
+)
+(//mem_module_flag
+//bit0~bit7 config module function
+0 MODULE_FLAG_UART_FLOW_CONTROL
+1 MODULE_FLAG_BLE_SEND_MTU23
+2 MODULE_FLAG_BLE_DATA_ENCRYPT
+
+//bit8~bit15 module states change
+8 MODULE_FLAG_BLE_DATA_FINISH
+
+)
+(
+34 NV_DATA_LEN
+-1 DECREASED_ONE
+)
+(
+	5 FLAG_MODULE_READ_VDD_COUNT
+)
+(
+0x01 HCI_DISCARD_PACKET
+0x00 HCI_NOT_DISCARD_PACKET
+)
+(//Command
+0x01 HCI_CMD_SET_LE_ADDR_REQ
+0x02 HCI_CMD_SET_VISIBILITY_REQ
+0x04 HCI_CMD_SET_LE_NAME_REQ
+0x09 HCI_CMD_LE_DATA_REQ
+0x0b HCI_CMD_STATUS_IRQ
+0x0e HCI_CMD_SET_UARTCONTROL_REQ
+0x0f HCI_CMD_SET_UART_BAUD_REQ
+0x10 HCI_CMD_VERSION_REQ
+0x12 HCI_CMD_BLE_DISCONNECT
+0x13 HCI_CMD_DELETE_DEVICE
+0x14 HCI_CMD_CREATE_CONNECT
+0x26 HCI_CMD_SET_NVRAM_REQ
+0x27 HCI_CMD_SLEEP
+0x28 HCI_CMD_CONFIRM_GKEY
+0x2a HCI_CMD_AUTO_ADV_SCAN
+0x2b HCI_CMD_POWER_REQ
+0x2c HCI_CMD_POWER_SET
+0x30 HCI_CMD_PASSKEY_ENTRY
+0x31 HCI_CMD_SET_GPIO
+0x32 HCI_CMD_READ_GPIO
+0x33 HCI_CMD_LE_SET_PAIRING
+0x34 HCI_CMD_LE_SET_ADV_DATA
+0x35 HCI_CMD_LE_SET_SCAN_DATA
+0x36 HCI_CMD_LE_SEND_CONN_UPDATE_REQ
+0x37 HCI_CMD_LE_SET_ADV_PARM
+0x38 HCI_CMD_LE_START_PAIRING
+0x40 HCI_CMD_SET_WAKE_GPIO
+0x42 HCI_CMD_SET_TX_POWER
+0x43 HCI_CMD_BOOT_VERSION_REQ
+0x48 HCI_CMD_LE_CONFIRM_GKEY
+0x49 HCI_CMD_REJECT_JUSTWORK
+0x51 HCI_CMD_RESET_CHIP_REQ
+
+0x61 HCI_CMD_LE_SET_FIXED_PASSKEY
+
+0x76 HCI_CMD_DELETE_CUSTOMIZE_SERVICE
+0x77 HCI_CMD_ADD_SERVICE_UUID
+0x78 HCI_CMD_ADD_CHARACTERISTIC_UUID
+0x7a HCI_CMD_PASSKEY_ENTRY_INPUT
+0x7b HCI_CMD_LE_CREAT_CONN
+
+0x90 HCI_CMD_BLE_SET_PHY
+0x91 HCI_CMD_BLE_READ_CURRENT_PHY
+0x92 HCI_CMD_BLE_SET_DLE
+0x93 HCI_CMD_READ_CHIP_DATA
+0x94 HCI_CMD_WRITE_CHIP_DATA
+0xff HCI_CMD_CLOSE_LPM
+)
+(//event
+0x00 HCI_EVENT_SPP_CONN_REP
+0x01 HCI_EVENT_HID_CONN_REP
+0x02 HCI_EVENT_LE_CONN_REP
+0x03 HCI_EVENT_SPP_DIS_REP
+0x04 HCI_EVENT_HID_DIS_REP
+0x05 HCI_EVENT_LE_DIS_REP
+0x06 HCI_EVENT_CMD_RES
+0x07 HCI_EVENT_SPP_DATA_REP
+0x08 HCI_EVENT_LE_DATA_REP
+0x09 HCI_EVENT_STANDBY_REP
+
+0x0a HCI_EVENT_STATUS_RES
+
+0x0D HCI_EVENT_NVRAM_REP
+0x0e HCI_EVENT_GKEY
+0x0F HCI_EVENT_INVALID_PACKET
+0x10 HCI_EVENT_GET_PASSKEY
+0x11 HCI_EVENT_LE_TK
+0x12 HCI_EVENT_REMOTE_MTU
+0x14 HCI_EVENT_LE_PAIRING_STATE
+0X15 HCI_EVENT_LE_ENCRYPTION_STATE
+0x17 HCI_EVENT_LE_CONNECTION_UPDATE
+0x1d HCI_EVENT_LE_GKEY
+0x29 HCI_EVENT_UUID_HANDLE
+0x2b HCI_EVENT_LE_INPUT_GKEY
+
+0x40 HCI_BLE_UPDATE_PHY_EVENT
+)
+(//command HCI_CMD_SET_GPIO
+//byte 0
+0x00 HCI_CMD_CONFIG_GPIO_INPUT
+0x01 HCI_CMD_CONFIG_GPIO_OUTPUT
+//byte 1 input state
+0x00 GPIO_INPUT_PULLUP
+0x01 GPIO_INPUT_PULLDOWN
+0x02 GPIO_INPUT_HIGH_IMPEDANCE
+)
+(
+0x0080	FLAG_BLE_PAIRING_SUCCESS
+0x0180	FLAG_BLE_PAIRING_FAIL
+)
+(
+1	FLAG_EVENT_START_ENC
+0	FLAG_EVENT_PAUSE_ENC
+)
+(
+0 MOUDLE_STATE_BT_BIT
+1 MOUDLE_STATE_BLE_BIT
+)
+(
+5 BIT_OF_NOTIFY_AUTHENTICATED
+6 BIT_OF_READ_AUTHENTICATED
+7 BIT_OF_WRITE_AUTHENTICATED
+)
+(
+(
+0x00 PEN_KEY0
+0x01 PEN_KEY1
+0x02 PEN_KEY2
+0x03 PEN_KEY3
+0x04 PEN_KEY4
+0x05 PEN_KEY5
+0x06 PEN_KEY6
+0x07 PEN_KEY7
+)
+(
+0x07 KEY_PRESS_COUNT
+0x00 KEY_PRESS_NONE
+)
+(
+//combination
+0x01 MOUSE_L_BUTTON
+0X02 MOUSE_R_BUTTON
+0x03 MOUSE_LR_BUTTON
+0X04 MOUSE_M_BUTTON
+0X05 MOUSE_LM_BUTTON
+0X06 MOUSE_RM_BUTTON
+0X07 MOUSE_LMR_BUTTON
+0x09 MOUSE_L_BK_BUTTON
+0x0a MOUSE_R_BK_BUTTON
+0x11 MOUSE_L_FW_BUTTON
+0x12 MOUSE_R_FW_BUTTON
+0x12 MOUSE_M_BK_BUTTON
+0x14 MOUSE_M_FW_BUTTON
+0X18 MOUSE_BK_FW_BUTTON
+//mouse default gpio
+0x1B MOUSE_DEFAULT_XA_GPIO
+0x1C MOUSE_DEFAULT_XB_GPIO
+
+//ui led blink
+0X00C8  LED_RECONNECT_BLINK //200
+0X0190  LED_DPI_BLINK //400
+0X03E8  LED_DPI_BLINK_FIXED    //1000
+0X03E8  LED_DISCOVERY_BLINK    //1000
+0XFF    LED_LONG_BLINK
+0x05	LED_SENSOR_BLINK_CNT
+//mode device number
+0x00 MODE_24G_DEVICE
+0x01 MODE_BT_DEVICE1
+0x02 MODE_BT_DEVICE2
+0x03 MODE_BT_DEVICE3
+0x04 MODE_USB_DEVICE
+//mouse  flag
+0X00 WRITE_REQ_ENABLE_FLAG
+0X01 LL_START_ENC_FLAG
+0X02 LL_PAIRING_SUCCESS_FLAG
+
+
+//mouse_function_flag
+0x08 MOUSE_FLAG_LEN
+//byte 1
+0x00 MOUSE_SELECT_DEVICE_FLAG
+0x01 MOUSE_24G_PAIRING_FLAG
+0x02 MOUSE_STORE_EEPROM_FLAG
+0x03 MOUSE_BT_CANNEL_RECONN_FLAG
+0x04 MOUSE_LOW_VOLTAGE_FLAG
+0x05 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+0x06 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+
+//byte 2
+0x08 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+0x09 MOUSE_ENABLE_2K_EEPROM
+0x0a MOUSE_ENABLE_INIT_DELAY
+0x0b MOUSE_ENABLE_WAKEUP_FROM_POWER
+0x0c MOUSE_ENABLE_16M
+0x0d MOUSE_ENABLE_USB
+0x0e MOUSE_ENABLE_24G_SEARCH_DONGLE
+0x0f MOUSE_ENABLE_LOAD_AND_STORE_DPI
+
+//byte 3
+0x10 MOUSE_ENABLE_SPI2
+0x11 MOUSE_ENABLE_24G
+0x12 MOUSE_ENABLE_FLASH
+0x13 MOUSE_ENABLE_EEPROM
+0x14 MOUSE_ENABLE_OTP
+0x15 MOUSE_ENABLE_ADC
+0x16 MOUSE_ENABLE_KEYBOARD
+0x17 MOUSE_ENABLE_DOUBLE_DPI_KEY
+
+//byte 4
+0x18 MOUSE_ENABLE_24G_250Hz
+0x19 MOUSE_ENABLE_24G_500Hz
+0x1a MOUSE_ENABLE_24G_1000
+0x1b MOUSE_ENABLE_BT_125Hz
+0x1c MOUSE_ENABLE_DPI_LEVEL_4
+0x1d MOUSE_ENABLE_USB_250
+0x1e MOUSE_ENABLE_USB_500
+0x1f MOUSE_ENABLE_USB_1000
+
+//byte 5
+0x20 MOUSE_ENABLE_1IO2LED
+0x21 MOUSE_ENABLE_BT_RECONN_LED_EFFECT
+0x22 MOUSE_ENABLE_LOW_LED_BLINK_LIMIT
+0x23 MOUSE_ENABLE_LOW_LED
+0x24 MOUSE_ENABLE_LOW_FOR_LED
+0x25 MOUSE_ENABLE_DPI_FOR_LED
+0x26 MOUSE_ENABLE_DPI_LOW_FOR_LED
+0x27 MOUSE_ENABLE_LOW_VOLTAGE_LED_BLINK_N_SECOND
+
+//byte 6
+0x28 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
+0x29 MOUSE_ENABLE_SELECT_DEVICE_BY_PB_BUTTON
+0x2a MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
+0x2b MOUSE_ENABLE_DPI_KEY_CONNECT_GND
+0x2c MOUSE_ENABLE_ANOTHER_DPI_KEY_CONNECT_GND
+0x2d MOUSE_ENABLE_PB_BUTTON_CONNECT_GND
+0x2e MOUSE_ENABLE_FIRE_KEY_CONNECT_GND
+0x2f MOUSE_ENABLE_CUSTOMER_KEY_CONNECT_VIN_OR_MATRIX
+
+//byte 7
+0x30 MOUSE_ENABLE_AUTO_24G_PARING
+0x31 MOUSE_ENABLE_24G_POWER_ON_PAIRING
+0x32 MOUSE_ENABLE_COMMBINATION_KEY_BY_24G_PAIRING
+0x33 MOUSE_ENABLE_BT_RECONNECT_TIMEOUT_ENTER_DISCOVERY
+0x34 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY
+0x35 MOUSE_ENABLE_COMMBINATION_KEY_BY_BT_DISCOVERY
+0x36 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY
+0x37 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY
+
+//byte 8
+0x38 MOUSE_ENABLE_SMOOTHER
+0x39 MOUSE_ENABLE_XY_OFFSET
+0x3a MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED
+0x3b MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+0x3c MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+0x3d MOUSE_ENABLE_24G_2M_PHY
+0x3e MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING
+//mouse dpi level
+0x00 MOUSE_DPI_LEVEL1
+0x01 MOUSE_DPI_LEVEL2
+0x02 MOUSE_DPI_LEVEL3
+0x03 MOUSE_DPI_LEVEL4
+
+
+//mouse sensor angle
+0x00 MOUSE_6CLK_ANGLE
+0X01 MOUSE_9CLK_ANGLE
+0X02 MOUSE_12CLK_ANGLE
+0X03 MOUSE_3CLK_ANGLE
+
+
+
+0xFF GPIO_DISABLE
+
+//DPI button state
+0x00 DPI_BUTTON_STATE_UP
+0x01 DPI_BUTTON_STATE_DOWN
+
+
+//PB button state
+0x00 PB_BUTTON_STATE_UP
+0x01 PB_BUTTON_STATE_DOWN
+
+//Commbination_key state
+0x00 COMMBINATION_KEY_STATE_UP
+0x01 COMMBINATION_KEY_STATE_DOWN
+
+
+//eeprom address offect
+0X00 MOUSE_INFO_EEPROM_OFFECT
+0x58 MOUSE_STORE_FLAG
+0X5A MOUSE_DPI_EEPROM_OFFECT	//1byte
+0X5B MOUSE_G24_ADDR_EEPROM_OFFECT	//4bytes
+0X5F MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET	//2bytes
+0X61 MOUSE_EEPROM_MODULE_INIT_FLAG
+
+// Sensor id number
+0x30 P32XX_ID1
+0x31 P3065_ID1
+0x02 P3212_ID2
+0xD1 P3205_TJ3T_ID2
+0XD2 P3204_TJ3L_ID2
+0x54 PKA8_ID2
+0x70 P3065_XY_ID2
+0x00 P3065_ID2
+0x5a P_MX8650
+0xD8 P8009_ID2
+0x50 P6520A_ID2
+0x58 PKA8G2_ID1
+0x59 PKA8G2_ID2
+
+
+//Sensor type
+0X00 P3205
+0X01 P3065
+0X02 P3204
+0X03 P3212
+0X04 P3065_XY
+0x05 MX8650
+0x06 P8009
+0x07 P6520
+0X08 KA8
+0X09 KA8_UL
+0X0a KA8_HD
+0X0b KA8G2
+0X0c S201X
+
+
+//SENSOR REG
+0x00 PAN_REG_PID_L
+0x01 PAN_REG_PID_H
+0x02 PAN_REG_MOTION_STAUS
+0x03 PAN_REG_DELTA_X
+0x04 PAN_REG_DELTA_Y
+0x05 PAN_REG_OPRATION_MODE
+0x06 PAN_REG_CONFIG
+0x07 PAN_REG_IMAGE_QUALITY
+0x08 PAN_REG_OPRATION_STATE
+0x09 PAN_REG_WRITE_PROTECT
+0x0A PAN_REG_SLEEP_1
+0x0B PAN_REG_ENTER_TIME
+0x0C PAN_REG_SLEEP_2
+0x0D PAN_REG_IMAGE_THRESHOLD
+0x0E PAN_REG_IMAGE_RECGNITION
+
+
+0x06 MOUSE_DPI_ADDRESS
+0x05 MOUSE_P3610_DPI_ADDRESS
+0x0D MOUSE_P3212_DPI_XADDRESS
+0x0E MOUSE_P3212_DPI_YADDRESS
+
+)
+(
+0x01 ADV_FLAG_LIMITED_DISCOVERABLE
+0x04 ADV_FLAG_BREDR_NOT_SUPPORTED
+)
+(
+2 BIT_POWER_ON
+)
+(
+1 MODE_4_MOUSE
+)
+(
+10 LE_LPM_DISABLE_TO
+1 LE_LPM_DISABLE
+0 LE_LPM_ENABLE
+
+12 LE_INTERVAL_15MS
+9 LE_INTERVAL_11_25MS//11.25ms
+7 LE_INTERVAL_8_75MS//8.75ms
+6 LE_INTERVAL_7_5MS//7.5ms
+12 CLASSIC_INTERVAL_7_5MS
+14 CLASSIC_INTERVAL_8_75MS
+18 CLASSIC_INTERVAL_11_25MS
+)
+(
+0x00 MOUSE_L_KEY
+0x01 MOUSE_R_KEY
+0x02 MOUSE_M_KEY
+0x03 MOUSE_BK_KEY
+0x04 MOUSE_FW_KEY
+0x05 MOUSE_DPI_KEY
+0x06 MOUSE_PB_KEY
+0x07 MOUSE_CUSTOMER_KEY
+0x00 MOUSE_DPI_ANOTHER_KEY
+)
+(
+0 G24_DISCONN_STATE
+1 G24_CONN_STATE
+
+8 G24_CH_NUMBER
+16 G24_CH_POLL_COUNT
+)
+(
+0 MOUSE_ADC_CHECK_BATTERY_ONLY
+1 MOUSE_ADC_CHECK_MULTIPLE
+2 MOUSE_ADC_CHECK_GPIO_MULTIPLE
+3 MOUSE_ADC_CHECK_HVIN_MULTIPLE
+)
+(
+0x5a MOUSE_USB_INTERFACE_INSERT
+0xa5 MOUSE_USB_INTERFACE_REMOVE
+)
+(
+0x10 MOUSE_BLE_L2CAP_TXBUFF_SIZE
+)
+(
+0 MOUSE_ADC_ENABLE
+1 MOUSE_SEARCH_DONGLE_ENABLE
+2 MOUSE_24G_250HZ_ENABLE
+3 MOUSE_CLK_16M_ENABLE
+4 MOUSE_DPI_4_LEVEL_ENABLE
+5 MOUSE_KEYBOARD_ENABLE
+
+7 MOUSE_DEVICE_NUMBER_FLAG
+)
+(
+0 MULTI_LED_ON
+1 MULTI_LED_BLINK
+)
+(
+// eeprom config
+0xb0 REMOTE_PARAM_EEPROM_CONFIG_ADDR
+//eeprom address offect
+0X00 REMOTE_INFO_EEPROM_OFFECT
+
+)
+(
+0x00 CONTROL_F_B_MOTOR
+0x02 CONTROL_L_R_MOTOR
+)
+(
+0x00 KEY_MAP_TEN
+0x01 KEY_MAP_LR
+)
+(
+0x00 CONTROL_F_B_TEN
+0x02 CONTROL_L_R_TEN
+0x03 CONTROL_L_R_LR
+)
+(
+0 KEY_CHECK
+1 ROCKER_CHECK
+)
+(
+1 MOTOR_POSITIVE
+2 MOTOR_NEGATIVE
+)
+(
+0 ROCKER_MIDDLE_KEY
+1 ROCKER_POSITIVE_KEY
+2 ROCKER_NEGATIVE_KEY
+)
+(
+0x700 OTP_OFFSET_REMOTE_COMMOM_START_ADDR
+0x7cc OTP_OFFSET_REMOTE_COMMOM_END_ADDR
+)
+(
+0 BLE_SHUTTER
+1 CLASSIC_SHUTTER
+)
+(
+0x0000 NVRAM_EEPROM_OFFSET
+)
+(
+0x1b3a SHUTTER_EEPROM_CONFIG_CRC
+)
+(
+5 MAX_QUEUE_NUM
+5 SHUTTER_BLE_DATA_BUFFER
+5 SHUTTER_CLASSIC_DATA_BUFFER
+)
+(
+0x13	GATT_CONSUMER_NOTIFY_HANDLE
+0x14	GATT_CONSUMER_WRITE_HANDLE
+0x17	GATT_KEYBOARD_NOTIFY_HANDLE
+0x18	GATT_KEYBOARD_WRITE_HANDLE
+)
+(
+//20ms
+0x0020	FAST_ADV_INTERVAL_VALUE
+//100ms
+0x00a0	SLOW_ADV_INTERVAL_VALUE
+)
+(
+0 ATT_BIT_NOTIFICATION
+1 ATT_BIT_INDICATION
+)
+(
+0 HARD_SWITCH
+1 SOFT_SWITCH
+)
+(
+1  FLAG_SHUTTER_HID_DISCONN_TIMEOUT
+5 FLAG_SHUTTER_CABLE_UNPLUG_TIMEOUT
+)
+(//Data Rom Buffer Addr
+313		BLE_GATT_LIST_SIZE
+487		BT_SDP_LIST_SIZE
+40		BLE_KEY_VALUE_LIST_SIZE
+40		BT_KEY_VALUE_LIST_SIZE
+)
+(//soft switch power state
+0		SS_STATE_POWER_UP
+1		SS_STATE_POWER_ON
+2		SS_STATE_POWER_OFF
+)
+(
+0		SS_POWER_STATE_OFFSET
+1		SS_POWER_ON_TIME
+2		SS_POWER_OFF_TIME
+3		SS_POWER_ON_CB
+5		SS_POWER_OFF_CB
+
+)
+(
+
+0x4FFE SIM_IIC_SCL_GPIO_NUM
+0x4FFF SIM_IIC_SDA_GPIO_NUM
+
+)
+(
+0 SHUTTER_TYPE
+1 SHUTTER_DY_TYPE
+)
+(
+10 MAX_QUEUE_NUM_COMBINEKEY
+15 MAX_QUEUE_NUM_RELEASE
+3 MAX_QUEUE_NUM_LONG
+3 MAX_QUEUE_NUM_LONG_RELEASE
+10 MAX_QUEUE_NEW_PRESS
+
+10 EVERY_PAYLOAD_LEN
+)
+(
+0x24	GATT_KEYBOARD_WRITE_HANDLE_NEW
+)
+(//Data Rom Buffer Addr
+640		BT_DY_KEY_VALUE_LIST_SIZE
+)
+(
+0x05   SHUTTER_PARA_TOTAL_NUM
+//0x7b0  SHUTTER_EFUSE_START_OFFECT	//起始地址
+//0x680  SHUTTER_EFUSE_END_OFFECT	       //结束地址
+)
+(
+//uart config
+115200 UART_BAUD
+)
+(
+10 SHUTTER_KEY_CONF_SATE_BYTES
+0 KEY_STATE_PRESS_CLK_OFFSET
+4 KEY_STATE_PRESS_COUNT_OFFSET
+5 KEY_STATE_RELEASE_CLK_OFFSET
+9 KEY_STATE_LONGPRESS_OFFSET
+4 KEY_STATE_PRESS_CLK_LENGTH
+1 KEY_STATE_PRESS_COUNT_LENGTH
+4 KEY_STATE_RELEASE_CLK_LENGTH
+1 KEY_STATE_LONGPRESS_LENGTH
+)
+(
+0  SHUTTER_RIGHT_KEY_NUM
+1  SHUTTER_LIKE_KEY_NUM
+2  SHUTTER_DOWN_KEY_NUM
+3  SHUTTER_PHOTO_KEY_NUM
+4  SHUTTER_UP_KEY_NUM
+5  SHUTTER_LEFT_KEY_NUM
+6  SHUTTER_MOVE_KEY_NUM
+7  SHUTTER_FUN_KEY_NUM
+)
+(
+//0xaa ANDROID_INITIAL_MOVE_X //170
+//0x78 ANDROID_INITIAL_MOVE_Y //120
+//0x69 IPHONE_INITIAL_MOVE_X
+//0x38 IPHONE_INITIAL_MOVE_Y
+0X0a ANDROID_EVERY_MOVE_SIZE
+0x07 IPHONE_EVERY_MOVE_SIZE
+0x62 IPHONE_ONCE_MAX_MOVE_VALUE
+)
+(
+0x00 MOVE_COMBINE_KEY
+0x01 MOVE_SINGLE_KEY
+)
+(
+//6key or 7key conf
+6 SHUTTER_SIX_KEY
+7 SHUTTER_SEVEN_KEY
+8 SHUTTER_EIGHT_KEY
+)
+(
+0x07 HCI_UART_TX_GPIO_NUM
+0x06 HCI_UART_RX_GPIO_NUM
+0x09 HCI_UART_RTS_GPIO_NUM
+0x0a HCI_UART_CTS_GPIO_NUM
+0x0c HCI_PMW_12MHZ_GPIO_NUM
+)
+(
+0x00 COMMAND_SUCCEEDED
+0x01 COMMAND_UNKNOWN
+0x0c COMMAND_DISALLOWED
+)
+(
+0x01 HCI_H4_TYPE_CMD
+0x02 HCI_H4_TYPE_ACL
+0x04 HCI_H4_TYPE_EVENT
+)
+(
+0x00 BT_ACL_START_NO_FLUSH
+0x01 BT_ACL_CONT
+0x02 BT_ACL_START
+)
+(
+0x01 HCI_OGF_LINK_CONTROL
+0x02 HCI_OGF_LINK_POLICY
+0x03 HCI_OGF_CONTROLLER_AND_BASEBAND
+0x04 HCI_OGF_INFOMATIONAL_PARAM
+0x05 HCI_OGF_STATUS_PARAM
+0x06 HCI_OGF_TEST
+0x08 HCI_OGF_LE_CONTROLLER
+0x3f HCI_OGF_VENDOR_SPECIFIC_DEBUG
+)
+(
+0x01 HCI_INQUIRY
+0x02 HCI_INQUIRY_CANCEL
+0x03 HCI_PERIODIC_INQUIRY_MODE
+0x04 HCI_EXIT_PERIODIC_INQUIRY_MODE
+0x05 HCI_CREATE_CONNECTION
+0x06 HCI_DISCONNECT
+0x07 HCI_ADD_SCO_CONNECTION
+0x08 HCI_CREATE_CONNECTION_CANCEL
+0x09 HCI_ACCEPT_CONNECTION
+0x0A HCI_REJECT_CONNECTION
+0x0B HCI_LINK_KEY_REQUEST_REPLY
+0x0C HCI_LINK_KEY_REQUEST_NEGATIVE_REPLY
+0x0D HCI_PIN_CODE_REQUEST_REPLY
+0x0E HCI_PIN_CODE_REQUEST_NEGATIVE_REPLY
+0x0F HCI_CHANGE_CONNECTION_PACKET_TYPE
+0x11 HCI_AUTHENTICATION_REQUESTED
+0x13 HCI_SET_CONNECTION_ENCRYPTION
+0x15 HCI_CHANGE_CONNECTION_LINK_KEY
+0x17 HCI_MASTER_LINK_KEY
+0x19 HCI_REMOTE_NAME_REQUEST
+0x1A HCI_REMOTE_NAME_REQUEST_CANCEL
+0x1B HCI_READ_REMOTE_SUPPORTED_FEATURES
+0x1C HCI_READ_REMOTE_EXT_FEATURES
+0x1D HCI_READ_REMOTE_VERSION_INFORMATION
+0x1F HCI_READ_CLOCK_OFFSET
+0x20 HCI_READ_LMP_HANDLE
+0x28 HCI_SETUP_SCO_CONNECTION
+0x29 HCI_ACCEPT_SCO_CONNECTION
+0x2A HCI_REJECT_SCO_CONNECTION
+0x2B HCI_IO_CAP_REQUEST_REPLY
+0x2C HCI_USER_CONFIRMATION_REQUEST_REPLY
+0x2D HCI_USER_CONFIRMATION_REQUEST_NEGATIVE_REPLY
+0x2E HCI_USER_PASSKEY_REQUEST_REPLY
+0x2F HCI_USER_PASSKEY_REQUEST_NEGATIVE_REPLY
+0x30 HCI_REMOTE_OOB_DATA_REQUEST_REPLY
+0x33 HCI_REMOTE_OOB_DATA_REQUEST_NEGATIVE_REPLY
+0x34 HCI_IO_CAPABILITY_REQUEST_NEGATIVE_REPLY
+0x35 HCI_CREATE_PHYSICAL_LINK
+0x36 HCI_ACCEPT_PHYSICAL_LINK
+0x37 HCI_DISCONNECT_PHYSICAL_LINK
+0x38 HCI_CREATE_LOGICAL_LINK
+0x39 HCI_ACCEPT_LOGICAL_LINK
+0x3A HCI_DISCONNECT_LOGICAL_LINK
+0x3B HCI_LOGICAL_LINK_CANCEL
+0x3C HCI_FLOW_SPEC_MODIFY
+0x3D HCI_ENHANCED_SETUP_SYNCHRONOUS_CONNECTION
+0x3E HCI_ENHANCED_ACCEPT_SYNCHRONOUS_CONNECTION_REQUEST
+0x3F HCI_TRUNCATED_PAGE
+0x40 HCI_TRUNCATED_PAGE_CANCEL
+0x41 HCI_SET_CONNECTIONLESS_SLAVE_BROADCAST
+0x42 HCI_SET_CONNECTIONLESS_SLAVE_BROADCAST_RECEIVE
+0x43 HCI_START_SYNCHRONIZATION_TRAIN
+0x44 HCI_RECEIVE_SYNCHRONIZATION_TRAIN
+0x45 HCI_REMOTE_OOB_EXTENDED_DATA_REQUEST_REPLY
+)
+(
+0x01 HCI_HOLD_MODE
+0x03 HCI_SNIFF_MODE
+0x04 HCI_EXIT_SNIFF_MODE
+0x05 HCI_PARK_MODE
+0x06 HCI_EXIT_PARK_MODE
+0x07 HCI_QOS_SETUP
+0x09 HCI_ROLE_DISCOVERY
+0x0B HCI_SWITCH_ROLE
+0x0C HCI_READ_LINK_POLICY_SETTINGS
+0x0D HCI_WRITE_LINK_POLICY_SETTINGS
+0x0e HCI_READ_DEFAULT_LINK_POLICY_SETTINGS
+0x0f HCI_WRITE_DEFAULT_LINK_POLICY_SETTINGS
+0x10 HCI_FLOW_SPECIFICATION
+0x11 HCI_SNIFF_SUBRATING
+)
+(
+0x01 HCI_SET_EVENT_MASK
+0x03 HCI_RESET
+0x05 HCI_SET_EVENT_FILTER
+0x08 HCI_FLUSH
+0x09 HCI_READ_PIN_TYPE
+0x0A HCI_WRITE_PIN_TYPE
+0x0B HCI_CREATE_NEW_UNIT_KEY
+0x0D HCI_READ_STORED_LINK_KEY
+0x11 HCI_WRITE_STORED_LINK_KEY
+0x12 HCI_DELETE_STORED_LINK_KEY
+0x13 HCI_WRITE_LOCAL_NAME
+0x14 HCI_READ_LOCAL_NAME
+0x15 HCI_READ_CONN_ACCEPT_TIMEOUT
+0x16 HCI_WRITE_CONN_ACCEPT_TIMEOUT
+0x17 HCI_READ_PAGE_TIMEOUT
+0x18 HCI_WRITE_PAGE_TIMEOUT
+0x19 HCI_READ_SCAN_ENABLE
+0x1A HCI_WRITE_SCAN_ENABLE
+0x1B HCI_READ_PAGE_SCAN_ACTIVITY
+0x1C HCI_WRITE_PAGE_SCAN_ACTIVITY
+0x1D HCI_READ_INQUIRY_SCAN_ACTIVITY
+0x1E HCI_WRITE_INQUIRY_SCAN_ACTIVITY
+0x1F HCI_READ_AUTHENTICATION_ENABLE
+0x20 HCI_WRITE_AUTHENTICATION_ENABLE
+0x21 HCI_READ_ENCRYPTION_MODE
+0x22 HCI_WRITE_ENCRYPTION_MODE
+0x23 HCI_READ_CLASS_OF_DEVICE
+0x24 HCI_WRITE_CLASS_OF_DEVICE
+0x25 HCI_READ_VOICE_SETTING
+0x26 HCI_WRITE_VOICE_SETTING
+0x27 HCI_READ_AUTOMATIC_FLUSH_TIMEOUT
+0x28 HCI_WRITE_AUTOMATIC_FLUSH_TIMEOUT
+0x29 HCI_READ_NUM_BROADCAST_RETRANSMISSIONS
+0x2A HCI_WRITE_NUM_BROADCAST_RETRANSMISSIONS
+0x2B HCI_READ_HOLD_MODE_ACTIVITY
+0x2C HCI_WRITE_HOLD_MODE_ACTIVITY
+0x2D HCI_READ_TRANSMIT_POWER_LEVEL
+0x2E HCI_READ_SCO_FLOW_CONTROL_ENABLE
+0x2F HCI_WRITE_SCO_FLOW_CONTROL_ENABLE
+0x31 HCI_SET_CONTROLLER_TO_HOST_FLOW_CONTROL
+0x33 HCI_HOST_BUFFER_SIZE
+0x35 HCI_HOST_NUM_COMPLETED_PACKETS
+0x36 HCI_READ_LINK_SUPERVISION_TIMEOUT
+0x37 HCI_WRITE_LINK_SUPERVISION_TIMEOUT
+0x38 HCI_READ_NUMBER_OF_SUPPORTED_IAC
+0x39 HCI_READ_CURRENT_IAC_LAP
+0x3A HCI_WRITE_CURRENT_IAC_LAP
+0x3B HCI_READ_PAGE_SCAN_PERIOD_MODE
+0x3C HCI_WRITE_PAGE_SCAN_PERIOD_MODE
+0x3D HCI_READ_PAGE_SCAN_MODE
+0x3E HCI_WRITE_PAGE_SCAN_MODE
+0x3F HCI_SET_AFH_CHANNEL_CLASSIFICATION
+
+
+0x42 HCI_READ_INQUIRY_SCAN_TYPE
+0x43 HCI_WRITE_INQUIRY_SCAN_TYPE
+0x44 HCI_READ_INQUIRY_MODE
+0x45 HCI_WRITE_INQUIRY_MODE
+0x46 HCI_READ_PAGE_SCAN_TYPE
+0x47 HCI_WRITE_PAGE_SCAN_TYPE
+
+0x48 HCI_READ_AFH_CHANNEL_ACCESSMENT_MODE
+0x49 HCI_WRITE_AFH_CHANNEL_ACCESSMENT_MODE
+0x51 HCI_READ_EXTENDED_INQUIRY_RESPONSE
+0x52 HCI_WRITE_EXTENDED_INQUIRY_RESPONSE
+0x53 HCI_REFRESH_ENCRYPTION_KEY
+0x55 HCI_READ_SIMPLE_PAIRING_MODE
+0x56 HCI_WRITE_SIMPLE_PAIRING_MODE
+0x57 HCI_READ_LOCAL_OOB_DATA
+0x58 HCI_READ_INQUIRY_RESPONSE_TRANSMIT_POWER_LEVEL
+0x59 HCI_WRITE_INQUIRY_TRANSMIT_POWER_LEVEL
+0x60 HCI_SEND_KEYPRESS_NOTIFICATION
+0x5A HCI_READ_DEFAULT_ERRONEOUS_DATA_REPORTING
+0x5B HCI_WRITE_DEFAULT_ERRONEOUS_DATA_REPORTING
+0x5F HCI_ENHANCED_FLUSH
+0x61 HCI_READ_LOGICAL_LINK_ACCEPT_TIMEOUT
+0x62 HCI_WRITE_LOGICAL_LINK_ACCEPT_TIMEOUT
+0x63 HCI_SET_EVENT_MASK_PAGE_2
+0x64 HCI_READ_LOCATION_DATA
+0x65 HCI_WRITE_LOCATION_DATA
+0x66 HCI_READ_FLOW_CONTROL_MODE
+0x67 HCI_WRITE_FLOW_CONTROL_MODE
+0x68 HCI_READ_ENHANCE_TRANSMIT_POWER_LEVEL
+0x69 HCI_READ_BEST_EFFORT_FLUSH_TIMEOUT
+0x6A HCI_WRITE_BEST_EFFORT_FLUSH_TIMEOUT
+0x6B HCI_SHORT_RANGE_MODE
+0x6C HCI_READ_LE_HOST_SUPPORT
+0x6D HCI_WRITE_LE_HOST_SUPPORT
+0x6E HCI_SET_MWS_CHANNEL_PARAMETERS
+0x6F HCI_SET_EXTERNAL_FRAME_CONFIGURATION
+0x70 HCI_SET_MWS_SIGNALING
+0x71 HCI_SET_MWS_TRANSPORT_LAYER
+0x72 HCI_SET_MWS_SCAN_FREQUENCY_TABLE
+0x73 HCI_SET_MWS_PATTERN_CONFIGURATION
+0x74 HCI_SET_RESERVED_LT_ADDR
+0x75 HCI_DELETE_RESERVED_LT_ADDR
+0x76 HCI_SET_CONNECTIONLESS_SLAVE_BROADCAST_DATA
+0x77 HCI_READ_SYNCHRONIZATION_TRAIN_PARAMETERS
+0x78 HCI_WRITE_SYNCHRONIZATION_TRAIN_PARAMETERS
+0x79 HCI_READ_SECURE_CONNECTIONS_HOST_SUPPORT
+0x7A HCI_WRITE_SECURE_CONNECTIONS_HOST_SUPPORT
+0x7B HCI_READ_AUTHENTICATED_PAYLOAD_TIMEOUT
+0x7C HCI_WRITE_AUTHENTICATED_PAYLOAD_TIMEOUT
+0x7D HCI_READ_LOCAL_OOB_EXTENDED_DATA
+0x7E HCI_READ_EXTENDED_PAGE_TIMEOUT
+0x7F HCI_WRITE_EXTENDED_PAGE_TIMEOUT
+0x80 HCI_READ_EXTENDED_INQUIRY_LENGTH
+0x81 HCI_WRITE_EXTENDED_INQUIRY_LENGTH
+)
+(
+0x01 HCI_READ_LOCAL_VERSION_INFORMATION
+0x02 HCI_READ_LOCAL_SUPPORTED_COMMANDS
+0x03 HCI_READ_LOCAL_SUPPORTED_FEATURES
+0x04 HCI_READ_LOCAL_EXT_FEATURES
+0x05 HCI_READ_BUFFER_SIZE
+0x07 HCI_READ_COUNTRY_CODE
+0x09 HCI_READ_BD_ADDR
+0x0A HCI_REJECT_CONNECTION_REQUEST
+0x0B HCI_READ_LOCAL_SUPPORTED_CODECS
+)
+(
+0x01 HCI_READ_FAILED_CONTACT_COUNTER
+0x02 HCI_RESET_FAILED_CONTACT_COUNTER
+0x03 HCI_GET_LINK_QUALITY
+0x05 HCI_READ_RSSI
+0x06 HCI_READ_AFH_CHANNEL_MAP
+0x07 HCI_READ_BD_CLOCK
+0x08 HCI_READ_ENCRYPTION_KEY_SIZE
+0x09 HCI_READ_LOCAL_AMP_INFO
+0x0A HCI_READ_LOCAL_AMP_ASSOC
+0x0B HCI_WRITE_REMOTE_AMP_ASSOC
+0x0C HCI_GET_MWS_TRANSPORT_LAYER_CONFIGURATION
+0x0D HCI_SET_TRIGGERED_CLOCK_CAPTURE
+)
+(
+0x01 HCI_READ_LOOPBACK_MODE
+0x02 HCI_WRITE_LOOPBACK_MODE
+0x03 HCI_ENABLE_DEVICE_UNDER_TEST_MODE
+0x04 HCI_WRITE_SIMPLE_PAIRING_DEBUG_MODE
+0x07 HCI_ENABLE_AMP_RECEIVER_REPORTS
+0x08 HCI_AMP_TEST_END
+0x09 HCI_AMP_TEST
+0x0A HCI_WRITE_SECURE_CONNECTIONS_TEST_MODE
+)
+(
+0x01 HCI_WRITE_BD_ADDR
+0x02 HCI_READ_INQUIRY_RESPONSE_TIMEOUT
+0x03 HCI_WRITE_INQUIRY_RESPONSE_TIMEOUT
+0x04 HCI_READ_PAGE_SCAN_REPETITION_MODE
+0x05 HCI_WRITE_PAGE_SCAN_REPETITION_MODE
+0x06 HCI_READ_PAGE_RESPONSE_TIMEOUT
+0x07 HCI_WRITE_PAGE_RESPONSE_TIMEOUT
+0x08 HCI_READ_NEW_CONNECTION_TIMEOUT
+0x09 HCI_WRITE_NEW_CONNECTION_TIMEOUT
+0x0a HCI_INITIALIZE_BASEBAND
+0x0b HCI_WRITE_LOCAL_SUPPORTED_FEATURES
+0x0c HCI_WRITE_PARK_PARAMETERS
+0x0d HCI_READ_PARK_PARAMETERS
+0x0e HCI_WRITE_QUALITY_OF_SERVICE
+0x0f HCI_NOT_USED
+0x10 HCI_MODIFY_BEACON_PARAMETERS
+0x11 HCI_UNPARK_USING_PM_ADDR
+0x12 HCI_WRITE_HOPPING_CHANNELS
+0x13 HCI_SLEEP_FOREVER_MODE
+0x14 HCI_WRITE_AUTO_PAGE_SCAN_ENABLE
+0x15 HCI_READ_AUTO_PAGE_SCAN_ENABLE
+0x16 HCI_SET_ENCRYPTION_KEY_SIZE
+0x17 HCI_INVALIDATE_FLASH_AND_REBOOT
+0x18 HCI_UPDATE_UART_BAUD_RATE
+0x19 HCI_WRITE_GPIO_1_4_AS_OUTPUT
+0x1A HCI_WRITE_GPIO_2_LED
+0x1B HCI_SET_TESTMODE_TYPE
+0x1C HCI_WRITE_SCO_PCM_INT_PARAM
+0x1D HCI_READ_SCO_PCM_INT_PARAM
+0x1E HCI_WRITE_PCM_DATA_FORMAT_PARAM
+0x1F HCI_READ_PCM_DATA_FORMAT_PARAM
+0x20 HCI_WRITE_COMFORT_NOISE_PARAM
+0x21 HCI_READ_COMFORT_NOISE_PARAM
+0x22 HCI_WRITE_SCO_TS
+0x23 HCI_READ_SCO_TS
+0x24 HCI_WRITE_PCM_LOOPBACK_MODE
+0x25 HCI_READ_PCM_LOOPBACK_MODE
+0x26 HCI_SET_TRANSMIT_POWER
+0x27 HCI_SET_SLEEPMODE_PARAM
+0x28 HCI_READ_SLEEPMODE_PARAM
+0x29 HCI_SLEEPMODE_CMD
+0x2A HCI_DELAY_PERIPHERAL_SCO_STARTUP
+0x2B HCI_WRITE_RECEIVE_ONLY
+0x2C HCI_WRITE_RATE_CONTROL
+0x2D HCI_TX_UNMOD_CARRIER
+0x2E HCI_DOWNLOAD_MINIDRIVER
+0x2F HCI_CRYSTAL_PPM
+0x30 HCI_SET_POWER_AMP_BIAS
+0x31 HCI_SET_HAM_BEHAVIOR
+0x32 HCI_SET_AFH_BEHAVIOR
+0x33 HCI_READ_USER_DEFINED_NVRAM
+0x34 HCI_ENABLE_RADIO
+0x35 HCI_READ_DIAGNOSTIC_INFO
+0x36 HCI_GET_HID_DEVICE_LIST
+0x37 HCI_ADD_HID_DEVICE
+0x38 HCI_READ_APP_FW_CONFIG_VERSION
+0x39 HCI_DELETE_HID_DEVICE
+0x3B HCI_ENABLE_USB_HID_EMULATION
+// 0x3A available
+// 0x3B available
+0x3C HCI_SEND_LMPDU
+0x3D HCI_AUTO_PAIR_REQ
+0x3E HCI_READ_VS_EXTENSION
+0x3F HCI_WRITE_VS_EXTENSION
+
+0x77 HCI_OPCODE_FC77
+0x79 HCI_OPCODE_FC79
+0xC4 HCI_DOWNLOAD_PATCH
+0xCC HCI_OPCODE_FCCC
+
+0x00 HCI_VENDOR_CMD_RESET
+0x01 HCI_VENDOR_CMD_CHIPID
+0x02 HCI_VENDOR_CMD_BAUD
+0x03 HCI_VENDOR_CMD_PATCH
+0x04 HCI_VENDOR_CMD_PATCH_DONE
+0x05 HCI_VENDOR_CMD_ECHO
+0x06 HCI_VENDOR_CMD_BDADDR
+
+0x07 HCI_VENDOR_CMD_ENTER_LPM
+0x08 HCI_VENDOR_CMD_COMMU_READY
+
+0x10 HCI_VENDOR_CMD_MEM
+0x11 HCI_VENDOR_CMD_EEP
+
+0X12 HCI_VENDOR_CMD_PATCH_SEC_INIT
+0X13 HCI_VENDOR_CMD_PATCH_SEC
+0x14 HCI_VENDOR_CMD_SET_FLOW_CONTROL
+)
+(
+0x01 HCI_LE_SET_EVENT_MASK
+0x02 HCI_LE_READ_BUFFER_SIZE
+0x03 HCI_LE_READ_LOCAL_SUPPORTED_FEATURES
+0x05 HCI_LE_SET_RANDOM_ADDRESS
+0x06 HCI_LE_SET_ADVERTISING_PARAMETERS
+0x07 HCI_LE_READ_ADVERTISING_CHANNEL_TX_POWER
+0x08 HCI_LE_SET_ADVERTISING_DATA
+0x09 HCI_LE_SET_SCAN_RESPONSE_DATA
+0x0A HCI_LE_SET_ADVERTISE_ENABLE
+0x0B HCI_LE_SET_SCAN_PARAMETERS
+0x0C HCI_LE_SET_SCAN_ENABLE
+0x0D HCI_LE_CREATE_CONNECTION
+0x0E HCI_LE_CREATE_CONNECTION_CANCEL
+0x0F HCI_LE_READ_WHITE_LIST_SIZE
+0x10 HCI_LE_CLEAR_WHITE_LIST
+0x11 HCI_LE_ADD_DEVICE_TO_WHITE_LIST
+0x12 HCI_LE_REMOVE_DEVICE_FROM_WHITE_LIST
+0x13 HCI_LE_CONNECTION_UPDATE
+0x14 HCI_LE_SET_HOST_CHANNEL_CLASSIFICATION
+0x15 HCI_LE_READ_CHANNEL_MAP
+0x16 HCI_LE_READ_REMOTE_USED_FEATURES
+0x17 HCI_LE_ENCRYPT
+0x18 HCI_LE_RAND
+0x19 HCI_LE_START_ENCRYPTION
+0x1A HCI_LE_LONG_TERM_KEY_REQUEST_REPLY
+0x1B HCI_LE_LONG_TERM_KEY_REQUEST_NEGATIVE_REPLY
+0x1C HCI_LE_READ_SUPPORTED_STATES
+0x1D HCI_LE_RECEIVER_TEST
+0x1E HCI_LE_TRANSMITTER_TEST
+0x1F HCI_LE_TEST_END
+0x20 HCI_LE_REMOTE_CONNECTION_PARAMETER_REQUEST_REPLY
+0x21 HCI_LE_REMOTE_CONNECTION_PARAMETER_REQUEST_NEGATIVE_REPLY
+)
+(
+0x01 HCI_EVENT_INQUIRY_COMPLETE
+0x02 HCI_EVENT_INQUIRY_RESULT
+0x03 HCI_EVENT_CONNECTION_COMPLETE
+0x04 HCI_EVENT_CONNECTION_REQUEST
+0x05 HCI_EVENT_DISCONNECTION_COMPLETE
+0x06 HCI_EVENT_AUTHENTICATION_COMPLETE
+0x07 HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
+0x08 HCI_EVENT_ENCRYPTION_CHANGE_COMPLETE
+0x09 HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE
+0x0A HCI_EVENT_MASTER_LINK_KEY_COMPLETE
+0x0B HCI_EVENT_READ_REMOTE_FEATURES_COMPLETE
+0x0C HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
+0x0D HCI_EVENT_QOS_SETUP_COMPLETE
+0x0E HCI_EVENT_COMMAND_COMPLETE
+0x0F HCI_EVENT_COMMAND_STATUS
+0x10 HCI_EVENT_HARDWARE_ERROR
+0x11 HCI_EVENT_FLUSH_OCCURRED
+0x12 HCI_EVENT_ROLE_CHANGE
+0x13 HCI_EVENT_NUM_COMPLETED_PACKETS
+0x14 HCI_EVENT_MODE_CHANGE
+0x15 HCI_EVENT_RETURN_LINK_KEYS
+0x16 HCI_EVENT_PIN_CODE_REQUEST
+0x17 HCI_EVENT_LINK_KEY_REQUEST
+0x18 HCI_EVENT_LINK_KEY_NOTIFICATION
+0x19 HCI_EVENT_LOOPBACK_COMMAND
+0x1A HCI_EVENT_DATA_BUFFER_OVERFLOW
+0x1B HCI_EVENT_MAX_SLOTS_CHANGE
+0x1C HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
+0x1D HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
+0x1E HCI_EVENT_QOS_VIOLATION
+0x1F HCI_EVENT_PAGE_SCAN_MODE_CHANGE
+0x20 HCI_EVENT_PAGE_SCAN_REPETITION_MODE_CHANGE
+0x21 HCI_EVENT_FLOW_SPECIFICATION_COMPLETE
+0x22 HCI_EVENT_INQUIRY_RESULT_WITHRSSI
+0x23 HCI_EVENT_READ_REMOTE_EXT_FEATURES_COMPLETE
+0x2C HCI_EVENT_SCO_CONNECTION_COMPLETE
+0x2D HCI_EVENT_SCO_CONNECTION_CHANGED
+0x2E HCI_EVENT_SNIFF_SUBRATING
+0x2F HCI_EVENT_EXT_INQUIRY_RESULT
+0x30 HCI_EVENT_ENCRYPT_KEY_REFRESH_COMPLETE
+0x31 HCI_EVENT_IO_CAP_REQ
+0x32 HCI_EVENT_IO_CAP_RESPONSE
+0x33 HCI_EVENT_USER_CONFIRMATION_REQUEST
+0x34 HCI_EVENT_UESR_PASSKEY_REQUEST
+0x35 HCI_EVENT_REMOTE_OOB_DATA_REQUEST
+0x36 HCI_EVENT_SIMPLE_PAIRING_COMPLETE
+0x38 HCI_EVENT_LINK_SUPERVISION_TIMEOUT_CHANGED
+0x39 HCI_EVENT_ENHANCED_FLUSH_COMPLETE
+0x3B HCI_EVENT_USER_PASSKEY_NOTIFICATION
+0x3C HCI_EVENT_KEYPRESS_NOTIFICATION
+0x3D HCI_EVENT_REMOTE_HOST_SUPPORTED_FEATURES_NOTIFICATION
+0x3E HCI_EVENT_LE_META_EVENT
+0x40 HCI_EVENT_PHYSICAL_LINK_COMPLETE
+0x41 HCI_EVENT_CHANNEL_SELECTED
+0x42 HCI_EVENT_DISCONNECTION_PHYSICAL_LINK_COMPLETE
+0x43 HCI_EVENT_PHYSICAL_LINK_LOSS_EARLY_WARNING
+0x44 HCI_EVENT_PHYSICAL_LINK_RECOVERY
+0x45 HCI_EVENT_LOGICAL_LINK_COMPLETE
+0x46 HCI_EVENT_DISCONNECTION_LOGICAL_LINK_COMPLETE
+0x47 HCI_EVENT_FLOW_SPEC_MODIFY_COMPLETE
+0x48 HCI_EVENT_NUMBER_OF_COMPLETED_DATA_BLOCKS
+0x49 HCI_EVENT_AMP_START_TEST
+0x4A HCI_EVENT_AMP_TEST_END
+0x4B HCI_EVENT_AMP_RECEIVER_REPORT
+0x4C HCI_EVENT_SHORT_RANGE_MODE_CHANGE_COMPLETE
+0x4D HCI_EVENT_AMP_STATUS_CHANGE
+0x4E HCI_EVENT_TRIGGERED_CLOCK_CAPTURE
+0x4F HCI_EVENT_SYNCHRONIZATION_TRAIN_COMPLETE
+0x50 HCI_EVENT_SYNCHRONIZATION_TRAIN_RECEIVED
+0x51 HCI_EVENT_CONNECTIONLESS_SLAVE_BROADCAST_RECEIVE
+0x52 HCI_EVENT_CONNECTIONLESS_SLAVE_BROADCAST_TIMEOUT
+0x53 HCI_EVENT_TRUNCATED_PAGE_COMPLETE
+0x54 HCI_EVENT_SLAVE_PAGE_RESPONSE_TIMEOUT
+0x55 HCI_EVENT_CONNECTIONLESS_SLAVE_BROADCAST_CHANNEL_MAP_CHANGE
+0x56 HCI_EVENT_INQUIRY_RESPONSE_NOTIFICATION
+0x57 HCI_EVENT_AUTHENTICATED_PAYLOAD_TIMEOUT_EXPIRED
+
+0xFE HCI_EVENT_LOGO_TESTING
+0xFF HCI_EVENT_VENDOR_SPECIFIC
+)
+(
+0x01 HCI_VENDOR_EVENT_COMMU_READY
+)
+(
+0x01 HCI_LE_SUBEVENT_CONN_COMPLETE
+0x02 HCI_LE_SUBEVENT_ADV_REPORT
+0x03 HCI_LE_SUBEVENT_CONN_UPDATE_COMPLETE
+0x04 HCI_LE_SUBEVENT_REMOTE_FEATURE_COMPLETE
+0x05 HCI_LE_SUBEVENT_LTK_REQUEST
+0x06 HCI_LE_SUBEVENT_REMOTE_CONN_PARAM_REQ
+)
+(
+256 l2cap_lpm_txbuf_len
+)
+(
+4 L2CAP_TX_FIFO_SIZE
+8 L2CAP_TX_BUFF_CNT
+
+)
+(
+0xf00 mem_dcoc_buf
+0xff0 mem_dcoc_buf_end
+)
+(
+0xf00 mem_le_l2cap_buf		//0x100
+)
+(
+0xd00 mem_ble_tx_buff0
+0x60 mem_ble_l2cap_tx_buff_size
+)
+(
+0xc00 mem_h5rx_buf//0x400
+0xeff mem_h5rx_buf_end
+0xf00 mem_h5tx_buf
+0xfff mem_h5tx_buf_end
+)
+(
+0x4c00 mem_savelist
+)
+(
+	  0 patch00_0
+	  1 patch00_1
+	  2 patch00_2
+	  3 patch00_3
+	  4 patch00_4
+	  5 patch00_5
+	  6 patch00_6
+	  7 patch00_7
+	  8 patch01_0
+	  9 patch01_1
+	 10 patch01_2
+	 11 patch01_3
+	 12 patch01_4
+	 13 patch01_5
+	 14 patch01_6
+	 15 patch01_7
+	 16 patch02_0
+	 17 patch02_1
+	 18 patch02_2
+	 19 patch02_3
+	 20 patch02_4
+	 21 patch02_5
+	 22 patch02_6
+	 23 patch02_7
+	 24 patch03_0
+	 25 patch03_1
+	 26 patch03_2
+	 27 patch03_3
+	 28 patch03_4
+	 29 patch03_5
+	 30 patch03_6
+	 31 patch03_7
+	 32 patch04_0
+	 33 patch04_1
+	 34 patch04_2
+	 35 patch04_3
+	 36 patch04_4
+	 37 patch04_5
+	 38 patch04_6
+	 39 patch04_7
+	 40 patch05_0
+	 41 patch05_1
+	 42 patch05_2
+	 43 patch05_3
+	 44 patch05_4
+	 45 patch05_5
+	 46 patch05_6
+	 47 patch05_7
+	 48 patch06_0
+	 49 patch06_1
+	 50 patch06_2
+	 51 patch06_3
+	 52 patch06_4
+	 53 patch06_5
+	 54 patch06_6
+	 55 patch06_7
+	 56 patch07_0
+	 57 patch07_1
+	 58 patch07_2
+	 59 patch07_3
+	 60 patch07_4
+	 61 patch07_5
+	 62 patch07_6
+	 63 patch07_7
+	 64 patch08_0
+	 65 patch08_1
+	 66 patch08_2
+	 67 patch08_3
+	 68 patch08_4
+	 69 patch08_5
+	 70 patch08_6
+	 71 patch08_7
+	 72 patch09_0
+	 73 patch09_1
+	 74 patch09_2
+	 75 patch09_3
+	 76 patch09_4
+	 77 patch09_5
+	 78 patch09_6
+	 79 patch09_7
+	 80 patch0a_0
+	 81 patch0a_1
+	 82 patch0a_2
+	 83 patch0a_3
+	 84 patch0a_4
+	 85 patch0a_5
+	 86 patch0a_6
+	 87 patch0a_7
+	 88 patch0b_0
+	 89 patch0b_1
+	 90 patch0b_2
+	 91 patch0b_3
+	 92 patch0b_4
+	 93 patch0b_5
+	 94 patch0b_6
+	 95 patch0b_7
+	 96 patch0c_0
+	 97 patch0c_1
+	 98 patch0c_2
+	 99 patch0c_3
+	100 patch0c_4
+	101 patch0c_5
+	102 patch0c_6
+	103 patch0c_7
+	104 patch0d_0
+	105 patch0d_1
+	106 patch0d_2
+	107 patch0d_3
+	108 patch0d_4
+	109 patch0d_5
+	110 patch0d_6
+	111 patch0d_7
+	112 patch0e_0
+	113 patch0e_1
+	114 patch0e_2
+	115 patch0e_3
+	116 patch0e_4
+	117 patch0e_5
+	118 patch0e_6
+	119 patch0e_7
+	120 patch0f_0
+	121 patch0f_1
+	122 patch0f_2
+	123 patch0f_3
+	124 patch0f_4
+	125 patch0f_5
+	126 patch0f_6
+	127 patch0f_7
+	128 patch10_0
+	129 patch10_1
+	130 patch10_2
+	131 patch10_3
+	132 patch10_4
+	133 patch10_5
+	134 patch10_6
+	135 patch10_7
+	136 patch11_0
+	137 patch11_1
+	138 patch11_2
+	139 patch11_3
+	140 patch11_4
+	141 patch11_5
+	142 patch11_6
+	143 patch11_7
+	144 patch12_0
+	145 patch12_1
+	146 patch12_2
+	147 patch12_3
+	148 patch12_4
+	149 patch12_5
+	150 patch12_6
+	151 patch12_7
+	152 patch13_0
+	153 patch13_1
+	154 patch13_2
+	155 patch13_3
+	156 patch13_4
+	157 patch13_5
+	158 patch13_6
+	159 patch13_7
+	160 patch14_0
+	161 patch14_1
+	162 patch14_2
+	163 patch14_3
+	164 patch14_4
+	165 patch14_5
+	166 patch14_6
+	167 patch14_7
+	168 patch15_0
+	169 patch15_1
+	170 patch15_2
+	171 patch15_3
+	172 patch15_4
+	173 patch15_5
+	174 patch15_6
+	175 patch15_7
+	176 patch16_0
+	177 patch16_1
+	178 patch16_2
+	179 patch16_3
+	180 patch16_4
+	181 patch16_5
+	182 patch16_6
+	183 patch16_7
+	184 patch17_0
+	185 patch17_1
+	186 patch17_2
+	187 patch17_3
+	188 patch17_4
+	189 patch17_5
+	190 patch17_6
+	191 patch17_7
+	192 patch18_0
+	193 patch18_1
+	194 patch18_2
+	195 patch18_3
+	196 patch18_4
+	197 patch18_5
+	198 patch18_6
+	199 patch18_7
+	200 patch19_0
+	201 patch19_1
+	202 patch19_2
+	203 patch19_3
+	204 patch19_4
+	205 patch19_5
+	206 patch19_6
+	207 patch19_7
+	208 patch1a_0
+	209 patch1a_1
+	210 patch1a_2
+	211 patch1a_3
+	212 patch1a_4
+	213 patch1a_5
+	214 patch1a_6
+	215 patch1a_7
+	216 patch1b_0
+	217 patch1b_1
+	218 patch1b_2
+	219 patch1b_3
+	220 patch1b_4
+	221 patch1b_5
+	222 patch1b_6
+	223 patch1b_7
+	224 patch1c_0
+	225 patch1c_1
+	226 patch1c_2
+	227 patch1c_3
+	228 patch1c_4
+	229 patch1c_5
+	230 patch1c_6
+	231 patch1c_7
+	232 patch1d_0
+	233 patch1d_1
+	234 patch1d_2
+	235 patch1d_3
+	236 patch1d_4
+	237 patch1d_5
+	238 patch1d_6
+	239 patch1d_7
+	240 patch1e_0
+	241 patch1e_1
+	242 patch1e_2
+	243 patch1e_3
+	244 patch1e_4
+	245 patch1e_5
+	246 patch1e_6
+	247 patch1e_7
+	248 patch1f_0
+	249 patch1f_1
+	250 patch1f_2
+	251 patch1f_3
+	252 patch1f_4
+	253 patch1f_5
+	254 patch1f_6
+	255 patch1f_7
+	  0 patch20_0
+	  1 patch20_1
+	  2 patch20_2
+	  3 patch20_3
+	  4 patch20_4
+	  5 patch20_5
+	  6 patch20_6
+	  7 patch20_7
+	  8 patch21_0
+	  9 patch21_1
+	 10 patch21_2
+	 11 patch21_3
+	 12 patch21_4
+	 13 patch21_5
+	 14 patch21_6
+	 15 patch21_7
+	 16 patch22_0
+	 17 patch22_1
+	 18 patch22_2
+	 19 patch22_3
+	 20 patch22_4
+	 21 patch22_5
+	 22 patch22_6
+	 23 patch22_7
+	 24 patch23_0
+	 25 patch23_1
+	 26 patch23_2
+	 27 patch23_3
+	 28 patch23_4
+	 29 patch23_5
+	 30 patch23_6
+	 31 patch23_7
+	 32 patch24_0
+	 33 patch24_1
+	 34 patch24_2
+	 35 patch24_3
+	 36 patch24_4
+	 37 patch24_5
+	 38 patch24_6
+	 39 patch24_7
+	 40 patch25_0
+	 41 patch25_1
+	 42 patch25_2
+	 43 patch25_3
+	 44 patch25_4
+	 45 patch25_5
+	 46 patch25_6
+	 47 patch25_7
+	 48 patch26_0
+	 49 patch26_1
+	 50 patch26_2
+	 51 patch26_3
+	 52 patch26_4
+	 53 patch26_5
+	 54 patch26_6
+	 55 patch26_7
+	 56 patch27_0
+	 57 patch27_1
+	 58 patch27_2
+	 59 patch27_3
+	 60 patch27_4
+	 61 patch27_5
+	 62 patch27_6
+	 63 patch27_7
+	 64 patch28_0
+	 65 patch28_1
+	 66 patch28_2
+	 67 patch28_3
+	 68 patch28_4
+	 69 patch28_5
+	 70 patch28_6
+	 71 patch28_7
+	 72 patch29_0
+	 73 patch29_1
+	 74 patch29_2
+	 75 patch29_3
+	 76 patch29_4
+	 77 patch29_5
+	 78 patch29_6
+	 79 patch29_7
+	 80 patch2a_0
+	 81 patch2a_1
+	 82 patch2a_2
+	 83 patch2a_3
+	 84 patch2a_4
+	 85 patch2a_5
+	 86 patch2a_6
+	 87 patch2a_7
+	 88 patch2b_0
+	 89 patch2b_1
+	 90 patch2b_2
+	 91 patch2b_3
+	 92 patch2b_4
+	 93 patch2b_5
+	 94 patch2b_6
+	 95 patch2b_7
+	 96 patch2c_0
+	 97 patch2c_1
+	 98 patch2c_2
+	 99 patch2c_3
+	100 patch2c_4
+	101 patch2c_5
+	102 patch2c_6
+	103 patch2c_7
+	104 patch2d_0
+	105 patch2d_1
+	106 patch2d_2
+	107 patch2d_3
+	108 patch2d_4
+	109 patch2d_5
+	110 patch2d_6
+	111 patch2d_7
+	112 patch2e_0
+	113 patch2e_1
+	114 patch2e_2
+	115 patch2e_3
+	116 patch2e_4
+	117 patch2e_5
+	118 patch2e_6
+	119 patch2e_7
+	120 patch2f_0
+	121 patch2f_1
+	122 patch2f_2
+	123 patch2f_3
+	124 patch2f_4
+	125 patch2f_5
+	126 patch2f_6
+	127 patch2f_7
+	128 patch30_0
+	129 patch30_1
+	130 patch30_2
+	131 patch30_3
+	132 patch30_4
+	133 patch30_5
+	134 patch30_6
+	135 patch30_7
+	136 patch31_0
+	137 patch31_1
+	138 patch31_2
+	139 patch31_3
+	140 patch31_4
+	141 patch31_5
+	142 patch31_6
+	143 patch31_7
+	144 patch32_0
+	145 patch32_1
+	146 patch32_2
+	147 patch32_3
+	148 patch32_4
+	149 patch32_5
+	150 patch32_6
+	151 patch32_7
+	152 patch33_0
+	153 patch33_1
+	154 patch33_2
+	155 patch33_3
+	156 patch33_4
+	157 patch33_5
+	158 patch33_6
+	159 patch33_7
+	160 patch34_0
+	161 patch34_1
+	162 patch34_2
+	163 patch34_3
+	164 patch34_4
+	165 patch34_5
+	166 patch34_6
+	167 patch34_7
+	168 patch35_0
+	169 patch35_1
+	170 patch35_2
+	171 patch35_3
+	172 patch35_4
+	173 patch35_5
+	174 patch35_6
+	175 patch35_7
+	176 patch36_0
+	177 patch36_1
+	178 patch36_2
+	179 patch36_3
+	180 patch36_4
+	181 patch36_5
+	182 patch36_6
+	183 patch36_7
+	184 patch37_0
+	185 patch37_1
+	186 patch37_2
+	187 patch37_3
+	188 patch37_4
+	189 patch37_5
+	190 patch37_6
+	191 patch37_7
+	192 patch38_0
+	193 patch38_1
+	194 patch38_2
+	195 patch38_3
+	196 patch38_4
+	197 patch38_5
+	198 patch38_6
+	199 patch38_7
+	200 patch39_0
+	201 patch39_1
+	202 patch39_2
+	203 patch39_3
+	204 patch39_4
+	205 patch39_5
+	206 patch39_6
+	207 patch39_7
+	208 patch3a_0
+	209 patch3a_1
+	210 patch3a_2
+	211 patch3a_3
+	212 patch3a_4
+	213 patch3a_5
+	214 patch3a_6
+	215 patch3a_7
+	216 patch3b_0
+	217 patch3b_1
+	218 patch3b_2
+	219 patch3b_3
+	220 patch3b_4
+	221 patch3b_5
+	222 patch3b_6
+	223 patch3b_7
+	224 patch3c_0
+	225 patch3c_1
+	226 patch3c_2
+	227 patch3c_3
+	228 patch3c_4
+	229 patch3c_5
+	230 patch3c_6
+	231 patch3c_7
+	232 patch3d_0
+	233 patch3d_1
+	234 patch3d_2
+	235 patch3d_3
+	236 patch3d_4
+	237 patch3d_5
+	238 patch3d_6
+	239 patch3d_7
+	240 patch3e_0
+	241 patch3e_1
+	242 patch3e_2
+	243 patch3e_3
+	244 patch3e_4
+	245 patch3e_5
+	246 patch3e_6
+	247 patch3e_7
+	248 patch3f_0
+	249 patch3f_1
+	250 patch3f_2
+	251 patch3f_3
+	252 patch3f_4
+	253 patch3f_5
+	254 patch3f_6
+	255 patch3f_7
+
+)
+(
+	0x8000 core_chipid
+	0x8001 core_revid
+	0x8003 core_kick
+	0x8004 core_write_wdt
+	0x8005 core_lpm_wr
+	0x8006 core_misc_ctrl
+	0x8007 core_otp_rdata
+	0x8007 core_efuse_rdata
+	0x800a core_ccm_ctrl
+	0x800b core_write_wdt2
+	0x8010 core_reset
+	0x8011 core_encrypt
+	0x8012 core_lpm_wr2
+	0x8020 core_set_bistfix
+	0x8022 core_ucode_hi
+	0x8023 core_ucode_ctrl
+	0x8024 core_ucode_low
+	0x8025 core_ucode_data
+
+	0x8040 core_halfslot
+	0x8042 core_clksel
+	0x8043 core_uart_clksel
+	0x8043 core_config
+	0x8044 core_otp_addr
+	0x8046 core_otp_din
+	0x8046 core_otp_ctrl2
+	0x8047 core_otp_ctrl
+	0x8047 core_otp_pab
+	0x8048 core_xtal_stable_time
+	0x8049 core_gpio_ds
+	0x804c core_lpm_reg
+	0x8050 core_clkoff
+	0x8052 core_uart_baud
+	0x8054 core_uart_rsaddr
+	0x8056 core_uart_readdr
+	0x8058 core_uart_rrptr
+	0x805a core_uart_tsaddr
+	0x805c core_uart_teaddr
+	0x805e core_uart_twptr
+	0x8060 core_uart_ctrl
+	0x8061 core_nec_ctrl
+	0x8062 core_nec_start_addr
+	0x8064 core_nec_end_addr
+	0x8066 core_nec_rptr
+	0x8068 core_ccm_input_playload_addr
+	0x806a core_ccm_output_playload_addr
+	0x806c core_ccm_aad0
+	0x806d core_ccm_aad1
+	0x806e core_ccm_aad2
+	0x806f  core_bist_ctrl
+	0x8070 core_gpio_conf
+	0x8080 core_spid_ctrl
+	0x8081 core_spid_delay
+	0x8082 core_spid_txlen
+	0x8084 core_spid_txaddr
+	0x8086 core_spid_rxaddr
+	0x8088 core_spid_rxlen
+	0x808a core_iicd_ctrl
+	0x808b core_iicd_scl_low
+	0x808c core_iicd_scl_high
+	0x808d core_iicd_start_setup
+	0x808e core_iicd_start_hold
+	0x808f core_iicd_stop_setup
+	0x8090 core_iicd_data_setup
+	0x8091 core_iicd_data_hold
+	0x8092 core_iicd_txlen
+	0x8094 core_iicd_txaddr
+	0x8096 core_iicd_rxaddr
+	0x8098 core_iicd_rxlen
+	0x809a core_pwm_en
+	0x809b core_pwm_init
+	0x809c core_pwm_pcnt0
+	0x809e core_pwm_ncnt0
+	0x80a0 core_pwm_pcnt1
+	0x80a2 core_pwm_ncnt1
+	0x80a4 core_pwm_pcnt2
+	0x80a6 core_pwm_ncnt2
+	0x80a8 core_pwm_pcnt3
+	0x80aa core_pwm_ncnt3
+	0x80ac core_pwm_pcnt4
+	0x80ae core_pwm_ncnt4
+	0x80b0 core_pwm_pcnt5
+	0x80b2 core_pwm_ncnt5
+	0x80b4 core_pwm_pcnt6
+	0x80b6 core_pwm_ncnt6
+	0x80b8 core_pwm_pcnt7
+	0x80ba core_pwm_ncnt7
+	0x80bc core_pwm_sync
+	0x80bd core_pwm_timermode
+	0x80be core_pwm_autoload
+	0x80bf core_sum_ctrl
+	0x80c0 core_ccm_inptr
+	0x80c2 core_dac_ctrl
+	0x80c3 core_dac_vol
+	0x80c4 core_dac_saddr
+	0x80c6 core_dac_len
+	0x80c8 core_dac_coef
+	0x80cb core_ccnt_bit
+	0x80cc core_sadc_ctrl
+	0x80cd core_sadc_clkdiv
+	0x80ce core_sadc_saddr
+	0x80d0 core_sadc_eaddr
+	0x80d2 core_keybuf_saddr
+	0x80d4 core_gpio_conf_hi
+
+	0x8108 core_misc_status
+	0x8109 core_qdec_cntx
+	0x810a core_watchdog_cnt
+	0x810b core_uart_status
+	0x810c core_uart_rbaud
+	0x810e core_uart_txitems
+	0x8110 core_uart_trptr
+	0x8112 core_uart_rxitems
+	0x8114 core_uart_rdptr
+	0x8116 core_uart_rwptr
+	0x8118 core_debug_baud
+	0x811a core_ccm_outptr
+	0x811c core_gpio_in
+	0x811d core_gpio_in1
+	0x811e core_adc_sum
+	0x8120 core_nec_wptr
+	0x8122 core_current_otp_addr
+	0x8124 core_spid_remain
+	0x8126 core_iicd_remain
+	0x8128 core_dma_status
+	0x8129 core_perf_status
+	0x812a core_adc_in
+	0x812c core_nec_rxitem
+	0x812e core_otpd_remain
+	0x8130 core_lpm_ctrl
+	0x8132 core_lpm_isogate
+	0x8133 core_lpm_ldosel
+	0x8134 core_io_vsel
+	0x8135 core_io_doze_en
+	0x813a core_xtal_cap
+	0x813d core_xtal_ib
+	0x813e core_lpm_xtalcnt
+	0x813f core_lpm_buckcnt
+	0x8140 core_lpm_ldocnt
+	0x8141 core_puwakeup
+	0x8142 core_lpm_sysctl
+	0x8143 core_ucode_flag
+	0x8144 core_peripheral_lock
+	0x8145 core_mpu_s0_saddr
+	0x8147 core_mpu_s0_eaddr
+	0x8149 core_mpu_s1_saddr
+	0x814b core_mpu_s1_eaddr
+	0x814d core_gpio_wakeup_cfg
+	0x8155 core_aes_decode_key_init
+	0x815b core_clk_counter
+	0x815e core_bist_done
+	0x8160 core_bist_fail
+	0x8162 core_dac_rptr
+	0x8164 core_sadc_data
+	0x8166 core_rccnt_counter
+
+	0x8203 core_ice_ctrl
+	0x8204 core_ice_status
+	0x8205 core_ice_break0
+	0x8207 core_ice_break1
+
+
+	0x8900 modem_en
+	0x8960 core_rf_rx_agc_ctrl
+	0x8961 core_rf_rx_gain_fix
+	0x8968 core_agc_wb_sat_th
+	0x8969 core_agc_nb_sat_th
+	0x89a0 modem_rssi
+	0x89a1 modem_wb_pow
+	0x89a2 modem_nb_pow
+	0x89a3 modem_gain
+	0x89a4 modem_status
+
+	0x8a00 core_bbpll_ctrl0
+	0x8a01 core_bbpll_ctrl1
+	0x8a02 core_bbpll_cfg0
+	0x8a03 core_bbpll_cfg1
+	0x8a04 core_bbpll_cfg2
+	0x8a05 core_bbpll_cfg3
+	0x8a06 core_bbpll_cfg4
+	0x8a07 core_gpadc_ctrl
+	0x8a08 core_gpadc_cfg0
+	0x8a09 core_gpadc_cfg1
+	0x8a0a core_gpadc_cfg2
+	0x8a0b core_gpadc_cfg3
+	0x8a0c core_gpadc_status
+	0x8a0d core_vtest_ctrl0
+	0x8a0e core_vtest_ctrl1
+	0x8a0f core_ldo_trx_ctrl0
+	0x8a10 core_ldo_trx_ctrl1
+	0x8a11 core_ldo_trx_ctrl2
+	0x8a12 core_ldo_rfpll_ctrl
+    0x8a13 core_ldo_trx_cfg0
+    0x8a14 core_ldo_trx_cfg1
+    0x8a15 core_ldo_trx_cfg2
+    0x8a16 core_ldo_rfpll_mnc_cfg2
+
+    0x8a20 core_rfpll_afc_ctrl0
+    0x8a21 core_rfpll_afc_ctrl1
+    0x8a22 core_rfpll_afc_ctrl2
+    0x8a23 core_rfpll_en_ctrl0
+    0x8a24 core_rfpll_en_ctrl1
+    0x8a25 core_rf_en_ctrl0
+    0x8a26 core_rf_en_ctrl1
+
+	0x8a30 core_rx_force_en_ctrl
+	0x8a31 core_rx_gc_force_val
+	0x8a32 core_rx_lna_isel_force_val
+
+	0x8a40 core_rx_lna_hg_isel_gc7
+	0x8a41 core_rx_lna_hg_isel_gc6
+	0x8a42 core_rx_lna_hg_isel_gc5
+	0x8a43 core_rx_lna_lg_isel_gc4
+	0x8a44 core_rx_lna_lg_isel_gc3
+	0x8a45 core_rx_lna_lg_isel_gc2
+	0x8a46 core_rx_lna_lg_isel_gc1
+	0x8a47 core_rx_lna_lg_isel_gc0
+	0x8a48 core_rx_abb_gc_gc8
+	0x8a49 core_rx_abb_gc_gc7
+	0x8a4a core_rx_abb_gc_gc6
+	0x8a4b core_rx_abb_gc_gc5
+	0x8a4c core_rx_abb_gc_gc4
+	0x8a4d core_rx_abb_gc_gc3
+	0x8a4e core_rx_abb_gc_gc2
+	0x8a4f core_rx_abb_gc_gc1
+	0x8a50 core_rx_abb_gc_gc0
+
+	0x8a60 core_tx_ctrl0
+	0x8a61 core_tx_ctrl1
+	0x8a62 core_tx_ctrl2
+	0x8a63 core_tx_ctrl3
+
+	0x8a70 core_rfpll_cal_ctrl0
+	0x8a71 core_rfpll_cal_ctrl1
+	0x8a72 core_rfpll_cal_ctrl2
+	0x8a73 core_rfpll_cal_ctrl3
+	0x8a74 core_rfpll_cal_ctrl4
+	0x8a75 core_rfpll_cal_ctrl5
+	0x8a76 core_rfpll_cal_ctrl6
+	0x8a77 core_rfpll_cal_ctrl7
+	0x8a78 core_rfpll_cal_ctrl8
+	0x8a79 core_rfpll_cal_ctrl9
+	0x8a7a core_rfpll_cal_ctrl10
+	0x8a7b core_rfpll_cal_ctrl11
+	0x8a7c core_rfpll_cal_result0
+	0x8a7d core_rfpll_cal_result1
+	0x8a7e core_rfpll_cal_result2
+
+    0x8a80 core_rfpll_cfg0
+    0x8a81 core_rfpll_cfg1
+    0x8a82 core_rfpll_cfg2
+    0x8a83 core_rfpll_cfg3
+    0x8a84 core_rfpll_cfg4
+    0x8a85 core_rfpll_cfg5
+    0x8a86 core_rfpll_cfg6
+    0x8a87 core_rfpll_cfg7
+
+    0x8a88 core_rx_cfg0
+    0x8a89 core_rx_cfg1
+    0x8a8a core_rx_cfg2
+    0x8a8b core_rx_cfg3
+    0x8a8c core_rx_cfg4
+    0x8a8d core_rx_cfg5
+    0x8a8e core_rx_cfg6
+    0x8a8f core_rx_cfg7
+    0x8a90 core_rx_cfg8
+
+	0x8aa0 core_rx_tiai_dcoc_gc0
+	0x8aa1 core_rx_tiaq_dcoc_gc0
+	0x8aa2 core_rx_tiai_dcoc_gc1
+	0x8aa3 core_rx_tiaq_dcoc_gc1
+	0x8aa4 core_rx_tiai_dcoc_gc2
+	0x8aa5 core_rx_tiaq_dcoc_gc2
+	0x8aa6 core_rx_tiai_dcoc_gc3
+	0x8aa7 core_rx_tiaq_dcoc_gc3
+	0x8aa8 core_rx_tiai_dcoc_gc4
+	0x8aa9 core_rx_tiaq_dcoc_gc4
+	0x8aaa core_rx_tiai_dcoc_gc5
+	0x8aab core_rx_tiaq_dcoc_gc5
+	0x8aac core_rx_tiai_dcoc_gc6
+	0x8aad core_rx_tiaq_dcoc_gc6
+	0x8aae core_rx_tiai_dcoc_gc7
+	0x8aaf core_rx_tiaq_dcoc_gc7
+	0x8ab0 core_rx_abbi_dcoc_gc0
+	0x8ab1 core_rx_abbq_dcoc_gc0
+	0x8ab2 core_rx_abbi_dcoc_gc1
+	0x8ab3 core_rx_abbq_dcoc_gc1
+	0x8ab4 core_rx_abbi_dcoc_gc2
+	0x8ab5 core_rx_abbq_dcoc_gc2
+	0x8ab6 core_rx_abbi_dcoc_gc3
+	0x8ab7 core_rx_abbq_dcoc_gc3
+	0x8ab8 core_rx_abbi_dcoc_gc4
+	0x8ab9 core_rx_abbq_dcoc_gc4
+	0x8aba core_rx_abbi_dcoc_gc5
+	0x8abb core_rx_abbq_dcoc_gc5
+	0x8abc core_rx_abbi_dcoc_gc6
+	0x8abd core_rx_abbq_dcoc_gc6
+	0x8abe core_rx_abbi_dcoc_gc7
+	0x8abf core_rx_abbq_dcoc_gc7
+	0x8ac0 core_rx_abbi_dcoc_gc8
+	0x8ac1 core_rx_abbq_dcoc_gc8
+	0x8ac2 core_rx_tiai_dcoc_force
+	0x8ac3 core_rx_tiaq_dcoc_force
+	0x8ac4 core_rx_abbi_dcoc_force
+	0x8ac5 core_rx_abbq_dcoc_force
+	0x8ac8 core_chgpump_ctrl
+
+	0x8c00 core_usb_config
+	0x8c01 core_usb_addr
+	0x8c02 core_usb_rx_saddr
+	0x8c04 core_usb_rx_eaddr
+	0x8c06 core_usb_rxptr
+	0x8c08 core_usb_tx_saddr0
+	0x8c0a core_usb_tx_saddr1
+	0x8c0c core_usb_tx_saddr2
+	0x8c0e core_usb_tx_saddr3
+	0x8c10 core_usb_epmap
+	0x8c11 core_usb_pupd
+	0x8c12 core_usb_hmode
+	0x8c13 core_usb_int_mask
+	0x8c18 core_usb_trig
+	0x8c19 core_usb_stall
+	0x8c1a core_usb_toggle
+	0x8c1b core_usb_clear_nak
+	0x8c20 core_usb_rx_wptr
+	0x8c22 core_usb_status
+	0x8c24 core_usb_stall_status
+	0x8c25 core_usb_txbusy
+	0x8c26 core_usb_sof_cnt
+	0x8c28 core_usb_rxcnt
+
+
+
+
+
+
+
+)
+(
+7 AES_EN
+)
+(
+4 rx_freq_offset
+2 tx_freq_offset
+)
+(
+
+  4 whiteoff_bit
+  6 clksel_rc
+  1 clksel_dpll_24M
+  5 clksel_dpll
+  4 clksel_xtal
+  5 adc_rccal
+  0 bpf_rccal
+  1 demod_clkoff
+)
+(
+  4 cold_wake
+  5 gpio_latch
+  6 retmem_cs
+  7 isogate
+)
+(
+  2 fast_wake
+  3 ice_mode
+  4 reload_code
+)
+(
+1 lpmreg_sel_counter
+2 lpmreg_sel_scanmode
+)
+(
+0 SPI_LOCK_BIT
+1 PWM_LOCK_BIT
+2 UART_LOCK_BIT
+3 IIC_LOCK_BIT
+4 ADPCM_LOCK_BIT
+5 ROM_LOCK_BIT
+6 OPTION_LOCK
+6 OTP_NOT_LIMIT
+7 OTP_LIMIT
+)
+(
+4 LPM_DOZE_EN_BIT
+)
+(
+  0x01 RCCNT_START
+  0x02 SPID_START
+  0x04 IICD_START
+  0x08 OTP_KEY_LOCK
+  0x10 INIT_KEY
+  0x20 SHIFT_KEY
+  0X80 CCNT_START
+)
+(
+  0 OTPD_CRCOK
+  1 OTPD_DONE
+  2 SPID_CRCOK
+  3 SPID_DONE
+  4 IICD_CRCOK
+  5 IICD_DONE
+  6 IICD_ACK
+)
+(
+1 UART_STATUS_TX_BUSY
+2 UART_STATUS_RX_FIFO_EMPTY
+3 UART_STATUS_RX_FIFO_FULL
+4 UARTB_STATUS_TX_BUSY
+5 UARTB_STATUS_RX_FIFO_EMPTY
+6 UARTB_STATUS_RX_FIFO_FULL
+)
+(//core_uart_clksel
+0 UART_CLOCK_SELECT_BIT
+0xFE UART_CLOCK_SELECT_CRYSTAL
+0x01 UART_CLOCK_SELECT_DPLL
+
+24000000 uart_clock_freq_24M
+48000000 uart_clock_freq_48M
+)
+(//bit map of core_uart_ctrl
+0 BIT_UART_CONTROL_ENABLE
+1 BIT_UART_CONTROL_PARITY
+2 BIT_UART_CONTROL_DATA_LENGTH
+3 BIT_UART_CONTROL_STOP_BIT_SIZE
+4 BIT_UART_CONTROL_FLOW_CONTROL
+5 BIT_UART_CONTROL_7816_SMART_CARD_PROTOCOL
+6 BIT_UART_CONTROL_HALF_DUPLEX_SINGLE_LINE_UART
+7 BIT_UART_CONTROL_RATE_BAUD_SETTING
+)
+(//FUN of core_uart_ctrl
+0x01 FUN_UART_CONTROL_ENABLE
+0x06 FUN_UART_CONTROL_PARITY_ODD
+0x04 FUN_UART_CONTROL_PARITY_EVEN
+0x08 FUN_UART_CONTROL_STOP_2BIT
+0x00 FUN_UART_CONTROL_STOP_1BIT
+0x10 FUN_UART_CONTROL_FLOW_CONTROL_ENABLE
+0x20 FUN_UART_CONTROL_7816_SMART_CARD_PROTOCOL
+0x40 FUN_UART_CONTROL_HALF_DUPLEX_SINGLE_LINE_UART
+0x80 FUN_UART_CONTROL_SETTING_RATE_BAUD
+)
+(//bit map of core_nec_control
+0x00 BIT_NEC_ENABLE
+0x01 BIT_NEC_CLK_DIVIDE_NUM
+)
+(//FUN  of core_nec_control
+0x01 FUN_NEC_ENABLE
+0x30 FUN_NEC_CLK_DIVIDE_24	//24M ,
+)
+0x8b uart_ctrl_default //BCSP
+0x81 uart_ctrl_h4 //H4
+0x81 uart_ctrl_normal
+0x91 uart_ctrl_5line
+0x81 uart_ctrl_57600
+2 uart_baud_len
+0x00 uartclk_crystal
+0x01 uartclk_dpll
+0x1a0 uart_baud_115200
+0xbb uart_baud_256000
+0x340 uart_baud_57600
+0x34 uart_baud_921600
+0x9c4 uart_baud_9600
+(
+	0 CLOCK_OFF_AUTH_ROM
+	1 CLOCK_OFF_UC_ROM
+	2 CLOCK_OFF_DEBUG_UART
+	3 CLOCK_OFF_SCHED_RAM
+	4 CLOCK_OFF_TRANCE_FIFO
+	5 CLOCK_OFF_CORDIC
+	6 CLOCK_OFF_OTPD
+	7 CLOCK_OFF_I2C
+	8 CLICK_OFF_SARADC_DMA
+	9 CLOCK_OFF_KEYSCAN
+	0x0a CLOCK_OFF_USB
+	0x0b CLOCK_OFF_QDECODER
+	0x0c CLOCK_OFF_SPI
+	0x0d CLOCK_OFF_PWM
+	0x0e CLOCK_OFF_UARTB
+	0x0f CLOCK_OFF_UART
+)
+(
+  0 gpcfg_input
+  6 gpcfg_dac_p
+  7 gpcfg_dac_n
+  8 gpcfg_uart_txd
+  9 gpcfg_uart_rxd
+  10 gpcfg_uart_rts
+  11 gpcfg_uart_cts
+
+  16 gpcfg_pwm_out0
+  17 gpcfg_pwm_out1
+  18 gpcfg_pwm_out2
+  19 gpcfg_pwm_out3
+  20 gpcfg_pwm_out4
+  21 gpcfg_pwm_out5
+  22 gpcfg_pwm_out6
+  23 gpcfg_pwm_out7
+  24 gpcfg_nec_input
+
+  31 gpcfg_spid_miso
+  32 gpcfg_spid_ncs
+  33 gpcfg_spid_sck
+  34 gpcfg_spid_mosi
+  35 gpcfg_spid_sdio
+
+  44 gpcfg_iic_scl
+  45 gpcfg_iic_sda
+
+  62 gpcfg_output_low
+  63 gpcfg_output_high
+
+  0x00 gpcfg_high_impedance
+  0x40 gpcfg_pullup
+  0x80 gpcfg_pulldown
+  0xc0 gpcfg_no_ie
+)
+(
+16	GPIO_NUMBER
+8	GPIO_NUMBER_EXT
+)
+(
+  0x00   SP_FLAG_STANDBY
+  0x02   LE_SP_FLAG_COMMIT_256
+
+)
+(
+  0x00   SP_CALC_STANDBY
+  0x03   SP_CALC_PUBKEY_256
+  0x04   SP_CALC_DHKEY_256
+)
+(
+  0x00   SP_KEY_INVALID
+  0x03   SP_KEY_VALID_256
+
+)
+(
+0 SECURE_CONNECTIONS_LE_BIT
+1 SECURE_CONNECTIONS_BR_BIT
+)
+(
+9 UI_STATE_BLE_CONNECTED
+10 UI_STATE_BLE_WRITE_RCV
+11 UI_STATE_BLE_ADV
+12 UI_STATE_BTN_DOWN
+)
+(
+0 BT_CMD_STANDBY
+13 BT_CMD_START_ADV
+14 BT_CMD_STOP_ADV
+15 BT_CMD_START_DIRECT_ADV
+16 BT_CMD_STOP_DIRECT_ADV
+17 BT_CMD_LE_DISCONNECT
+18 BT_CMD_LE_UPDATE_CONN
+19 BT_CMD_LED_OFF
+20 BT_CMD_LED_ON
+21 BT_CMD_LED_BLINK
+22 BT_CMD_LE_START_CONN
+23 BT_CMD_LE_START_SCAN
+24 BT_CMD_LE_STOP_SCAN
+25 BT_CMD_ENTER_HIBERNATE
+27 BT_CMD_LE_SMP_SECURITY_REQUEST
+31 BT_CMD_STORE_RECONN_INFO_LE
+34 BT_CMD_START_24G
+35 BT_CMD_STOP_24G
+36 BT_CMD_PAIR_24G
+)
+(
+0x00 BT_EVT_NULL
+0x0F BT_EVT_DISCOVERY_STOPED
+0x10 BT_EVT_BUTTON_LONG_PRESSED
+0x14 BT_EVT_LE_CONNECTED
+0X15 BT_EVT_LE_DISCONNECTED
+0x17 BT_EVT_BUTTON_ENTER_HIBERNATE
+0x25 BT_EVT_BUTTON_ADJUST_DPI
+0x28 BT_EVT_LE_WRITE_REQUEST
+0x29 BT_EVT_LE_ENC_INFO
+0x2c BT_EVT_BUTTON_DOWN
+0x2d BT_EVT_BUTTON_UP
+0x2e BT_EVT_REMOTE_UNSNIFF
+0x30 BT_EVT_LE_PAIRING_FAIL
+0x31 BT_EVT_LE_PAIRING_SUCCESS
+0x32 BT_EVT_LE_START_ENC
+0X33 BT_EVT_LE_PAUSE_ENC
+0X34 BT_EVT_LE_TK_GENERATE
+0x35 BT_EVT_BT_GKEY_GENERATE
+0x36 BT_EVT_BT_GET_PASSKEY
+0x39 BT_EVT_24G_PAIRING_COMPLETE
+0x3a BT_EVT_24G_ATTEMPT_FAIL
+0x3b BT_EVT_LE_GKEY_GENERATE
+0x3c BT_EVT_24G_ATTEMPT_SUCCESS
+0x3d BT_EVT_STORE_NVRAM
+0x3e BT_EVT_LE_PAIRING_COMPLETE
+0x3F BT_EVT_LE_RECONNECT_COMPLETE
+0x40 BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP
+0x41 BT_EVT_LE_LTK_LOST
+0x42 BT_EVT_LE_UPDATE_PHY
+0x43 BT_EVT_LE_GET_PASSKEY
+0x44 BT_EVT_LE_PARSE_CONN_PARAM_ACCEPTED
+)
+(
+0 OFF
+1 ON
+)
+(
+	160 UI_HUNDRED_MILLISECOND_TIME
+	0XFF UI_BUTTON_GPIO_DISABLE
+)
+(
+0x00 UI_BUTTON_STATE_DOWN
+0x01 UI_BUTTON_STATE_UP
+)
+(
+	0 IPC_CONTINUE_PROCESS
+	1 IPC_SKIP_CONTINUE_PROCESS
+)
+(//led style struct
+0 		LED_OFFSET_LED_TYPE
+1 		LED_OFFSET_BLINK_COUNT
+2		LED_OFFSET_LED_GPIO
+3		LED_OFFSET_ON_TIME
+5		LED_OFFSET_OFF_TIME
+7 		LED_OFFSET_CB_LEDON
+9		LED_OFFSET_CB_LEDOFF
+11		LED_OFFSET_LENGTH
+)
+(//LED state
+0 UI_LED_STATE_BLINK_STOP
+1 UI_LED_STATE_BLINK_START
+2 UI_LED_STATE_LIGHTING
+3 UI_LED_STATE_DARKING
+4 UI_LED_STATE_BLINK_LIGHTING
+5 UI_LED_STATE_BLINK_DARKING
+
+0xFF LED_INFINITE_FLASH_NUM
+
+)
+(
+0x00 STANDARD_REQ
+0x01 CLASS_REQ
+0x02 MANUFACTURER_REQ
+)
+(
+0x00 GET_STATUS                // Code for Get Status
+0x01 CLEAR_FEATURE             // Code for Clear Feature
+0x03 SET_FEATURE              // Code for Set Feature
+0x05 SET_ADDRESS              // Code for Set Address
+0x06 GET_DESCRIPTOR           // Code for Get Descriptor
+0x07 SET_DESCRIPTOR           // Code for Set Descriptor(not used)
+0x08 GET_CONFIGURATION        // Code for Get Configuration
+0x09 SET_CONFIGURATION        // Code for Set Configuration
+0x0A GET_INTERFACE            // Code for Get Interface
+0x0B SET_INTERFACE            // Code for Set Interface
+0x0C SYNCH_FRAME              // Code for Synch Frame(not used)
+)
+(
+0x01 DSC_DEVICE               // Device Descriptor
+0x02 DSC_CONFIG               // Configuration Descriptor
+0x03 DSC_STRING               // String Descriptor
+0x04 DSC_INTERFACE            // Interface Descriptor
+0x05 DSC_ENDPOINT             // Endpoint Descriptor
+)
+(
+0x21 DSC_HID			      // HID Class Descriptor
+0x22 DSC_HID_REPORT			  // HID Report Descriptor
+)
+(
+0x80 IN_DEVICE                // Request made to device,
+                              // direction is IN
+0x00 OUT_DEVICE               // Request made to device,
+                              // direction is OUT
+0x81 IN_INTERFACE             // Request made to interface,
+                              // direction is IN
+0x01 OUT_INTERFACE            // Request made to interface,
+                              // direction is OUT
+0x82 IN_ENDPOINT              // Request made to endpoint,
+                              // direction is IN
+0x02 OUT_ENDPOINT             // Request made to endpoint,
+)
+(
+0x01 GET_REPORT 		       // Code for Get Report
+0x02 GET_IDLE				   // Code for Get Idle
+0x03 GET_PROTOCOL			   // Code for Get Protocol
+0x09 SET_REPORT				   // Code for Set Report
+0x0A SET_IDLE				   // Code for Set Idle
+0x0B SET_PROTOCOL			   // Code for Set Protocol
+0xF2 HID_REPORT_ID
+64 EP0_PACKET_SIZE
+6 EP1_PACKET_SIZE
+16 HID_REPORT_SIZE
+0x001B HID_REPORT_DESCRIPTOR_SIZE
+)
+(
+0 TYPE_SIN
+1 TYPE_ATAN
+2 TYPE_MULT
+3 TYPE_DIV
+4 TYPE_ASIN
+5 TYPE_SQRT
+6 TYPE_COS
+7 TYPE_TAN
+)
+(
+0 DFIFO0_IN_EMPTY
+1 DFIFO1_IN_EMPTY
+2 DFIFO2_IN_EMPTY
+3 DFIFO3_IN_EMPTY
+4 DFIFO0_OUT_EMPTY
+5 DFIFO1_OUT_EMPTY
+6 DFIFO2_OUT_EMPTY
+7 DFIFO3_OUT_EMPTY
+)
+(
+)
+(
+0 USB_STATUS_SETUP
+1 USB_STATUS_SUSPEND
+2 USB_STATUS_NAK
+3 USB_STATUS_RESET
+4 USB_STATUS_ACK
+5 USB_STATUS_RXREADY
+6 USB_STATUS_RXFULL
+7 USB_STATUS_TXDONE0
+8 USB_STATUS_TXDONE1
+9 USB_STATUS_TXDONE2
+10 USB_STATUS_TXDONE3
+)
+(
+1 USB_GOT_REPORT_REQ
+2 USB_CONNECTED
+3 USB_SLEEP
+4 USB_RESUME
+5 USB_SETIDLE_1
+)
+(
+0x10 USB_EP1_KB
+0x20 USB_EP2_MS
+0x21 USB_EP2_MULTIKEY
+0x22 USB_EP2_SYSTEMKEY
+0x01 MAC_BOOT_MODE
+0x02 R_KEY
+0x03 LR_KEY
+)
+(
+0x01ba PC_GET_REPORT
+0x02ba PC_SET_REPORT
+0x0200 PC_SET_REPORT_bValue
+0x0000 PC_SET_REPORT_wIndex
+0x0001 PC_SET_REPORT_bLength
+0xba PC_REPORT_ID
+
+0x01 PC_GET_DATA
+0x00 PC_GET_NONDATA
+)
+(
+//--------------------------------------------------
+// Define device states
+0x00 DEV_ATTACHED	// Device is in Attached State
+0x01 DEV_POWERED	// Device is in Powered State
+0x02 DEV_DEFAULT		// Device is in Default State
+0x03 DEV_ADDRESS	// Device is in Addressed State
+0x04 DEV_CONFIGURED	// Device is in Configured State
+0x05 DEV_SUSPENDED	// Device is in Suspended State
+)
+(
+// Define wIndex bitmaps
+0x81 IN_EP1                    // Index values used by Set and Clear
+0x01 OUT_EP1                   // commands for Endpoint_Halt
+0x82 IN_EP2
+0x02 OUT_EP2
+0x83 IN_EP3
+0x03 OUT_EP3
+)
+(
+0 EP0_STALL
+1 EP1_IN_STALL
+2 EP1_OUT_STALL
+3 EP2_IN_STALL
+4 EP2_OUT_STALL
+5 EP3_IN_STALL
+6 EP3_OUT_STALL
+)
+(
+// Define wValue bitmaps for Standard Feature Selectors
+0x00 ENDPOINT_HALT             // Endpoint_Halt feature selector
+0x01 DEVICE_REMOTE_WAKEUP      // Remote wakeup feature(not used)
+0x00 BOOT_PROTOCOL
+0x01 REPORT_PROTOCOL
+0x01 USB_MAX_NUM_CFG
+)
+(
+640 TIMER_NAK_DELAY
+5000 TIMER_WAKEUP_DELAY
+)
+(
+
+8 UTIL_FIFO_LEN
+-1 UTIL_FIFO_OFFSET
+)
+0x2000 start
+0x2001 soft_reset
+0x200d main_loop
+0x2018 connection_dispatch
+0x201d connection_incontext
+0x2025 connection_nosniff
+0x202a idle_dispatch
+0x2031 idle_exit
+0x2033 idle_le_create_conn
+0x2036 context_load
+0x2041 context_save
+0x2047 context_get_next
+0x2049 context_get_next_loop
+0x204d context_get_next_cont
+0x2054 context_get_next_sniff
+0x2056 context_new
+0x205d context_check_idle
+0x205f context_search_conn_handle
+0x2060 context_search_conn_handle2
+0x2062 context_search_plap
+0x2064 context_search_plap2
+0x2066 context_search_insniff
+0x2068 context_search_sniff_window
+0x2069 context_search
+0x206c context_search_loop
+0x206e context_search_next
+0x2073 context_search_empty
+0x2075 context_search_lap
+0x2076 context_search_lap_cont
+0x207b context_search_handle
+0x2081 context_search_sniff
+0x2082 context_search_sniff_loop
+0x2090 context_search_sniff_sc
+0x2093 context_search_meet1
+0x2094 context_search_meet
+0x2097 context_search_sniff_miss
+0x209d sign_pdata_temp
+0x20a7 sign_pdata_temp_p0
+0x20ad context_check_inconn
+0x20af context_check_a_wack
+0x20b4 context_get_anchor
+0x20c0 context_next_anchor
+0x20c7 context_search_window
+0x20cf end_of_packet
+0x20dc sniff_check_window
+0x20e4 calc_slot_offset
+0x20ee calc_bt_portion
+0x20f0 calc_slot_offset_loop
+0x20f2 calc_skip_bt
+0x20f7 calc_clke_offset
+0x2105 calc_clke_pos
+0x2107 calc_clke
+0x2109 calc_clke2
+0x2113 calc_clke_pos2
+0x2115 calc_clke_pos_adj
+0x2117 qsetxor
+0x211c qset1_p
+0x211d qset_start
+0x211e qset_p
+0x2122 rx_dcoc_avg
+0x2123 btdma
+0x212d rx_dcoc_loop
+0x2133 rx_dcoc
+0x2145 rx_dcoc_loop2
+0x2152 shutdown_radio
+0x2160 set_sync_on
+0x216f set_freq_rx
+0x2179 aac_res_lookup
+0x2187 aac_res_lookup_end
+0x2189 set_lemode_2m_16m
+0x218c set_lemode_1m_16m
+0x218f set_lemode
+0x2197 set_lemode_2m
+0x21a3 set_lemode_1m
+0x21a6 rf_rx_enable
+0x21ba rf_rx_agc_set
+0x21c1 rf_rx_enable_no_soft_agc
+0x21c6 set_freq_tx_int
+0x21d0 calc_freq
+0x21e8 ghp_lookup
+0x21ee ghp_1m
+0x21f9 set_freq_tx
+0x21fc txon
+0x220c set_tx_power
+0x2217 set_tx_power_0db
+0x221a set_tx_power_8a63_28
+0x221c set_tx_power_3db
+0x221f set_tx_power_8a63_2f
+0x2221 set_tx_power_5db
+0x2225 set_tx_power_7db
+0x2229 set_tx_power_10db
+0x222d set_tx_power_f3db
+0x2231 set_tx_power_f5db
+0x2235 set_tx_power_f10db
+0x2239 set_tx_power_f20db
+0x223d initialize_radio
+0x223e initialize_radio_wait
+0x2242 initialize_radio_loop
+0x2248 initialize_radio_cont
+0x2257 initialize_radio2
+0x2266 initialize_radio_16m
+0x2271 rfpll_aac_ghpc
+0x227c rfpll_aac_ghpc_once
+0x227f rfpll_cal_loop
+0x2286 dpll_on
+0x228c dpll_on_24m
+0x2294 aac_ghpc
+0x2298 wait_cal_done
+0x22a7 aac_ghpc_1m
+0x22ae read_cal_result
+0x22b4 dpll_ring_ibias_calc
+0x22c7 dpll_ring_ibias_read_adc
+0x22df ring_ibias_trim_decrs
+0x22e4 ring_ibias_trim_incrs
+0x22e9 save_rssi
+0x22fd save_rssi_store
+0x22ff byte_sign_extern
+0x2304 rssi_hex2dec
+0x2308 bcd
+0x230f gain_control
+0x232e add_negative
+0x2336 gain_increase
+0x233a gain_descend
+0x233d set_rx_gain2
+0x233f set_rx_gain0
+0x2341 set_rx_gain1
+0x2343 ahead_window
+0x2352 get_clk
+0x2356 get_clkbt
+0x235a assert
+0x235c sleep
+0x235f sleep_loop
+0x2363 init_param
+0x2385 lpmstate
+0x2393 lpmwake
+0x239c power_up
+0x239d boot_load
+0x23a0 lpm_poweron_retmem
+0x23b0 lpm_xtal_default
+0x23b5 xtal_fast_wake
+0x23ba lpm_write_lock
+0x23c3 lpm_write_ice_disable
+0x23c7 lpm_write_ice_enable
+0x23cb lpm_preon_counter
+0x23cd lpm_write_3bytes
+0x23cf lpm_write_mpu_s0
+0x23d0 lpm_write_dword
+0x23d1 lpm_write_loop
+0x23d6 lpm_write_mpu_s1
+0x23d8 lpm_disable_exen_output
+0x23dc lpm_disable_io_dozed
+0x23e0 lpm_save_sel_hv
+0x23e1 lpm_write_sel_hv
+0x23e2 lpm_write_wait
+0x23e4 lpm_write_io_vsel
+0x23e6 lpm_load_context
+0x23f4 lpm_save_context
+0x23fd lpm_write_gpio_wakeup
+0x2400 lpm_write_gpio_loop
+0x2405 lpm_write_gpio
+0x2408 lpo_calibration
+0x240f lpo_cal_inited
+0x2414 lpm_doze
+0x2417 lpm_hibernate
+0x241e lpm_sleep
+0x2421 lpm_sleep_skip_cb_function
+0x242e lpm_sleep_loop
+0x2434 lpm_enter_sleep
+0x2438 lpm_cal_xtal_startup
+0x244f lpm_recover_clk
+0x2458 lpm_recover_xtal
+0x245a lpm_recover_timeout
+0x2477 lpm_adjust_clk
+0x2486 lpm_adjust_positive
+0x2489 lpm_clear_counter
+0x248c lpm_dispatch
+0x2496 lpm_dispatch_next
+0x24b4 lpm_dispatch_sleep
+0x24b5 lpm_dispatch_lpo
+0x24bd lpm_dispatch_unconn
+0x24c1 lpm_unconn_cont
+0x24c3 lpm_sleep_btclk
+0x24c8 lpm_mult_wait_timeout
+0x24d2 lpm_match
+0x24d7 lpm_lost
+0x24e0 lpm_mult_short
+0x24e4 lpm_mult_long
+0x24e7 lpm_get_wake_lock
+0x24eb lpm_put_wake_lock
+0x24ef lpm_check_wake_lock
+0x2501 lpm_uart_wake_lock
+0x2506 le_init_conn
+0x2519 le_init_master
+0x2525 le_init_slave
+0x2536 le_conn_dispatch
+0x253f le_master_dispatch
+0x254e le_master_disconn
+0x2551 le_slave_dispatch
+0x2562 le_slave_crc_fail
+0x2562 le_slave_match
+0x2571 le_slave_cont
+0x2577 le_slave_unsync
+0x257b le_check_md
+0x2580 le_slave_more_data
+0x2586 le_slave_disconn
+0x2586 le_disconnect
+0x258d le_clear_connection_info
+0x2592 le_clear_pairing_state
+0x2597 le_got_first_packet
+0x25a4 le_enable_phy_by_pdata
+0x25a6 le_enable_phy_by_pdata1
+0x25ad le_enable_2m
+0x25b0 le_enable_coded_s2
+0x25b0 le_enable_coded
+0x25b4 le_enable_coded_s8
+0x25b8 le_enable
+0x25bc le_disable
+0x25c2 le_prep
+0x25c8 le_prep_next
+0x25cc le_rx_setfreq
+0x25cd le_rf_rx_enable
+0x25d1 le_tx_setfreq
+0x25d3 le_tx_setfreq0
+0x25d5 le_setfreq
+0x25e2 le_ctf_normal
+0x25e5 le_ctf_low
+0x25e8 le_ctf_test
+0x25eb le_sca_map
+0x25fb le_setup
+0x2604 le_setup_master
+0x2609 le_context_nextevent
+0x261a le_context_nexthop
+0x2622 le_nexthop_nowrap
+0x2624 le_calc_channel_map
+0x2628 le_count_channels_loop
+0x262a le_count_channels_notused
+0x2630 le_map_channel
+0x2636 le_map_channel_next
+0x263b le_map_channel_cont
+0x263d le_map_channel_loop
+0x2640 le_map_channel_skip
+0x2645 le_map_channel_end
+0x2648 le_wait_tx
+0x264b le_wait_master
+0x264e le_receive_adv
+0x2652 le_receive_slave
+0x2658 le_receive_packet
+0x2659 le_receive_rxon
+0x2660 le_receive_nolr
+0x2669 le_receive_on_attempt
+0x2677 le_receive_skip
+0x2683 le_rx_loop
+0x2688 le_rx_dec
+0x2694 le_rx_dec_loop
+0x269b le_rx_dec_loop_end
+0x269d le_rx_nopayload
+0x26af le_rx_match
+0x26b2 le_crc_fail_tx
+0x26b9 le_match_set_sync_on
+0x26bb le_match_set_txfreq
+0x26be le_dec_init
+0x26c3 le_dec_start
+0x26d7 le_pcnt_rx_sub1
+0x26dc le_pcnt_rx_sub1_0
+0x26e1 le_dec
+0x26e9 le_dec_end
+0x26f2 le_mic_error
+0x26f3 le_retransmit_end_of_packet
+0x26f6 le_crc_fail
+0x26fa le_unsync_end
+0x26fa le_crc_fail_consecutive
+0x26fc le_end_of_packet
+0x26ff calc_clke_all_modem
+0x2705 calc_clke_modem_coded
+0x2709 calc_clke_modem_2m
+0x270d le_set_until_tx_timer
+0x2714 le_set_until_tx_timer_rx_lr
+0x2716 le_set_until_tx_timer_rx_1m
+0x2717 le_set_until_tx_timer_rx_2m
+0x2719 le_set_until_tx_timer_rx_coded_s2
+0x271c le_set_until_tx_timer_rx_coded_s8
+0x271e le_set_until_tx_timer_rx_coded
+0x2721 le_calc_stop_watch
+0x2729 le_transmit_receive_sifs_without_change_mode
+0x2730 le_transmit_receive_sifs
+0x2734 le_transmit_receive_sifs_notx
+0x273e le_transmit_norx
+0x2741 le_transmit
+0x2751 le_transmit_packet
+0x275e le_transmit_packet_not_enc
+0x275f le_tr_loop
+0x2762 le_tr_nopayload
+0x2769 le_transmit_skip
+0x2770 le_check_start_pause_enc
+0x2779 le_transmit_packet_enc
+0x277d le_transmit_packet_enc_loop
+0x2784 le_transmit_lr
+0x2785 le_transmit_lr_preamble_loop
+0x278f le_transmit_lr_s2
+0x2793 le_transmit_lr_s8
+0x2796 le_transmit_2m
+0x27a2 le_update_param
+0x27a6 le_update_param_ahead1_cb
+0x27bc le_update_param_cb
+0x27c4 le_update_channel_map
+0x27c8 le_update_channel_map_cb
+0x27cd le_update_phy
+0x27d1 le_update_phy_cb
+0x27de le_update_phy_cb_m2s
+0x27e6 le_update_phy_cb_m2s_no_change
+0x27ec le_update_phy_cb_s2m
+0x27f5 le_update_phy_cb_s2m_no_change
+0x27fb le_check_update_flag
+0x2809 le_update_ahead1
+0x280b le_update
+0x2810 le_check_update_small
+0x281c le_check_retransmit
+0x2823 le_acknowledge
+0x283c le_ack_unenc
+0x284a le_check_wak
+0x2857 le_set_enc
+0x285c le_clear_enc
+0x2868 le_scan_check_sender_addr_type
+0x286d le_get_master_rx_max
+0x2871 le_prepare_tx
+0x2892 le_check_tx_md
+0x2899 le_check_continue
+0x28a2 le_set_md
+0x28a4 le_clear_md
+0x28a6 le_update_tx_type
+0x28aa le_att_check_notification_enable
+0x28b6 le_send_empty
+0x28b8 le_send_packet
+0x28c8 le_send_no_txlen
+0x28ce le_send_packet_enc
+0x28d0 get_lpm_wake_ble_rx_lock
+0x28d2 put_lpm_wake_ble_rx_lock
+0x28d4 le_parse
+0x28e1 le_parse_l2cap
+0x28e9 le_parse_l2cap_next
+0x28ee le_check_l2cap_complete
+0x28f2 le_check_l2cap_cid_legal
+0x28fd le_check_l2cap_llid_start
+0x2910 le_check_l2cap_continue_legal
+0x2914 le_check_l2cap_llid_continue
+0x2929 le_writeatt_cb
+0x292b le_supervision_update
+0x2935 le_supervision_flush
+0x2938 le_receive_window_size
+0x2952 le_modified_name
+0x2955 le_modified_name_att_list
+0x2966 le_name_length_longer_than_att
+0x2969 le_modified_name_adv
+0x2976 le_modified_name_adv_and_scan
+0x2988 le_modified_name_adv_and_scan_store_data
+0x298e le_modified_name_adv_and_scan_name_overflow
+0x2990 le_modified_name_adv_loop
+0x299b le_modified_name_adv_loop2
+0x299f le_modified_name_adv_found_name
+0x29a1 memcpy_empty
+0x29a5 le_lpm_set_mult
+0x29a9 le_lpm_set_mult_attempt
+0x29b8 le_lpm_lost
+0x29c1 le_set_config_fixed_tk
+0x29c3 le_clr_config_fixed_tk
+0x29c5 le_set_config_fixed_ltk
+0x29c7 le_clr_config_fixed_ltk
+0x29c9 le_set_config_more_data
+0x29cb le_clr_config_more_data
+0x29cd le_set_config_read_authentication
+0x29cf le_clr_config_read_authentication
+0x29d1 le_set_config_write_authentication
+0x29d3 le_clr_config_write_authentication
+0x29d5 le_set_config_short_mult
+0x29d6 le_set_config
+0x29da le_clr_config_short_mult
+0x29db le_clr_config
+0x29df le_set_fixed_ltk
+0x29ec le_set_justwork
+0x29f2 le_fifo_malloc_tx_empty
+0x29f5 le_fifo_malloc_tx_ll
+0x29fb le_fifo_malloc_tx_l2cap
+0x2a05 le_fifo_malloc_tx
+0x2a10 le_fifo_get_first_tx_ptr
+0x2a14 le_fifo_get_second_tx_ptr
+0x2a16 le_fifo_get_last_tx_ptr
+0x2a19 le_fifo_get_last_tx_ptr0
+0x2a1b le_fifo_get_first_l2cap_ptr
+0x2a1e le_fifo_get_first_att_ptr
+0x2a21 le_fifo_get_last_att_ptr
+0x2a24 le_fifo_get_last_l2cap_ptr
+0x2a27 le_fifo_check_full
+0x2a28 le_fifo_check_nearly_full
+0x2a29 le_fifo_check_empty
+0x2a2a le_fifo_release_first_node
+0x2a2b le_set_dle
+0x2a2d le_set_phys
+0x2a30 le_set_rx_phy
+0x2a32 le_set_tx_phy
+0x2a33 le_set_phy_common
+0x2a38 le_set_feature_2m_phy
+0x2a3a le_set_feature_coded_phy
+0x2a3c le_set_feature_data_packet_length_extension
+0x2a3d le_set_feature
+0x2a41 le_set_fixed_ltk_justwork
+0x2a45 le_advertising_dispatch
+0x2a4b le_scan
+0x2a6a le_wait_adv
+0x2a71 le_create_conn
+0x2a84 le_connect_request
+0x2a8f le_con_req_hop_retry
+0x2acb le_adv
+0x2ad0 le_adv_loop
+0x2ae2 le_adv_not_match
+0x2aef le_send_adv_protect_txbuf
+0x2af2 le_send_adv_recover_txbuf
+0x2af5 le_init_adv
+0x2af7 le_adv_access
+0x2afe le_send_adv_ind
+0x2b0f le_send_adv_direct_ind
+0x2b15 le_send_adv_transmit
+0x2b1c le_send_scan_request
+0x2b2d le_send_scan_response
+0x2b40 le_parse_connect_req
+0x2b68 le_next_adv_channel
+0x2b6e le_next_adv_channel_curr_channel_37
+0x2b74 le_next_adv_channel_curr_channel_38
+0x2b7a le_next_adv_channel_curr_channel_39
+0x2b80 set_le_next_adv_channel_37
+0x2b85 set_le_next_adv_channel_38
+0x2b8a set_le_next_adv_channel_39
+0x2b8f le_parse_att
+0x2b96 le_parse_att2
+0x2ba4 le_send_att_exchange_mtu_requset
+0x2ba7 le_send_att_exchange_mtu_common
+0x2bab le_parse_att_exchange_mtu_request
+0x2bac le_send_att_exchange_mtu_response
+0x2bb0 le_parse_att_exchange_mtu_response
+0x2bb3 le_parse_att_find_information_request
+0x2bb6 le_att_handle_inrange
+0x2bc1 le_att_handle_blank
+0x2bc3 le_send_att_find_information_response
+0x2bc5 le_send_att_find_information_res_loop
+0x2bdc le_send_att_find_information_res_uuid16
+0x2bdf le_send_att_find_information_res_uuid128
+0x2be3 le_send_att_find_information_res_store_info2
+0x2be8 le_send_att_find_information_res_store_info
+0x2bf1 le_send_att_find_information_res_cont
+0x2bf3 le_send_att_find_information_res_next
+0x2bf5 le_send_att_find_information_res_end
+0x2bf7 le_parse_att_find_by_type_value_request
+0x2c00 le_start_end_handle_check_1
+0x2c07 le_start_end_handle_check_1_fail
+0x2c0a le_send_att_find_by_type_value_response
+0x2c11 le_send_att_find_by_type_value_res_primary
+0x2c16 le_send_att_find_primary_search_loop
+0x2c26 le_send_att_find_primary_search_loop1
+0x2c2a le_send_att_error_response_notfound2
+0x2c2d le_send_att_find_primary_search_end_start_handle_found
+0x2c35 le_send_att_find_primary_search_end_ending_handle_found
+0x2c3b le_send_att_find_primary_search_end
+0x2c44 le_parse_att_read_by_type_request
+0x2c47 le_send_att_read_by_type_response
+0x2c56 le_send_att_read_by_type_response_loop
+0x2c77 le_send_att_read_by_type_response_next_handle
+0x2c79 le_send_att_read_by_type_response_end
+0x2c7b le_send_att_read_by_type_res_found_next
+0x2c89 le_send_att_read_by_type_write_properties
+0x2c90 le_send_att_read_by_type_write_uuid
+0x2c9c le_send_att_read_by_type_res_not_characteristic
+0x2cb2 le_send_att_read_by_type_res_device_name
+0x2cc7 le_init_attlist_search
+0x2ccf le_att_get_handle_ptr
+0x2cd2 le_att_get_handle_ptr2
+0x2cd5 le_att_get_handle_loop1
+0x2cdd le_att_get_handle_ptr_found
+0x2cdd le_att_contr_add_len
+0x2ce0 le_att_get_uuid_ptr
+0x2ce3 le_att_get_uuid_loop
+0x2cf3 le_att_get_uuid_ptr_next
+0x2cf6 le_att_get_last_handle
+0x2cfa le_att_get_last_handle_loop
+0x2d02 le_att_get_handle_info_from_ptr
+0x2d04 le_att_get_handle_info
+0x2d06 le_att_get_handle_info_fast
+0x2d07 le_att_get_handle_loop
+0x2d0f le_att_unfind_handle
+0x2d10 le_att_finded_handle
+0x2d19 le_parse_att_read_request
+0x2d1d le_send_att_read_response
+0x2d2d le_send_att_read_response_less
+0x2d36 le_send_device_name
+0x2d42 le_send_att_read_response_check_auth
+0x2d46 le_send_att_read_response_error_insufficient_auth
+0x2d48 le_send_att_read_response_check_handle
+0x2d4c le_parse_att_read_blob_request
+0x2d50 le_send_att_read_blob_response
+0x2d59 le_send_att_read_blob_response_less
+0x2d63 le_parse_att_read_by_group_type_request
+0x2d66 le_send_att_read_by_group_type_response
+0x2d6d le_send_att_read_by_group_type_response_loop
+0x2d8a le_send_att_read_by_group_type_store_write_record
+0x2d90 le_send_att_read_by_group_type_store_record
+0x2d94 le_send_att_read_by_group_type_next_handle
+0x2d96 le_send_att_read_by_type_res_check_pair_length_type
+0x2d98 le_send_att_read_by_group_type_check_pair_length_type
+0x2d9c le_send_att_read_by_group_type_check_pair_length_type_16byte
+0x2d9e le_send_att_read_by_group_type_end0
+0x2da1 le_send_att_read_by_group_type_end1
+0x2da5 le_send_att_read_by_group_type_end_common
+0x2da8 le_parse_att_write_request
+0x2dac le_send_att_write_response_check_auth
+0x2dbc le_send_att_write_response
+0x2dc1 le_send_att_write_response_check_handle
+0x2dc5 le_send_att_write_response_error_invalid_handle
+0x2dc7 le_check_encrypt_state
+0x2dce le_parse_att_prepare_write_request
+0x2dd3 le_send_att_prepare_write_response
+0x2de1 le_parse_att_execute_write_request
+0x2de1 le_send_att_execute_write_response
+0x2de6 le_parse_handle_value_confirmation
+0x2dea le_parse_att_write_command
+0x2dee le_att_malloc_tx_notify
+0x2df7 le_att_malloc_tx_indication
+0x2e03 le_send_att_error_response_notfound
+0x2e05 le_send_att_error_response
+0x2e10 le_fifo_malloc_tx_l2cap_gatt
+0x2e13 le_att_next_handle
+0x2e17 le_att_check_handle_end
+0x2e1b le_att_same_type
+0x2e1e le_att_check_same_common
+0x2e24 le_store_att_record
+0x2e2a le_write_att_record
+0x2e30 le_write_att_record_common
+0x2e34 le_send_auto_len_by_mem
+0x2e41 le_get_search_handle_start_end_common
+0x2e46 le_get_search_max_mtu_data
+0x2e4a le_get_search_att_type
+0x2e4d le_get_search_common
+0x2e4f le_get_search_common2
+0x2e53 le_parse_writing_attribute_start
+0x2e61 le_clear_l2cap_att_states_deal_with_contiune_packet
+0x2e65 le_parse_writing_attribute_continue
+0x2e6e le_parse_attribute_write_request
+0x2e70 le_send_attribute_write_response_check_auth
+0x2e73 le_parse_attribute_write_command
+0x2e77 le_parse_attribute_check_complete_packet_init
+0x2e7e le_parse_l2cap_continue_common
+0x2e84 le_parse_attribute_check_complete_packet
+0x2e8a le_parse_signaling
+0x2e8f le_l2cap_parse_conn_parameter_update_rsp
+0x2e93 le_l2cap_tx_update_req
+0x2e9b le_fifo_malloc_tx_l2cap_signaling
+0x2ea3 le_l2cap_update_signaling_identifier
+0x2ea7 le_l2cap_reset_signaling_identifier
+0x2ea9 le_pairing_mode_init
+0x2eb1 le_set_pairing_mode_secure_justwork
+0x2eb3 le_set_pairing_mode_secure_numeric
+0x2eb6 le_set_pairing_mode_secure_passkey
+0x2eb8 le_set_no_pairing
+0x2eb9 le_set_noinputnooutput
+0x2ebb le_set_pairing_mode_lagacy_just_work
+0x2ebd le_set_pairing_mode_lagacy_passkey
+0x2ebe le_set_displayonly
+0x2ec0 le_secure_connection_enable
+0x2ec4 le_secure_connection_disable
+0x2ec8 le_parse_smp
+0x2ed5 le_send_smp_security_request
+0x2edc le_parse_smp_pairing_request
+0x2ee8 le_parse_smp_pairing_request2
+0x2ef0 le_set_tk_0
+0x2ef3 le_parse_smp_pairing_req_passkey
+0x2ef5 le_genernate_tk
+0x2efc le_parse_smp_pairing_req_fixed_passkey
+0x2efe le_send_smp_pairing_response
+0x2f03 le_parse_smp_pairing_confirm
+0x2f0b le_parse_smp_pairing_confirm_passkey_res_input
+0x2f0d le_parse_smp_pairing_confirm_secure_passkey
+0x2f10 le_parse_smp_pairing_confirm_sc_passkey_res_input
+0x2f13 le_send_smp_pairing_confirm
+0x2f1c le_send_smp_pairing_confirm_sc
+0x2f24 le_parse_smp_pairing_random
+0x2f2a le_send_pairing_confirm_value_failed
+0x2f2b le_send_pairing_failed
+0x2f31 le_parse_smp_pairing_failed
+0x2f37 le_smp_pairing_fail_reason_not_support_pairing
+0x2f39 le_parse_smp_pairing_random_sc
+0x2f45 le_parse_smp_pairing_random_sc_passkey
+0x2f4e le_parse_smp_pairing_random_success
+0x2f53 le_send_smp_pairing_random
+0x2f59 le_send_smp_encryption_information
+0x2f61 le_send_fixed_ltk
+0x2f63 le_send_smp_master_identification
+0x2f6f le_send_smp_identity_information
+0x2f77 le_send_smp_identity_address_information
+0x2f80 le_send_pairing_fail_unspecified_reason
+0x2f82 le_check_init_key_distribution
+0x2f86 le_parse_smp_identity_information
+0x2f90 le_check_master_addr_type
+0x2f96 le_parse_smp_identity_address_information
+0x2f9a le_parse_smp_signing_information
+0x2f9a le_parse_smp_security_request
+0x2f9b le_parse_smp_public_key
+0x2fa0 le_parse_smp_dhkey_check
+0x2fa5 le_send_smp_pairing_public_key
+0x2fab le_send_smp_pairing_dhkey_check
+0x2fb1 le_check_paring_time
+0x2fba le_pairing_sm
+0x2fc7 le_pairing_sm_null
+0x2fc7 le_pairing_sm_send_sec_req
+0x2fcd le_pairing_sm_start
+0x2fcf le_pairing_sm_rcv_pairing_req
+0x2fd3 le_pairing_sm_after_auth
+0x2fd6 le_pairing_sm_after_auth_start_enc
+0x2fda le_pairing_sm_after_auth_start_enc_common
+0x2fe1 le_pairing_sm_after_auth_start_enc_sc
+0x2fe3 le_pairng_sm_send_enc_information
+0x2fe5 le_pairng_sm_send_master_indentification
+0x2fec le_pairng_sm_send_indentity_information
+0x2fee le_parse_start_enc_rsp_after_auth_end
+0x2ff5 le_secure_connect_sm
+0x3003 le_sc_state_clear
+0x3007 le_sc_sm_passkey_wait_confirm
+0x3011 le_sc_sm_wait_confirm_gkey
+0x3016 le_sc_confirm_gkey_ok
+0x301a le_sc_sm_receive_dhkey
+0x301e le_dhkey_ready
+0x3023 le_dhkey_ready_common
+0x3029 le_dhkey_check_fail
+0x302b le_dhkey_check_ok
+0x3035 le_sc_sm_send_public_key
+0x3039 le_sc_sm_ready_send_pairing_confirm
+0x303a le_sc_sm_send_public_key_passkey
+0x303d le_sc_sm_receive_public_key
+0x3041 le_public_key_ready
+0x3044 le_sc_sm_wait_send_public_key
+0x3047 le_fifo_malloc_tx_l2cap_smp
+0x304a le_parse_ll
+0x3061 le_parse_connection_update_ind
+0x3069 le_parse_channel_map_ind
+0x306d le_update_map_enable
+0x3071 le_parse_terminate_ind
+0x3075 le_parse_enc_req
+0x3087 le_parse_enc_req_after_auth
+0x308a le_parse_enc_req_fixed_ltk
+0x308f le_ltk_lost
+0x3093 le_parse_enc_rsp
+0x3098 le_parse_start_enc_req
+0x309c le_parse_start_enc_rsp
+0x30a1 le_parse_unknown_rsp
+0x30a2 le_parse_feature_req
+0x30a3 le_parse_feature_rsp
+0x30a4 le_parse_pause_enc_req
+0x30a8 le_parse_pause_enc_rsp
+0x30a9 le_parse_version_ind
+0x30ab le_parse_reject_ind
+0x30ac le_parse_ping_req
+0x30ad le_parse_ping_rsp
+0x30ae le_parse_length_req
+0x30b0 le_parse_length_rsp
+0x30bb le_parse_phy_req
+0x30bc le_parse_phy_update_ind
+0x30c5 le_send_terminate_ind_user_terminated
+0x30c6 le_send_terminate_ind
+0x30cc le_send_enc_rsp
+0x30da le_send_start_enc_req
+0x30dd le_send_start_enc_rsp
+0x30df le_send_unknown_rsp
+0x30e4 le_send_feature_rsp
+0x30eb le_send_pause_enc_rsp
+0x30ed le_send_version_ind
+0x30f3 le_send_reject_ind
+0x30f9 le_send_ping_rsp
+0x30fb le_send_data_length_req
+0x30fd le_send_data_length_res
+0x30fe le_send_data_length
+0x3103 le_send_phy_rsp
+0x310d le_send_ll_one_lenth
+0x310f g24_dispatch
+0x3112 g24_prep
+0x3119 g24_receive_packet
+0x3121 g24_receive_rxon
+0x3126 g24_receive_nolr
+0x3135 g24_receive_skip_fec1
+0x3148 g24_receive_skip
+0x3151 g24rx_loop
+0x3154 g24rx_nopayload
+0x3159 g24_receive_skip_rssi
+0x3160 g24_receive_skip_next
+0x316d g24_receive_skip_disable_fec1
+0x316f g24_lr_receive_pdu_len
+0x3176 g24_lr_receive_pdu_norssi
+0x3178 g24_lr_receive_payload_len
+0x317d g24_receive_byte
+0x3180 g24_sync_timeout
+0x3183 g24_end_of_packet
+0x3188 g24_hec_error
+0x318a g24_lr_len_error
+0x318c g24_type_error
+0x318e g24_len_over_error
+0x3190 g24_crc_error
+0x3192 g24_set_freq_tx
+0x3195 g24_transmit
+0x31a8 g24_transmit_packet
+0x31ae g24_transmit_nolr
+0x31b3 g24tr_loop
+0x31bd g24_transmit_skip
+0x31c4 g24_transmit_skip_disable_fec1
+0x31c7 g24_transmit_lr
+0x31c8 g24_transmit_lr_preamble_loop
+0x31d2 g24_transmit_lr_s2
+0x31d6 g24_transmit_lr_s8
+0x31d9 g24_transmit_2m
+0x31db g24_transmit_2m_dealy
+0x31e5 g24_transmit_prep
+0x31f0 g24_transmit_prep_pdu
+0x3206 g24_lr_transmit_prep
+0x320a g24_lr_transmit_prep_skip
+0x3214 g24_read_len_pid_crc
+0x3222 g24_ch
+0x3227 g24_ch_map_size
+0x322c g24_ch_calc
+0x3236 g24_update_addr_and_synccrc8
+0x3238 g24_syncword_crc8
+0x323b g24_syncword_crc8_loop
+0x3245 g24_timer_check
+0x3255 g24_timer_timeout
+0x3258 g24_timer_init
+0x325b g24_chmap_param_init
+0x326b g24_chamap_param_update
+0x3278 g24_rx_window_init
+0x327f g24_rx_window_store
+0x3281 g24_enable_1m
+0x3284 g24_enable_2m
+0x3287 g24_pair_param_init
+0x328e g24_pair_timeout_timer
+0x3291 g24_pair_start
+0x329c g24_pair_init_param
+0x32a3 g24_pair_dispatch
+0x32b2 g24_pair_sm_1
+0x32b4 g24_pair_sm_2
+0x32b8 g24_pair_sm_2_skip
+0x32ba g24_pair_sm_3
+0x32c0 g24_pair_sm_4
+0x32c1 g24_pair_sm_prep
+0x32c3 g24_pair_sm_common
+0x32d6 g24_pair_sm_reinit
+0x32db g24_pair_sm_1_waiting_ack
+0x32dd g24_pair_sm_2_waiting_ack
+0x32e1 g24_pair_sm_2_waiting_ack_skip
+0x32e3 g24_pair_sm_3_waiting_ack
+0x32e9 g24_pair_sm_3_waiting_ack_skip
+0x32eb g24_pair_sm_4_waiting_ack
+0x32f1 g24_pair_sm_4_waiting_ack_skip
+0x32f8 g24_pair_exit
+0x32fc g24_bind_mode_enable
+0x32ff g24_bind_init
+0x330a g24_bind_ackpayload_prep
+0x330f g24_bind_data_process
+0x331c g24_bind_data_error
+0x331e g24_bind_data_parse
+0x3329 g24_bind_first_step
+0x332d g24_bind_first_step_device1
+0x3330 g24_bind_dvc1_payload_cfg
+0x3331 g24_bind_payload_cfg
+0x3335 g24_bind_first_step_device2
+0x3338 g24_bind_dvc2_payload_cfg
+0x333a g24_bind_second_step
+0x3340 g24_bind_second_step_skip
+0x3344 g24_bind_second_step_device1
+0x3349 g24_bind_dvc1_step_set2
+0x334c g24_bind_dvc1_payload_cfg_transmitter_addr
+0x334d g24_bind_payload_cfg_transmitter_addr
+0x3351 g24_bind_second_step_device2
+0x3356 g24_bind_dvc2_step_set2
+0x335b g24_bind_third_step
+0x3361 g24_bind_third_step_skip
+0x3365 g24_bind_third_step_device1
+0x336a g24_bind_dvc1_step_success
+0x336f g24_bind_exit
+0x3372 g24_bind_third_step_device2
+0x3377 g24_bind_dvc2_step_success
+0x337e g24_binding_device_check
+0x3386 g24_binding_dvc1_status
+0x3388 disable_user3
+0x338a g24_binding_dvc2_status
+0x338d g24_binding_dvc1_living
+0x3393 g24_binding_dvc2_living
+0x3399 g24_bind_device_status_check
+0x339b g24_bind_device_status
+0x339f g24_receive_init
+0x33a3 g24_receive_dispatch
+0x33a5 g24_ackpayload_prep
+0x33ab g24_receive_packet_start
+0x33ad g24_receive_packet_parse
+0x33be g24_rx_interrupt_clear
+0x33c2 g24_data_receive_attemp
+0x33c4 g24_data_device1
+0x33d3 g24_data_device2
+0x33d9 g24_data_attemp_device1_abort
+0x33e1 g24_data_attemp_device2_abort
+0x33e3 g24_receive_packet_parse_pid_crc
+0x33f1 g24_receive_transmit_ack
+0x33f4 g24_transmit_ack
+0x33fa g24tx_with_ack
+0x33fd g24tx_no_ack
+0x33fe g24_enable_nodata_timer
+0x33ff g24_enable_nodata_timer_init
+0x3402 g24_mode_switch_init
+0x3407 g24_mode_switch_bind_work
+0x3414 g24_bind_mode_continue
+0x3419 g24_work_mode_switch
+0x341c g24_bind_mode_switch
+0x341f g24_mode_b_s_switch_init
+0x342d g24_mode_switch_bind_search
+0x3448 g24_mode_switch_search
+0x344b g24_mode_b_s_switch_exit
+0x344d g24_mode_b_s_switch_stop
+0x344f g24_mode_b_s_switch_start
+0x3451 g24_work_init
+0x3460 g24_switch_work_mode
+0x3461 g24_work_mode_enable
+0x3464 g24_work_mode_start
+0x3469 g24_bind_mode_auto
+0x3476 g24_search_mode_init
+0x3488 g24_search_mode_auto
+0x34a7 g24_self_ch_num_reinit
+0x34a8 g24_current_ch_num_reinit
+0x34aa g24_device2_ch_num_reinit
+0x34ac g24_device1_ch_num_reinit
+0x34ae g24_auto_addr_ch_search
+0x34b8 g24_auto_bind_config_device1
+0x34cd g24_device1_config_ch_once
+0x34d2 g24_auto_bind_config_device2
+0x34e7 g24_device2_config_ch_once
+0x34ec g24_auto_bind_config_self
+0x3500 g24_self_config_ch_once
+0x3504 g24_ackpayload_disable
+0x3506 g24_receiver_addr_check
+0x350a g24_nodata_process
+0x3514 g24_search_mode_enable
+0x3518 g24_ch_process
+0x352c g24_ch_receive_hop_pac
+0x352e g24_ch_timer_reinit
+0x3531 g24_reconn_timeout_timer
+0x3534 g24_reconn_start
+0x3541 g24_reconn_fast_conn
+0x3549 g24_reconn_receiver_addr
+0x3550 g24_reconn_device_3_0_addr
+0x3557 g24_store_receiver_addr
+0x355a g24_ch_syncword_crc8_init
+0x355c g24_reconn_dispatch
+0x3565 g24_reconn_dispatch_next
+0x357b g24_txbuf_clear
+0x357f g24_reconn_data_prep
+0x3586 g24_reconn_device_fail
+0x3593 g24_reconn_fast_conn_and_receiver
+0x3595 g24_reconn_fast_conn_and_3_0
+0x3597 g24_reconn_receiver_and_3_0
+0x3599 g24_reconn_pair_and_3_0
+0x359b g24_data_attemp
+0x359f g24_data_attemp_device1
+0x35a3 g24_store_device1_addr
+0x35a5 g24_data_attemp_device2
+0x35a9 g24_store_device2_addr
+0x35ab rssi_store
+0x35b4 rssi_average
+0x35bb rssi_average_loop
+0x35c8 save_rssi_dec
+0x35c9 rssi_transmitter_buff_init
+0x35cb rssi_signal
+0x35d6 rssi_receiver_buff_init
+0x35dd rssi_buff_clear
+0x35e3 rssi_noise
+0x35ea rssi_noise_monitor
+0x35f0 g24_transmit_init
+0x35f3 g24_interval_param_4ms
+0x35fb g24_interval_param_8ms
+0x3603 g24_transmit_dispatch
+0x3609 g24_transmit_no_interrupt
+0x360c g24_transmit_start
+0x3610 g24_transmit_start_next
+0x3616 g24_short_sleep
+0x361d g24_long_sleep
+0x3622 g24_long_seep2
+0x3625 g24_txdata_prep
+0x3628 g24_package_data
+0x362e g24_accumulate_data
+0x3636 g24_transmit_rf_ctrl_clear
+0x363a g24_transmit_process
+0x363d g24_transmit_loop
+0x3646 g24_transmit_no_ack
+0x3647 g24_transmit_next_packet
+0x364c g24_transmit_abandon
+0x3651 g24_transmit_receive_ack
+0x365f g24_retransmit
+0x3662 g24_retransmit0
+0x366e g24_ackpayload_parse
+0x3676 g24_tx_attempt_fail
+0x367a g24_stop_24g_mode
+0x367c g24_transmit_hop_process
+0x3689 g24_transmit_hop_process_4ms
+0x368d g24_hop_ch_enable
+0x368d g24_txpayload_type_update
+0x3690 g24_lr_type_update
+0x3692 g24_hop_enable_packet
+0x3694 g24_hop_ch_disable
+0x369a g24_tx_fast_hop
+0x369d g24_search_receiver
+0x369f g24_nodata_transmit
+0x36a6 g24_send_abort_packet
+0x36b4 g24_lpm_wait
+0x36be g24_setgpio_lpm_before
+0x36c0 g24_transmit_by_interrupt
+0x36ca g24_transmit_by_interrupt_exit
+0x36cf g24_interval_min
+0x36d1 g24_interval_store
+0x36d3 g24_interval_max
+0x36d5 g24_interval_calibrate
+0x36db g24_transmit_by_interrupt_enable
+0x36df g24_factory_check
+0x36e1 pdata_0xff_check
+0x36e3 pdata_0xff_check_loop
+0x36e8 power_ctrl_start
+0x36f3 power_ctrl_start_next
+0x36fb power_ctrl_txpower_decrs_check
+0x3700 power_ctrl_txpower_decrs
+0x3704 power_ctrl_txpower_decrs_next
+0x370b power_ctrl_decrs_level1
+0x370b power_ctrl_incrs_level1
+0x370d power_ctrl_txpower_incrs_force
+0x370e power_ctrl_txpower_incrs
+0x3713 power_ctrl_incrs_level2
+0x3715 power_ctrl_decrs_level0
+0x3717 power_ctrl_pac_succ_cnt_init
+0x371a power_ctrl_pac_succ_incrs
+0x371e power_ctrl_pac_succ_decrs
+0x3726 power_ctrl_pac_succ_cnt_reinit
+0x3728 ali_mesh_access_layer_resolve_message
+0x372e ali_mesh_access_layer_check_access_message_opcode
+0x3739 ali_mesh_access_layer_message_opcode_config_appkey_add
+0x3745 ali_mesh_access_layer_recv_cfg_appkey_add_cb
+0x374f ali_mesh_accesss_layer_check_message_type
+0x3754 ali_mesh_access_layer_send_config_appkey_status
+0x375e ali_mesh_access_layer_finish_pairing_init_subscription_list
+0x3761 ali_mesh_access_layer_finish_pairing_init_subscription_list_loop
+0x376c ali_mesh_access_layer_send_generic_onoff_status
+0x3774 ali_mesh_access_layer_send_light_lightness_status
+0x377c ali_mesh_access_layer_send_light_ctl_stauts
+0x3784 ali_mesh_access_layer_send_scene_status
+0x378c ali_mesh_app_recv_new_mesh_pkt
+0x3791 ali_mesh_report_power_on_timer
+0x3794 ali_mesh_report_full_attribute_timer
+0x3797 ali_mesh_app_report_device_state
+0x3799 ali_mesh_ali_vendor_message_attribute_set
+0x37ba ali_mesh_ali_vendor_message_opcode_attr_get
+0x37bb ali_mesh_ali_vendor_message_opcode_attr_confrimation
+0x37c4 ali_mesh_ali_vendor_message_attrbute_check_company_id_and_tid
+0x37cf ali_mesh_ali_vendor_message_attribute_set_main_light
+0x37d2 ali_mesh_ali_vendor_message_attribute_set_background_light
+0x37d5 ali_mesh_ali_vendor_message_attribute_set_color
+0x37d8 ali_mesh_ali_vendor_message_opcode_timer_set_curr_time
+0x37dc ali_mesh_ali_vendor_message_status_add_head
+0x37e4 ali_mesh_ali_vendor_message_opcode_device_power_on
+0x37e8 ali_mesh_ali_vendor_message_opcode_generic_onoff
+0x37ea ali_mesh_ali_vendor_message_ack_attr_status_uint64
+0x37ec ali_mesh_ali_vendor_message_ack_attr_status_uint56
+0x37ee ali_mesh_ali_vendor_message_ack_attr_status_uint48
+0x37f0 ali_mesh_ali_vendor_message_ack_attr_status_uint32
+0x37f2 ali_mesh_ali_vendor_message_ack_attr_status_uint16
+0x37f4 ali_mesh_ali_vendor_message_ack_attr_status_uint8
+0x37f6 ali_mesh_ali_vendor_message_ack_attr_status
+0x37fc ali_mesh_ali_vendor_message_opcode_para_uint8
+0x3801 ali_mesh_ali_vendor_message_opcode_para_uint16
+0x3806 ali_mesh_ali_vendor_message_send_message
+0x3808 ali_mesh_ali_vendor_message_indication_info_add_head
+0x3817 ali_mesh_ali_vendor_message_indication_info_reset_tid
+0x3819 ali_mesh_ali_vendor_message_opcode_delete_timer
+0x3823 ali_mesh_ali_vendor_message_opcode_delete_timer_loop
+0x382e ali_mesh_access_layer_send_ali_vendor_message_delete_timer
+0x3837 ali_mesh_ali_vendor_aim_timer_buffer_clear
+0x383f ali_mesh_ali_vendor_aim_timer_buffer_clear_all
+0x3845 ali_mesh_ali_vendor_message_opcode_timer_inquire
+0x3856 ali_mesh_ali_vendor_message_opcode_timer_inquire_time
+0x385e ali_mesh_ali_vendor_message_opcode_timer_inquire_all_timer
+0x3867 ali_mesh_ali_vendor_message_opcode_timer_inquire_time_error
+0x386a ali_mesh_ali_vendor_message_opcode_timer_set_state
+0x387d ali_mesh_time_function
+0x3889 ali_mesh_time_init_system_time
+0x388a ali_mesh_time_init_system_time_without_clk
+0x388f ali_mesh_timer_timeout
+0x3896 ali_mesh_clkn_bt_add_1s
+0x3897 ali_mesh_time_loop
+0x389a ali_mesh_ali_vendor_check_time
+0x38a0 ali_mesh_ali_vendor_check_time_loop
+0x38a8 ali_mesh_ali_vendor_had_timing
+0x38b5 ali_mesh_ali_vendor_had_timing_single_time
+0x38bc ali_mesh_ali_vendor_time_out_of_date
+0x38bf ali_mesh_ali_vendor_had_timing_cyclically
+0x38d5 ali_mesh_ali_vendor_had_timing_cyclically_continue
+0x38e3 ali_mesh_ali_vendor_time_timeout
+0x38ef ali_mesh_ali_vendor_time_timeout_continue
+0x38f4 ali_mesh_ali_vendor_time_timeout_cyclic
+0x38ff ali_mesh_ali_vendor_message_opcode_timing_finish
+0x3907 ali_mesh_ali_vendor_message_opcode_timer_set_timing
+0x391c ali_mesh_ali_vendor_message_opcode_timer_set_timing_cyclically
+0x3928 ali_mesh_access_layer_send_ali_vendor_message_current_timing
+0x3930 ali_mesh_ali_vendor_store_mesh_timer_infmatn
+0x3937 ali_mesh_vendor_timer_buffer_offset_cal
+0x393b ali_mesh_get_all_timer_index_timer
+0x3940 ali_mesh_get_all_timer_index_timer_loop
+0x3945 ali_mesh_get_all_timer_index_timer_loop_end
+0x394a peripherals_write_mesh_timer_infmatn
+0x394c ali_mesh_bearer_layer_send_packet_by_network_layer
+0x3961 ali_mesh_bearer_layer_gatt_send_packet_by_network_layer
+0x3964 ali_mesh_send_ble_data_control_package
+0x3967 ali_mesh_advertising_bearer_layer_init_queue
+0x396c ali_mesh_advertising_bearer_layer_init_queue_param
+0x396f ali_mesh_advertising_bearer_layer_load_packet_from_advertising_queue
+0x396f ali_mesh_advertising_bearer_layer_load_packet_from_advertising_queue_deal
+0x3973 ali_mesh_advertising_bearer_layer_send_packet_by_app_bearer_calc_param
+0x397c ali_mesh_advertising_add_adtype_flags
+0x3984 ali_mesh_advertising_add_adtype_16bit_complete
+0x398b mesh_ble_rx_packet_only
+0x3995 mesh_ble_rx_packet
+0x3997 mesh_ble_rx_packet_check_timer
+0x39a1 mesh_ble_rx_packet_check_and_init
+0x39a9 mesh_le_calc_next_scan_channel
+0x39b1 mesh_check_ble_rx_packet
+0x39b6 ali_mesh_match_advertising_packet
+0x39bd ali_mesh_find_adv_ind_packet
+0x39d1 ali_mesh_receive_adtype_manufacturer_specific_tmall_control
+0x39d3 mesh_le_send_adv
+0x39e0 mesh_le_send_adv_loop
+0x39f0 mesh_le_send_adv_nonconn_ind
+0x39fb ali_mesh_base_adt_cache
+0x3a09 ali_mesh_base_adt_cache_loop
+0x3a16 ali_mesh_base_adt_cache_empty_space
+0x3a18 ali_mesh_chip_peripherals_load_data
+0x3a1a ali_mesh_chip_peripherals_load_data_from_flash
+0x3a21 ali_mesh_chip_peripherals_load_three_tuple_from_flash
+0x3a25 ali_mesh_chip_peripherals_load_network_key_from_flash
+0x3a2c ali_mesh_chip_peripherals_load_application_key_from_flash
+0x3a30 ali_mesh_chip_peripherals_load_device_key_from_flash
+0x3a34 ali_mesh_chip_peripherals_load_reset_count_from_flash
+0x3a35 ali_mesh_chip_peripherals_load_seq_from_flash
+0x3a39 ali_mesh_chip_peripherals_load_subscription_from_flash
+0x3a43 ali_mesh_chip_peripherals_load_data_from_eep
+0x3a4a ali_mesh_chip_peripherals_load_three_tuple_from_eep
+0x3a4e ali_mesh_chip_peripherals_load_network_key_from_eep
+0x3a55 ali_mesh_chip_peripherals_load_application_key_from_eep
+0x3a59 ali_mesh_chip_peripherals_load_device_key_from_eep
+0x3a5d ali_mesh_chip_peripherals_load_reset_count_from_eep
+0x3a5e ali_mesh_chip_peripherals_load_seq_from_eep
+0x3a62 ali_mesh_chip_peripherals_load_subscription_from_eep
+0x3a6b ali_mesh_chip_peripherals_load_subscription_loop
+0x3a71 mesh_receive_config_appkey_add_cb
+0x3a74 mesh_receive_config_appkey_add_flash_cb
+0x3a77 ali_mesh_chip_peripherals_save_network_key_from_flash
+0x3a7b ali_mesh_chip_peripherals_save_application_key_from_flash
+0x3a7f ali_mesh_chip_peripherals_save_device_key_from_flash
+0x3a83 mesh_receive_config_appkey_add_eeprom_cb
+0x3a86 ali_mesh_chip_peripherals_save_network_key_from_eep
+0x3a8a ali_mesh_chip_peripherals_save_application_key_from_eep
+0x3a8e ali_mesh_chip_peripherals_save_device_key_from_eep
+0x3a92 mesh_store_new_seq_data
+0x3a9a ali_mesh_chip_peripherals_save_seq_from_flash
+0x3a9e ali_mesh_chip_peripherals_save_seq_from_eep
+0x3aa2 mesh_store_new_subscriptuion_list_data
+0x3aa9 mesh_store_new_subscriptuion_list_data_from_flash
+0x3aad ali_mesh_chip_peripherals_save_subscriptuion_list_from_eep
+0x3ab0 ali_mesh_chip_peripherals_save_subscriptuion_list_from_eep_loop
+0x3ab6 mesh_clear_pairing_key
+0x3ab8 ali_mesh_chip_clear_pairing_key_from_flash
+0x3abb ali_mesh_chip_clear_pairing_key_from_eeprom
+0x3abc mesh_vendor_timming_chage_cb
+0x3ac3 ali_mesh_vendor_timer_message_read
+0x3aca ali_mesh_control_ble_adv_process
+0x3acc ali_mesh_control_ble_adv_timer_process
+0x3ace ali_mesh_control_ble_advertising_on_advertising
+0x3ad0 ali_mesh_control_ble_advertising_off_advertising
+0x3ad2 ali_mesh_control_ble_adv_tmall_packet
+0x3ad6 ali_mesh_control_ble_adv_tmall_packet_send_package
+0x3adc ali_mesh_control_ble_advertising_send_device_silence_beacon_packet
+0x3ade ali_mesh_control_ble_advertising_send_paired_packet
+0x3aef ali_mesh_control_ble_advertising_send_paired_packet_end_duration_proxy
+0x3af5 ali_mesh_control_ble_advertising_send_paired_packet_end_duration
+0x3afb ali_mesh_send_paired_packet_init_advertising
+0x3afd ali_mesh_control_ble_advertising_send_device_beacon_packet
+0x3b05 ali_mesh_control_ble_advertising_device_beacon_check_duration
+0x3b09 ali_mesh_end_advertising_silence_device_beacon_packet
+0x3b0b ali_mesh_end_advertising_unprovisioned_device_beacon_packet
+0x3b0d ali_mesh_control_ble_advertising_send_pairing_packet
+0x3b0e ali_mesh_chip_timer_check_with_random_timer
+0x3b10 ali_mesh_chip_timer_check_with_random_timer_continue
+0x3b13 ali_mesh_chip_timer_check
+0x3b19 ali_mesh_advertising_unprovisioned_timer
+0x3b1c ali_mesh_advertising_unprovisioned_timeout
+0x3b23 ali_mesh_advertising_unprovisioned_timer_interval_timer
+0x3b26 ali_mesh_advertising_unprovisioned_timer_interval_timeout
+0x3b2a ali_mesh_stop_send_indication_packet
+0x3b2f ali_mesh_send_unprovisioned_device_beacon_init_advertising
+0x3b31 ali_mesh_send_silence_device_beacon_init_advertising
+0x3b33 ali_mesh_network_layer_control_relay_packet
+0x3b37 ali_mesh_network_layer_control_send_relay_packet
+0x3b45 ali_mesh_encrypt_calc_random_data
+0x3b4b ali_mesh_encrypt_calc_random_data_calc_confirmationkey
+0x3b53 ali_mesh_encrypt_calc_random_data_calc_authvalueprov
+0x3b59 ali_mesh_encrypt_calc_random_data_calc_authvaluedevice
+0x3b5f ali_mesh_encrypt_calc_random_data_calc_confirmationcloud
+0x3b67 ali_mesh_encrypt_calc_random_data_calc_confirmationdevice
+0x3b6b ali_mesh_encrypt_calc_random_data_calc_devicekey
+0x3b75 ali_mesh_encrypt_load_randomba_to_sha256
+0x3b76 ali_mesh_encrypt_load_randoma_to_sha256
+0x3b78 ali_mesh_encrypt_load_randomab_to_sha256
+0x3b79 ali_mesh_encrypt_load_randomb_to_sha256
+0x3b7b ali_mesh_encrypt_load_three_tuple_to_sha256
+0x3b86 ali_mesh_encrypt_calc_provisioning_data
+0x3b87 ali_mesh_encrypt_calc_provisioning_data_xor_prov_data
+0x3b8a ali_mesh_encrypt_calc_provisioning_data_xor_prov_data_loop
+0x3b92 ali_mesh_encrypt_calc_provisioning_data_calc_sessionkey
+0x3b99 ali_mesh_encrypt_calc_network_key_by_k2
+0x3b9c ali_mesh_encrypt_base_function_k2
+0x3bb1 ali_mesh_encrypt_base_function_k4
+0x3bbf ali_mesh_encrypt_base_function_k3
+0x3bcc ali_mesh_encrypt_obfuscation_deceypt_send_message
+0x3bcf ali_mesh_encrypt_obfuscation_deceypt_recevie_message
+0x3bd1 ali_mesh_encrypt_obfuscation_deceypt
+0x3bda ali_mesh_encrypt_generate_pecb
+0x3bda ali_mesh_encrypt_generate_privacy_random
+0x3bdc ali_mesh_encrypt_base_function_generate_pecb
+0x3be3 ali_mesh_encrypt_base_function_sha256_load_data_64bit
+0x3be4 ali_mesh_encrypt_base_function_sha256_load_data_with_hex2ascii
+0x3be7 ali_mesh_encrypt_base_function_sha256_load_data_without_hex2ascii
+0x3bea ali_mesh_encrypt_base_function_sha256_load_data_with_hex2ascii_add_comma
+0x3bee ali_mesh_encrypt_base_function_sha256_store_dataptr
+0x3bf1 ali_mesh_encrypt_base_function_sha256_check_first_load_data
+0x3bfa ali_mesh_encrypt_base_function_sha256_first_load_data
+0x3bfe ali_mesh_encrypt_base_function_sha256_clear_data_chunk
+0x3c01 ali_mesh_encrypt_base_function_sha256_calc
+0x3c06 ali_mesh_encrypt_base_function_sha256_calc_loop
+0x3c17 ali_mesh_encrypt_base_function_sha256_load_data_end
+0x3c30 ali_mesh_encrypt_base_function_sha256_add_chunk
+0x3c32 ali_mesh_encrypt_base_function_sha256_input_data_init_inverse
+0x3c33 ali_mesh_encrypt_base_function_sha256_data_inverse_4byte
+0x3c39 ali_mesh_encrypt_base_function_hex2ascii
+0x3c42 ali_mesh_encrypt_base_function_dialog2uchar
+0x3c46 ali_mesh_encrypt_base_function_dialog2uchar_num
+0x3c48 ali_mesh_encrypt_base_function_aes_cmac_32byte
+0x3c4a ali_mesh_encrypt_base_function_aes_cmac_16byte
+0x3c4c ali_mesh_encrypt_base_function_k2_aes_cmac_t
+0x3c5a ali_mesh_encrypt_base_function_aes_cmac
+0x3c64 ali_b0_block_generate
+0x3c66 ali_a_block_generate
+0x3c67 ali_block_generate
+0x3c79 ali_generate_mic
+0x3c84 ali_ccm_encrypt_64bit
+0x3c86 ali_ccm_encrypt
+0x3c88 ali_ccm_encrypt_function
+0x3ca5 ali_ccm_decrypt_64bit
+0x3ca7 ali_ccm_decrypt
+0x3ca9 ali_ccm_decrypt_function
+0x3cc4 ali_ccm_decrypt_function_check_mic64
+0x3cc7 ali_fetcht_ccm_mic
+0x3ccf ali_aes_crypt_data
+0x3cd9 mesh_send_unprovisioned_beacons
+0x3ce0 ali_mesh_config_device_uuid_by_three_tuple
+0x3cec ali_mesh_send_unprovisioned_beacons_tmall
+0x3cee ali_mesh_init_adv_data_tmall_unprovisioned_beacons_package
+0x3cf5 ali_mesh_advertising_send_unprovisioned_beacons_store_device_uuid
+0x3cfa ali_mesh_receive_adtype_manufacturer_specific
+0x3d01 ali_mesh_advertising_receive_privisioning_random
+0x3d03 ali_mesh_advertising_calc_encrypt_random_data
+0x3d07 ali_mesh_advertising_send_provisioning_confirmation
+0x3d0f ali_mesh_advertising_receive_privisioning_random_check_states
+0x3d1c ali_mesh_decrypt_tmall_privisioning_data_package
+0x3d27 ali_mesh_advertising_receive_privisioning_data
+0x3d37 ali_mesh_resolve_privisioning_data_package
+0x3d3f ali_mesh_advertising_send_provisioning_complete
+0x3d46 ali_mesh_advertising_send_packet_common
+0x3d5a ali_mesh_receive_provisioning_package_check_header
+0x3d63 ali_mesh_fast_pairing_timer
+0x3d66 ali_mesh_fast_pairing_timeout
+0x3d66 ali_mesh_fast_pairing_failed
+0x3d67 ali_mesh_access_layer_config_or_health_message_opcode
+0x3d6e ali_mesh_message_config_modle_subscription_add_overwrite
+0x3d83 ali_mesh_message_config_modle_subscription_add_value_address_ow
+0x3d8b ali_mesh_byte_swap
+0x3d90 ali_mesh_message_config_modle_subscription_set_addr_max
+0x3d92 ali_mesh_access_layer_config_composition_data
+0x3db1 ali_mesh_access_layer_config_or_health_message_opcode_node_reset
+0x3db2 ali_mesh_access_layer_send_config_node_reset_status
+0x3db8 ali_mesh_access_layer_health_node_reset_timer
+0x3dbb ali_mesh_access_layer_health_node_reset_timeout
+0x3dbc ali_mesh_app_delete_paired
+0x3dbd ali_mesh_message_config_modle_subscription_add
+0x3dc2 ali_mesh_message_config_modle_subscription_save
+0x3dc4 ali_mesh_message_config_modle_subscription_delete
+0x3dcd ali_mesh_message_config_modle_subscription_delete_next
+0x3dd3 ali_mesh_message_config_modle_subscription_delete_group_addr
+0x3dd8 ali_mesh_message_config_modle_subscription_check_value_address
+0x3dd9 ali_mesh_message_config_modle_subscription_check_value_address_loop
+0x3ddf ali_mesh_message_config_modle_subscription_check_value_address_loop_empty
+0x3de2 ali_mesh_message_config_modle_subscription_status
+0x3dec ali_mesh_message_config_modle_subscription_check_element
+0x3df5 ali_mesh_message_config_modle_subscription_add_value_address
+0x3df7 ali_mesh_message_config_modle_subscription_add_value_address_loop
+0x3dff ali_mesh_message_config_modle_subscription_add_value_address_in
+0x3e02 ali_mesh_init
+0x3e3a mesh_inverse_three_tuple_mac
+0x3e3e mesh_get_element_info_config
+0x3e42 mesh_idle_process
+0x3e4a mesh_cb_event_timer
+0x3e50 mesh_clear_provisioning_data_only
+0x3e53 mesh_clear_timer_data
+0x3e58 ali_mesh_upper_transport_layer_queue_init
+0x3e5a ali_mesh_advertising_bearer_layer_queue_init
+0x3e5c ali_mesh_network_layer_gatt_queue_init
+0x3e5e ali_mesh_network_layer_init_gatt_queue_param
+0x3e61 ali_mesh_advertising_init_send_unprovisioned_device_beacon
+0x3e6b ali_mesh_lower_transport_layer_receive_lower_transport_pdu
+0x3e70 ali_mesh_lower_transport_layer_receive_lower_transport_pdu_segmented_message
+0x3e76 ali_mesh_lower_transport_layer_receive_segaccmess_resolve_szmic_seqzero_segon
+0x3e93 ali_mesh_lower_transport_layer_receive_segmented_access_message_recover_seqzero
+0x3e97 ali_mesh_lower_transport_layer_receive_segmented_access_message_check_blockack
+0x3ea1 ali_mesh_lower_transport_layer_receive_segmented_access_message_check_blockack_loop
+0x3ea7 ali_mesh_lower_transport_layer_receive_segmented_access_message_store_segment
+0x3eb4 ali_mesh_lower_transport_layer_receive_segmented_access_message_decrypt_segment
+0x3ec1 ali_mesh_lower_transport_layer_send_unsegmented_access_message
+0x3ecb ali_mesh_lower_transport_layer_send_segmented_access_message
+0x3ed4 ali_mesh_model_layer_check_model_message_opcode
+0x3ed5 ali_mesh_model_layer_check_generic_onoff_message_opcde
+0x3edb ali_mesh_model_layer_message_opcode_generic_onoff_get
+0x3edd ali_mesh_model_layer_message_opcode_generic_onoff_get_cb
+0x3ee1 ali_mesh_model_layer_message_opcde_generic_onoff_set
+0x3ee3 ali_mesh_model_layer_message_opcde_generic_onoff_set_cb
+0x3ee6 ali_mesh_model_layer_message_opcde_scene_recall
+0x3ee9 ali_mesh_model_layer_message_opcde_light_lightness_set
+0x3eef ali_mesh_model_layer_message_opcde_light_ctl_set
+0x3efe ali_mesh_model_layer_message_calc_lightness
+0x3f0a ali_mesh_model_layer_message_calc_actual_lightness
+0x3f10 ali_mesh_model_layer_message_calc_temperature
+0x3f18 ali_mesh_model_layer_message_calc_actual_temperature
+0x3f1f ali_mesh_model_layer_message_calc_temperature_k
+0x3f26 ali_mesh_more_element_check_unicast_address
+0x3f2a ali_mesh_more_element_check_unicast_address_loop
+0x3f32 ali_mesh_more_element_found_unicast_address_element
+0x3f36 ali_mesh_more_element_check_group_address
+0x3f3a ali_mesh_more_element_check_group_address_loop
+0x3f3f ali_mesh_more_element_check_address_common
+0x3f47 ali_mesh_more_element_found_group_address_element
+0x3f49 ali_mesh_more_element_check_subscription_address
+0x3f4b ali_mesh_more_element_check_subscription_address_loop
+0x3f51 ali_mesh_more_element_found_subscription_address_element
+0x3f53 ali_mesh_more_element_check_element_address
+0x3f58 ali_mesh_more_element_check_element_address_loop
+0x3f5f ali_mesh_more_element_check_element_address_no_group_address
+0x3f64 ali_mesh_more_element_push_stack
+0x3f69 ali_mesh_more_element_pop_stack
+0x3f6e ali_mesh_more_element_calc_queue_address
+0x3f7c ali_mesh_receive_adtype_mesh_message
+0x3f7d ali_mesh_network_layer_recevice_network_pdu
+0x3f8c ali_mesh_network_layer_check_dup
+0x3f95 ali_mesh_network_layer_check_dup_loop
+0x3fa1 ali_mesh_network_layer_check_msg
+0x3fa5 ali_mesh_network_layer_check_msg_loop
+0x3fb2 ali_mesh_network_layer_store_proxy_unicast_address
+0x3fb7 ali_mesh_network_layer_recevice_network_pdu_decrypt_netmic32
+0x3fbc ali_mesh_network_layer_recevice_network_pdu_check_dst
+0x3fcf ali_mesh_more_found_unicast_address_element
+0x3fd3 ali_mesh_network_layer_recevice_network_pdu_check_dst_group_address
+0x3fdd ali_mesh_network_layer_check_nid_ivi
+0x3fea ali_mesh_network_layer_recevice_network_pdu_check_src_and_seq
+0x3fec ali_mesh_network_layer_raverse_src_seq_cache
+0x3ff4 ali_mesh_network_layer_find_empty_space
+0x3ff5 ali_mesh_network_layer_find_src_space
+0x3ffa ali_mesh_network_layer_recevice_network_pdu_check_seq_legal
+0x4002 ali_mesh_inverse_seq
+0x4005 ali_mesh_network_load_network_nonce_and_encryptionkey
+0x4006 ali_mesh_upper_transport_layer_load_encryptionkey
+0x4008 ali_mesh_network_layer_load_network_nonce
+0x400e ali_mesh_network_store_in_mem
+0x4016 ali_mesh_network_layer_relay_access_message
+0x402b ali_mesh_network_layer_white_list_fliter
+0x402c ali_mesh_network_layer_white_list_fliter_check
+0x4031 ali_mesh_network_layer_white_list_fliter_check_loop
+0x4036 ali_mesh_network_layer_check_relay_states
+0x404a ali_mesh_network_layer_encrypt_relay_package
+0x404f ali_mesh_network_layer_check_network_mic_cache
+0x4052 ali_mesh_network_layer_send_access_message
+0x4056 ali_mesh_network_layer_send_access_message_encrypt_netmic
+0x405c ali_mesh_network_layer_encrypt_by_network_nonce
+0x405f ali_mesh_network_layer_send_access_message_encrypt_obfuscation
+0x4060 ali_mesh_network_layer_check_gatt_relay_packet
+0x4069 mesh_generate_nonce
+0x406e ali_mesh_network_layer_init_queue_param
+0x4071 ali_mesh_network_layer_queue_init
+0x4073 ali_mesh_ble_adv
+0x4079 ali_mesh_ble_adv_network_id
+0x4083 ali_mesh_ble_adv_mesh_beacon
+0x4090 mesh_le_receive_data
+0x4095 ali_mesh_receive_ble_data_proxy_data_in
+0x409a ali_mesh_network_layer_recevice_proxy_configuration_messages
+0x40a4 ali_mesh_recevice_proxy_configuration_messages_decrypt
+0x40ae ali_mesh_proxy_configuration_message_add_addr_to_filter
+0x40bd ali_mesh_proxy_configuration_message_set_filter_type
+0x40bf ali_mesh_proxy_configuration_message_filter_status
+0x40d6 ali_mesh_receive_ble_data_provisioning_data_in
+0x40da ali_mesh_network_load_proxy_nonce_and_encryptionkey
+0x40e1 ali_mesh_network_layer_recevice_network_pdu_proxy_control
+0x40e3 ali_mesh_proxy_process_bb_event
+0x40e7 app_ble_conn_event
+0x40e8 mesh_ble_start_adv
+0x40eb ali_mesh_proxy_white_list_clear
+0x40f0 ali_mesh_send_ble_data
+0x40fa ali_mesh_send_pairing_data
+0x4106 ali_mesh_white_filter_check
+0x410a ali_mesh_white_list_num_increase
+0x410e sha_endian_swap2
+0x4111 sha_endian_loop
+0x4119 sha_getw
+0x411d sha_r
+0x411f sha_r_loop
+0x4134 sha_init
+0x4136 sha_init_0
+0x413b sha
+0x413f sha_0
+0x4147 sha_loop
+0x4170 sha_1
+0x4176 sha_result
+0x4178 sha_regext_save
+0x417d ali_mesh_upper_transport_layer_receive_unsegmented_access_message
+0x417e ali_mesh_uuper_transport_layer_decrypt_unsegment_access_by_application_key
+0x4180 ali_mesh_uuper_transport_layer_decrypt_unsegment_access_by_device_key
+0x4182 ali_mesh_upper_transport_layer_decrypt_unsegmented_message
+0x4187 ali_mesh_upper_transport_layer_receive_segmented_access_message
+0x4189 ali_mesh_uuper_transport_layer_decrypt_segment_access_by_application_key
+0x418b ali_mesh_uuper_transport_layer_decrypt_segment_access_by_device_key
+0x418d ali_mesh_upper_transport_layer_decrypt_segmented_message
+0x4194 ali_mesh_upper_transport_layer_decrypt_message
+0x419c ali_mesh_upper_transport_layer_decrypt_message_decrypt_transmic
+0x419f ali_mesh_upper_transport_layer_check_transport_mic_cache
+0x41a2 ali_mesh_upper_transport_layer_load_application_nonce_and_application_key
+0x41a3 ali_mesh_upper_transport_layer_load_application_key
+0x41a5 ali_mesh_upper_transport_layer_load_application_nonce
+0x41af ali_mesh_upper_transport_layer_load_device_nonce_and_device_key
+0x41b0 ali_mesh_upper_transport_layer_load_device_key
+0x41b2 ali_mesh_upper_transport_layer_load_device_nonce
+0x41b5 ali_mesh_upper_transport_layer_send_access_message
+0x41b5 ali_mesh_upper_transport_layer_send_access_message_without_cleat_tx_buffer
+0x41bd ali_mesh_upper_transport_layer_store_packet_header
+0x41d0 ali_mesh_upper_transport_layer_store_unsegment_msg_original_access_pdu
+0x41d8 ali_mesh_upper_transport_layer_control_packet
+0x41d8 ali_mesh_upper_transport_layer_control_packet_deal
+0x41f8 ali_mesh_upper_transport_layer_control_packet_unsegment_msg
+0x41f9 ali_mesh_upper_transport_layer_control_packet_segment_msg
+0x41fc ali_mesh_upper_transport_layer_control_packet_load_header
+0x4202 ali_mesh_upper_transport_layer_control_packet_load_app_control
+0x4208 ali_mesh_store_tran_package_type
+0x420b ali_mesh_upper_transport_layer_queue_pop
+0x420f ali_mesh_upper_transport_layer_control_packet_encrypt_access
+0x421f ali_mesh_upper_transport_layer_control_packet_encrypt_access_unsegment_msg
+0x4222 ali_mesh_upper_transport_layer_control_packet_encrypt_access_segment_msg
+0x4228 ali_mesh_upper_transport_layer_control_packet_encrypt_access_load_payload
+0x4230 ali_mesh_upper_transport_layer_split_segmented_msg_to_lower_tran_layer
+0x4233 ali_mesh_upper_transport_layer_send_segmented_access_message_loop
+0x4249 ali_mesh_upper_transport_layer_calc_transport_mic
+0x424b ali_mesh_upper_transport_layer_calc_transport_mic_by_appkey
+0x424d ali_mesh_upper_transport_layer_calc_transport_mic_by_devicekey
+0x424e ali_mesh_upper_transport_layer_calc_transport_mic_encrypt_aesccm
+0x4253 ali_mesh_upper_transport_layer_send_access_message_calc_seq
+0x425b ali_mesh_upper_transport_layer_send_access_message_add_nid_src_ttl_seq_dst
+0x4267 ali_mesh_upper_transport_layer_send_access_message_add_seq
+0x426f ali_mesh_upper_transport_layer_send_segmented_access_message_get_seqzero_segon
+0x427c ali_mesh_upper_transport_layer_send_segmented_access_message_calc_header
+0x4289 ali_mesh_upper_transport_layer_receive_new_msg_timer
+0x428c ali_mesh_upper_transport_layer_receive_new_msg_timeout
+0x428f ali_mesh_upper_transport_layer_send_segmented_access_message_sub_segn_one
+0x4291 ali_mesh_upper_transport_layer_clear_tx_buffer
+0x4292 ali_mesh_upper_transport_layer_init_queue_param
+0x4295 app_init
+0x42a3 app_param_init
+0x42ad app_process_idle
+0x42b2 app_process_ble
+0x42b4 app_process_bb_event
+0x42bb app_discard_event
+0x42bd app_event_normal_process
+0x42c1 app_process_bb_event_priority
+0x42c3 app_check_wake_lock
+0x42c5 app_will_enter_lpm
+0x42c7 app_le_event_bb_connected
+0x42cb app_le_event_bb_disconn
+0x42d0 app_evt_button_long_pressed
+0x42d4 app_evt_timer
+0x42d5 app_evt_100ms_loop
+0x42e0 timer_single_step
+0x42e7 timer_single_step_2b
+0x42ee app_power_timer
+0x42f2 app_power_timer_timeout
+0x42f4 app_enter_power_off_state
+0x42f5 app_enter_power_stanby_state
+0x42f8 app_power_cb_common
+0x42fa app_bb_hibernate
+0x42fc app_disconn_reason_clear
+0x42ff app_disconn_reason_flag_clear
+0x4302 app_disconn_reason_collect_ble
+0x4308 app_get_lpm_wake_lock
+0x430a app_put_lpm_wake_lock
+0x430c app_lpm_wake_auto_lock
+0x430e app_lpm_wake_auto_lock_timer
+0x4311 app_ble_start_direct_adv
+0x4313 app_ble_stop_direct_adv
+0x4315 app_ble_stop_adv
+0x4317 app_ble_start_adv
+0x4319 app_ble_start_scan
+0x431b app_ble_stop_scan
+0x431d app_ble_start_conn
+0x431f app_ble_disconnect
+0x4321 app_led_start_blink
+0x4323 app_led_on
+0x4325 app_led_stop_blink
+0x4325 app_led_off
+0x4327 app_enter_hibernate
+0x4329 app_ble_store_reconn_info
+0x432b app_lpm_mult_enable
+0x432d app_lpm_mult_disable
+0x432f app_button_long_pressed
+0x4331 app_power_starting
+0x4335 app_power_common
+0x4339 app_power_shutting_down
+0x433f app_power_off_end
+0x4343 app_got_power_state_common
+0x4347 app_event_button_up
+0x434a app_power_release
+0x434c adpcm_decode
+0x4355 adpcm_decode_loop
+0x435f adpcm_next_byte
+0x4362 adpcm_cal
+0x4379 adpcm_cal_valpred
+0x437c adpcm_cal_valpred_end
+0x4382 adpcm_cal_valpred_overflow
+0x4388 adpcm_cal_valpred_overflow_end
+0x439a adpcm_cal_index
+0x439e adpcm_cal_bigger_zero
+0x43a3 adpcm_cal_vpdiff
+0x43a9 adpcm_cal_vpdiff1
+0x43ad adpcm_cal_vpdiff2
+0x43b2 car_init
+0x43d4 car_soft_switch_power_on_init
+0x43da car_power_off_signal
+0x43db car_hard_switch_power_on_signal
+0x43dc car_soft_switch_power_on_signal
+0x43df car_le_modified_name_adv
+0x43e1 car_name_loop
+0x43ee car_le_modified_name_scan
+0x43f3 car_hex_to_ascii
+0x43f7 car_hex_num
+0x43f9 car_ui_led_init
+0x43fb car_ui_led_init_1
+0x43fd car_ui_led_init_2
+0x43ff car_ui_led_init_3
+0x4403 car_in_lp1
+0x4409 car_in_lp1_end
+0x440a car_ui_led_init_end
+0x440b car_blood_led_gpio_set
+0x440e car_pairing_led_gpio_set
+0x4410 car_low_voltage_led_gpio_set
+0x4412 car_init_environment
+0x441a car_read_otp_addr
+0x441b car_motor_init
+0x441f p_in_lp1
+0x4426 p_in_lp1_end
+0x4427 p_car_ui_led_init_end
+0x4428 car_ui_gpio_init
+0x442c car_init_adc_hvin
+0x442e car_le_before_hibernate
+0x4430 car_le_process_lpm_before
+0x4431 car_gpio_set_before_hibernate
+0x4432 car_gpio_set_before_lpm_common
+0x4434 car_setgpio_loop
+0x443e car_setgpio_loop_end
+0x4442 car_setgpio_loop_ext
+0x4445 car_setgpio_pullup
+0x4448 car_setgpio_pulldown
+0x444b car_motor_setgpio
+0x444e car_motor_setgpio_loop
+0x4454 car_key_scan_process
+0x4455 car_scale_process_idle
+0x4458 car_g24_status_process
+0x445d car_g24_connected_event
+0x4463 car_lpm_timer_enable
+0x4467 car_lpm_timer_disable
+0x4469 car_stop_blink
+0x446b car_start_blink
+0x446d car_le_send_packet
+0x4476 car_scale_process_bb_event
+0x447c car_scale_event_le_conn
+0x4480 car_g24_connected
+0x4482 car_scale_process_conn
+0x4486 car_scale_event_le_discon
+0x448a car_g24_disconnect
+0x4494 car_le_bb_event_timer
+0x4499 car_24g_bind_enable_timer
+0x449c car_enter_lpm_timer
+0x449f car_enter_lpm_enable
+0x44a1 car_24g_no_data_timeout_timer
+0x44a4 car_24g_no_data_timer_timeout
+0x44a7 car_notify_vdd_timer
+0x44ac car_notify_vdd
+0x44b0 car_read_hvin
+0x44b9 car_notify_vdd_next2
+0x44c4 car_enter_low_bat
+0x44c9 car_low_bat_led_off
+0x44cb calc_check_sum_start
+0x44cc calc_check_sum_loop
+0x44cf calc_check_sum_and
+0x44d1 car_le_receive_data
+0x44d4 car_le_parse_att_write_request
+0x44d7 le_app_receive_data
+0x44eb car_control_le_receive
+0x44f3 car_receive_cmd_select
+0x44fd car_24g_receive_data
+0x4502 car_24g_receive_data_next
+0x4509 car_moto1_enable_blank_data_timer
+0x450b car_moto2_enable_blank_data_timer
+0x450d car_moto3_enable_blank_data_timer
+0x450f car_moto1_blank_data_timer
+0x4512 car_moto2_blank_data_timer
+0x4515 car_moto3_blank_data_timer
+0x4518 car_moto1_blank_data
+0x451a car_moto2_blank_data
+0x451c car_moto3_blank_data
+0x451e car_drive_old
+0x4523 car_left_right_control_old
+0x4526 car_front_back_control_old
+0x452b car_reset_old_speed
+0x452f car_reset_old_speed2
+0x4531 car_reset_old_speed3
+0x4533 car_speed_set_old
+0x453a car_motor_control
+0x4544 car_motor_control_common
+0x454b car_conn_led_state
+0x4550 car_motor1_control
+0x4552 car_motor2_control
+0x4554 car_motor3_control
+0x4556 car_motor_working_flag
+0x4558 car_motor1_status_select
+0x455d car_motor2_status_select
+0x4562 car_lr_motor_stop
+0x4566 car_lr_motor_left
+0x456a car_lr_motor_right
+0x456e car_fb_motor_stop
+0x4572 car_fb_motor_front
+0x4576 car_fb_motor_back
+0x457a car_motor_status_select
+0x4580 car_motor_positive
+0x4582 car_motor_negative
+0x4587 car_motor_stop
+0x458c car_motor_work
+0x4590 car_motor_select_negative
+0x4593 car_motor_work_next
+0x459a car_motor_select_positive
+0x459e car_motor_speed_duty_setting
+0x45a1 car_motor_speed_duty_transform
+0x45aa car_ir_data_rx_from_app
+0x45ab car_led_control_receive
+0x45ae car_info_request
+0x45ba car_g24_init
+0x45be car_g24_receive_process
+0x45c2 car_g24_mode_switch
+0x45c3 car_g24_bind_mode_enable
+0x45ca car_g24_work_mode
+0x45ce car_g24_receive_ch_polling
+0x45d7 car_g24_ch_polling_clear
+0x45d9 car_g24_work_mode_start
+0x45de car_g24_work_init
+0x45ea car_g24_receive_packet_start
+0x45ec p_g24_receive_packet_parse
+0x45fc car_g24_data_attemp
+0x4601 car_g24_data_device1
+0x4609 car_g24_data_attemp_device1_abort
+0x460e car_g24_bind_mode
+0x4621 car_g24_bind_mode_exit
+0x462c car_g24_save_commom_addr
+0x4640 car_g24_load_commom_addr
+0x464a car_g24_search_commom_addr
+0x464e car_g24_search_commom_addr_loop
+0x465b car_g24_bind_device_addr
+0x465e car_g24_cb_data_device1
+0x4665 car_g24_lpm_dipatch
+0x466d car_g24_lpm_wait
+0x4672 remote_car_init
+0x468e remote_car_soft_switch_power_on_init
+0x4695 remote_car_hard_switch_power_on_signal
+0x4696 remote_car_soft_switch_power_on_signal
+0x46a2 remote_car_set_24g_addr_eeprom
+0x46a6 remote_car_power_off_signal
+0x46a6 remote_car_ui_led_init
+0x46a9 remote_car_ui_led_init_1
+0x46ab remote_car_pairing_led_gpio_set
+0x46ad remote_car_init_environment
+0x46ae remote_no_data_timer_init
+0x46b1 remote_car_le_before_hibernate
+0x46b2 remote_gpio_set_before_hibernate
+0x46b6 remote_car_process_lpm_before
+0x46b8 remote_car_key_scan_process
+0x46bc remote_conn_led_state
+0x46c3 remote_car_stop_state
+0x46c9 get_remote_key_state
+0x46d7 send_data
+0x46dd remote_car_no_data_timeout_check
+0x46e6 remote_car_fb_check
+0x46eb remote_car_lr_check
+0x46f0 remote_car_scale_process_idle
+0x46f2 remote_car_scale_process_bb_event
+0x46f9 remote_car_24g_attempt_fail
+0x46fa remote_car_24g_pairing_complete
+0x4701 remote_car_24g_attempt_success
+0x4706 remote_car_g24_save_commom_addr
+0x4719 remote_car_g24_load_commom_addr
+0x4720 remote_car_g24_search_commom_addr
+0x4723 remote_car_g24_search_commom_addr_loop
+0x4730 remote_car_24g_status_process
+0x4735 remote_car_scale_process_paired
+0x4737 remote_car_scale_process_shutdown
+0x473b remote_car_event_timer
+0x473f remote_car_no_data_timer
+0x4746 remote_car_send_motor1_key0_press
+0x4748 remote_car_send_motor1_key1_press
+0x474a remote_car_send_motor2_key2_press
+0x474c remote_car_send_motor2_key3_press
+0x474e remote_car_send_motor1_key0_rel
+0x474e remote_car_send_motor1_key1_rel
+0x4750 remote_car_send_motor2_key2_rel
+0x4750 remote_car_send_motor2_key3_rel
+0x4752 remote_car_send_key
+0x4754 remote_car_send_attack
+0x4756 remote_car_g24_package_data
+0x475b remote_car_g24_package_data_continue
+0x4760 remote_car_g24_send_empty
+0x4765 remote_car_moto_data
+0x4769 remote_car_moto_data_next
+0x4770 remote_car_moto_data_enable_user
+0x4772 remote_car_default_init
+0x47b7 dongle_init
+0x47c2 dongle_default_init
+0x47cb dongle_default_no_eeprom
+0x47e5 dongle_xtal_select
+0x47ea dongle_dispatch
+0x47ef dongle_read_kb_bind_status
+0x47f4 dongle_write_kb_bind_status
+0x47f9 dongle_usb_config
+0x47fd dongle_usb_config_kb
+0x4801 dongle_usb_config_param
+0x4805 dongle_usb_vid_pid_config
+0x4809 dongle_usb_vid_pid_for_mouse_only_auto_pair
+0x480a dongle_usb_vid_pid_store
+0x480c dongle_usb_vid_pid_for_suit
+0x480e dongle_usb_hid_icon_config
+0x4814 dongle_usb_kb_hidreportdesc
+0x4818 dongle_usb_device_name
+0x481e dongle_all_powerful
+0x481f dongle_all_powerful_loop
+0x4822 dongle_pc_bind
+0x4823 dongle_pc_bind_loop
+0x4827 dongle_g24_blank_data_process
+0x482b dongle_g24_ms_blank_data
+0x4836 dongle_usb_tx_ms_data
+0x4837 dongle_usb_tx_enable_ep2
+0x483b dongle_g24_kb_blank_data
+0x4846 dongle_usb_tx_kb_data
+0x4847 dongle_usb_tx_enable_ep1
+0x484c dongle_g24_kb_sys_ctrl_blank_data
+0x4857 dongle_usb_tx_sys_ctrl_data
+0x4859 dongle_g24_kb_mul_blank_data
+0x4865 dongle_usb_tx_multikey_data
+0x4867 dongle_usb_dispatch
+0x487a dongle_usb0_data_ready_report_set0
+0x487c dongle_dispose_cmd_mode
+0x487f dongle_enter_bind_mode
+0x4880 dongle_usb0_data_ready_report_set1
+0x4882 dongle_dispose_cmd_bind
+0x4887 dongle_dispose_cmd_get_bind
+0x488a dongle_dispose_cmd_exit_bind
+0x488c dongle_dispose_cmd_read_mode
+0x488c dongle_dispose_in_bind_mode
+0x488e dongle_dispose_cmd_current_project
+0x4890 dongle_dispose_cmd_current_mode
+0x4894 dongle_dispose_in_work_mode
+0x4896 dongle_dispose_cmd_current_fw_version
+0x489b dongle_auto_bind
+0x489c dongle_auto_bind_loop
+0x48a3 dongle_work_mode_auto
+0x48ab dongle_ackpayload_prep
+0x48ae dongle_ackpayload_prep_mouse
+0x48b1 dongle_set_pc_sleep_flag
+0x48b5 dongle_clear_pc_sleep_flag
+0x48b7 dongle_ackpayload_prep_keyboard
+0x48b9 dongle_ackpayload_prep_end
+0x48bd dongle_pc_sleep_ackpayload_prep_mouse
+0x48c1 dongle_pc_sleep_ackpayload_prep_keyboard
+0x48c4 dongle_pc_sleep_ackpayload_prep
+0x48c8 dongle_g24_bind_ackpayload_prep
+0x48cc dongle_g24_kb_led_ackpayload_prep
+0x48d4 dongle_g24_mouse
+0x48dd dongle_g24_ms_enable_blank_data_forcibly
+0x48e1 dongle_g24_ms_disable_blank_data_forcibly
+0x48e5 dongle_g24_kb
+0x48ea dongle_g24_kb_type0
+0x48fd dongle_g24_kb_enable_blank_data_forcibly
+0x4901 dongle_g24_kb_disable_blank_data_forcibly
+0x4905 dongle_g24_kb_type3
+0x4915 dongle_g24_kb_mul_enable_blank_data_forcibly
+0x4919 dongle_g24_kb_mul_disable_blank_data_forcibly
+0x491d dongle_g24_kb_type2
+0x492d dongle_g24_kb_sys_enable_blank_data_forcibly
+0x4931 dongle_g24_kb_sys_disable_blank_data_forcibly
+0x4935 dongle_usb_tx_sys_data
+0x4937 dongle_g24_store_dvc2_bind_flag
+0x493b dongle_prep_soft_reset
+0x493d dongle_kb_bind_soft_reset
+0x4942 dongle_wirte_efuse_bind_status
+0x494c keyboard_softreset_process
+0x4959 keyboard_init
+0x4962 keyboard_init_wireless
+0x4966 keyboard_usb_check_enable
+0x496c keyboard_usb_config_param
+0x496f keyboard_usb_config_kb_check
+0x4974 keyboard_usb_config_param_init
+0x497b keyboard_usb_report_rate_set_250hz
+0x497e keyboard_usb_report_rate_set_500hz
+0x4981 keyboard_usb_report_rate_set_1000hz
+0x4984 keyboard_usb_config_param_setup
+0x4987 keyboard_usb_vid_pid_config
+0x498c keyboard_usb_hid_icon_config
+0x498e keyboard_usb_interface_check
+0x4993 keyboard_usb_gpio_low
+0x499a keyboard_usb_gpio_high
+0x49a1 keyboard_setting_config
+0x49af keyboard_param_init
+0x49c1 ble_store_le_name
+0x49c6 ble_name_set_no_swift_pair
+0x49c8 keyboard_gpio_init
+0x49d4 keyboard_keyscan_gpio_init
+0x49d7 keyboard_key_row_init
+0x49e1 keyboard_key_cow_init
+0x49e7 keboard_gpio_set_high_impedance
+0x49ea keyboard_low_vol_mult_set
+0x49f1 keyboard_low_vol_mult_ble_set
+0x49f8 keyboard_pairing_check_otp_offset
+0x49fd keyboard_load_otp_info_check
+0x4a02 keyboard_load_otp_device_info_g24_init
+0x4a0c keyboard_load_otp_device_info_ble_init
+0x4a16 keyboard_load_otp_device_info
+0x4a19 keyboard_load_otp_info_check_page_loop
+0x4a28 keyboard_load_otp_info_check_first_time
+0x4a2a keyboard_load_otp_info_check_first_time_loop_init
+0x4a2c keyboard_load_otp_info_check_first_time_loop
+0x4a38 keyboard_load_otp_info_check_first_time_process
+0x4a3a keyboard_load_otp_info_check_offset_process
+0x4a47 keyboard_load_otp_info_check_offset_process_g24
+0x4a4a keyboard_load_otp_info_check_offset_process_ble
+0x4a55 keyboard_load_otp_info_check_overwise
+0x4a56 keyboard_store_device_info
+0x4a5c keyboard_store_otp_device_info
+0x4a61 keyboard_store_otp_device_info_g24
+0x4a6b keyboard_store_otp_device_info_ble
+0x4a76 keybaord_load_device_info
+0x4a7a keyboard_cb_fuction
+0x4a9a keyboard_priority_bb_event
+0x4aaa keyboard_le_bb_event_connected
+0x4ab0 keyboard_le_bb_event_connected_next
+0x4ab8 keyboard_le_bb_disconnected
+0x4abd keyboard_le_bb_disconnected_next
+0x4ac1 keyboard_bb_disconnected
+0x4ac6 keyboard4_0_event_bb_disconn
+0x4acb keyboard_le_ll_start_encryt
+0x4ad0 keyboard_le_ll_reconn_start_encryt
+0x4ad3 keyboard_le_parse_conn_param_accepted
+0x4add keyboard_le_conn_param_update_rsp_recieved
+0x4ae2 keyboard_24g_pairing_complete
+0x4ae5 keyboard_24g_attempt_success
+0x4aed keyboard_24g_get_led
+0x4af1 keyboard_24g_led_get_status_check
+0x4af3 keyboard_24g_led_data_check
+0x4af9 keyboard_get_24g_led_enable
+0x4afc keyboard_set_repeat_send_flag
+0x4afe keyboard_24g_attempt_fail
+0x4b04 keyboard_24g_attempt_fail_enter_hibernate
+0x4b0a keyboard_24g_fast_conn_attempt_fail
+0x4b11 keyboard_24g_hibernate_set
+0x4b19 keyboard_bb_event_timer
+0x4b32 keyboard_commbination_key_process
+0x4b37 keyboard_commbination_fast_conn_bt_check
+0x4b3f keyboard_commbination_key_down
+0x4b43 keyboard_check_discovery_timeout_timer
+0x4b46 keyboard_check_discovery_timeout
+0x4b48 keyboard_store_information_delay_timer
+0x4b4b keyboard_store_device_info_check
+0x4b4f keyboard_low_voltage_param_set
+0x4b53 keyboard_low_voltage_param_set_33v
+0x4b55 keyboard_le_auto_recognize_timer
+0x4b58 keyboard_check_direct_timeout_timer
+0x4b5c keyboard_le_battery_updata_timer
+0x4b5f keyboard_le_send_conn_param_update_timer
+0x4b62 keyboard_24g_repeat_send_data
+0x4b68 keyboard_24g_led_status_get_timer
+0x4b6b keyboard_24g_led_status_clear
+0x4b6d keyboard_device_led_off
+0x4b6f keyboard_power_led_off
+0x4b71 keyboard_numlock_led_off
+0x4b72 keyboard_capslock_led_on_timer
+0x4b7c keyboard_capslock_led_off
+0x4b7e keyboard_capslock_led_check_on
+0x4b82 keyboard_long_press_timer
+0x4b85 keyboard_long_press_timerout
+0x4b87 keyboard_commbination_delay_release_timer
+0x4b8a keyboard_check_no_data_timeout_timer
+0x4b8d keyboard_check_no_data_timeout
+0x4b90 keyboard_bb_event_discovery_btn
+0x4b95 keyboard_start_discovery
+0x4bac keyboard_start_discovery_norandom
+0x4bbb keyboard_low_voltage_led_blink_disable
+0x4bbd keyboard_stop_discovery
+0x4bc5 keyboard_store_remote_bdaddr
+0x4bcc keyboard_idle
+0x4bcf keyboard_start_work
+0x4bdc keyboard_start_work_next
+0x4be6 keyboard_le
+0x4bee keyboard_le_next
+0x4bfb kscan_dispatch
+0x4c00 keyboard_keyscan
+0x4c0f keyboard_keyscan_copy_value
+0x4c12 keyboard_compare_col_excol_gpio_loop
+0x4c17 keyboard_compare_col_gpio_loop
+0x4c1c keyboard_compare_col_excol_gpio_loop_next
+0x4c23 keyboard_copy_value_exmcu_to_mcu
+0x4c2f keyboard_keyscan_get_exmcu_value
+0x4c32 keyboard_keyscan_exmcu_start
+0x4c3d keyboard_keyscan_exmcu_start_loop
+0x4c46 keyboard_keyscan_exmcu_get_col_value
+0x4c4a keyboard_keyscan_value_store
+0x4c53 keyboard_keyscan_get_mcu_value
+0x4c57 keyboard_keyscan_mcu_start
+0x4c5f keyboard_keyscan_mcu_start_loop
+0x4c65 keyboard_keyscan_get_col_value
+0x4c68 keyboard_keyscan_get_col_value_loop
+0x4c71 keyboard_keyscan_reset_exmcu
+0x4c79 keyboard_clk_state_high
+0x4c7b keyboard_clk_state_low
+0x4c7d keyboard_gpio_config_input_pu
+0x4c81 keyboard_clk_input
+0x4c83 keyboard_stb_state_high
+0x4c85 keyboard_stb_state_low
+0x4c87 keyboard_press_change_or_no_key
+0x4c8b keyboard_key_process
+0x4c9d keyboard_keyvalue_process
+0x4ca6 keyboard_keyvalue_change
+0x4cb3 keyboard_keyvalue_change_loop
+0x4cbd keyboard_keyvalue_process_loop
+0x4cc5 keyboard_keyscan_value_current_zero_check
+0x4ccd keyboard_ghost_key_check
+0x4cd2 keyboard_ghost_key_check_loop
+0x4cd5 keyboard_current_col_press_key_count_check
+0x4ce8 keyboard_same_row_key_check
+0x4cf7 keyboard_ghost_key_check_next_loop
+0x4cfa keyboard_same_row_key_check_loop
+0x4cfc keyboard_keyvalue_fn_replace
+0x4d11 keyboard_keyvalue_fn_replace_press
+0x4d19 keyboard_keyvalue_fn_esc
+0x4d1b keyboard_keyvalue_fn_delete
+0x4d1d keyboard_keyvalue_fn_up_arrow
+0x4d21 keyboard_keyvalue_fn_down_arrow
+0x4d25 keyboard_keyvalue_fn_left_arrow
+0x4d29 keyboard_keyvalue_fn_right_arrow
+0x4d2d keyboard_keyvalue_fn_left_ctrl
+0x4d33 keyboard_keyvalue_windows_osk
+0x4d35 keyboard_keyvalue_fn_space
+0x4d38 keyboard_keyvalue_store_temp
+0x4d3a keyboard_keyvalue_commbination_replace
+0x4d4a keyboard_commbination_delay_release_set
+0x4d4e keyboard_commbination_delay_release_clear
+0x4d50 keyboard_commination_screen_shot_replace
+0x4d56 keyboard_commination_pageup_replace
+0x4d57 keyboard_commination_ios_mac_command_commiation
+0x4d5c keyboard_commination_pagedown_replace
+0x4d5e keyboard_commination_home_replace
+0x4d60 keyboard_commination_end_replace
+0x4d62 keyboard_commination_select_all
+0x4d63 keyboard_commbination_text_edit
+0x4d69 keyboard_commbination_copy
+0x4d6b keyboard_commbination_paste
+0x4d6d keyboard_commbination_cut
+0x4d6f keyboard_commination_os_lock
+0x4d74 keyboard_commination_windows_lock
+0x4d77 keyboard_commination_mac_lock
+0x4d7a keyboard_commbination_osk
+0x4d7e keyboard_commbination_windows_osk
+0x4d81 keyboard_commbination_language
+0x4d85 keyboard_commbination_language_next
+0x4d88 keyboard_commbination_language_windows
+0x4d8a keyboard_commbination_language_andriod
+0x4d8c keyboard_commbination_app_tiling
+0x4d92 keyboard_commbination_app_tiling_windows_android
+0x4d95 keyboard_commbination_keypress
+0x4d9a keyboard_commbination_key_press_set
+0x4d9c keyboard_commbination_key_wait_release_set
+0x4d9e keyboard_commbination_key_null_set
+0x4da0 keyboard_commbination_key_value_store
+0x4da5 keyboard_commbination_key_press_process
+0x4da8 keyboard_commbination_key_hold_set
+0x4daa keyboard_commbination_key_hold_process
+0x4dae keyboard_commbination_key_wait_release_process
+0x4db4 keyboard_commbination_key_release_set
+0x4db6 keyboard_commbination_key_release_process
+0x4db7 keyboard_commbination_key_null_process
+0x4dbb keyboard_keyvalue_in_out
+0x4dc3 keyboard_keyvalue_standard
+0x4dc6 keyboard_keyvalue_standard_out
+0x4dc9 keyboard_keyvalue_standard_out_loop
+0x4dd3 keyboard_keyvalue_standard_out_next
+0x4dd8 keyboard_keyvalue_control_key_out
+0x4ddd keyboard_keyvalue_standard_in
+0x4de0 keyboard_keyvalue_standard_in_loop
+0x4de9 keyboard_keyvalue_control_key_in
+0x4dee keyboard_keyvalue_standard_in_data
+0x4df2 keyboard_keyvalue_standard_in_data_next
+0x4df5 keyboard_special_key_check
+0x4dfe keyboard_special_key_check_loop
+0x4e06 keyboard_special_key_check_bluetooth
+0x4e11 keyboard_special_key_check_24g
+0x4e14 keyboard_pairing_button_check
+0x4e20 keyboard_pairing_button_release
+0x4e24 keyboard_enable_bt_button_pairing
+0x4e29 keyboard_long_button_bt_discovery
+0x4e32 keyboard_commbination_pairing_24g_check
+0x4e39 keyboard_24g_start_pair_mode
+0x4e41 keyborad_control_key_set
+0x4e43 keyboard_fn_set
+0x4e45 keyboard_pb_set
+0x4e47 keyboard_motion
+0x4e61 keyboard_current_mult_update
+0x4e64 keyboard_no_key_press
+0x4e74 keyboard_motion_data_check
+0x4e78 keyboard_value_tpye_check
+0x4e7b keyboard_value_tpye_check_loop
+0x4e85 keyboard_tx_data_store
+0x4e87 keyboard_tx_data_store_loop
+0x4e89 keyboard_motion_data_check_next
+0x4e90 device_send_keyboard_data
+0x4e92 keyboard_value_release_all_key
+0x4e95 keyboard_tx_data_skip_fn
+0x4e9a keyboard_tx_data_clear_fn
+0x4e9c keyboard_value_tpye_consumer_set
+0x4ebb keyboard_value_media
+0x4ebe keyboard_value_play
+0x4ec1 keyboard_value_stop
+0x4ec4 keyboard_value_pre_track
+0x4ec7 keyboard_value_next_track
+0x4eca keyboard_value_vol_down
+0x4ecd keyboard_value_vol_up
+0x4ed0 keyboard_value_mute
+0x4ed3 keyboard_value_my_computer
+0x4ed6 keyboard_value_mail
+0x4ed9 keyboard_value_calculator
+0x4edc keyboard_value_light_down
+0x4edf keyboard_value_light_up
+0x4ee2 keyboard_value_ac_favorites
+0x4ee5 keyboard_value_ac_forward
+0x4ee8 keyboard_value_ac_back
+0x4eeb keyboard_value_ac_stop
+0x4eee keyboard_value_ac_refresh
+0x4ef1 keyboard_value_ac_search
+0x4ef7 keyboard_value_ac_home
+0x4efa keyboard_value_os_lock
+0x4efd keyboard_value_os_soft_kb
+0x4f02 keyboard_value_os_soft_kb_andriod
+0x4f05 keyboard_value_consumer_all_key_release
+0x4f05 keyboard_value_consumer_release
+0x4f0c keyboard_value_system_sleep
+0x4f10 keyboard_device_data_tpye_check
+0x4f18 keyboard_device_data_tpye_check_next
+0x4f1e keyboard_mouse_data_send
+0x4f23 keyboard_standard_data_send
+0x4f2a keyboard_standard_data_send_end
+0x4f2e keyboard_consumer_data_send
+0x4f36 keyboard_system_control_data_send
+0x4f3e keyboard_clear_key_data
+0x4f41 keyboard_lpm_before_common
+0x4f4c keyboard_key_col_wake_init
+0x4f54 keyboard_key_row_wake_init
+0x4f5a keyboard_key_row_wake_set
+0x4f5d keyboard_process_lpm_before
+0x4f62 keyboard_before_hibernate
+0x4f6b keyboard_power_down
+0x4f6c keyboard_app_enter_hibernate
+0x4f70 keyboard_device_led_all_off
+0x4f75 keyboard_setgpio_hibernate
+0x4f7f keyboard_g24_reconn_dispatch
+0x4f86 keyboard_g24_reconn_dispatch_next
+0x4f8c keyboard_g24_transmit_no_interrupt
+0x4f8e keyboard_g24_transmit_start
+0x4f91 keyboard_g24_nodata_transmit
+0x4f9a keyboard_g24_long_sleep
+0x4fa0 keyboard_g24_transmit_process
+0x4fa2 keyboard_g24_transmit_loop
+0x4faf keyboard_g24_retransmit
+0x4fb8 keyboard_g24_transmit_hop_process
+0x4fbe keyboard_g24_tx_fast_hop
+0x4fc8 keyboard_g24_lpm_wait
+0x4fd5 keyboard_power_ctrl_start
+0x4fdb keyboard_g24_transmit_start_next
+0x4fdf keyboard_g24_short_sleep
+0x4fe5 keyboard_24g_package_data
+0x4fed keyboard_24g_keyboard_package_data
+0x4ff3 keyboard_customer_key_press
+0x4ff5 keyboard_24g_search_dongle_init
+0x4ff8 keyboard_24g_search_dongle
+0x5005 keyboard_24g_search_dongle_loop
+0x5010 keyboard_24g_search_dongle_loop_end
+0x5016 keyboard_24g_search_dongle_loop_retry
+0x5018 keyboard_24g_search_dongle_check
+0x5020 keyboard_24g_search_dongle_success
+0x5028 keyboard_g24_ackpayload_parse
+0x502f keyboard_le_send_att_find_by_type_value_request_ancs
+0x503d keyboard_le_att_auto_reco_process
+0x5048 keyboard_le_parse_att_find_by_type_value_rsp
+0x504a keyboard_le_parse_att_find_ios_report
+0x504c keyboard_le_parse_att_not_find_mac_report
+0x504f keyboard_le_parse_att_find_mac_report
+0x5050 keyboard_otp_store_computer_system_ble
+0x505b keyboard_le_send_att_find_by_type_value_request_mac
+0x506c keyboard_le_parse_att_find_by_type_value_rsp_mac
+0x5078 keyboard_le_send_att_read_by_type_rsp_mac
+0x5080 keyboard_le_check_att_read_type_manu_loop
+0x5089 keyboard_le_send_att_read_by_type_rsp_manufactory
+0x5091 keyboard_le_parse_att_manu_resp
+0x5099 module_init
+0x50ab module_lpm_uart_init
+0x50bd module_lpm_init
+0x50be module_gpio_init
+0x50c3 module_lpm_lock
+0x50c7 module_process_idle
+0x50ca module_process_bb_event
+0x50d8 module_process_bb_even_le_disconn
+0x50dc module_process_le_conn
+0x50e0 module_disconn_start
+0x50e2 module_process_ble_ltk_lost
+0x50e4 module_process_ble_update_phy
+0x50e5 module_set_conn_pin_high
+0x50e7 module_conn_start
+0x50e9 module_stop_adv_discovery
+0x50ed module_set_conn_pin_low
+0x50ef module_process_check_hci_command_complete
+0x5105 module_hci_in_excp
+0x5108 module_hci_release_except
+0x510e module_hci_dicard_packet
+0x5112 module_hci_dicard_bytes
+0x5113 module_hci_cmd_control
+0x513d module_hci_cmd_set_le_addr
+0x5142 module_hci_cmd_set_visibility
+0x5149 module_start_adv_discovery_by_command
+0x5149 moudle_start_adv_by_command
+0x5150 module_hci_cmd_set_le_name
+0x5154 module_hci_cmd_receive_le_data
+0x5179 module_hci_cmd_receive_le_data_finish
+0x517c module_hci_cmd_transmit_handle_error
+0x5180 module_hci_cmd_transmit_le_notify
+0x519e module_hci_cmd_transmit_le_notify_malloc_l2cap
+0x51a3 module_get_le_remote_mtu
+0x51a8 module_check_ble_encrypt_state
+0x51ab module_hci_cmd_inquire_status
+0x51ac module_hci_cmd_set_uart_control_mode
+0x51b4 module_hci_cmd_set_uart_baud
+0x51bc module_hci_cmd_version_request
+0x51c0 module_hci_cmd_ble_disconnect
+0x51c2 module_hci_cmd_ble_disconnect_doing
+0x51c4 module_hci_cmd_set_nvram
+0x51c9 module_hci_cmd_confirm_gkey
+0x51cc module_hci_cmd_auto_adv
+0x51d2 module_hci_cmd_auto_adv_loop
+0x51dc module_hci_cmd_auto_adv_store_adv
+0x51e6 module_hci_cmd_auto_adv_store_scan
+0x51ef module_hci_cmd_auto_adv_store_common
+0x51fa module_hci_cmd_auto_adv_adv_analys
+0x51ff module_hci_cmd_power_request
+0x5205 module_hci_cmd_power_set
+0x520c module_hci_cmd_passkey_entry
+0x5211 module_hci_cmd_set_gpio
+0x5217 module_set_gpio_input
+0x521d module_set_gpio_output
+0x5222 module_hci_cmd_read_gpio
+0x522d module_hci_cmd_le_set_pairing_mode
+0x523c module_le_set_pairing_mode_secure_justwork
+0x5240 module_le_set_pairing_mode_secure_numeric
+0x5245 module_le_set_pairing_mode_secure_passkey
+0x5249 module_le_set_pairing_mode_secure_passkey_res_input
+0x524d module_le_set_no_pairing
+0x524e module_le_set_noinputnooutput
+0x5250 module_le_set_pairing_mode_lagacy_just_work
+0x5252 module_le_set_pairing_mode_lagacy_passkey
+0x5254 module_le_set_pairing_mode_lagacy_passkey_res_input
+0x5256 module_le_set_keboadonly
+0x5258 module_le_set_displayonly
+0x525a module_hci_cmd_le_set_adv_data
+0x525d module_hci_cmd_le_set_scan_data
+0x5260 module_hci_cmd_receive_store_mem
+0x5266 module_hci_cmd_le_send_conn_update_req
+0x526f module_hci_cmd_set_le_adv_parameter
+0x5275 module_hci_cmd_le_start_pairing
+0x527d module_hci_cmd_set_wake_gpio
+0x5287 module_hci_cmd_set_tx_power
+0x528c module_hci_cmd_le_confirm_gkey
+0x5293 module_hci_cmd_le_confirm_gkey_ok
+0x5295 module_hci_cmd_le_confirm_gkey_fail
+0x5297 module_hci_cmd_reset_chip
+0x529b module_hci_cmd_le_set_fixed_passkey
+0x52a8 module_hci_cmd_le_set_random_passkey
+0x52aa module_hci_cmd_delete_customize_service
+0x52b0 module_hci_cmd_add_service_uuid
+0x52b5 module_hci_cmd_add_characteristic_uuid
+0x52b9 module_hci_cmd_add_service_uuid_set_uuid
+0x52bd module_hci_cmd_add_characteristic_uuid_set_handle
+0x52c4 module_hci_cmd_add_characteristic_uuid_set_uuid
+0x52dc module_hci_cmd_add_characteristic_uuid_set_ccc_uuid
+0x52e4 le_att_creat_new_handle
+0x52e7 uart_copy_rx_bytes_len_data
+0x52eb module_hci_cmd_le_passkey_entry_input
+0x52f1 module_hci_cmd_passkey_entry_sc_res_input
+0x52f4 module_hci_cmd_receive_ble_passkey
+0x52f7 module_hci_cmd_passkey_entry_res_input
+0x52f9 module_hci_cmd_le_create_conn
+0x52ff module_hci_cmd_ble_set_phy
+0x5304 module_hci_cmd_ble_read_current_phy
+0x5308 module_hci_cmd_ble_set_dle
+0x530d module_hci_cmd_read_chip_data
+0x5311 module_hci_cmd_write_chip_data
+0x5317 module_hci_cmd_close_lpm
+0x5319 module_hci_event_receive_invalid_cmd
+0x531c module_hci_event_receive_valid_cmd
+0x531f module_hci_event_le_connect
+0x5321 module_hci_event_le_disconnect
+0x5323 module_hci_event_set_cmd
+0x5330 module_hci_event_receive_le_data
+0x533b module_hci_event_enter_standby_mode
+0x533c module_hci_event_enter_standby_mode_len0
+0x533f module_hci_event_status_res
+0x5349 module_hci_read_bt_status
+0x534f module_hci_event_store_device
+0x5358 module_hci_event_gkey_generate
+0x535e module_hci_event_invalid_packet
+0x536d module_hci_event_passkey_entry_mode
+0x536f module_hci_event_le_tk
+0x5375 module_hci_event_le_pairing_fail
+0x5377 module_hci_event_le_pairing_success
+0x5379 module_hci_event_pairing_completed
+0x537f module_hci_event_pause_enc
+0x5381 module_hci_event_start_enc
+0x5382 module_hci_event_enc
+0x5388 module_hci_event_uuid_handle
+0x538f module_hci_event_le_input_passkey
+0x5391 module_hci_event_le_update_phy
+0x5397 module_hci_prepare_tx
+0x53a1 module_hci_transmit_tx
+0x53a3 module_set_mcu_wake_pin_high_delay
+0x53a5 module_set_mcu_wake_pin_h_delay
+0x53aa module_set_mcu_wake_pin_high
+0x53ac module_check_mcu_wake_pin_high
+0x53ae module_set_mcu_wake_pin_low
+0x53b0 module_le_receive_data
+0x53b6 module_le_receive_data_ok
+0x53c1 module_bb_event_timer
+0x53c2 module_read_vdd_timer
+0x53d4 module_set_le_tx_data_flag
+0x53d6 module_clear_le_tx_data_flag
+0x53d8 module_clr_state
+0x53dc module_set_state
+0x53e0 mouse_init
+0x53e8 mouse_init_wireless
+0x53ec mouse_cb_fuction
+0x5410 mouse_setting_config
+0x5419 mouse_load_device_info_check
+0x541f mouse_xtal_init
+0x5424 mouse_24g_phy_select
+0x5428 mouse_default_init
+0x542c mouse_default_parm_init
+0x5436 mouse_default_parm_init_next
+0x543b mouse_param_common_init
+0x544a mouse_param_init
+0x5458 mouse_param_init_intervl_end
+0x545c mouse_24g_short_sleep_set_end
+0x5468 mouse_sensor_set_angle
+0x5473 mouse_sensor_switch_angle
+0x5476 mouse_g24_interval_param_4ms
+0x547e mouse_report_rate_set_250hz
+0x5481 mouse_g24_interval_param_8ms
+0x5489 mouse_report_rate_set_125hz
+0x548c mouse_start_work
+0x5491 mouse_le_fast_conn_judge
+0x5496 mouse_le_device1_judge
+0x549b mouse_le_device2_judge
+0x54a0 mouse_start_reconnect_device
+0x54a9 mouse_start_reconnect
+0x54ac mouse_wakeup_from_power_check
+0x54b3 mouse_wakeup_from_poweron
+0x54b6 mouse4_0_check_reconn_target
+0x54bb mouse4_0_check_reconn_target_next
+0x54c5 mouse_lpm_check_wake_lock
+0x54cd mouse_app_enter_hibernate
+0x54d3 mouse_app_enter_hibernate_next
+0x54d5 mouse_before_hibernate
+0x54dc mouse_setgpio_hibernate
+0x54e8 mouse_wheel_gpio_set_before_hibernate
+0x54ea mouse_wheel_gpio_clr_wakeup
+0x54f2 mouse_adc_gpio_set_before_hibernate
+0x54f9 mouse_gpio_pd_idle
+0x54fb mouse_gpio_pd_idle_loop
+0x5500 mouse_gpio_pd_idle_configured
+0x5504 mouse_gpio_pd_idle_ext
+0x5507 mouse_process_lpm_before
+0x550c mouse_lpm_before_common
+0x552f mouse_set_mult
+0x5534 mouse_adc_gpio_set
+0x5539 mouse_adc_gpio_mux_init
+0x553d mouse_adc_read
+0x5545 mouse_adc_read_gpio_mux_start
+0x5547 mouse_adc_read_start
+0x5553 mouse_adc_data_process
+0x555a mouse_adc_low_voltage
+0x555c mouse_adc_no_low_voltage
+0x5563 mouse_adc_bat_percent_lowpower_out
+0x556a mouse_adc_bat_percent_lowpower_out_battery
+0x5573 mouse_adc_bat_level_set
+0x5584 mouse_adc_bat_level_100_percent
+0x5586 mouse_adc_bat_level_0_percent
+0x5588 mouse_adc_bat_percent_lowpower_out_hvin_multiple
+0x5589 mouse_gpio_init
+0x55ab mouse_gpio_set_pupd_by_input
+0x55b1 mouse_gpio_config_input_pd
+0x55b5 mouse_gpio_config_input_pu
+0x55b9 mouse_gpio_set_high_impedance
+0x55bd mouse_gpio_set_high_impedance_bit_loop
+0x55c6 mouse_le_name_modify
+0x55d3 mouse_le_name_modify_next
+0x55d6 mouse_le_name_clear
+0x55db mouse_le_name_clear_next
+0x55dd mouse_le_name_patch_len_overflow
+0x55f3 mouse_le_swift_pair_disable
+0x55f6 mouse_sensor_spi_init
+0x55fa mouse_spi_write_flash_cb
+0x55fa mouse_spi_init
+0x55fb mouse_spid_init_pin
+0x5601 mouse_motion
+0x5612 mouse_zwheel
+0x5617 mouse_t_zwheel
+0x561c mouse_wheel_check
+0x5629 mouse_t_wheel_scan
+0x5639 mouse_t_wheel_scan_judge1
+0x563d mouse_t_wheel_scan_judge2
+0x5641 mouse_t_wheel_scan_judge11
+0x5643 mouse_t_wheel_scan_judge12
+0x5645 mouse_t_wheel_scan_judge21
+0x5647 mouse_t_wheel_scan_judge22
+0x5649 mouse_t_wheel_scan_judge3
+0x5651 mouse_t_wheel_scan_judge30
+0x5654 mouse_t_wheel_scan_judge31
+0x5657 mouse_t_wheel_scan_judge32
+0x565a mouse_t_wheel_scan_judge33
+0x565d mouse_wheel_t_forward
+0x5661 mouse_wheel_t_back
+0x5665 mouse_wheel_scan
+0x5675 mouse_wheel_scan_judge1
+0x5679 mouse_wheel_scan_judge2
+0x567d mouse_wheel_scan_judge11
+0x567f mouse_wheel_scan_judge12
+0x5681 mouse_wheel_scan_judge21
+0x5683 mouse_wheel_scan_judge22
+0x5685 mouse_wheel_scan_judge3
+0x568d mouse_wheel_scan_judge30
+0x5690 mouse_wheel_scan_judge31
+0x5693 mouse_wheel_scan_judge32
+0x5696 mouse_wheel_scan_judge33
+0x5699 mouse_wheel_forward
+0x569d mouse_wheel_back
+0x56a1 mouse_wheel_gpio_set_wake
+0x56a9 mouse_before_hibernate_wheel_gpio_set
+0x56b1 mouse_wheel_trigger
+0x56b6 mouse_wheel_trigger_timer
+0x56b9 mouse_wheel_trigger_disable
+0x56bb mouse_dpi_check
+0x56c1 mouse_dpi_check_next
+0x56c5 mouse_dpi_check_exit
+0x56c8 mouse_dpi_key_check
+0x56ce mouse_dpi_key_check_next
+0x56d0 mouse_dpi_key_connect_matrix
+0x56d8 mouse_3io6key_dpi_check_end
+0x56db mouse_dpi_check_end
+0x56de mouse_dpi_key_connect_gnd
+0x56e0 mouse_dpi_down
+0x56e7 mouse_dpi_up
+0x56ee mouse_dpi_up_next
+0x56f2 mouse_dpi_up_after_long_press
+0x56f7 mouse_dpi_process
+0x5701 mouse_dpi_level_store
+0x5704 mouse_double_dpi_check
+0x5706 mouse_dpi_increase
+0x570a mouse_dpi_increase_level
+0x570d mouse_dpi_level_1
+0x570f mouse_dpi_level_2
+0x5711 mouse_dpi_level_3
+0x5713 mouse_dpi_level_4
+0x5715 mouse_dpi_increase_level_4
+0x571b mouse_dpi_decrease_level_4
+0x5721 mouse_another_dpi_button_down
+0x5721 mouse_dpi_decrease
+0x5725 mouse_dpi_decrease_level
+0x5728 mouse_dpi_ghost_check
+0x572c mouse_dpi_key_check_long_press
+0x5730 mouse_select_device_by_dpi_button
+0x5735 mouse_ready_reconnection_by_dpi_button
+0x5737 mouse_discovery_by_dpi_button
+0x573c mouse_long_dpi_button_bt_discovery
+0x573e mouse_setting_dpi_4_level
+0x5744 mouse_setting_dpi
+0x5747 mouse_setting_sensor_type
+0x5751 mouse_set_cpi1
+0x5753 mouse_set_cpi0
+0x5755 mouse_set_cpi2
+0x5757 mouse_set_cpi3
+0x5758 mouse_dpi_store
+0x575e mouse_dpi_write
+0x5767 mouse_3065xy_set_dpi
+0x5769 mouse_ka8_set_dpi
+0x576b mouse_seting_s201_dpi
+0x576f mouse_set_s201_dpi_0
+0x5772 mouse_set_s201_dpi_1
+0x5775 mouse_set_s201_dpi_2
+0x5778 mouse_set_s201_dpi_3
+0x577b mouse_set_s201_dpi_4
+0x577d mouse_dpi_s201_store
+0x5785 mouse_seting_3212_dpi
+0x578a mouse_set_p3212_cpi1
+0x578c mouse_set_p3212_cpi0
+0x578e mouse_set_p3212_cpi2
+0x5790 mouse_set_p3212_cpi3
+0x5791 mouse_p3212_dpi
+0x5799 mouse_seting_ka8g2_dpi
+0x579e mouse_set_pka8g2_cpi1
+0x57a0 mouse_set_pka8g2_cpi0
+0x57a2 mouse_set_pka8g2_cpi2
+0x57a4 mouse_set_pka8g2_cpi3
+0x57a6 mouse_key
+0x57b7 mouse_24g_key
+0x57bc mouse_ghost_key_check
+0x57cc mouse_matrix_ghost_key_l_bk
+0x57d1 mouse_matrix_ghost_key_l_fw
+0x57d6 mouse_ghost_key_lbk_mfw
+0x57d9 mouse_ghost_key_lbk_rfw
+0x57db mouse_ghost_key_lfw_mbk
+0x57de mouse_ghost_key_lfw_rbk
+0x57e0 mouse_ghost_key_mbk_rfw
+0x57e1 mouse_ghost_key_rfw
+0x57e3 mouse_ghost_key_mfw_rbk
+0x57e4 mouse_ghost_key_rbk
+0x57e5 mouse_ghost_key_check_next
+0x57ef mouse_ghost_key_check_l_bk
+0x57f2 mouse_ghost_key_check_m_bk
+0x57f5 mouse_ghost_key_check_r_bk
+0x57f8 mouse_ghost_key_check_l_fw
+0x57fb mouse_ghost_key_check_m_fw
+0x57fe mouse_ghost_key_check_r_fw
+0x5801 mouse_ghost_key_check_bk_fw
+0x5804 mouse_ghost_key_check_lmr
+0x580a mouse_matrix_row_more_than_one_key
+0x580c mouse_matrix_cow_more_than_one_key
+0x580e mouse_dpi_another_gpio_check
+0x5811 mouse_dpi_another_gpio_connect_gnd_check
+0x5816 mouse_dpi_another_gpio_connect_vin_check
+0x581f mouse_dpi_another_down_new
+0x5824 mouse_dpi_another_check
+0x5828 mouse_dpi_another_state_check
+0x582b mouse_dpi_another_down
+0x582f mouse_dpi_another_up
+0x5833 mouse_check_key_connect_gnd_new
+0x583d mouse_check_key_connect_vin_new
+0x5848 mouse_another_dpi_key_press
+0x584a mouse_another_dpi_key_release
+0x584c mouse_check_firekey_gpio
+0x5851 mouse_check_firekey_connect_gnd
+0x5856 mouse_firekey_state_store
+0x5859 mouse_check_firekey_connect_vin
+0x585f fire_key_process
+0x5860 fire_key_press
+0x586e fire_key_process_start
+0x586f fire_key_down
+0x5871 fire_key_process_release1
+0x5872 fire_key_release
+0x5874 fire_key_process_start2
+0x5876 fire_key_process_release2
+0x5878 fire_key_process_end
+0x587b firekey_clkn_bt_timer_check
+0x5880 firekey_clkn_bt_timer_timeout
+0x5883 mouse_key_check_once
+0x5888 mouse_check_key_gpio
+0x5895 mouse_check_key_gpio_once
+0x5898 mouse_check_lkey_gpio
+0x58a1 mouse_check_rkey_gpio
+0x58aa mouse_check_mkey_gpio
+0x58b3 mouse_check_bkkey_gpio
+0x58c2 mouse_check_bkkey_gpio_end
+0x58c4 mouse_check_bk_button_connect_gnd
+0x58c8 mouse_3io6key_bk_check
+0x58cf mouse_check_fwkey_gpio
+0x58de mouse_check_fwkey_gpio_end
+0x58df mouse_matrix_public_gpio_reset
+0x58e1 mouse_check_fw_button_connect_gnd
+0x58e5 mouse_3io6key_fw_check
+0x58ec mouse_check_customerkey_gpio
+0x58f2 mouse_customer_key_connect_gnd
+0x58f7 mouse_check_customerkey_gpio_next
+0x58fa mouse_check_customerkey_gpio_exit
+0x58fd mouse_customer_key_connect_vin
+0x590b mouse_check_customer_button_connect_gnd
+0x590f mouse_3io6key_customer_key_check_vin
+0x5913 mouse_check_customerkey_gpio_over
+0x5917 mouse_customerkey_press
+0x591a mouse_customerkey_release
+0x591d mouse_customer_key_need_send
+0x591f mouse_check_matrix_button_connect_gnd
+0x5923 mouse_key_release
+0x5925 mouse_check_key_connect_gnd
+0x5929 mouse_check_key_connect_gnd_1
+0x592a mouse_check_key_connect_gnd_next
+0x592f mouse_key_press
+0x5931 mouse_3io6key_check
+0x593d mouse_check_press
+0x5943 mouse_gpio_config_output_high
+0x5946 mouse_gpio_config_output_low
+0x5949 mouse_init_sunt
+0x594c mouse_init_sensor_wakeup
+0x594d mouse_init_sensor
+0x5955 mouse_twspi_reset
+0x5958 mouse_read_sensor_id
+0x595f mouse_init_p32xx_id2_judge
+0x5968 mouse_s210x_3205_3t_judge
+0x596c mouse_s201x_init_param
+0x596e mouse_mx8650_init_param
+0x5974 mouse_8009_init_param
+0x5983 mouse_3205_3t_init_param
+0x598c mouse_3204_3l_init_param
+0x5993 mouse_3212_init_param
+0x5995 mouse_sensor_wr_seq
+0x599c mouse_ka8_init_param_check
+0x59ae mouse_ka8_init_param
+0x59b0 mouse_ka8ul_init_param
+0x59b3 mouse_ka8hd_sensor_judge
+0x59bd mouse_ka8hd_init_param
+0x59c0 mouse_enable_ka8_sensor_wp
+0x59c3 mouse_p6520_init_param
+0x59c6 mouse_init_p3065
+0x59cb mouse_p3065_init_param
+0x59cd mouse_p3065xy_init_param
+0x59cf mouse_ka8g2_id2_judge
+0x59d3 mouse_ka8g2_init_param
+0x59d6 mouse_sensor_enable_wp
+0x59d8 mouse_sensor_disable_wp
+0x59da mouse_sensor_reset
+0x59de mouse_sensor_reset_end
+0x59e2 mouse_sensor_poweron_init
+0x59e7 mouse_sensor_poweron
+0x59ed mouse_sensor_powerdown
+0x59f4 mouse_sensor_powerdown_end
+0x59f6 mouse_check_sensor_data
+0x5a02 mouse_p32xx_sensor_motion
+0x5a09 mouse_p32xx_sensor_motion_2
+0x5a0c mouse_p32xx_sensor_motion_1
+0x5a1c mouse_p3065_judge
+0x5a1e mouse_motion32xx_6clk_direction_selection
+0x5a20 mouse_motion32xx_9clk_direction_selection
+0x5a22 mouse_motion32xx_12clk_direction_selection
+0x5a24 mouse_motion32xx_3clk_direction_selection
+0x5a26 mouse_p3212_sensor_motion
+0x5a2c mouse_p3212_sensor_motion_1
+0x5a2f mouse_p3212_sensor_motion_2
+0x5a42 mouse_read_3212sensor_xy_high
+0x5a44 mouse_pka8g2_sensor_motion
+0x5a4a mouse_pka8g2_sensor_motion_1
+0x5a4b mouse_p8009_sensor_motion
+0x5a56 mouse_motion_6clk_direction_dispose
+0x5a5a mouse_motion_12clk_direction_dispose
+0x5a5e mouse_motion_9clk_direction_dispose
+0x5a66 mouse_motion_3clk_direction_dispose
+0x5a68 mouse_sensor_data_swap_places
+0x5a6d mouse_clear_sensor_data
+0x5a71 mouse_clear_sensor_data_by_reset
+0x5a73 mouse_init_sensor_reset
+0x5a74 mouse_data_xy_release
+0x5a7c mouse_data_extsign
+0x5a80 mouse_data_extsign_bit3
+0x5a84 mouse_read_sensor_common
+0x5a8b mouse_sensor_sdio_low
+0x5a92 mouse_set_sdio_high
+0x5a94 mouse_bluetooth_fast_conn_init
+0x5a95 mouse_ble_fast_conn_init
+0x5a9a mouse_buletooth_fast_conn_end
+0x5aa1 mouse_device1_check_auto_discover
+0x5aa3 mouse_device2_check_auto_discover
+0x5aa4 mouse_device_check_auto_discover
+0x5aa8 mouse_bluetooth_fast_conn_disable
+0x5aaa mouse_stop_bluetooth_mode
+0x5aad mouse_disconnect
+0x5ab2 mouse_check_125hz
+0x5ab4 mouse_bluetooth_125hz
+0x5aba mouse_bluetooth_125hz_clear
+0x5abc mouse_current_mult_update
+0x5ac1 mouse_priority_bb_event
+0x5ad0 mouse_le_bb_event_connected
+0x5ad8 mouse_le_bb_event_connected_next
+0x5ae0 mouse_le_bb_disconnected
+0x5ae7 mouse_le_bb_disconnected_next
+0x5aed mouse_le_pairing_success
+0x5aef mouse_le_enc_info
+0x5aef mouse_updata_le_param
+0x5af1 mouse_le_ll_start_encryt
+0x5af4 mouse_le_ll_reconn_start_encryt
+0x5af6 mouse_le_ll_enable_start_enc_flag
+0x5af8 mouse_le_enable_connect_flag
+0x5afc mouse_le_conn_param_update_rsp_recieved
+0x5b06 mouse_le_conn_param_lpm_disable
+0x5b08 mouse_le_bb_event_connect_complete
+0x5b0e mouse_le_write_enable
+0x5b10 mouse_le_parse_conn_param_accepted
+0x5b1d mouse_le_lpm_mult_reinit
+0x5b1f mouse_le_conn_param_lpm_enable
+0x5b21 mouse_le_clean_connect_flag
+0x5b23 mouse_le
+0x5b2b mouse_le_next
+0x5b3c mouse_le_send_mouse_data
+0x5b3d mouse_le_send_keyboard_package_data
+0x5b40 mouse_fill_keyboard_package_data_le
+0x5b46 mouse_fill_data_le
+0x5b4d mouse_le_release_keyboard_data
+0x5b4f mouse_fill_multimedia_key_data_le
+0x5b52 mouse_fill_systemctrl_key_data_le
+0x5b55 mouse_fill_battery_level_le
+0x5b5b mouse_le_send_empty_packet
+0x5b5d mouse_fill_mouse_data_le
+0x5b62 mouse_check_51cmd_adv
+0x5b6b mouse_le_check_adv_flag
+0x5b6c mouse_le_check_adv_flag_loop
+0x5b72 mouse_le_adv_data_update
+0x5b76 mouse_bb_disconnected
+0x5b7b mouse_bb_discon_clear_stack
+0x5b81 mouse4_0_event_bb_disconn
+0x5b85 mouse_bb_event_timer
+0x5b9b mouse_bt_discovery_check
+0x5b9e mouse_bt_discovery_by_pb_button
+0x5ba3 mouse_long_button_bt_discovery
+0x5bab mouse_commbination_key_process
+0x5bb1 mouse_24g_commbination_key_process
+0x5bb4 mouse_commbination_key_start
+0x5bba mouse_commbination_key_up
+0x5bc0 mouse_commbination_key_down
+0x5bc5 mouse_combination_ui_timer
+0x5bce mouse_check_discovery_timeout_timer
+0x5bd1 mouse_check_discovery_timeout
+0x5bd3 mouse_check_direct_timeout_timer
+0x5bd9 mouse_check_direct_timeout
+0x5be1 mouse_le_enable_att_list_timer
+0x5be4 mouse_le_send_smp_security_request_timer
+0x5be9 mouse_le_pairing_sm_start_check
+0x5bee mouse_le_battery_updata_timer
+0x5bf3 mouse_le_battery_level_updata
+0x5bf6 mouse_le_enable_att_list
+0x5bfb mouse_check_reconnect_delay_long_sleep
+0x5bfe mouse_current_mult_update_timer
+0x5c01 mouse_current_mult_reinit
+0x5c05 mouse_check_no_data_timeout_timer
+0x5c08 mouse_check_no_data_timeout
+0x5c0b mouse_no_data_timer_init
+0x5c0e mouse_store_information_delay_timer
+0x5c11 mouse_store_device_info_check
+0x5c15 mouse_bb_event_discovery_btn
+0x5c1a mouse_start_discovery
+0x5c2a mouse_start_discovery_norandom
+0x5c39 mouse_stop_discovery
+0x5c3e mouse_stop_le_adv
+0x5c42 mouse_store_remote_bdaddr
+0x5c48 mouse_unplug_clean_bdaddr
+0x5c4a mouse_check_device_addr
+0x5c4d mouse_check_le_device_addr
+0x5c4f mouse_check_bt_device_addr_common
+0x5c53 mouse_check_device_addr_end
+0x5c59 mouse_before_store_reconn_info
+0x5c62 mouse_store_le_device
+0x5c69 mouse_clean_addr
+0x5c6f mouse_select_reconn_device
+0x5c79 mouse_load_le_device
+0x5c7a mouse_load_le_device_end
+0x5c80 mouse_app_initflag_check
+0x5c85 mouse_app_initflag_check_next
+0x5c8c mouse_load_default_dpi
+0x5c8f mouse_load_device_info
+0x5c94 mouse_otp_load_dpi
+0x5c9c mouse_ble_init_address
+0x5ca3 mouse_store_device_info_delay
+0x5ca6 mouse_store_device_info
+0x5cac mouse_store_dpi_info_check
+0x5cb1 mouse_store_eeprom_device_info
+0x5cb5 mouse_store_eerpom_dpi
+0x5cb9 mouse_store_flash_device_info
+0x5cc0 mouse_store_otp_device_info
+0x5cc3 mouse_write_otp_device_flag
+0x5cc5 mouse_write_otp_device_flag_loop
+0x5ccf mouse_device_flag_store
+0x5cd4 mouse_devoce_flag_store_end
+0x5cd8 mouse_device_flag_store_check
+0x5ce5 mouse_write_otp_device_info
+0x5cea mouse_write_otp_24g_addr
+0x5cec mouse_otp_store_24g_addr_loop
+0x5cf6 mouse_24g_addr_store
+0x5cfe mouse_write_otp_le_device1
+0x5d00 mouse_otp_store_le_addr1_loop
+0x5d0a mouse_le_addr1_store
+0x5d12 mouse_write_otp_le_device2
+0x5d14 mouse_otp_store_le_addr2_loop
+0x5d1e mouse_le_addr2_store
+0x5d26 mouse_write_otp_le_addr_increase_count_info
+0x5d2a mouse_otp_store_le_addr_increase_count_loop
+0x5d34 mouse_le_addr_increase_count_store
+0x5d3c mouse_store_otp_dpi
+0x5d40 mouse_otp_store_dpi_loop
+0x5d4a mouse_otp_dpi_store
+0x5d4f mouse_dpi_store_end
+0x5d53 mouse_dpi_store_last
+0x5d60 mouse_load_eeprom_info_check
+0x5d66 mouse_eeprom_load_recon_info
+0x5d6a mouse_load_eeprom_dpi
+0x5d6e mouse_load_flash_info_check
+0x5d75 mouse_information_flash_parameters
+0x5d7b mouse_spid_flash_release_form_powerdown
+0x5d7c mouse_spid_write_flash_cmd
+0x5d82 mouse_spid_flash_powerdown
+0x5d84 mouse_spid_write_flash_cmd_common
+0x5d90 mouse_flash_erase_sector
+0x5d93 mouse_spid_write_flash
+0x5d9e mouse_flash_power_down
+0x5da6 mouse_load_otp_info_check
+0x5daa mouse_otp_load_app_initflag
+0x5db0 mouse_otp_store_app_initflag
+0x5db4 mouse_read_otp_device_flag
+0x5db6 mouse_read_otp_device_flag_loop
+0x5dc0 mouse_read_otp_device_flag_common
+0x5dc3 mouse_device_flag_load
+0x5dc9 mouse_device_flag_load_last
+0x5dca mouse_device_flag_load_end
+0x5dcc mouse_read_otp_device_info
+0x5dd1 mouse_read_otp_le_device1
+0x5dd3 mouse_read_otp_le_device2
+0x5dd5 mouse_read_otp_le_device1_addr
+0x5dd7 mouse_read_otp_le_device1_addr_loop
+0x5de1 mouse_read_otp_le_addr1_common
+0x5de4 mouse_le_addr1_load
+0x5de7 mouse_read_otp_le_device1_locall_addr
+0x5de9 mouse_read_otp_le_device1_locall_addr_loop
+0x5df3 mouse_read_otp_le_locall_addr1_common
+0x5df6 mouse_le_locall_addr1_load
+0x5df9 mouse_read_otp_le_device2_addr
+0x5dfb mouse_read_otp_le_device2_addr_loop
+0x5e05 mouse_read_otp_le_addr2_common
+0x5e08 mouse_le_addr2_load
+0x5e0b mouse_read_otp_le_device2_locall_addr
+0x5e0d mouse_read_otp_le_device2_locall_addr_loop
+0x5e17 mouse_read_otp_le_locall_addr2_common
+0x5e1a mouse_le_locall_addr2_load
+0x5e1d mouse_read_otp_24g_addr
+0x5e1f mouse_read_otp_24g_addr_loop
+0x5e29 mouse_read_otp_24g_addr_common
+0x5e2c mouse_24g_addr_load
+0x5e2f mouse_read_otp_le_addr_increase_count_info
+0x5e33 mouse_read_otp_le_addr_increase_count_loop
+0x5e3d mouse_read_otp_le_addr_increase_count_common
+0x5e40 mouse_le_addr_increase_count_load
+0x5e43 mouse_read_otp_dpi
+0x5e47 mouse_read_otp_dpi_loop
+0x5e51 mouse_read_otp_dpi_common
+0x5e54 mouse_dpi_load
+0x5e5a mouse_dpi_load_last
+0x5e5b mouse_dpi_load_end
+0x5e5d mouse_idle
+0x5e66 mouse_select_device_check
+0x5e6a mouse_select_device_by_pb_button_check_once
+0x5e6b mouse_select_device_by_pb_button
+0x5e6d mouse_select_device_by_pb_button_check
+0x5e78 mouse_retransmit_select_device_by_pb_button
+0x5e7c mouse_3io6key_pb_button_check_end
+0x5e7e mouse_select_device_by_pb_button_exit
+0x5e81 mouse_pb_button_check
+0x5e8a mouse_select_device_by_pb_button_end
+0x5e8d mouse_pb_button_connect_gnd
+0x5e8f mouse_pb_button_connect_matrix
+0x5e97 mouse_select_device_button_up
+0x5ea2 mouse_select_device_button_down
+0x5eae mouse_select_device_ghost_check
+0x5eb1 mouse_ghost_key_value_check
+0x5eb6 mouse_check_select_device_by_switch
+0x5ebe mouse_select_btdevice
+0x5ec2 mouse_check_select_24g_device
+0x5ec6 mouse_ready_reconnection_by_button
+0x5ecb mouse_store_device_number_before_reset
+0x5ed1 mouse_soft_reset
+0x5ed3 mouse_select_device_number
+0x5eda mouse_select_device_number_24g
+0x5edf mouse_select_device_count_clean_24g
+0x5ee1 mouse_select_device_count_clean_bt
+0x5ee3 mouse_store_device_number2eeprom
+0x5ee7 mouse_bt_button_check
+0x5eea mouse_select_device_enable
+0x5eec mouse_select_device_disable
+0x5eee mouse_bt_cannel_reconn_enable
+0x5ef0 mouse_bt_cannel_reconn_disable
+0x5ef2 mouse_bt_discovery_button_down_enable
+0x5ef4 mouse_bt_discovery_button_down_disable
+0x5ef6 mouse_adc_read_enable
+0x5ef8 mouse_24g_set_250hz
+0x5efa mouse_24g_search_dongle_enable
+0x5efc mouse_16m_enable
+0x5efe mouse_dpi_4level_enable
+0x5f00 mouse_enable_function_flag
+0x5f04 mouse_disable_function_flag
+0x5f08 mouse_customer_key_enable
+0x5f10 mouse_customer_standrad_key_set
+0x5f12 mouse_customer_key_ctrl_alt_a
+0x5f14 mouse_customer_ac_home
+0x5f15 mouse_customer_media_key_set
+0x5f19 mouse_customer_key_play
+0x5f1b mouse_polling_device
+0x5f26 mouse_drawing_optima
+0x5f37 mouse_drawing_optima_init
+0x5f3c mouse_drawing_optima_modify
+0x5f50 mouse_drawing_optima_xy_offset_modify
+0x5f64 mouse_pre_xy_data_judge
+0x5f67 mouse_pre_xy_pdata_offset
+0x5f6a mouse_xy_data_offset_new
+0x5f6c mouse_pre_xy_ndata_offset
+0x5f72 mouse_current_xy_data_judge
+0x5f75 mouse_current_xy_pdata_offset
+0x5f79 mouse_current_xy_ndata_offset
+0x5f7f mouse_pre_xy_get_0_4_times
+0x5f84 mouse_current_xy_get_0_6_times
+0x5f89 mouse_drawing_optima_data_x
+0x5f91 mouse_drawing_optima_data_y
+0x5f99 mouse_drawing_optima_data
+0x5f9f mouse_data_store_pre
+0x5fa3 mouse_data_sum_overflow
+0x5fa7 mouse_data_sum_overflow_p
+0x5faa mouse_data_sum_n
+0x5fb0 mouse_data_set_direction
+0x5fb3 mouse_data_zero
+0x5fb5 mouse_pdata_get_half
+0x5fb7 mouse_pdata_get_new_value
+0x5fbb mouse_pdata_invert
+0x5fbc mouse_rega_in_out
+0x5fbf mouse_disable_asm
+0x5fc1 mouse_enable_asm
+0x5fc3 mouse_pdata_greater_than_check
+0x5fc8 mouse_data_less_than_check
+0x5fcd mouse_data_abs_check
+0x5fd4 mouse_data_abs
+0x5fd8 mouse_data_abs_store
+0x5fda mouse_data_reversal
+0x5fdd mouse_24g_long_sleep_param_update_timer
+0x5fe0 mouse_24g_long_sleep_normal_param
+0x5fe4 mouse_24g_long_sleep_set
+0x5fe9 mouse_24g_long_sleep_set_80ms
+0x5fea mouse_24g_long_sleep_set_end
+0x5fec mouse_24g_long_sleep_set_30ms
+0x5fee mouse_24g_long_sleep_set_50ms
+0x5ff0 mouse_24g_long_sleep_set_100ms
+0x5ff2 mouse_24g_hibernate_set
+0x5ffd mouse_wakeup_24g
+0x6001 mouse_wakeup_24g_from_long_sleep
+0x6004 mouse_wheel_gpio_init
+0x600a mouse_24g_transmit_start
+0x600e mouse_24g_fast_conn_mode_check
+0x6013 mouse_soft_agc_enable
+0x6016 mouse_soft_agc_disable
+0x6018 mouse_24g_stop
+0x601c mouse_24g_start_mode
+0x602a mouse_24g_mode_setup_error
+0x602d mouse_24g_first_start_auto_pair_mode
+0x602f mouse_24g_reconn_general_dongle
+0x6034 mouse_24g_start_auto_pair
+0x6038 mouse_24g_first_start_reconn
+0x603b mouse_24g_first_bluetooth_reconnect
+0x603f mouse_24g_first_bb_event_reconn_timeout
+0x6042 mouse_24g_first_store_reconn_info
+0x6047 mouse_24g_start_pair_mode
+0x6053 mouse_24g_attempt_fail
+0x6059 mouse_24g_attempt_fail_enter_hibernate
+0x605f mouse_24g_fast_conn_attempt_fail
+0x6067 mouse_24g_reconn_dongle_start
+0x606b mouse_24g_auto_pair_attempt_fail
+0x6070 mouse_reconn_dongle_attempt_fail
+0x6075 mouse_24g_attempt_success
+0x6084 mouse_24g_pairing_complete
+0x6086 mouse_24g_pairing_complete_common
+0x6094 mouse_24g_short_sleep_clear_wake
+0x6096 mouse_24g_package_data
+0x60a1 mouse_24g_mouse_package_data
+0x60b0 mouse_24g_mouse_package_data_now
+0x60b6 mouse_24g_keyboard_package_data
+0x60bc mouse_customer_key_press
+0x60be mouse_24g_search_dongle_init
+0x60c1 mouse_24g_search_dongle
+0x60cd mouse_24g_search_dongle_loop
+0x60d9 mouse_24g_search_dongle_loop_end
+0x60df mouse_24g_search_dongle_loop_retry
+0x60e1 mouse_24g_search_dongle_check
+0x60e9 mouse_24g_search_dongle_success
+0x60f2 mouse_g24_ackpayload_parse
+0x60f9 mouse_g24_retransmit
+0x60fe mouse_select_device_by_dpi_button_once
+0x6103 mouse_g24_retransmit_100ms_timer_init
+0x6106 mouse_dpi_check_once
+0x6109 mouse_24g_before_lpm_sleep
+0x610d mouse_peripheral_clock_off
+0x6110 mouse_logo_led_on_timer
+0x611a mouse_logo_led_off
+0x611c mouse_logo_led_on
+0x611e mouse_dpi_led_blink_delay_timer
+0x6121 mouse_dpi_led_blink_init
+0x6127 mouse_dpi_led_blink_init_next
+0x612d mouse_multi_dpi_led_blink_enable
+0x6131 mouse_dpi_led_blink_init_another
+0x6134 mouse_dpi_led_blink_init_level_4
+0x6138 mouse_dpi_led_blink_count_clean
+0x613a mouse_dpi_led_blink_delay
+0x6148 mouse_check_dpi_blink
+0x614d mouse_low_voltage_led_timer
+0x615c mouse_low_led_blink_timer
+0x6165 mouse_low_voltage_led_on_judge
+0x6168 mouse_low_voltage_led_on
+0x616a mouse_low_led_timer_count_clean
+0x616e mouse_low_voltage_led_off_judge
+0x6171 mouse_low_voltage_led_off
+0x6173 mouse_low_led_blink_count_init_judge
+0x6177 mouse_device_multi_led_parm_init
+0x617e mouse_multi_low_led_blink_count_init
+0x6181 mouse_multi_led_blink_timer_init
+0x6185 mouse_multi_dpi_led_blink_timer_init
+0x6186 mouse_store_multi_led_blink_timer
+0x6188 mouse_device_24g_led_blink_timer_init
+0x618a mouse_device_le_discovery_led_blink_timer_init
+0x618c mouse_device_le_reconn_led_blink_timer_init
+0x618e mouse_device_poweron_led_config
+0x6192 mouse_multi_led_enable
+0x6195 mouse_device_24g_pair_led_config
+0x619f mouse_device_le_reconn_led_config
+0x61a9 mouse_device_led_blink_count_init
+0x61ab mouse_device_discovery_led_config
+0x61ae mouse_multi_led_blink_enable_init
+0x61b1 mouse_led_multi_timer
+0x61b5 mouse_device_multi_led_type_on
+0x61ba mouse_device_poweron_led_off
+0x61bd mouse_multi_led_type_blink
+0x61c2 mouse_device_led_blink_judge
+0x61c5 mouse_device_led_blink_limit
+0x61c7 mouse_multi_led_type_blink_next
+0x61ca mouse_multi_led_type_blink_start
+0x61ce mouse_multi_led_blink
+0x61d2 mouse_multi_led_blink_count_decrease
+0x61d6 mouse_multi_led_on_judge
+0x61d8 mouse_device_multi_led_on
+0x61d9 mouse_device_led_on
+0x61df mouse_device_24g_led_on
+0x61e1 mouse_device_bt1_led_on
+0x61e3 mouse_device_bt2_led_on
+0x61e4 mouse_led_on
+0x61e5 mouse_led_off
+0x61e6 mouse_multi_led_off_judge
+0x61e8 mouse_multi_led_off_judge_next
+0x61ea mouse_device_multi_led_off
+0x61eb mouse_device_led_off
+0x61f1 mouse_device_24g_led_off
+0x61f5 mouse_device_bt1_led_off
+0x61f9 mouse_device_bt2_led_off
+0x61fd mouse_device_multi_led_all_off
+0x6202 mouse_multi_dpi_led_off_judge
+0x6206 mouse_multi_dpi_led_off
+0x6208 mouse_multi_dpi_led_on_judge
+0x620c mouse_multi_dpi_led_on
+0x620e mouse_low_voltage_led_no_enter_lpm
+0x6214 mouse_low_voltage_led_no_enter_lpm_next
+0x6218 g24_transmit_by_interrupt_exit_check
+0x621b mouse_lpm_mode_clear
+0x621f mouse_store_signal_rssi
+0x6221 mouse_le_transmit
+0x6223 mouse_le_set_lpm_mult
+0x6228 mouse_set_lpm_mult
+0x622b mouse_24g_long_sleep
+0x6235 mouse_24g_short_sleep
+0x6242 mouse_24g_short_sleep_notify
+0x624c mouse_24g_short_sleep2
+0x624f mouse_24g_short_sleep3
+0x6252 mouse_24g_short_sleep_default
+0x6255 mouse_24g_short_sleep_long
+0x6259 mouse_24g_miss_temp_clear
+0x625c mouse_24g_short_sleep_last_miss
+0x6260 mouse_24g_short_sleep_2
+0x6262 mouse_24g_transmit_callback
+0x6264 mouse_24g_send_time_check
+0x6274 mouse_24g_send_time_check_1
+0x627e mouse_24g_send_time_check_average
+0x6299 mouse_24g_send_time_check_average_late
+0x62a4 mouse_24g_send_time_check_average_min
+0x62a6 mouse_24g_send_timer_first
+0x62aa mouse_24g_send_time_long_wake
+0x62ae shutter_init
+0x62bd shutter_power_switch
+0x62c2 shutter_common_init
+0x62d0 shutter_hart_swtich_power_on
+0x62d3 shutter_le_scale_lpm_lock
+0x62d9 shutter_process_bb_event
+0x62e2 ble_shutter_process_baseband_connect
+0x62e6 ble_shutter_process_baseband_disconnect
+0x62e9 ble_shutter_process_reconnect_complete
+0x62ef ble_shutter_process_parse_connect_parameter_update_response
+0x62f5 shutter_process_soft_swtich_button_down
+0x62fb shutter_store_currenct_led_state
+0x6300 shutter_process_soft_swtich_button_up
+0x6305 shutter_load_currenct_led_state
+0x630e shutter_le_bb_event_timer
+0x6311 shutter_check_sleep_timer
+0x6314 shutter_sleep_timeout
+0x6318 shutter_check_power_off_timer
+0x631b shutter_check_power_off_timeout
+0x6322 ble_shutter_reconn_timer
+0x6327 shutter_process_idle
+0x6329 shutter_process_lpm_before
+0x632b shutter_le_before_hibernate
+0x632d shutter_stop_bluetooth_discovery
+0x632d ble_shutter_stop_bluetooth_discovery
+0x6331 shutter_start_bluetooth_discovery
+0x6333 ble_shutter_start_discovery
+0x6340 shutter_soft_swtich_power_on
+0x6340 shutter_start_reconnect
+0x6342 ble_shutter_start_reconnect
+0x634e shutter_disconnect_current_connection
+0x6351 shutter_check_data_enable
+0x6355 shutter_check_ble_data_enable
+0x6358 shutter_check_bluetooth_conn
+0x635c shutter_change_bluetooth_status_bt_disconn
+0x635c ble_shutter_change_bluetooth_status_bt_disconn
+0x635d shutter_check_send_data
+0x6365 shutter_key_change
+0x6369 shutter_key_press
+0x636c shutter_key_release
+0x636e push_queue_press_or_release
+0x6371 push_buffer_in_queue
+0x6376 shutter_send_data_to_master
+0x6379 pop_queue_to_ble_data
+0x6382 queue_push_one_byte
+0x6385 queue_pop_one_byte
+0x638a ble_shutter_receive_data
+0x638d shutter_init_param
+0x6396 shutter_load_buffer_config_form_datarom
+0x639a shutter_soft_swtich_power_off
+0x639e shutter_wait_power_off
+0x63a1 ui_soft_swtich_init
+0x63a6 ui_soft_switch_first_power_on
+0x63aa ui_soft_swtich_init_next
+0x63ad ui_soft_swtich_init_power_on_time
+0x63b2 ui_soft_switch_botton_up
+0x63b6 ui_soft_switch_botton_long_press
+0x63b9 ui_soft_switch_power_on
+0x63c1 ui_soft_switch_power_off
+0x63c7 shutter_ble_adv_interval_set
+0x63cb le_send_notify_from_list
+0x63d3 shutter_le_uuid_table_conf
+0x63d6 shutter_dy_le_uuid_table_conf
+0x63d9 shutter_default_init
+0x6442 shutter_dy_6_key_conf
+0x6448 shutter_dy_7_key_conf
+0x644e shutter_dy_8_key_conf
+0x6454 shutter_dy_key_conf
+0x6459 shutter_dy_adv_conf
+0x646e shutter_dy_init
+0x6484 shutter_dy_process_idle
+0x648e shutter_dy_iphone_every_move_max_set
+0x649b shutter_dy_shutter_send_data_to_master
+0x64a0 shutter_dy_pop_queue_to_ble_data
+0x64ac shutter_dy_pop_queue_to_ble_data2
+0x64b5 shutter_dy_le_bb_event_timer
+0x64bc shutter_dy_iphone_move_mid_timer
+0x64bf shutter_dy_iphone_move_mid_timeout
+0x64c3 shutter_dy_iphone_move_mid
+0x64cd shutter_dy_android_like_loaction_mid
+0x64cf shutter_dy_iphone_up_mid
+0x64d1 shutter_dy_iphone_like_mid
+0x64d3 shutter_dy_clear_key_state_timer
+0x64d6 shutter_dy_clear_key_state_timeout
+0x64d9 shutter_dy_check_power_off_timer
+0x64dc shutter_dy_check_power_off_timeout
+0x64df shutter_dy_process_bb_event
+0x64e6 ble_shutter_dy_pairing_success
+0x64ef ble_shutter_dy_process_baseband_disconnect
+0x64f4 ble_shutter_dy_process_baseband_connect
+0x64f8 shutter_dy_check_send_data
+0x6500 shutter_dy_over_clear
+0x6502 shutter_dy_key_value_filter
+0x6505 shutter_dy_key_change
+0x6509 shutter_dy_key_press
+0x650c shutter_dy_key_press_next
+0x651c shutter_dy_page_set
+0x651f shutter_dy_move_set
+0x6524 shutter_dy_key_move_to_specify_location
+0x6526 shutter_dy_iphone_check_move_mid
+0x652c shutter_dy_key_press_clk
+0x6537 shutter_dy_shutter_key_release
+0x653a shutter_dy_shutter_key_release_time
+0x654b shutter_dy_key_release_led
+0x654e shutter_dy_push_queue_release
+0x6551 shutter_dy_push_queue_release1
+0x6554 shutter_dy_push_queue_release1_next
+0x655a shutter_dy_push_queue_press_or_release
+0x655d shutter_dy_move_mode_queue_release
+0x6561 shutter_dy_jude_queue_size
+0x6566 shutter_dy_push_queue_long_release
+0x656b shutter_clear_dy_key_state
+0x656e shutter_dy_keyscan_key_process
+0x6577 shutter_dy_keyscan_key_check_release_loop
+0x658b shutter_dy_keyscan_key_check_long_press
+0x65a2 shutter_dy_key_long_press_set_key_normal
+0x65a5 shutter_dy_key_long_press_set_move_trigger
+0x65ad shutter_dy_move_mode_disable
+0x65af shutter_dy_long_press_android_or_ios
+0x65b4 shutter_dy_keyscan_key_check_release
+0x65be shutter_dy_keyscan_key_process_next
+0x65cf shutter_dy_skip_check_combine_key
+0x65d5 shutter_dy_single_key_led
+0x65dc shutter_dy_check_combine_key
+0x65dd shutter_dy_check_combine_key_loop
+0x65e8 shutter_dy_check_combine_key_parse
+0x65f0 shutter_dy_push_buffer_in_queue
+0x65f4 shutter_dy_move_to_specify_location
+0x65ff shutter_dy_move_down_left_corner_count_set
+0x6609 shutter_dy_move_down_left_corner
+0x660d shutter_dy_move_down_left_corner_loop
+0x6614 shutter_dy_move_x_max
+0x6617 shutter_dy_move_x_max_number
+0x661e shutter_dy_move_y_max
+0x6621 shutter_dy_move_y_max_number
+0x6628 shutter_dy_check_combine_key_release
+0x6633 shutter_dy_combine_key_enableuser
+0x6636 shutter_dy_check_combine_key_release_all
+0x6642 shutter_dy_check_move_data
+0x6647 shutter_dy_check_move_data_single_key
+0x664d shutter_dy_check_move_data_combine_key
+0x6654 shutter_dy_get_move_data
+0x665e shutter_dy_get_move_data_iphone
+0x666b shutter_dy_move_x_empty_check
+0x6671 shutter_dy_every_move_size_set
+0x6676 shutter_dy_move_left
+0x667c shutter_dy_move_store_x
+0x667d shutter_dy_move_data_store
+0x6685 shutter_dy_move_x_check_max
+0x6690 shutter_dy_clear_move_x
+0x6693 shutter_dy_move_right
+0x6697 shutter_dy_move_right_next
+0x669b shutter_dy_move_up
+0x669f shutter_dy_move_y_check_max
+0x66af shutter_dy_clear_move_y
+0x66b0 shutter_dy_android_move_y_empty_check
+0x66b2 shutter_dy_move_y_empty_check
+0x66bc shutter_dy_move_store_y
+0x66be shutter_dy_move_down
+0x66c0 shutter_dy_move_down_next
+0x66c5 ble_shutter_dy_receive_data
+0x66c8 shutter_dy_le_find_service_hand_by_uuid
+0x66d5 shutter_dy_le_parse_att
+0x66de shutter_dy_le_parse_att_read_blob_request
+0x66e9 shutter_dy_le_parse_att_read_blob_request_ios
+0x66ea shutter_dy_le_parse_att_read_blob_request2
+0x66f4 shutter_dy_le_parse_att_read_request
+0x66f8 shutter_dy_le_send_att_read_response_check_auth
+0x66fe shutter_dy_le_send_att_read_response
+0x6704 shutter_dy_le_parse_att_find_by_type_value_rsp
+0x6704 shutter_dy_le_remote_iphone
+0x671e shutter_dy_iphone_move_initial_set
+0x6725 shutter_dy_le_parse_error_rsp
+0x6729 shutter_dy_remote_not_iphone
+0x672e shutter_dy_not_iphone_read_conf
+0x6730 shutter_dy_check_iphone
+0x6732 shutter_dy_le_get_press_ptr
+0x6738 shutter_dy_le_get_release_ptr
+0x6738 shutter_dy_le_get_release_ptr_set
+0x6740 shutter_dy_le_get_release_ptr_volume
+0x6747 shutter_dy_le_get_release_ptr_set_volume_dec
+0x6749 shutter_dy_le_get_release_ptr_set_volume_inc
+0x674b shutter_dy_le_get_vol_inc_ptr
+0x6750 shutter_dy_le_get_vol_dec_ptr
+0x6755 shutter_dy_long_key_function
+0x675a shutter_dy_long_key_volume_timer
+0x675d shutter_dy_long_key_volume_timeout
+0x6761 shutter_dy_loop_send_volume_inc_page
+0x6765 shutter_dy_loop_send_volume_dec_page
+0x6769 shutter_dy_clear_volume_timer
+0x676c shutter_dy_link_key_loop_timer
+0x676f shutter_dy_link_key_loop_timeout
+0x6772 shutter_dy_link_data_android_or_ios
+0x6777 shutter_dy_link_key_long_press
+0x677c shutter_dy_clear_link_key_timer
+0x677f shutter_dy_jude_clear_move_config
+0x6783 shutter_dy_clear_move_config
+0x6786 shutter_dy_write_otp_convert_data
+0x678a shutter_dy_read_otp_convert_data
+0x678e shutter_dy_store_ios_config_data
+0x67a0 shutter_dy_store_android_config
+0x67a7 shutter_dy_get_ios_config
+0x67b9 shutter_dy_get_android_config
+0x67be shutter_dy_store_move_config_info
+0x67bf shutter_dy_load_move_config_info
+0x67c0 shutter_dy_shutter_uart_config_loop
+0x67cb shutter_dy_shutter_get_first_read_addr
+0x67cf shutter_dy_shutter_next_read_addr
+0x67d3 shutter_dy_shutter_last_read_addr
+0x67d7 shutter_dy_shutter_read_ios_android_addr
+0x67e2 shutter_dy_update_read_check_addr
+0x67e6 shutter_dy_campare_otp_data
+0x67f6 shutter_dy_set_shutter_valid_data_flag
+0x67fa shutter_dy_shutter_judge_ios_or_android
+0x6806 shutter_dy_shutter_not_find_ios_or_android
+0x680b shutter_dy_shutter_android_save_init_loaction
+0x6812 shutter_dy_shutter_ios_save_init_loaction
+0x6821 shutter_dy_clear_temp_count
+0x6823 shutter_dy_campare_effective_addr_read_otp
+0x683c shutter_dy_campare_effective_addr_write_otp
+0x684f shutter_dy_shutter_read_move_config_from_otp_addr
+0x6854 shutter_dy_shutter_write_move_config_to_otp_addr
+0x6858 shutter_dy_shutter_1s_timer
+0x685b p_crc16_ccitt_false
+0x685c p_crc16_ccitt_false_loop
+0x6860 p_crc16_for_byte
+0x6862 p_crc16_for_byte_loop
+0x6867 p_crc16_for_byte_continue
+0x686c rf_debug_rx_gpio_low
+0x686d rf_debug_gpio_low
+0x686f rf_debug_rx_on_line
+0x686f rf_debug_rx_gpio_high
+0x6870 rf_debug_gpio_high
+0x6872 rf_debug_rx_gpio_h_l_h
+0x6873 rf_debug_rx_gpio_l_h
+0x6875 rf_debug_rx_gpio_l_h_l
+0x6875 rf_debug_shutdown_radio_line
+0x6876 rf_debug_rx_crc_line
+0x6877 rf_debug_rx_sync_line
+0x6878 rf_debug_rx_crc_fail_line
+0x687a rf_debug_rx_crc_error_line
+0x687a rf_debug_rx_sync_timeout_line
+0x687b rf_debug_tx_off_line
+0x687b rf_debug_tx_gpio_low
+0x687d rf_debug_tx_on_line
+0x687d rf_debug_tx_gpio_high
+0x687f rf_debug_tx_gpio_l_h_l
+0x6882 hci_init
+0x688b hci_process_loop
+0x688d hci_init_clksel_xtal
+0x688f hci_init_uart_default_config
+0x6893 hci_init_uart_default_config_tx
+0x6897 hci_init_uart_default_config_rx
+0x689b hci_init_uart_default_config_rts
+0x689f hci_init_uart_default_config_cts
+0x68a3 hci_init_uart_config
+0x68bf hci_init_pwm_default_config
+0x68c3 hci_init_pwm
+0x68ce hci_process_check_uart_rx
+0x68d6 hci_parse_packet_cmd
+0x68e4 hci_parse_complete_packet
+0x68e7 hci_parse_packet_cmd_ogf_vendorspecific_debug
+0x68f2 phci_grp_vendor_chipid
+0x68f7 phci_grp_vendor_baud
+0x68fa phci_grp_vendor_patch_common
+0x6905 phci_grp_vendor_patch
+0x6906 phci_grp_vendor_patch_loop
+0x690a phci_grp_vendor_patch_check_sum
+0x690f phci_grp_vendor_done
+0x6912 phci_grp_vendor_done_loop
+0x691e phci_grp_vendor_patch_bad
+0x6920 phci_grp_vendor_mem
+0x6926 phci_grp_vendor_flow_control
+0x692a hci_normal_reply
+0x692b hci_send_event_command_complete_error_command_nuknown
+0x692d hci_send_event_command_complete_error_command_disallowed
+0x692f hci_send_event_command_complete_without_payload
+0x6932 hci_send_event_command_complete
+0x693b hci_prepare_send_event
+0x693f hci_drop_current_packet
+0x6944 cmd_exit
+0x6946 l2cap_init
+0x694b l2cap_init_wake
+0x694c check_l2cap_map
+0x694e check_l2cap_map_loop
+0x6953 check_l2cap_map_used
+0x6957 check_l2cap_map_used2
+0x6959 ble_l2cap_malloc
+0x695d host_l2cap_malloc
+0x6962 host_l2cap_malloc_loop
+0x696a host_l2cap_malloc_next_buffer
+0x696e host_l2cap_malloc_succ
+0x6971 host_l2cap_malloc_check_buffer_enough
+0x6975 host_l2cap_malloc_check_buffer_enough_loop
+0x6982 host_l2cap_malloc_check_buffer_enough_end
+0x6987 host_l2cap_malloc_into_fifo
+0x6990 host_l2cap_malloc_into_fifo_no_push
+0x6993 l2cap_malloc_fifo_out
+0x6998 l2cap_malloc_free
+0x699f l2cap_malloc_discard
+0x69a9 l2cap_malloc_is_fifo_full
+0x69ac l2cap_malloc_is_fifo_nearly_full
+0x69af l2cap_malloc_is_fifo_empty
+0x69b2 l2cap_malloc_fifo_get_first_ptr
+0x69b5 l2cap_malloc_free_loop
+0x69b7 l2cap_malloc_fifo_get_first_ptr_empty
+0x69b9 l2cap_malloc_get_full_map
+0x69bd l2cap_malloc_get_full_map_loop
+0x69c3 l2cap_lpm_get_wake_lock
+0x69c5 l2cap_lpm_put_wake_lock
+0x69c7 twspi_reset
+0x69cf twspi_reset_next
+0x69d9 twspi_reset_ext
+0x69dc twspi_disable
+0x69e0 twspi_enable
+0x69e4 twspi_write
+0x69e5 twspi_read
+0x69e6 aes_disable
+0x69ea read_function_aes
+0x69ee read_function
+0x69f1 read_fuction_zero
+0x69f3 get_block_header
+0x69f4 get_block_header0
+0x69fc read_first_block
+0x6a01 read_first_block_cont
+0x6a04 get_iv
+0x6a08 set_iv
+0x6a0e load_aes_reinit
+0x6a11 load_storage
+0x6a1e load_storage_loop
+0x6a25 load_data_checksum_calc
+0x6a2e load_data_checksum_compare
+0x6a3c load_data_checksum_ok
+0x6a3e load_data_checksum_compare_fail
+0x6a40 loadcode_lock_load_ucode
+0x6a44 loadcode_lock
+0x6a4b loadcode_set_lock
+0x6a53 load_otp_hv_vsel
+0x6a59 loadcode_load_key
+0x6a68 loadcode
+0x6a72 loadcode_bistwait
+0x6a78 loadcode_nobist
+0x6a7b loadcode_otp
+0x6a8f loadcode_unenc
+0x6a91 loadcode_otp_loop
+0x6a9c loadcode_otp_end
+0x6a9e loadcode_iic_loop
+0x6aaa run_otp_code
+0x6aad loadcode_check_otp_lock
+0x6ab2 loadcode_otp_lock
+0x6ab4 loadcode_iic_eeprom_2k
+0x6abd loadcode_spi
+0x6abe loadcode_spi_loop
+0x6acd loadcode_hci
+0x6ad1 clear_key_buf
+0x6ad7 iicd_load_gpio_init
+0x6adb iicd_load_default_gpio
+0x6adf loadcode_iic_by_eeprom
+0x6ae5 loadcode_timeout
+0x6aeb loadcode_error_delay
+0x6af1 loadcode_error
+0x6af5 set_bistfix
+0x6afa set_bistfix_loop
+0x6b00 set_ucode_status
+0x6b07 decrypt_code
+0x6b0a decrypt_code_loop
+0x6b0d decrypt_code_skip
+0x6b11 load_ucode
+0x6b19 load_ucode_loop
+0x6b1e otp_load_code
+0x6b2b otp_enable_chgpump25
+0x6b34 otp_enable_chgpump65
+0x6b37 disable_otp
+0x6b38 otp_disable_chgpump
+0x6b3a enable_otp_read
+0x6b3b otp_reset
+0x6b41 otp_set_addr
+0x6b45 otp_write
+0x6b49 otp_program
+0x6b4c otp_program_bit
+0x6b6c otp_skip_0
+0x6b74 otp_read_data
+0x6b75 otp_read_data1
+0x6b7a otp_read_data_loop
+0x6b83 otp_read_noinc
+0x6b89 otp_read_unenc
+0x6b8d app_lpm_lock_check
+0x6b99 app_lpm_mesh_lock
+0x6b9d app_lpm_kb_lock
+0x6b9e app_lpm_module_lock
+0x6b9e app_lpm_hciboot_lock
+0x6b9f app_lpm_dongle_lock
+0x6ba3 app_lpm_mouse_lock
+0x6ba7 app_lpm_shutter_lock
+0x6bab app_lpm_car_lock
+0x6bae app_lpm_lock_mesh
+0x6bb1 app_lpm_car_lock_application_and_ble
+0x6bb7 app_mpu_s0_lock
+0x6bba app_lpm_mpu_lock_ble
+0x6bbc app_mpu_s1_lock
+0x6bbf app_lpm_mpu_lock_24g
+0x6bc2 app_lpm_mpu_lock_24g_ble
+0x6bc6 spid_init
+0x6bc7 spid_init_common
+0x6bd0 spid_write_reg
+0x6bd7 spid_read_reg
+0x6bd8 spid_read_regs
+0x6be0 wait_spid_done
+0x6be4 flash_write
+0x6beb flash_write_spi_sm_timer
+0x6bf2 spid_flash_write_start
+0x6bf8 spid_flash_erase_sector
+0x6c00 spid_flash_wait_erase_sector
+0x6c04 spid_flash_write_data
+0x6c0b spid_flash_wait_write_data
+0x6c13 spid_flash_data_recover
+0x6c15 spid_flash_data_recover_comm
+0x6c18 spid_flash_data_preserve
+0x6c20 spid_init_flash
+0x6c26 spid_unlock_flash
+0x6c27 spid_sendcmd_common
+0x6c2f spid_flash_release_form_powerdown
+0x6c31 spid_flash_powerdown
+0x6c33 spid_write_flash_data
+0x6c3c spid_write_flash
+0x6c40 spid_write_flash_common
+0x6c4d spid_read_flash
+0x6c5f spid_read_flash_wait
+0x6c63 wait_spid_flash_done
+0x6c6c spid_load_flash
+0x6c79 spi_load_flash_wait
+0x6c8b spi_gpio_init
+0x6c90 spi_pin_set
+0x6c9c spi_gpio_default_init
+0x6ca3 soft_reset_chip
+0x6ca5 iic_init_600khz
+0x6cad iic_init_360khz
+0x6cb5 iicd_init_pin
+0x6cb6 iicd_init_pin_scl_sda
+0x6cbc iicd_read_init_pin
+0x6cbe wait_iicd_done
+0x6cc1 set_eeprom_size_2k
+0x6cc4 clear_eeprom_size_2k
+0x6cc7 iicd_read_eep_data_size_2k
+0x6ccb iicd_read_eep_size_2k_lcadcode
+0x6cce iicd_read_eep_size_2k
+0x6cd3 iicd_write_protect_eep_data
+0x6cd8 iicd_eeprom_write_enable
+0x6cdd iicd_wp_gpio_output_low
+0x6cdf iicd_eeprom_write_disable
+0x6ce1 iicd_read_eep_data
+0x6ce7 iicd_read_eep
+0x6ced iicd_read_eep_common
+0x6cfc iicd_inc_addr
+0x6d02 iicd_read_eep_load_code_size_2k
+0x6d07 iicd_write_eep_data
+0x6d0d iicd_write_eep_loop
+0x6d1c iicd_eep_transparency
+0x6d2e iicd_eep_deal_short_packet
+0x6d33 iicd_write_eep_size_2k
+0x6d3d iicd_write_eep
+0x6d4a iicd_write_eep_common
+0x6d51 iic_check_eeprom_standby
+0x6d53 iic_check_eeprom_standby_wait
+0x6d68 uarta_init_dma_mem
+0x6d6a uart_init_dma_mem
+0x6d73 uarta_init_baud_rate
+0x6d75 uarta_calc_baud_rate_config
+0x6d77 uart_calc_baud_rate_config
+0x6d7c uart_calc_baud_rate_config_choice_uart_clock
+0x6d80 uart_calc_baud_rate_config_choice_uart_clock_crystal
+0x6d82 uart_clock_select_main_freq_crystal
+0x6d86 uart_clock_select_main_freq_dpll
+0x6d8a uarta_init_tx
+0x6d8e uarta_init_rx
+0x6d92 uarta_prepare_tx
+0x6d96 uarta_prepare_rx
+0x6d9a uarta_send
+0x6d9c uarta_rxdone
+0x6d9e uarta_clear_current_rx
+0x6da2 uarta_prepare_tx_register_push
+0x6da4 uarta_send_register_pop
+0x6da6 uart_register_push
+0x6daa uart_register_pop
+0x6dae wait_uarttx
+0x6db1 uart_copy_tx_bytes_fast
+0x6db3 uart_copy_tx_bytes_fast_loop
+0x6db8 uart_copy_tx_bytes_fast_loop_four
+0x6dbe uart_tx_8_bytes
+0x6dc1 uart_tx_4_bytes
+0x6dc4 uart_copy_tx_bytes
+0x6dc6 uart_copy_tx_bytes_loop
+0x6dca uart_copy_rx_bytes_fast
+0x6dcc uart_copy_rx_bytes_fast_loop
+0x6dd1 uart_copy_rx_bytes_fast_loop_four
+0x6dd7 uart_rx_8_bytes
+0x6dda uart_rx_4_bytes
+0x6ddd uart_copy_rx_bytes
+0x6ddf uart_copy_rx_bytes_loop
+0x6de3 app_store_nvram_event
+0x6de5 check_51cmd_update_device_record
+0x6dec write_device_record
+0x6df0 write_device_loop_find
+0x6dfc write_device_loop_find0
+0x6e00 set_index_finded_device
+0x6e05 set_index_find_device_master_addr
+0x6e0a store_rec_data_common
+0x6e0d set_index_finded_device_ble_mode
+0x6e11 set_index_finded_device_irk
+0x6e13 store_ble_rec_data_common
+0x6e15 set_index_finded_device_ediv
+0x6e18 nvram_find_addr_from_bd_list
+0x6e1f find_addr_from_bd_list_ble_mode
+0x6e27 find_addr_from_bd_list_static_addr
+0x6e2b find_addr_from_bd_list_static_addr_reconnect
+0x6e2e find_addr_from_bd_list_static_addr_sc_or_legacy
+0x6e2e find_addr_from_bd_list_random_non_resolvable_private_address_sc_or_legacy
+0x6e31 find_addr_from_bd_list_static_addr_sc
+0x6e31 find_addr_from_bd_list_random_non_resolvable_private_address_sc
+0x6e34 find_addr_from_bd_list_public_device_addr
+0x6e37 find_addr_from_bd_list_random_non_resolvable_private_address
+0x6e39 find_addr_from_bd_list_random_addr
+0x6e3b find_addr_from_bd_list_common
+0x6e43 nvram_find_addr_from_list
+0x6e53 nvram_find_addr_from_list_compare
+0x6e55 find_master_addr_from_list_compare
+0x6e5a find_addr_from_list_compare_ble_mode
+0x6e5d find_irk_form_list_compare
+0x6e6f genernate_master_macaddress
+0x6e78 find_ediv_form_list_compare
+0x6e87 check_nvram
+0x6e8d init_device_list
+0x6e91 init_device_list_loop
+0x6e96 load_device_list_mode_4
+0x6ea1 clear_ltk_exists
+0x6ea3 eeprom_store_le_reconn_info
+0x6ea5 eeprom_store_reconn_info
+0x6ea9 get_gpio_wakeup_index
+0x6eb2 gpio_set_wake_by_current_state
+0x6eb6 gpio_set_wake
+0x6ebd gpio_set_wake_high
+0x6ec1 gpio_set_wake_low4bit
+0x6ec6 gpio_set_low_pullup
+0x6ece gpio_set_low_pullup_low4bit
+0x6ed3 gpio_clr_wake
+0x6edb gpio_config_input_nowake
+0x6edd gpio_config_input
+0x6ee0 gpio_config_input_without_wake
+0x6ee6 gpio_get_bit
+0x6ef1 gpio_get_bit_reverse
+0x6ef3 gpio_out_inactive
+0x6ef7 gpio_config_output
+0x6ef7 gpio_out_active
+0x6efa gpio_out_flag
+0x6efd gpio_out
+0x6f02 gpio_check_active
+0x6f09 gpio_check_active_high
+0x6f0b gpio_set_analog
+0x6f0d gpio_write
+0x6f0f gpio_set_high_impedance
+0x6f14 gpio_addr
+0x6f18 gpio_addr_next
+0x6f1a gpio_addr_ext
+0x6f1d gpio_config_param
+0x6f20 gpio_config_function
+0x6f21 gpio_config_function_int
+0x6f25 gpio_config_function_int_next
+0x6f28 gpio_config_function_int_ext
+0x6f2b gpio_get_config
+0x6f2f gpio_get_config_next
+0x6f32 gpio_get_config_ext
+0x6f35 gpio_set_before_lpm
+0x6f37 setgpio_loop
+0x6f41 setgpio_loop_end
+0x6f45 gpio_set_before_lpm_ext
+0x6f48 setgpio_pullup
+0x6f4b setgpio_pulldown
+0x6f4e sadc_calibration
+0x6f57 sadc_cal_read
+0x6f5a sadc_cal_read_loop
+0x6f63 sadc_cal_write
+0x6f69 sadc_cal_write_loop
+0x6f74 adc_init_data
+0x6f79 adc_init_cal_data_default
+0x6f82 enable_adc
+0x6f90 sadc_channel
+0x6f97 sadc_read
+0x6f98 sadc_read_wait
+0x6f9d sadc_read_wait2
+0x6fa1 sadc_dma
+0x6fb0 vdd_calculate_by_mode
+0x6fb5 vdd_calculate_hvin
+0x6fbb vdd_calculate_io
+0x6fc0 vdd_calculate
+0x6fc9 vdd_calculate2
+0x6fcd vdd_calculate1
+0x6fd7 adc_bat_percent_lowpower_out
+0x6fe7 adc_set_low_power_flag
+0x6feb adc_clear_low_power_flag
+0x6fef adc_set_no_power_flag
+0x6ff3 adc_clear_no_power_flag
+0x6ff7 keyscan_key_init
+0x6ff9 keyscan_key_init_next
+0x6ffe keyscan_key_init_lp1
+0x7002 keyscan_key_init_end
+0x7003 keyscan_scan_key
+0x7009 keyscan_scan_key_lp1
+0x7014 keyscan_scan_key_lp1_next
+0x701b keyscan_process_lpm_before
+0x701d keyscan_process_lpm_before_next
+0x7022 keyscan_process_lpm_before_lp1
+0x7026 keyscan_process_lpm_before_end
+0x7027 keyscan_key_process
+0x7032 keyscan_key_process_next
+0x703b keyscan_key_lp1
+0x7047 keyscan_key_lp1_next
+0x7050 keyscan_send_key_data
+0x7055 pwm_init
+0x705b delay_nop100
+0x705d pwm_clk_set
+0x7060 pwm_12m_clk_set
+0x7062 pwm_24m_clk_set
+0x7064 pwm_33k_clk_set
+0x7066 pwm_out_set
+0x707a pwm_duty_cycle_set
+0x707d pwm_autoload_set
+0x7086 delay_1clk_of_33k
+0x7088 pwm_duty_cycle_set_without_autoload
+0x7091 pwm_enable_in_syncmode
+0x709c pwm_disable_in_syncmode
+0x70a9 pwm_syncmode_set
+0x70aa pwm_syncmode_set_process
+0x70af pwm_init_bit_set
+0x70b0 pwm_init_bit_set_process
+0x70b5 pwm_gpio_select
+0x70b6 pwm_gpio_select_process
+0x70ba pwm_enable
+0x70bd pwm_disable
+0x70c0 pwm_set_select
+0x70c5 pwm_select_channel
+0x70c8 wdt_init_config
+0x70d5 wdt_set_enable
+0x70d7 wdt_set_disable
+0x70d9 wdt_init_set
+0x70dd nec61212_init
+0x70de nec_init_config
+0x70e2 nec_check_rxbuff_size
+0x70e4 nec_prepare_read
+0x70e8 nec_read_done
+0x70ea nec_parse_nec61212
+0x7105 nec_parse_nec61212_data
+0x7111 nec_parse_nec61212_error_data
+0x7116 nec_parse_nec61212_add_bit1
+0x7117 nec_parse_nec61212_add_bit0
+0x711a nec_parse_nec61212_check_repeat_data
+0x7125 nec_parse_nec61212_check_stop_bit
+0x712c nec_parse_nec61212_check_timeout
+0x7131 nec_parse_nec61212_check_timeout_cb
+0x7135 nec_check_pulse_range_legal_default_deviation
+0x7136 nec_check_pulse_range_legal
+0x713e nec_check_pulse_range_legal_data_negative
+0x7140 function_g2
+0x7157 function_f6_eb
+0x7167 get_r
+0x716b function_f6_ea
+0x717e function_f5
+0x7190 function_f5_common
+0x71a1 store_addr_common_b
+0x71a6 store_addr_common_a
+0x71ab function_f4_ca
+0x71b6 function_f4_cb
+0x71c1 function_aes_cmac
+0x71c5 function_ceil16
+0x71d3 function_aes_cmac_set_flag_0_balnk
+0x71d6 function_aes_cmac_set_flag_0
+0x71d7 function_aes_cmac_set_flag_0_common
+0x71e1 function_aes_cmac_aes
+0x71e4 function_aes_cmac_aes_loop
+0x71ea function_aes_cmac_aes_loop_end
+0x71f2 load_inverse_result
+0x71f6 store_inverse_k
+0x71f8 inverse_k
+0x71fb inverse_memdat
+0x71ff bn_lshift_0_inverse
+0x7209 function_aes_cmac_k1_inverse
+0x720a function_aes_cmac_inverse_common
+0x720e function_aes_cmac_k2_inverse
+0x7210 function_aes_cmac_generate_subkey
+0x7218 function_aes_cmac_k1
+0x7221 function_aes_cmac_k1_0
+0x7222 function_aes_cmac_k2
+0x722b function_aes_cmac_xor_rb
+0x722c function_aes_cmac_xor_rb_loop
+0x7232 function_aes_cmac_xor_loop_common
+0x7236 function_aes_cmac_padding
+0x7239 function_aes_cmac_padding_loop
+0x723e function_aes_cmac_padding_loop2
+0x7241 function_aes_cmac_padding_beq_length
+0x7242 function_aes_cmac_padding_common
+0x7244 function_aes_cmac_padding_big_length
+0x7246 concatenate_temp24
+0x7247 concatenate_temp16
+0x724a generate_stk
+0x724e authenticate_rconfirm
+0x7251 authenticate_mconfirm
+0x7256 generate_confirm
+0x7259 generate_mrand
+0x725c generate_sk
+0x7265 ccm_b0
+0x7268 first_block_counter
+0x726a first_block_data
+0x726b first_block
+0x726c iv_common
+0x727d generate_mic
+0x728c generate_mic_loop
+0x7291 generate_mic_end
+0x7295 aes_crypt_data
+0x729f le_encrypt_new_start
+0x72b8 ccm_wait_enc
+0x72bd ccm_check_enc_done
+0x72bf ccm_enc_done
+0x72c4 ccm_init_common
+0x72cb wait_ccm_done
+0x72cd ccm_ctrl_clr
+0x72cf wait_aes
+0x72d1 do_aes_ocb
+0x72d4 do_aes_cbc
+0x72d7 do_aes_ctr
+0x72da aes_init
+0x72dd wait_keyinit_done
+0x72e0 dec_key_initial
+0x72e4 do_aes_ecb_dec
+0x72eb ecb_dec_generate
+0x72ee ecb_dec_generate_loop
+0x72f3 aes_ecb_dec_loop
+0x72fa do_aes_cbc_dec
+0x7306 function_s1
+0x731b function_c1
+0x7321 function_c1_master
+0x7331 function_c1_irat
+0x7336 function_c1_loop1
+0x7349 padding_data
+0x734e padding_loop
+0x7353 aes_load_data
+0x7354 load_data_loop
+0x7358 load_data_padding
+0x735d aes_load_xor
+0x735f load_key
+0x7361 load_data128
+0x7362 load_regext
+0x7363 load_regext_loop
+0x7368 load_sk
+0x736a clear_hidata
+0x736c regext_clear
+0x736f aes_clear_data
+0x7370 aes_clear
+0x7371 clear_loop
+0x7372 clear_data_rest
+0x7375 store_aes_result
+0x7377 send_aes_result_loop
+0x737c store_enc_data
+0x7382 store_enc_loop
+0x738a store_enc_byte
+0x738e compare_res
+0x7390 compare_res_loop
+0x7396 enable_authrom
+0x739a disable_authrom
+0x739e init_memp
+0x73f5 init_memp_256
+0x7447 publickey_init
+0x7448 sp_calc_sequence_256_check
+0x7450 stop_publickey_calc_256
+0x7452 sp_clear_flags
+0x745b sp_calc_check_publickey_256
+0x7476 sp_calc_b256
+0x748c random_generator
+0x7491 compare4
+0x749b compare4_failed
+0x749c compare4_success
+0x749d bn_testbit
+0x74a3 bn_eq_zero
+0x74a9 bn_eq_0
+0x74b2 bn_bigeq
+0x74b5 bn_bigeq_0
+0x74bf bn_add
+0x74c1 bn_add_0
+0x74cd bn_sub
+0x74cf bn_sub_0
+0x74db bn_rshift6
+0x74dd bn_rshift
+0x74de bn_rshift_0
+0x74e9 bn_lshift
+0x74eb bn_lshift_0
+0x74f6 bn_load
+0x74f7 bn_load_0
+0x74fc sp_initialize_256
+0x74ff sc_reset
+0x7502 sp_wait_pubkey_calc_256_done
+0x7508 sp_debug_private_256
+0x751d sp_pubkey_calc_256
+0x7536 sp_pubkey_generated_256
+0x753c sp_dhkey_calc_256
+0x754c sp_dhkey_generated_256
+0x7552 sp_calc_sequence_256
+0x755c sp_calc_sequence_done_256
+0x7562 eckp_calc_256
+0x756a eckp_calc_init_256
+0x756d eckp_calc_init_256_1
+0x7577 ecunmapz_256
+0x7589 ecdbl_256
+0x75da ecadd_256
+0x7646 bn_invmod_256
+0x7654 bn_invmod_256_2
+0x766f bn_invmod_256_1
+0x767d bn_invmod_256_0
+0x7684 bn_mulmod_256
+0x7692 bn_mulmod_256_1
+0x7698 bn_mulmod_256_0
+0x76ad bn_p256mod
+0x7716 bn_load_mem
+0x771a bn_load_256
+0x771c bn_sqrmod_256
+0x771e bn_add_256
+0x7720 bn_addmod_256
+0x7723 bn_lshiftmod_256
+0x7724 bn_lshiftmod_ismod_256
+0x772d bn_lshiftmod_p_256
+0x7735 sub_p2_256
+0x7739 bn_submod_256
+0x7743 bn_submod_256_np
+0x774c bn_sub_256
+0x774e bn_rshift_256
+0x7751 bn_lshift_256
+0x7754 bn_bigeq_256
+0x7758 bn_eq_zero_256
+0x775b bn_rshifteven_256
+0x775c bn_rshifteven_256_1
+0x776b bn_rshifteven_256_0
+0x776f ui_init
+0x7774 ui_dispatch
+0x7776 ui_button_init
+0x7780 ui_button_polling
+0x7786 ui_button_down
+0x7792 ui_button_up
+0x779c ui_button_check_long_press
+0x77a3 lpm_button_get_wake_lock
+0x77a5 lpm_button_clean_wake_lock
+0x77a7 calc_curr_struct_prt
+0x77ac ui_led_init_global
+0x77b1 ui_led_init_loop
+0x77b7 ui_led_init_set
+0x77ba ui_led_on_global
+0x77bf ui_led_blink_stop_global
+0x77bf ui_led_off_global
+0x77c4 ui_led_blink_start_global
+0x77ca ui_led_set_style_global
+0x77cf ui_led_dispatch
+0x77d2 ui_led_blink_polling
+0x77d8 ui_led_off_static
+0x77db ui_led_on_static
+0x77de ui_led_change_style_by_type
+0x77e7 ui_led_blink_state_lighting
+0x77f2 ui_led_blink_state_darking
+0x77fe ui_led_blink_infinite
+0x7802 ui_led_blink_timer_start
+0x7804 ui_led_stop_timer
+0x7806 ui_timer_timeout
+0x780a ui_timer_check
+0x7811 ui_timer_check_loop
+0x781b ui_timer_init
+0x781e ui_timer_check_end
+0x7824 ui_timer_check_send_evt
+0x7825 ui_ipc_get_lock
+0x7826 ui_ipc_get_lock_wait
+0x7829 ui_ipc_put_lock
+0x782b ui_ipc_send_event
+0x7834 ui_ipc_send_cmd
+0x783d ui_ipc_clean_all_fifo
+0x7841 check_51cmd
+0x784c check_51cmd_once
+0x7860 check_51cmd_once_continue
+0x7869 check_51cmd_check_idle
+0x786e check_51cmd_restore
+0x7870 check_51cmd_adv
+0x7876 check_51cmd_stop_adv
+0x787b check_51cmd_direct_adv
+0x7881 check_51cmd_stop_direct_adv
+0x7886 check_51cmd_le_disconnect
+0x788a check_51cmd_ble_update_connect_param
+0x788b check_51cmd_led_off
+0x788d check_51cmd_led_on
+0x788f check_51cmd_led_start_blink
+0x7896 check_51cmd_led_start_blink_in_blink
+0x7899 check_51cmd_le_start_con
+0x789c check_51cmd_start_scan
+0x789e check_51cmd_stop_scan
+0x78a1 check_51cmd_hibernate
+0x78a7 check_51cmd_hibernate_btn_disabled
+0x78a9 check_51cmd_le_smp_sec_req
+0x78aa ui_check_paring_button
+0x78ad queue_init
+0x78b2 queue_push
+0x78c2 calc_queue_next_ptr
+0x78ca queue_pop
+0x78dc queue_get_new_ele
+0x78eb queue_store_new_ele
+0x78fa queue_empty
+0x78fe queue_full
+0x7902 queue_get_size
+0x7906 usb_isr
+0x7912 usb_init
+0x7915 usb_init_restart
+0x792a usb_offline_check_init
+0x792c usb_offline_state
+0x7932 usb_init_param
+0x7964 usb_config_cb
+0x7966 usb_tx_interval_config
+0x796b usb_nak_state
+0x7973 usb_nak_state_judge
+0x7976 usb_nak_state_timer_init
+0x797b usb0_attached_state_judge
+0x7980 usb_clear_halt_dispose
+0x7986 usb_rx_no_data
+0x7989 usb_rx_len
+0x7993 usb_rx_data
+0x7994 usb_rx_read
+0x7999 usb_rx_ep13
+0x79a2 usb_rx
+0x79af usb_class_type
+0x79b6 usb_out_one_byte
+0x79ba usb_in_device
+0x79c2 usb_out_device
+0x79ca usb_in_standard_req
+0x79d0 usb_in_class_req
+0x79d5 usb_in_manufacturer_req
+0x79d6 usb_out_standard_req
+0x79de usb_out_class_req
+0x79e3 usb_out_manufacturer_req
+0x79e4 usb0_force_stall
+0x79e9 usb0_reply_zerolen
+0x79eb usb0_request_get_configuration
+0x79fd usb0_request_get_cfg_dev_cfg
+0x79ff usb0_request_get_cfg_dev_addr
+0x7a01 usb0_request_get_descriptor
+0x7a09 dsc_hid_info
+0x7a0e dsc_hid_info_interface0
+0x7a11 dsc_hid_info_interface1
+0x7a14 dsc_device_info
+0x7a18 dsc_info_set_data_len
+0x7a1d dsc_info_set_initial_data_len
+0x7a1e dsc_info_set_data_size_completed
+0x7a23 dsc_info_set_current_data_len
+0x7a25 usb_set_high_addr
+0x7a29 usb0_set_addr
+0x7a2d dsc_config_info
+0x7a30 dsc_string_info
+0x7a3e dsc_hid_report_info
+0x7a42 dsc_hid_report_info0
+0x7a46 usb0_request_get_interface
+0x7a58 usb0_request_get_status
+0x7a69 usb0_sdsystem_dispose
+0x7a6b usb0_get_status_in_device
+0x7a70 usb_send_zero_packet
+0x7a72 usb_send_ones_packet
+0x7a74 usb_send_two_packet
+0x7a76 usb0_get_status_in_interface
+0x7a7a usb0_get_status_in_endpoint
+0x7a83 usb0_get_status_in_ep_in_ep0
+0x7a84 usb0_get_status_in_ep_in_ack
+0x7a87 usb0_get_status_in_ep_in_ep1
+0x7a89 usb0_get_status_in_ep_in_ep2
+0x7a8b usb0_get_status_in_ep_in_ep3
+0x7a8d usb_get_idle
+0x7a91 usb_get_report
+0x7a95 usb_get_report_dispose
+0x7a98 usb_get_report_send_data
+0x7a9c usb_get_report_data_release
+0x7a9f usb_get_report_data_success
+0x7aa2 usb_get_protocol_req
+0x7aaa usb_get_report_protocol
+0x7aab usb_get_boot_protocol
+0x7aac usb0_request_clear_feature
+0x7abb usb0_request_clear_feature_out_device
+0x7ac8 usb0_request_clear_feature_out_interface
+0x7ac9 usb0_request_clear_feature_out_endpoint
+0x7ad2 usb0_force_stall_ep0_in_off
+0x7ad4 usb0_force_stall_ep1_in_off
+0x7ad5 usb0_force_stall_ep1_in_off_reply
+0x7ad7 usb0_force_stall_ep2_in_off
+0x7ad9 usb0_force_stall_ep3_in_off
+0x7adb usb0_request_set_feature
+0x7ae4 usb0_request_set_feature_out_device
+0x7aee usb_wakeup_timer_reinit
+0x7af2 usb0_request_set_feature_out_interface
+0x7af3 usb0_request_set_feature_out_endpoint
+0x7afe usb0_force_stall_ep0_in_on
+0x7b00 usb0_force_stall_ep1_in_on
+0x7b02 usb0_force_stall_ep2_in_on
+0x7b04 usb0_force_stall_ep3_in_on
+0x7b06 usb0_request_set_address
+0x7b17 usb_usb0_state_set_dev_default
+0x7b18 usb0_request_set_wait_address
+0x7b1d usb_usb0_state_set_dev_addr
+0x7b1f usb0_request_set_configuration
+0x7b34 usb0_request_set_cfg_addr_state
+0x7b34 usb0_request_set_cfg_cfg_state
+0x7b38 usb0_request_set_cfg_stay_addr_state
+0x7b3a usb0_request_set_interface
+0x7b4b usb_set_idle
+0x7b59 usb_clear_remote_wakeup_set0
+0x7b5d usb_set_report
+0x7b6a usb_get_led_status
+0x7b6e usb_set_report_resume_judge
+0x7b7c usb_set_protocol_req
+0x7b82 usb_set_boot_protocol
+0x7b85 usb_set_report_protocol
+0x7b89 usb0_respond_length
+0x7b8b usb0_respond
+0x7b90 usb0_respond_nostr
+0x7b94 usb_no_respond_data
+0x7b96 usb0_tx
+0x7ba4 usb0_tx_short
+0x7ba8 usb0_tx_info
+0x7bba usb0_tx_nostr
+0x7bbc usb0_tx0
+0x7bc1 usb0_tx1
+0x7bcf usb_tx_ep1
+0x7bd2 usb_tx_buf
+0x7bd4 usb_tx_loop
+0x7bd7 usb_trig
+0x7bdb usb_tx_ep2
+0x7bdf usb_tx
+0x7bee usb_tx_data_ep1
+0x7bf9 usb_tx_data_ep2
+0x7c06 usb_tx_fifo_release
+0x7c09 usb_tx_ms_data
+0x7c11 usb_tx_ms_data_mac_boot_mode
+0x7c12 usb_tx_ms_data_mac_boot_regroup
+0x7c20 usb_tx_ms_data_normal_mode
+0x7c21 usb_tx_mac_boot_ms_regroup_r_or_lrkey
+0x7c24 usb_tx_kb_multikey_data
+0x7c28 usb_tx_kb_normal_data
+0x7c2c usb_tx_kb_systemkey_data
+0x7c30 usb_inwake_state_tx_dispose
+0x7c33 usb_mac_wakeup_trig
+0x7c38 usb_mac_wakeup_judge
+0x7c3c usb_mac_wakeup
+0x7c40 usb_windows_wakeup
+0x7c43 usb_wakeup
+0x7c49 push_stack
+0x7c51 push_stack_rega_b_c
+0x7c55 pop_stack
+0x7c60 pop_stack_rega_b_c
+0x7c64 get_contw
+0x7c67 get_contr
+0x7c6a store_contw
+0x7c6d store_contr
+0x7c70 save_cont_pointers
+0x7c75 load_cont_pointers
+0x7c7a get_diff
+0x7c80 memcpy96
+0x7c81 memcpy64
+0x7c83 memcpy12
+0x7c84 memcpy4
+0x7c86 memcpy3
+0x7c89 memcpy8
+0x7c8c memcpy48
+0x7c8d memcpy32
+0x7c8e memcpy24
+0x7c8f memcpy16
+0x7c91 delay
+0x7c95 delay_10ms
+0x7c96 delay_ms_wait
+0x7c99 memset0_16
+0x7c9a memset0_8
+0x7c9b memset0_4
+0x7c9d clear_mem_256
+0x7c9f clear_mem_512
+0x7ca1 clear_mem
+0x7ca3 memset0
+0x7ca6 clear_temp_block
+0x7ca9 xor_loop
+0x7cb1 inverse_data
+0x7cb8 inverse_loop
+0x7cc0 le2be_6byte
+0x7cc0 inverse_data_6byte
+0x7cc6 le2be_4byte
+0x7cc6 inverse_data_4byte
+0x7ccc memcpy_fast
+0x7ccf memcpy_fast_loop
+0x7cd4 memcpy_fast_loop_four
+0x7cda memcpy
+0x7cdc memcpy_loop
+0x7ce0 timer_stop
+0x7ce1 timer_init
+0x7cea timer_check_timeout
+0x7cee timer_reinit
+0x7cef timer_check
+0x7cfa timer_loop
+0x7cfe timer_counting
+0x7d05 clk_add
+0x7d10 clk_diff_rt
+0x7d12 clk_diff
+0x7d17 clk_diff_pos
+0x7d1f clk2rt
+0x7d25 clk2lpo
+0x7d2c clk2bt
+0x7d33 string2dec_from_uart
+0x7d34 string2dec_from_uart_done
+0x7d3f uchar2dialog
+0x7d48 uchar2dialog_number
+0x7d4b uchar2dialog_a2f
+0x7d4e right_shift_n
+0x7d50 right_shift_n_loop
+0x7d53 left_shift_n
+0x7d56 left_shift_n_loop
+0x7d59 calc_average
+0x7d5b calc_average_loop
+0x7d5f get_div_result
+0x7d62 wait_div_end
+0x7d64 compare_loop
+0x7d64 string_compare
+0x7d6c ceiling
+0x7d70 swap
+0x7d74 clean_smem
+0x7d76 clean_xmem
+0x7d77 clean_mem
+0x7d79 callback_func
+0x7d7b ice_break_disable_wdt
+0x7d7c ice_break
+0x7d7e ice_setbp
+0x7d83 ice_setbp2
+0x7d88 ice_set_write_bp
+0x7d8b fifo_in
+0x7d91 fifo_in_push
+0x7d97 fifo_out
+0x7d9b fifo_out_loop
+0x7da0 fifo_out_end
+0x7da3 fifo_is_empty
+0x7da5 fifo_is_full
+0x7da7 fifo_is_near_full
+0x7da9 fifo_content_count
+0x7daa fifo_content_count_loop
+0x7db0 not_greater_than
+0x7db2 copy_temp2pdata
+0x7db4 disable_positive
+0x7db6 enable_positive
+0x7db6 disable_zero
+0x7db8 enable_zero
+0x7dba enable_user
+0x7dbc disable_user
+0x7dbe enable_user2
+0x7dc0 disable_user2
+0x7dc2 enable_user7
+0x7dc4 disable_true
+0x7dc6 enable_true
+0x7dc8 disable_blank
+0x7dca enable_blank
+0x7dca set_pdata_0
+0x7dcc cal_sum
+0x7dce cal_sum_loop
+0x7dd2 reverse_byte
+0x7dd8 reverse_loop
+0x7ddd lshift14
+0x7dde rshift2
+0x7de0 lshift6
+0x7de2 clear_wake
+0x7de7 generate_random
+0x7de8 generate_random_loop
+
+
+
+format
+  ! 15 romdat
+  % d0
+  % d1
+  % d2
+  % d3
+  [8] d0
+  [8] d1
+  [8] d2
+  [8] d3
+end
+
+format
+  ! 15 enable   
+  % flag
+  [5] opcode
+  [6] 1
+  [6] flag
+  [6] null
+  [9] 0
+end
+ 
+format
+  ! 15 pulse   
+  % flag
+  [5] opcode
+  [6] 1
+  [6] flag
+  [6] null
+  [9] 0
+end
+
+format
+  ! 15 disable   
+  % flag
+  [5] opcode
+  [6] 2
+  [6] flag
+  [6] null
+  [9] 0
+end
+
+format
+  ! 15 set0  
+  % immediate
+  % reg
+  [5] opcode
+  [6] 9
+  [6] never
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 set1  
+  % immediate
+  % reg
+  [5] opcode
+  [6] 9          
+  [6] always
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 setflag  
+  % flag
+  % immediate
+  % reg
+  [5] opcode
+  [6] 9
+  [6] flag
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 nsetflag  
+  % flag
+  % immediate
+  % reg
+  [5] opcode
+  [6] 0x29
+  [6] flag
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 15 setflip    
+  % immediate
+  % reg
+  [5] opcode
+  [6] 10            
+  [6] always
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 0x1f qset1      
+  % reg             
+  [5] opcode
+  [6] 9
+  [6] always
+  [6] reg
+  [9] 0
+end
+  
+format
+  ! 0x1f qset0      
+  % reg             
+  [5] opcode
+  [6] 9
+  [6] never
+  [6] reg
+  [9] 0
+end
+
+format 
+  ! 0x1f qsetflag   
+  % flag
+  % reg
+  [5] opcode
+  [6] 9
+  [6] flag
+  [6] reg
+  [9] 0
+end
+
+format 
+  ! 0x1f nqsetflag   
+  % flag
+  % reg
+  [5] opcode
+  [6] 0x29
+  [6] flag
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 0x1f qsetflip      
+  % reg
+  [5] opcode
+  [6] 10
+  [6] always
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 1 parse       
+  % source
+  % dest
+  % immediate
+  [5] opcode
+  [4] source      
+  [2] 0
+  [6] 0    
+  [2] 0            
+  [4] dest        
+  [9] immediate   
+end
+
+format
+  ! 1 inject      
+  % destination
+  % immediate
+  [5] opcode
+  [4] 0
+  [2] 0
+  [6] 1
+  [2] 0
+  [4] destination 
+  [9] immediate   
+end
+
+format
+  ! 1 iinject
+  % destination
+  % regr
+  [5] opcode
+  [6] regr       
+  [6] 3
+  [2] 0
+  [4] destination 
+  [9] 0 
+end
+
+format
+  ! 1 stuff  
+  % source
+  % destination
+  [5] opcode
+  [4] source
+  [2] 0
+  [6] 2
+  [2] 0
+  [4] destination
+  [9] 0
+end
+
+format    
+  ! 3 force
+  % immediate
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 0    
+  [6] regw  
+  [9] immediate
+end
+
+format    
+  ! 0x13 iforce
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 0    
+  [6] regw  
+  [9] 0
+end
+
+format    
+  ! 3 increase
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 1    
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 3 pincrease
+  % immediate
+  [5] opcode
+  [6] -1  
+  [6] 1   
+  [6] -1  
+  [9] immediate
+end
+
+format    
+  ! 3 and_into
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 2    
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 3 and
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 2    
+  [6] regw
+  [9] immediate
+end
+  
+format
+  ! 0x13 iand    
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 2    
+  [6] regw
+  [9] 0
+end
+  
+
+format    
+  ! 0x13 iand_into
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 2    
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 3 or_into
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 3    
+  [6] reg
+  [9] immediate
+end
+
+format
+  ! 3 or
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 3    
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 ior
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 3    
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 ior_into
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 3    
+  [6] reg
+  [9] 0
+end
+
+format
+  ! 3 skip_to   
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 4   
+  [6] rom_addr
+  [9] 0
+end
+
+format
+  ! 3 copy
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 4   
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 deposit   
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 4   
+  [6] -1  
+  [9] 0
+end
+
+format
+  ! 3 icopy     
+  % regw
+  [5] opcode
+  [6] -1  
+  [6]  4  
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 add
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 1
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 iadd       
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 1
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 sub          
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 12
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 isub       
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 12
+  [6] regw
+  [9] 0
+end
+
+
+format
+  ! 3 flip
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 5
+  [6] reg
+  [9] immediate
+end
+  
+format
+  ! 0x13 iflip  
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 5
+  [6] regw
+  [9] 0
+end
+  
+format
+  ! 3 xor
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 5
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 3 xor_into
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 5
+  [6] reg
+  [9] immediate
+end
+  
+format
+  ! 0x13 ixor  
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 5
+  [6] regw
+  [9] 0
+end
+  
+format
+  ! 3 invert
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 8
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 pinvert    
+  [5] opcode
+  [6] -1
+  [6] 8
+  [6] -1
+  [9] 0
+end
+
+format
+  ! 3 div                 
+  % reg
+  % immediate
+  [5] opcode
+  [6] reg
+  [6] 13                   
+  [6] null
+  [9] immediate
+end
+
+format
+  ! 0x13 idiv           
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 13                   
+  [6] null
+  [9] 0
+end
+
+format
+  ! 0x13 idiv48           
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 17                   
+  [6] null
+  [9] 0
+end
+
+format
+  ! 3 remainder            
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 14
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 quotient             
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 15
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 6
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift2
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 22
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift3
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 18
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift4
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 35
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift8
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 25
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift16
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 34
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 rshift32
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 30
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 7
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift2
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 23
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift8
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 26
+  [6] regw
+  [9] 0
+end
+
+  
+format
+  ! 3 lshift3
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 19
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 lshift4
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 36
+  [6] regw
+  [9] 0
+end
+  
+
+format
+  ! 3 lshift16
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 32
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 bcrc         // calculate regr's byte crc value into pdata
+  % regr
+  [5] opcode
+  [6] regr
+  [6] 24
+  [6] 63
+  [9] 0
+end
+
+
+format
+  ! 3 random               
+  % reg
+  [5] opcode
+  [6] 0
+  [6] 20
+  [6] reg
+  [9] 0
+end
+
+format                     
+  ! 3 reverse
+  % reg
+  % regw
+  [5] opcode
+  [6] reg
+  [6] 27
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 priority    
+  % reg
+  % regw
+  [5] opcode
+  [6] reg
+  [6] 21
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 7 setsect   
+  % section    
+  % set_data
+  [5] opcode
+  [7] 0
+  [2] section
+  [18] set_data
+end
+
+format
+  ! 10 preload   
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 0
+  [6] -1
+  [9] 0
+end
+
+format  
+  ! 10 ialigned   
+  % regw
+  [5] opcode
+  [6] -1
+  [6] 0
+  [6] regw
+  [9] 0
+end
+
+format  
+  ! 10 aligned
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 0
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 4 branch
+  % addr
+  % flag
+  [5] opcode
+  [6] 1
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 call
+  % addr
+  % flag
+  [5] opcode
+  [6] 2
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 rtn
+  % flag
+  [5] opcode
+  [6] 3
+  [6] flag
+  [15] 0
+end
+
+format
+  ! 0x0d fetch          
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 63
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d fetcht          
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 2
+  [1] addr
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1d ifetch         
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] 63
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] reg
+end
+
+format
+  ! 0x1d ifetcht         
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] 2
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] reg
+end
+
+format
+  ! 0x0c store          
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 63
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0c storet          
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 2
+  [1] addr
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1c istore        
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] 63            
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+format
+  ! 0x1c istoret        
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] 2            
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+
+format
+  ! 0x0d crc         // read from memory, count from loopcnt, put crc result into pdata 
+  % addr
+  [5] opcode
+  [6] 63
+  [6] 0
+  [15] addr
+end
+
+format
+  ! 0x1d icrc         
+  % reg
+  [5] opcode
+  [6] 63
+  [15] 0
+  [6] reg
+end
+
+
+format
+  ! 0x0c storer          
+  % reg
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] reg               
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+
+format
+  ! 0x1c istorer        
+  % regr
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] regr            
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+
+format
+  ! 0x1c lstorer        
+  % regr
+  % regaddr
+  [5] opcode
+  [6] regr            
+  [6] 0
+  [9] 0
+  [6] regaddr
+end
+
+format
+  ! 0x1c lstore        
+  % regaddr
+  [5] opcode
+  [6] 63            
+  [6] 0
+  [9] 0
+  [6] regaddr
+end
+
+format
+  ! 0x1c lstorew        
+  % regaddr
+  [5] opcode
+  [6] 63
+  [6] 42
+  [9] 0
+  [6] regaddr
+end
+
+
+format
+  ! 0x0d fetchr          
+  % reg
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] reg               
+  [1] addr
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1d ifetchr        
+  % regr
+  % num_bytes
+  % regaddr
+  [5] opcode
+  [6] regr
+  [2] 0
+  [4] num_bytes
+  [9] 0
+  [6] regaddr
+end
+
+
+
+
+format
+  ! 0x0e jam
+  % immediate
+  % addr
+  [5] opcode
+  [3] 0
+  [16] addr
+  [8] immediate
+end
+
+format			
+  ! 4 nbranch
+  % addr
+  % flag
+  [5] opcode
+  [1] 1
+  [5] 1
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 ncall
+  % addr
+  % flag
+  [5] opcode
+  [1] 1
+  [5] 2
+  [6] flag
+  [15] addr
+end
+
+format
+  ! 4 nrtn
+  % flag
+  [5] opcode
+  [1] 1
+  [5] 3
+  [6] flag
+  [15] 0
+end
+
+format
+  ! 4 nop
+  % addr  
+  [5] opcode
+  [6] 0     
+  [6] 0      
+  [15] addr
+end
+
+format
+  ! 4 clear_stack
+  [5] opcode
+  [6] 4
+  [6] 0    
+  [15] 0
+end
+
+format
+  ! 6 until
+  % reg
+  % flag
+  [5] opcode
+  [6] reg
+  [6] flag
+  [6] 1
+  [9] 0
+end
+  
+format
+  ! 6 correlate   
+  % reg          
+  % flag
+  [5] opcode
+  [6] reg
+  [6] flag
+  [6] 2           
+  [9] 0           
+end
+
+format
+  ! 5 compare   
+  % immediate
+  % reg
+  % mask
+  [5] opcode
+  [6] reg
+  [3] 0
+  [9] mask
+  [9] immediate
+end
+
+format
+  ! 0x15 icompare   
+  % mask
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 0
+  [9] mask
+  [9] 0
+end
+
+format   
+  ! 5 iverify
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 2
+  [18] 0
+end
+
+format
+  ! 0x15 qisolate1
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [18] -1
+end
+
+format
+  ! 0x15 qisolate0
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [18] 0
+end
+
+	
+format
+  ! 5 isolate1
+  % addr
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [9] -1
+  [9] addr
+end
+
+format
+  ! 5 isolate0
+  % addr
+  % reg
+  [5] opcode
+  [6] reg
+  [3] 3
+  [9] 0
+  [9] addr
+end
+
+format
+  ! 11 setarg
+  % immediate
+  [5] opcode
+  [27] immediate
+end
+
+format
+  ! 0x1b arg
+  % immediate
+  % reg
+  [5] opcode
+  [6] reg
+  [21] immediate
+end
+
+  
+format
+  ! 0 sleep
+  [5] opcode
+  [27] 0
+end
+
+format
+  ! 0 snooze
+  [5] opcode
+  [6] -1
+  [21] 0
+end
+
+format
+  ! 0 revision
+  % rev_num
+  [5] opcode
+  [27] rev_num
+end
+
+format
+  ! 0x18 loop   
+  % addr
+  [5] opcode
+  [4] 4
+  [8] 0
+  [15] addr
+end
+
+format
+  ! 0x18 beq   
+  % imme
+  % addr
+  [5] opcode
+  [4] 0
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bne   
+  % imme
+  % addr
+  [5] opcode
+  [4] 1
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 rtneq   
+  % imme
+  [5] opcode
+  [4] 2
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 rtnne   
+  % imme
+  [5] opcode
+  [4] 3
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 bbit1   
+  % imme
+  % addr
+  [5] opcode
+  [4] 5
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bbit0   
+  % imme
+  % addr
+  [5] opcode
+  [4] 6
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 rtnbit1   
+  % imme
+  [5] opcode
+  [4] 7
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 rtnbit0   
+  % imme
+  [5] opcode
+  [4] 8
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 8	bpatch
+  % imme
+  % addr
+  [5] opcode
+  [4] 9
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 8	bpatchx
+  % imme
+  % addr
+  [5] opcode
+  [4] 14
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bmark1   
+  % imme
+  % addr
+  [5] opcode
+  [4] 10
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 bmark0   
+  % imme
+  % addr
+  [5] opcode
+  [4] 11
+  [8] imme
+  [15] addr
+end
+
+format
+  ! 0x18 rtnmark1   
+  % imme
+  [5] opcode
+  [4] 12
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 0x18 rtnmark0   
+  % imme
+  [5] opcode
+  [4] 13
+  [8] imme
+  [15] 0
+end
+
+format
+  ! 3 mul32                   
+  % regr
+  % immediate                                  
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 31           
+  [6] regw
+  [9] immediate
+end
+
+format
+  ! 0x13 imul32             
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 31                   
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 imults             
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 16
+  [6] regw
+  [9] 0
+end
+
+
+format
+  ! 3 byteswap
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 33
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 3 shasx          
+  % regr
+  % immediate
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 28
+  [6] regw
+  [9] immediate
+end
+
+
+format
+  ! 0x13 regexrot 	
+  [5] opcode
+  [6] 0
+  [6] 29
+  [6] null
+  [9] 0
+end
+
+format
+  ! 0x13 adpcm         // encode adpcm from regr into regw
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 43
+  [6] regw
+  [9] 0
+end
+
+format
+  ! 0x13 pcm         // decode adpcm from regr into regw
+  % regr
+  % regw
+  [5] opcode
+  [6] regr
+  [6] 44
+  [6] regw
+  [9] 0
+end
+
+
Index: output/bt_program23.icode
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.icode	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.icode	(working copy)
@@ -0,0 +1,1628 @@
+ 00000000  0x0000001e bbit1  0x00000008 , 0x00000030 
+ 00000001  0x0000001f beq  0x00000000 , 0x00000035 
+ 00000002  0x00000020 beq  0x00000002 , 0x00000066 
+ 00000003  0x00000021 beq  0x00000010 , 0x0000006f 
+ 00000004  0x00000022 beq  0x00000011 , 0x00000071 
+ 00000005  0x00000023 beq  0x00000014 , 0x00000154 
+ 00000006  0x00000024 beq  0x00000015 , 0x000000f2 
+ 00000007  0x00000025 beq  0x00000018 , 0x000000ff 
+ 00000008  0x00000026 beq  0x00000019 , 0x00000106 
+ 00000009  0x00000027 beq  0x0000001a , 0x0000007f 
+ 00000010  0x00000028 beq  0x00000025 , 0x00000515 
+ 00000011  0x00000029 beq  0x00000028 , 0x00000507 
+ 00000012  0x0000002a beq  0x00000042 , 0x00000173 
+ 00000013  0x0000002b beq  0x00000044 , 0x000001f0 
+ 00000014  0x0000002c beq  0x00000045 , 0x00000490 
+ 00000015  0x0000002d beq  0x00000046 , 0x000001f3 
+ 00000016  0x0000002e beq  0x00000047 , 0x0000020a 
+ 00000017  0x0000002f beq  0x0000004b , 0x0000030f 
+ 00000018  0x00000030 beq  0x0000004c , 0x0000032f 
+ 00000019  0x00000031 beq  0x0000004e , 0x0000034c 
+ 00000020  0x00000032 beq  0x00000050 , 0x000003b5 
+ 00000021  0x00000033 beq  0x00000052 , 0x00000438 
+ 00000022  0x00000035 beq  0x00000055 , 0x00000447 
+ 00000023  0x00000036 beq  0x00000057 , 0x00000471 
+ 00000024  0x00000037 beq  0x00000059 , 0x00000481 
+ 00000025  0x00000038 beq  0x0000005a , 0x000004e2 
+ 00000026  0x00000039 beq  0x0000005b , 0x000004eb 
+ 00000027  0x0000003a beq  0x0000005c , 0x000004e6 
+ 00000028  0x0000003b beq  0x0000005d , 0x000004ed 
+ 00000029  0x0000003c beq  0x0000005e , 0x000005d0 
+ 00000030  0x0000003d beq  0x0000005f , 0x000005fe 
+ 00000031  0x0000003e beq  0x00000071 , 0x000004eb 
+ 00000032  0x0000003f beq  0x00000076 , 0x00000047 
+ 00000033  0x00000040 beq  0x00000077 , 0x00000224 
+ 00000034  0x00000041 beq  0x00000080 , 0x0000013c 
+ 00000035  0x00000042 beq  0x00000084 , 0x000004eb 
+ 00000036  0x00000043 beq  0x0000009a , 0x000002f4 
+ 00000037  0x00000044 beq  0x000000b1 , 0x00000534 
+ 00000038  0x00000045 beq  0x000000c5 , 0x00000170 
+ 00000039  0x00000046 beq  0x000000d5 , 0x000004d1 
+ 00000040  0x00000047 beq  0x000000d6 , 0x000004ca 
+ 00000041  0x00000048 beq  0x000000da , 0x0000013d 
+ 00000042  0x00000049 beq  0x000000db , 0x00000603 
+ 00000043  0x0000004a beq  0x000000dc , 0x00000640 
+ 00000044  0x0000004b beq  0x000000dd , 0x00000621 
+ 00000045  0x0000004c beq  0x000000f6 , 0x00000594 
+ 00000046  0x0000004d beq  0x000000fa , 0x0000059c 
+ 00000047  0x0000004e branch  0x0000235a 
+ 00000048  0x00000051 beq  0x0000007f , 0x000005a3 
+ 00000049  0x00000052 beq  0x00000090 , 0x000005a5 
+ 00000050  0x00000053 beq  0x00000095 , 0x000005b2 
+ 00000051  0x00000054 rtneq  0x000000ff 
+ 00000052  0x00000055 branch  0x0000235a 
+ 00000053  0x00000058 nbranch  0x00000038 , 0x0000002b 
+ 00000054  0x00000059 until  0x0000003e , 0x00000033 
+ 00000055  0x0000005a until  0x0000003e , 0x00000033 
+ 00000056  0x0000005c call  0x000054ac 
+ 00000057  0x0000005d nbranch  0x00002002 , 0x00000028 
+ 00000058  0x0000005e fetch  0x00000001 , 0x00004aba 
+ 00000059  0x0000005f branch  0x00002002 , 0x00000034 
+ 00000060  0x00000060 jam  0x00000000 , 0x00004aba 
+ 00000061  0x00000061 fetch  0x00000001 , 0x00004655 
+ 00000062  0x00000062 beq  0x000000ff , 0x00002002 
+ 00000063  0x00000063 copy  0x0000003f , 0x00000007 
+ 00000064  0x00000064 fetch  0x00000004 , 0x0000069d 
+ 00000065  0x00000065 qisolate0  0x0000003f 
+ 00000066  0x00000066 call  0x00004e45 , 0x00000001 
+ 00000067  0x00000067 branch  0x00002002 
+ 00000068  0x0000006a fetch  0x00000001 , 0x000048f5 
+ 00000069  0x0000006b beq  0x000000ad , 0x000003fb 
+ 00000070  0x0000006c branch  0x00004d3c 
+ 00000071  0x00000070 fetch  0x00000008 , 0x00004713 
+ 00000072  0x00000071 rtnbit0  0x00000015 
+ 00000073  0x00000072 call  0x0000004b 
+ 00000074  0x00000073 branch  0x00005541 
+ 00000075  0x00000076 fetch  0x00000001 , 0x00004407 
+ 00000076  0x00000077 rtnne  0x00000002 
+ 00000077  0x00000078 fetch  0x00000001 , 0x00004408 
+ 00000078  0x00000079 call  0x00000054 
+ 00000079  0x0000007a copy  0x00000002 , 0x0000003f 
+ 00000080  0x0000007b store  0x00000001 , 0x00004635 
+ 00000081  0x0000007c set1  0x00000007 , 0x0000003f 
+ 00000082  0x0000007d arg  0x00000000 , 0x00000002 
+ 00000083  0x0000007e branch  0x00006f20 
+ 00000084  0x00000081 arg  0x00000012 , 0x00000002 
+ 00000085  0x00000082 rtneq  0x00000006 
+ 00000086  0x00000083 arg  0x0000000a , 0x00000002 
+ 00000087  0x00000084 rtneq  0x00000007 
+ 00000088  0x00000085 arg  0x00000009 , 0x00000002 
+ 00000089  0x00000086 rtneq  0x00000008 
+ 00000090  0x00000087 arg  0x0000000c , 0x00000002 
+ 00000091  0x00000088 rtneq  0x00000009 
+ 00000092  0x00000089 arg  0x00000006 , 0x00000002 
+ 00000093  0x0000008a rtneq  0x0000000a 
+ 00000094  0x0000008b arg  0x00000014 , 0x00000002 
+ 00000095  0x0000008c rtneq  0x0000000b 
+ 00000096  0x0000008d arg  0x00000015 , 0x00000002 
+ 00000097  0x0000008e rtneq  0x0000000c 
+ 00000098  0x0000008f arg  0x00000016 , 0x00000002 
+ 00000099  0x00000090 rtneq  0x0000000d 
+ 00000100  0x00000091 arg  0x0000000d , 0x00000002 
+ 00000101  0x00000093 rtn 
+ 00000102  0x00000098 call  0x00007552 
+ 00000103  0x00000099 call  0x00007448 
+ 00000104  0x0000009a call  0x00002a45 
+ 00000105  0x0000009b call  0x0000202a 
+ 00000106  0x0000009c call  0x000042ad 
+ 00000107  0x0000009d call  0x00002018 
+ 00000108  0x0000009e call  0x0000310f 
+ 00000109  0x0000009f call  0x0000248c 
+ 00000110  0x000000a0 branch  0x00000066 
+ 00000111  0x000000a2 jam  0x00000000 , 0x00008900 
+ 00000112  0x000000a3 branch  0x00002153 
+ 00000113  0x000000a5 jam  0x00000060 , 0x00008a0f 
+ 00000114  0x000000a6 jam  0x000000aa , 0x00008a10 
+ 00000115  0x000000a7 jam  0x0000007a , 0x00008a12 
+ 00000116  0x000000a8 jam  0x00000000 , 0x00008a25 
+ 00000117  0x000000a9 jam  0x00000000 , 0x00008a26 
+ 00000118  0x000000aa nop  0x0000003c 
+ 00000119  0x000000ab jam  0x00000020 , 0x00008a20 
+ 00000120  0x000000ac jam  0x000000f5 , 0x00008a23 
+ 00000121  0x000000ad jam  0x00000012 , 0x00008a24 
+ 00000122  0x000000ae jam  0x00000010 , 0x00008a24 
+ 00000123  0x000000af nop  0x0000003c 
+ 00000124  0x000000b0 jam  0x00000060 , 0x00008a12 
+ 00000125  0x000000b1 jam  0x000000dd , 0x00008a23 
+ 00000126  0x000000b2 rtn 
+ 00000127  0x000000b5 jam  0x00000000 , 0x000001bb 
+ 00000128  0x000000b6 jam  0x00000000 , 0x000001bc 
+ 00000129  0x000000b7 until  0x0000003e , 0x00000033 
+ 00000130  0x000000b9 jam  0x0000000d , 0x00008946 
+ 00000131  0x000000ba jam  0x00000010 , 0x0000896f 
+ 00000132  0x000000bb jam  0x000000cd , 0x00008a13 
+ 00000133  0x000000bc jam  0x00000010 , 0x00008a06 
+ 00000134  0x000000bd jam  0x0000004a , 0x00008a84 
+ 00000135  0x000000be jam  0x00000040 , 0x00008a85 
+ 00000136  0x000000bf jam  0x000000fe , 0x00008a16 
+ 00000137  0x000000c0 call  0x000000c6 
+ 00000138  0x000000c3 call  0x000070d7 
+ 00000139  0x000000c5 until  0x0000003e , 0x00000033 
+ 00000140  0x000000c6 jam  0x0000005f , 0x0000813b 
+ 00000141  0x000000c7 until  0x0000003e , 0x00000033 
+ 00000142  0x000000c8 jam  0x00000088 , 0x0000813c 
+ 00000143  0x000000c9 until  0x0000003e , 0x00000033 
+ 00000144  0x000000ca fetch  0x00000001 , 0x00004099 
+ 00000145  0x000000cb beq  0x00000010 , 0x000000bb 
+ 00000146  0x000000cc fetch  0x00000001 , 0x00004438 
+ 00000147  0x000000cd or_into  0x00000004 , 0x0000003f 
+ 00000148  0x000000ce store  0x00000001 , 0x00008a02 
+ 00000149  0x000000cf jam  0x00000001 , 0x0000890f 
+ 00000150  0x000000d0 jam  0x00000024 , 0x00008a80 
+ 00000151  0x000000d1 jam  0x00000062 , 0x00008a81 
+ 00000152  0x000000d2 setarg  0x00e61212 
+ 00000153  0x000000d3 store  0x00000003 , 0x00008a73 
+ 00000154  0x000000d5 jam  0x00000060 , 0x00008a86 
+ 00000155  0x000000d6 jam  0x0000003b , 0x00008a8b 
+ 00000156  0x000000d7 call  0x000000ad 
+ 00000157  0x000000d8 jam  0x00000000 , 0x00008043 
+ 00000158  0x000000d9 jam  0x00000005 , 0x00008042 
+ 00000159  0x000000da setarg  0x00557474 
+ 00000160  0x000000db store  0x00000003 , 0x00008968 
+ 00000161  0x000000dc jam  0x0000006e , 0x00008960 
+ 00000162  0x000000dd call  0x0000010e 
+ 00000163  0x000000de call  0x00000139 
+ 00000164  0x000000df call  0x000000a7 
+ 00000165  0x000000e0 jam  0x0000000c , 0x00004148 
+ 00000166  0x000000e1 branch  0x00006f4e 
+ 00000167  0x000000e5 rtn  0x0000002b 
+ 00000168  0x000000e6 until  0x0000003e , 0x00000033 
+ 00000169  0x000000e7 fetch  0x00000001 , 0x0000411c 
+ 00000170  0x000000e8 store  0x00000001 , 0x0000813a 
+ 00000171  0x000000e9 until  0x0000003e , 0x00000033 
+ 00000172  0x000000ea rtn 
+ 00000173  0x000000ed fetch  0x00000001 , 0x00004099 
+ 00000174  0x000000ee beq  0x00000018 , 0x000000b3 
+ 00000175  0x000000ef fetch  0x00000001 , 0x00004438 
+ 00000176  0x000000f0 or_into  0x00000006 , 0x0000003f 
+ 00000177  0x000000f1 store  0x00000001 , 0x00008a02 
+ 00000178  0x000000f2 jam  0x000000e0 , 0x00008a05 
+ 00000179  0x000000f4 jam  0x000000d8 , 0x00008a00 
+ 00000180  0x000000f5 nop  0x0000003c 
+ 00000181  0x000000f6 jam  0x000000a0 , 0x00008a01 
+ 00000182  0x000000f7 jam  0x000000df , 0x00008a00 
+ 00000183  0x000000f8 jam  0x000000fa , 0x00008a01 
+ 00000184  0x000000f9 nop  0x00000014 
+ 00000185  0x000000fa jam  0x0000009f , 0x00008a00 
+ 00000186  0x000000fb rtn 
+ 00000187  0x000000fe fetch  0x00000001 , 0x00004438 
+ 00000188  0x000000ff or_into  0x00000006 , 0x0000003f 
+ 00000189  0x00000100 store  0x00000001 , 0x00008a02 
+ 00000190  0x00000101 jam  0x00000000 , 0x0000890f 
+ 00000191  0x00000102 jam  0x00000023 , 0x00008a80 
+ 00000192  0x00000103 jam  0x000000b0 , 0x00008a81 
+ 00000193  0x00000104 setarg  0x00e40909 
+ 00000194  0x00000105 store  0x00000003 , 0x00008a73 
+ 00000195  0x00000106 jam  0x0000002a , 0x00008a76 
+ 00000196  0x00000107 jam  0x00000004 , 0x00008902 
+ 00000197  0x00000108 branch  0x0000009a 
+ 00000198  0x0000010b branch  0x000000ee , 0x0000002b 
+ 00000199  0x0000010c fetch  0x00000004 , 0x0000020d 
+ 00000200  0x0000010d rtn  0x00000034 
+ 00000201  0x0000010e until  0x0000003e , 0x00000033 
+ 00000202  0x0000010f fetch  0x00000001 , 0x00008136 
+ 00000203  0x00000110 and  0x0000003f , 0x000000f0 , 0x0000003f 
+ 00000204  0x00000111 fetcht  0x00000001 , 0x0000020d 
+ 00000205  0x00000112 ior  0x00000002 , 0x0000003f 
+ 00000206  0x00000113 increase  0xfffffffd , 0x0000003f 
+ 00000207  0x00000114 store  0x00000001 , 0x00008136 
+ 00000208  0x00000115 until  0x0000003e , 0x00000033 
+ 00000209  0x00000117 fetch  0x00000001 , 0x00008138 
+ 00000210  0x00000118 and  0x0000003f , 0x00000007 , 0x0000003f 
+ 00000211  0x00000119 fetcht  0x00000001 , 0x0000020e 
+ 00000212  0x0000011a lshift3  0x00000002 , 0x00000002 
+ 00000213  0x0000011b ior  0x00000002 , 0x0000003f 
+ 00000214  0x0000011c store  0x00000001 , 0x00008138 
+ 00000215  0x0000011d until  0x0000003e , 0x00000033 
+ 00000216  0x00000120 fetch  0x00000001 , 0x00008acb 
+ 00000217  0x00000121 and  0x0000003f , 0x000000f0 , 0x0000003f 
+ 00000218  0x00000122 fetcht  0x00000001 , 0x0000020f 
+ 00000219  0x00000123 storet  0x00000001 , 0x0000415b 
+ 00000220  0x00000124 ior  0x00000002 , 0x0000003f 
+ 00000221  0x00000125 store  0x00000001 , 0x00008acb 
+ 00000222  0x00000127 fetch  0x00000001 , 0x00000210 
+ 00000223  0x00000128 store  0x00000001 , 0x0000415c 
+ 00000224  0x00000129 isolate1  0x00000003 , 0x0000003f 
+ 00000225  0x0000012a fetch  0x00000001 , 0x00008a06 
+ 00000226  0x0000012b setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00000227  0x0000012c store  0x00000001 , 0x00008a06 
+ 00000228  0x0000012e fetch  0x00000001 , 0x00000210 
+ 00000229  0x0000012f and  0x0000003f , 0x00000007 , 0x00000002 
+ 00000230  0x00000130 lshift4  0x00000002 , 0x00000002 
+ 00000231  0x00000131 lshift  0x00000002 , 0x00000002 
+ 00000232  0x00000132 storet  0x00000001 , 0x00004438 
+ 00000233  0x00000133 fetch  0x00000001 , 0x00008a02 
+ 00000234  0x00000134 and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00000235  0x00000135 ior  0x00000002 , 0x0000003f 
+ 00000236  0x00000136 store  0x00000001 , 0x00008a02 
+ 00000237  0x00000137 rtn 
+ 00000238  0x0000013a fetch  0x00000002 , 0x0000415b 
+ 00000239  0x0000013b rtn  0x00000034 
+ 00000240  0x0000013c store  0x00000002 , 0x0000020f 
+ 00000241  0x0000013d branch  0x000000d8 
+ 00000242  0x00000140 call  0x000021ba 
+ 00000243  0x00000141 force  0x00000008 , 0x00000015 
+ 00000244  0x00000142 force  0x00000000 , 0x00000015 
+ 00000245  0x00000144 setarg  0x000aaada 
+ 00000246  0x00000145 store  0x00000003 , 0x00008a0f 
+ 00000247  0x00000146 jam  0x00000040 , 0x00008a25 
+ 00000248  0x00000147 jam  0x00000010 , 0x00008a26 
+ 00000249  0x00000148 nop  0x0000003c 
+ 00000250  0x00000149 jam  0x000000fb , 0x00008a01 
+ 00000251  0x0000014a jam  0x000000ff , 0x00008a25 
+ 00000252  0x0000014b jam  0x00000030 , 0x00008a26 
+ 00000253  0x0000014c jam  0x000000fe , 0x00008a16 
+ 00000254  0x0000014d branch  0x000021b4 
+ 00000255  0x00000150 setarg  0x000aaa7e 
+ 00000256  0x00000151 store  0x00000003 , 0x00008a0f 
+ 00000257  0x00000152 nop  0x0000003c 
+ 00000258  0x00000153 jam  0x00000000 , 0x00008a25 
+ 00000259  0x00000154 jam  0x0000000d , 0x00008a26 
+ 00000260  0x00000155 jam  0x000000f6 , 0x00008a16 
+ 00000261  0x00000156 branch  0x00002203 
+ 00000262  0x00000159 fetch  0x00000001 , 0x00004141 
+ 00000263  0x0000015a beq  0x0000000a , 0x00000109 
+ 00000264  0x0000015b branch  0x0000220e 
+ 00000265  0x0000015e jam  0x00000025 , 0x00008a14 
+ 00000266  0x0000015f setarg  0x00a93f3f 
+ 00000267  0x00000160 store  0x00000003 , 0x00008a60 
+ 00000268  0x00000161 jam  0x0000001f , 0x00008a63 
+ 00000269  0x00000162 rtn 
+ 00000270  0x00000166 rtn  0x0000002b 
+ 00000271  0x00000167 call  0x00002160 
+ 00000272  0x00000168 arg  0x00000027 , 0x00000002 
+ 00000273  0x00000169 call  0x0000216f 
+ 00000274  0x0000016a call  0x000021a6 
+ 00000275  0x0000016b jam  0x0000007f , 0x00008a25 
+ 00000276  0x0000016c jam  0x0000001a , 0x00008a30 
+ 00000277  0x0000016d jam  0x00000078 , 0x00008a31 
+ 00000278  0x0000016e jam  0x000000b2 , 0x00008a8f 
+ 00000279  0x0000016f jam  0x00000000 , 0x00008ac2 
+ 00000280  0x00000170 jam  0x00000000 , 0x00008ac3 
+ 00000281  0x00000171 arg  0x00000006 , 0x00000007 
+ 00000282  0x00000172 call  0x0000012b 
+ 00000283  0x00000173 isolate1  0x0000000d , 0x00000011 
+ 00000284  0x00000174 call  0x0000211d 
+ 00000285  0x00000175 isolate1  0x0000000d , 0x00000012 
+ 00000286  0x00000176 call  0x0000211e 
+ 00000287  0x00000177 arg  0x00000005 , 0x00000007 
+ 00000288  0x00000179 call  0x0000211c 
+ 00000289  0x0000017a call  0x0000211e 
+ 00000290  0x0000017b call  0x0000012b 
+ 00000291  0x0000017c arg  0x00008ac2 , 0x00000005 
+ 00000292  0x0000017d rshift4  0x00000011 , 0x0000003f 
+ 00000293  0x0000017e call  0x00002117 
+ 00000294  0x0000017f rshift4  0x00000012 , 0x0000003f 
+ 00000295  0x00000180 call  0x00002117 
+ 00000296  0x00000181 increase  0xffffffff , 0x00000007 
+ 00000297  0x00000182 branch  0x00000120 , 0x00000002 
+ 00000298  0x00000183 branch  0x0000214f 
+ 00000299  0x00000186 nop  0x0000003c 
+ 00000300  0x00000187 setarg  0x00000f00 
+ 00000301  0x00000188 store  0x00000002 , 0x00008982 
+ 00000302  0x00000189 setarg  0x00000ff0 
+ 00000303  0x0000018a store  0x00000002 , 0x00008984 
+ 00000304  0x0000018b jam  0x00000009 , 0x00008981 
+ 00000305  0x0000018c jam  0x00000003 , 0x00008981 
+ 00000306  0x0000018d jam  0x00000006 , 0x00008980 
+ 00000307  0x0000018e nop  0x0000003c 
+ 00000308  0x0000018f arg  0x00000000 , 0x00000011 
+ 00000309  0x00000190 arg  0x00000000 , 0x00000012 
+ 00000310  0x00000191 arg  0x00000010 , 0x00000039 
+ 00000311  0x00000192 arg  0x00000f00 , 0x00000006 
+ 00000312  0x00000193 branch  0x0000212d 
+ 00000313  0x00000196 rtn  0x0000002b 
+ 00000314  0x00000197 branch  0x00002272 
+ 00000315  0x0000019a setarg  0x00000000 
+ 00000316  0x0000019d rtn 
+ 00000317  0x000001a0 rtn  0x0000002b 
+ 00000318  0x000001a1 jam  0x00000077 , 0x00008a07 
+ 00000319  0x000001a2 jam  0x000000c9 , 0x00008a08 
+ 00000320  0x000001a3 jam  0x00000001 , 0x00008a0b 
+ 00000321  0x000001a4 fetch  0x00000001 , 0x00004409 
+ 00000322  0x000001a5 store  0x00000001 , 0x000080cd 
+ 00000323  0x000001a6 nop  0x00000bb8 
+ 00000324  0x000001a7 call  0x0000014d 
+ 00000325  0x000001a8 jam  0x000000c1 , 0x00008a08 
+ 00000326  0x000001a9 fetchr  0x00000012 , 0x00000001 , 0x00004419 
+ 00000327  0x000001aa arg  0x00000008 , 0x00000039 
+ 00000328  0x000001ab call  0x00006f58 
+ 00000329  0x000001ac fetch  0x00000001 , 0x00004419 
+ 00000330  0x000001ad store  0x00000001 , 0x00004433 
+ 00000331  0x000001ae storer  0x00000012 , 0x00000001 , 0x00004419 
+ 00000332  0x000001af rtn 
+ 00000333  0x000001b3 jam  0x00000003 , 0x000080cc 
+ 00000334  0x000001b5 fetch  0x00000001 , 0x00008129 
+ 00000335  0x000001b6 bbit0  0x00000005 , 0x0000014e 
+ 00000336  0x000001b7 fetcht  0x00000002 , 0x00008164 
+ 00000337  0x000001b8 storet  0x00000002 , 0x0000440a 
+ 00000338  0x000001b9 jam  0x00000000 , 0x000080cc 
+ 00000339  0x000001ba rtn 
+ 00000340  0x000001be jam  0x00000011 , 0x00008a82 
+ 00000341  0x000001bf jam  0x00000012 , 0x00008a8d 
+ 00000342  0x000001c0 jam  0x0000000a , 0x00008a8e 
+ 00000343  0x000001c1 fetch  0x00000001 , 0x00004099 
+ 00000344  0x000001c2 beq  0x00000010 , 0x0000016d 
+ 00000345  0x000001c3 setarg  0x00005762 
+ 00000346  0x000001c4 store  0x00000002 , 0x00008907 
+ 00000347  0x000001c6 jam  0x00000003 , 0x00008901 
+ 00000348  0x000001c7 jam  0x00000003 , 0x00008930 
+ 00000349  0x000001c8 rtnmark1  0x0000002d 
+ 00000350  0x000001c9 jam  0x00000001 , 0x00008901 
+ 00000351  0x000001ca jam  0x00000007 , 0x00008a82 
+ 00000352  0x000001cb jam  0x00000044 , 0x00008a8d 
+ 00000353  0x000001cc jam  0x0000000a , 0x00008a8e 
+ 00000354  0x000001cd fetch  0x00000001 , 0x00004099 
+ 00000355  0x000001ce beq  0x00000010 , 0x0000016a 
+ 00000356  0x000001cf setarg  0x00002bb1 
+ 00000357  0x000001d0 store  0x00000002 , 0x00008907 
+ 00000358  0x000001d2 rtnmark0  0x0000002f 
+ 00000359  0x000001d3 jam  0x00000024 , 0x00008930 
+ 00000360  0x000001d4 jam  0x00000005 , 0x00008901 
+ 00000361  0x000001d5 rtn 
+ 00000362  0x000001d8 setarg  0x00004189 
+ 00000363  0x000001d9 store  0x00000002 , 0x00008907 
+ 00000364  0x000001da branch  0x00000166 
+ 00000365  0x000001dd setarg  0x00008312 
+ 00000366  0x000001de store  0x00000002 , 0x00008907 
+ 00000367  0x000001df branch  0x0000015b 
+ 00000368  0x000001e2 call  0x00006b3a 
+ 00000369  0x000001e3 call  0x00006b75 
+ 00000370  0x000001e4 branch  0x00006b38 
+ 00000371  0x000001e7 fetch  0x00000001 , 0x00004666 
+ 00000372  0x000001e8 beq  0x00000000 , 0x00000177 
+ 00000373  0x000001e9 beq  0x00000001 , 0x00000181 
+ 00000374  0x000001ea rtn 
+ 00000375  0x000001ed arg  0x00000008 , 0x00000018 
+ 00000376  0x000001ee fetch  0x00000002 , 0x00004d0e 
+ 00000377  0x000001ef idiv  0x00000018 
+ 00000378  0x000001f0 call  0x00007d62 
+ 00000379  0x000001f1 quotient  0x0000003f 
+ 00000380  0x000001f2 store  0x00000002 , 0x00000670 
+ 00000381  0x000001f3 arg  0x00001fbc , 0x0000003f 
+ 00000382  0x000001f4 arg  0x00000004 , 0x00000002 
+ 00000383  0x000001f5 arg  0x00000004 , 0x0000002b 
+ 00000384  0x000001f6 branch  0x0000018b 
+ 00000385  0x000001f9 arg  0x00000020 , 0x00000018 
+ 00000386  0x000001fa fetch  0x00000002 , 0x00004d0e 
+ 00000387  0x000001fb idiv  0x00000018 
+ 00000388  0x000001fc call  0x00007d62 
+ 00000389  0x000001fd quotient  0x0000003f 
+ 00000390  0x000001fe store  0x00000002 , 0x00000670 
+ 00000391  0x000001ff arg  0x00001fb0 , 0x0000003f 
+ 00000392  0x00000200 arg  0x00000010 , 0x00000002 
+ 00000393  0x00000201 arg  0x00000010 , 0x0000002b 
+ 00000394  0x00000202 branch  0x0000018b 
+ 00000395  0x00000205 store  0x00000002 , 0x00000672 
+ 00000396  0x00000206 storet  0x00000001 , 0x00000678 
+ 00000397  0x00000207 arg  0x000049c7 , 0x00000011 
+ 00000398  0x00000208 arg  0x00000000 , 0x00000013 
+ 00000399  0x0000020a fetch  0x00000002 , 0x00000672 
+ 00000400  0x0000020b copy  0x0000003f , 0x00000012 
+ 00000401  0x0000020c fetchr  0x00000039 , 0x00000001 , 0x00000678 
+ 00000402  0x0000020d arg  0x000049c7 , 0x00000011 
+ 00000403  0x0000020e call  0x00006b74 
+ 00000404  0x0000020f fetch  0x00000008 , 0x000049c7 
+ 00000405  0x00000210 fetcht  0x00000008 , 0x000049cf 
+ 00000406  0x00000211 ior  0x00000002 , 0x0000003f 
+ 00000407  0x00000212 fetcht  0x00000008 , 0x000049d7 
+ 00000408  0x00000213 ior  0x00000002 , 0x0000003f 
+ 00000409  0x00000214 branch  0x000001a1 , 0x00000034 
+ 00000410  0x00000215 increase  0x00000001 , 0x00000013 
+ 00000411  0x00000216 fetch  0x00000002 , 0x00000670 
+ 00000412  0x00000217 isub  0x00000013 , 0x0000003e 
+ 00000413  0x00000219 fetch  0x00000002 , 0x00000672 
+ 00000414  0x0000021a isub  0x00000018 , 0x0000003f 
+ 00000415  0x0000021b store  0x00000002 , 0x00000672 
+ 00000416  0x0000021c branch  0x0000018f 
+ 00000417  0x0000021e sub  0x00000013 , 0x00000000 , 0x0000003e 
+ 00000418  0x0000021f branch  0x00004a38 , 0x00000005 
+ 00000419  0x00000221 fetch  0x00000002 , 0x00000672 
+ 00000420  0x00000222 iadd  0x00000018 , 0x0000003f 
+ 00000421  0x00000224 isub  0x0000002b , 0x0000003f 
+ 00000422  0x00000225 store  0x00000002 , 0x00000672 
+ 00000423  0x00000226 fetch  0x00000002 , 0x00000672 
+ 00000424  0x00000227 copy  0x0000003f , 0x00000012 
+ 00000425  0x00000228 fetchr  0x00000039 , 0x00000001 , 0x00000678 
+ 00000426  0x00000229 arg  0x000049c7 , 0x00000011 
+ 00000427  0x0000022a call  0x00006b74 
+ 00000428  0x0000022b fetch  0x00000008 , 0x000049c7 
+ 00000429  0x0000022c fetcht  0x00000008 , 0x000049cf 
+ 00000430  0x0000022d ior  0x00000002 , 0x0000003f 
+ 00000431  0x0000022e fetcht  0x00000008 , 0x000049d7 
+ 00000432  0x0000022f ior  0x00000002 , 0x0000003f 
+ 00000433  0x00000230 branch  0x000001b4 , 0x00000034 
+ 00000434  0x00000231 fetch  0x00000002 , 0x00000672 
+ 00000435  0x00000232 branch  0x000001a5 
+ 00000436  0x00000235 setarg  0x00001fc0 
+ 00000437  0x00000236 fetcht  0x00000002 , 0x00000672 
+ 00000438  0x00000237 isub  0x00000002 , 0x0000003f 
+ 00000439  0x00000238 store  0x00000002 , 0x000049df 
+ 00000440  0x00000239 copy  0x00000002 , 0x0000003f 
+ 00000441  0x0000023a iadd  0x0000002b , 0x00000012 
+ 00000442  0x0000023b fetchr  0x00000039 , 0x00000001 , 0x00000678 
+ 00000443  0x0000023c arg  0x000049c7 , 0x00000011 
+ 00000444  0x0000023d call  0x00006b74 
+ 00000445  0x0000023e fetch  0x00000001 , 0x00004666 
+ 00000446  0x0000023f beq  0x00000000 , 0x00004a47 
+ 00000447  0x00000240 beq  0x00000001 , 0x000001c1 
+ 00000448  0x00000241 rtn 
+ 00000449  0x00000244 fetch  0x00000001 , 0x000049c7 
+ 00000450  0x00000245 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00000451  0x00000246 ncall  0x00007dca , 0x00000002 
+ 00000452  0x00000247 store  0x00000001 , 0x000049c6 
+ 00000453  0x00000248 fetch  0x00000001 , 0x000049c8 
+ 00000454  0x00000249 store  0x00000001 , 0x00004667 
+ 00000455  0x0000024a fetch  0x00000006 , 0x000049c9 
+ 00000456  0x0000024b store  0x00000006 , 0x00004668 
+ 00000457  0x0000024c fetch  0x00000006 , 0x000049cf 
+ 00000458  0x0000024d store  0x00000006 , 0x0000466e 
+ 00000459  0x0000024e fetcht  0x00000002 , 0x000049d5 
+ 00000460  0x0000024f random  0x0000003f 
+ 00000461  0x00000250 iadd  0x00000002 , 0x0000003f 
+ 00000462  0x00000251 store  0x00000002 , 0x00004695 
+ 00000463  0x00000252 branch  0x00000552 
+ 00000464  0x00000255 fetch  0x00000001 , 0x00004666 
+ 00000465  0x00000256 beq  0x00000000 , 0x000001d4 
+ 00000466  0x00000257 beq  0x00000001 , 0x000001d7 
+ 00000467  0x00000258 rtn 
+ 00000468  0x0000025b fetcht  0x00000002 , 0x000049df 
+ 00000469  0x0000025c setarg  0x00001fc0 
+ 00000470  0x0000025d branch  0x00004a63 
+ 00000471  0x00000260 jam  0x00000001 , 0x00004be7 
+ 00000472  0x00000261 fetch  0x00000001 , 0x00004be8 
+ 00000473  0x00000262 rtn  0x00000034 
+ 00000474  0x00000264 fetcht  0x00000002 , 0x000049df 
+ 00000475  0x00000265 setarg  0x00001fc0 
+ 00000476  0x00000266 isub  0x00000002 , 0x0000003f 
+ 00000477  0x00000267 store  0x00000002 , 0x00000670 
+ 00000478  0x00000269 copy  0x0000003f , 0x00000012 
+ 00000479  0x0000026a arg  0x000049c6 , 0x00000011 
+ 00000480  0x0000026b arg  0x00000001 , 0x00000039 
+ 00000481  0x0000026c call  0x00006b45 
+ 00000482  0x0000026e fetch  0x00000002 , 0x00000670 
+ 00000483  0x0000026f add  0x0000003f , 0x00000001 , 0x00000012 
+ 00000484  0x00000270 arg  0x00004667 , 0x00000011 
+ 00000485  0x00000271 arg  0x0000000d , 0x00000039 
+ 00000486  0x00000272 call  0x00006b45 
+ 00000487  0x00000274 fetch  0x00000002 , 0x00000670 
+ 00000488  0x00000275 add  0x0000003f , 0x0000000e , 0x00000012 
+ 00000489  0x00000276 arg  0x00004695 , 0x00000011 
+ 00000490  0x00000277 arg  0x00000002 , 0x00000039 
+ 00000491  0x00000278 call  0x00006b45 
+ 00000492  0x0000027a fetcht  0x00000002 , 0x000049df 
+ 00000493  0x0000027b increase  0x00000010 , 0x00000002 
+ 00000494  0x0000027c storet  0x00000002 , 0x000049df 
+ 00000495  0x0000027d rtn 
+ 00000496  0x00000280 fetch  0x00000008 , 0x00004713 
+ 00000497  0x00000281 bbit1  0x00000014 , 0x000001d0 
+ 00000498  0x00000282 branch  0x00004a58 
+ 00000499  0x00000287 copy  0x00000013 , 0x0000003f 
+ 00000500  0x00000288 beq  0x0000003a , 0x000001f6 
+ 00000501  0x00000289 branch  0x00004a9c 
+ 00000502  0x0000028c fetch  0x00000001 , 0x00004600 
+ 00000503  0x0000028d nbranch  0x000001fb , 0x00000034 
+ 00000504  0x0000028e fetch  0x00000001 , 0x000045e2 
+ 00000505  0x0000028f beq  0x00000002 , 0x00000203 
+ 00000506  0x00000290 branch  0x00004b02 
+ 00000507  0x00000293 jam  0x00000000 , 0x00004600 
+ 00000508  0x00000294 call  0x00003647 
+ 00000509  0x00000295 setarg  0xffffffff 
+ 00000510  0x00000296 store  0x00000008 , 0x000045af 
+ 00000511  0x00000297 setarg  0x00000000 
+ 00000512  0x00000298 store  0x00000007 , 0x00004846 
+ 00000513  0x00000299 jam  0x00000001 , 0x0000473f 
+ 00000514  0x0000029a branch  0x000005c9 
+ 00000515  0x0000029e fetch  0x00000008 , 0x00004713 
+ 00000516  0x0000029f bbit1  0x0000003e , 0x00006034 
+ 00000517  0x000002a0 bbit1  0x00000030 , 0x00006034 
+ 00000518  0x000002a1 bbit0  0x0000003a , 0x00006067 
+ 00000519  0x000002a2 fetch  0x00000004 , 0x00004691 
+ 00000520  0x000002a3 branch  0x0000030b , 0x00000034 
+ 00000521  0x000002a4 branch  0x00006067 
+ 00000522  0x000002ab call  0x0000553d 
+ 00000523  0x000002ac call  0x000002c7 
+ 00000524  0x000002ae call  0x0000328e 
+ 00000525  0x000002af call  0x00003531 
+ 00000526  0x000002b0 call  0x00005fdd 
+ 00000527  0x000002b1 call  0x00000241 
+ 00000528  0x000002b2 call  0x00004b68 
+ 00000529  0x000002b5 call  0x00000244 
+ 00000530  0x000002b6 call  0x00000291 
+ 00000531  0x000002b7 call  0x000002bb 
+ 00000532  0x000002b8 call  0x000002b3 
+ 00000533  0x000002b9 call  0x00004b43 
+ 00000534  0x000002ba call  0x00004b58 
+ 00000535  0x000002bb call  0x00005be1 
+ 00000536  0x000002bc call  0x00004b5c 
+ 00000537  0x000002bd call  0x00005be4 
+ 00000538  0x000002be call  0x00004b5f 
+ 00000539  0x000002bf call  0x00004b55 
+ 00000540  0x000002c1 call  0x00000300 
+ 00000541  0x000002c2 call  0x00004b32 
+ 00000542  0x000002c3 call  0x00005bfe 
+ 00000543  0x000002c4 call  0x00004b48 
+ 00000544  0x000002c6 call  0x000002f5 
+ 00000545  0x000002c7 call  0x00004b87 
+ 00000546  0x000002c8 branch  0x000002fa 
+ 00000547  0x000002c9 rtn 
+ 00000548  0x000002cc call  0x00000235 
+ 00000549  0x000002cd call  0x00006f82 
+ 00000550  0x000002ce call  0x00006fb0 
+ 00000551  0x000002cf div  0x0000003f , 0x0000000a 
+ 00000552  0x000002d0 call  0x00007d5f 
+ 00000553  0x000002d1 store  0x00000002 , 0x00004633 
+ 00000554  0x000002d2 arg  0x0000462d , 0x00000011 
+ 00000555  0x000002d3 call  0x00005563 
+ 00000556  0x000002d4 fetch  0x00000001 , 0x0000440c 
+ 00000557  0x000002d5 bbit1  0x00000001 , 0x00004f6b 
+ 00000558  0x000002d6 bbit0  0x00000000 , 0x00000231 
+ 00000559  0x000002d7 jam  0x00000001 , 0x00004637 
+ 00000560  0x000002d8 branch  0x0000555a 
+ 00000561  0x000002db arg  0x00000004 , 0x00000007 
+ 00000562  0x000002dc call  0x00005f04 
+ 00000563  0x000002dd jam  0x00000009 , 0x00004d08 
+ 00000564  0x000002de branch  0x0000555f 
+ 00000565  0x000002e2 call  0x000054f2 
+ 00000566  0x000002e3 setarg  0x00520090 
+ 00000567  0x000002e4 store  0x00000003 , 0x0000462d 
+ 00000568  0x000002e5 setarg  0x00006d00 
+ 00000569  0x000002e6 istore  0x00000003 , 0x00000005 
+ 00000570  0x000002e7 fetch  0x00000001 , 0x00004637 
+ 00000571  0x000002e8 branch  0x0000023e , 0x00000034 
+ 00000572  0x000002e9 jam  0x00000070 , 0x00004631 
+ 00000573  0x000002ea rtn 
+ 00000574  0x000002ec jam  0x0000006d , 0x00004631 
+ 00000575  0x000002ed rtn 
+ 00000576  0x000002ee rtn 
+ 00000577  0x000002f1 fetch  0x00000001 , 0x000048eb 
+ 00000578  0x000002f2 nrtn  0x00000034 
+ 00000579  0x000002f3 branch  0x00004b62 
+ 00000580  0x000002f6 fetch  0x00000002 , 0x00004781 
+ 00000581  0x000002f7 rtn  0x00000034 
+ 00000582  0x000002f8 fetch  0x00000001 , 0x0000473f 
+ 00000583  0x000002f9 nrtn  0x00000034 
+ 00000584  0x000002fa fetch  0x00000002 , 0x00004725 
+ 00000585  0x000002fb fetcht  0x00000002 , 0x00004781 
+ 00000586  0x000002fc isub  0x00000002 , 0x00000002 
+ 00000587  0x000002fd fetch  0x00000002 , 0x00004869 
+ 00000588  0x000002fe isub  0x00000002 , 0x0000003f 
+ 00000589  0x000002ff branch  0x00000264 , 0x00000002 
+ 00000590  0x00000300 call  0x00000273 
+ 00000591  0x00000301 call  0x0000027a 
+ 00000592  0x00000302 branch  0x00000251 
+ 00000593  0x00000305 fetch  0x00000001 , 0x00004d10 
+ 00000594  0x00000306 bbit1  0x00000001 , 0x00000255 
+ 00000595  0x00000307 fetcht  0x00000001 , 0x00004866 
+ 00000596  0x00000308 branch  0x00006ef3 
+ 00000597  0x0000030b fetch  0x00000008 , 0x00004713 
+ 00000598  0x0000030c rtnbit1  0x00000004 
+ 00000599  0x0000030d branch  0x00000253 
+ 00000600  0x00000310 fetch  0x00000001 , 0x000049aa 
+ 00000601  0x00000311 bbit0  0x00000001 , 0x00000251 
+ 00000602  0x00000312 fetch  0x00000001 , 0x00004d10 
+ 00000603  0x00000313 bbit1  0x00000001 , 0x0000025e 
+ 00000604  0x00000314 fetcht  0x00000001 , 0x00004866 
+ 00000605  0x00000315 branch  0x00006ef7 
+ 00000606  0x00000318 fetch  0x00000008 , 0x00004713 
+ 00000607  0x00000319 bbit0  0x00000004 , 0x0000025c 
+ 00000608  0x0000031a fetch  0x00000001 , 0x00004d08 
+ 00000609  0x0000031b sub  0x0000003f , 0x0000000b , 0x0000003e 
+ 00000610  0x0000031c nbranch  0x0000025c , 0x00000002 
+ 00000611  0x0000031d rtn 
+ 00000612  0x00000321 call  0x00000267 
+ 00000613  0x00000322 call  0x00000280 
+ 00000614  0x00000323 branch  0x00000258 
+ 00000615  0x00000325 fetch  0x00000001 , 0x000049aa 
+ 00000616  0x00000326 bbit0  0x00000000 , 0x00000273 
+ 00000617  0x00000327 fetch  0x00000001 , 0x00004d10 
+ 00000618  0x00000328 bbit1  0x00000000 , 0x0000026d 
+ 00000619  0x00000329 fetcht  0x00000001 , 0x00004867 
+ 00000620  0x0000032a branch  0x00006ef7 
+ 00000621  0x0000032d fetch  0x00000008 , 0x00004713 
+ 00000622  0x0000032e bbit0  0x00000004 , 0x0000026b 
+ 00000623  0x0000032f fetch  0x00000001 , 0x00004d08 
+ 00000624  0x00000330 sub  0x0000003f , 0x0000000b , 0x0000003e 
+ 00000625  0x00000331 nbranch  0x0000026b , 0x00000002 
+ 00000626  0x00000332 rtn 
+ 00000627  0x00000335 fetch  0x00000001 , 0x00004d10 
+ 00000628  0x00000336 bbit1  0x00000000 , 0x00000277 
+ 00000629  0x00000337 fetcht  0x00000001 , 0x00004867 
+ 00000630  0x00000338 branch  0x00006ef3 
+ 00000631  0x0000033b fetch  0x00000008 , 0x00004713 
+ 00000632  0x0000033c rtnbit1  0x00000004 
+ 00000633  0x0000033d branch  0x00000275 
+ 00000634  0x00000340 fetch  0x00000001 , 0x00004d10 
+ 00000635  0x00000341 bbit1  0x00000002 , 0x0000028e 
+ 00000636  0x00000342 fetch  0x00000001 , 0x00004a08 
+ 00000637  0x00000343 nrtn  0x00000034 
+ 00000638  0x00000344 fetcht  0x00000001 , 0x00004bbb 
+ 00000639  0x00000345 branch  0x00006ef3 
+ 00000640  0x00000348 fetch  0x00000001 , 0x00004a08 
+ 00000641  0x00000349 nrtn  0x00000034 
+ 00000642  0x0000034a fetch  0x00000001 , 0x00004d10 
+ 00000643  0x0000034b bbit1  0x00000002 , 0x00000288 
+ 00000644  0x0000034c fetch  0x00000001 , 0x000049aa 
+ 00000645  0x0000034d bbit0  0x00000002 , 0x0000027a 
+ 00000646  0x0000034e fetcht  0x00000001 , 0x00004bbb 
+ 00000647  0x0000034f branch  0x00006ef7 
+ 00000648  0x00000352 fetch  0x00000008 , 0x00004713 
+ 00000649  0x00000353 bbit0  0x00000004 , 0x00000284 
+ 00000650  0x00000354 fetch  0x00000001 , 0x00004d08 
+ 00000651  0x00000355 sub  0x0000003f , 0x0000000b , 0x0000003e 
+ 00000652  0x00000356 nbranch  0x00000284 , 0x00000002 
+ 00000653  0x00000357 rtn 
+ 00000654  0x0000035a fetch  0x00000008 , 0x00004713 
+ 00000655  0x0000035b rtnbit1  0x00000004 
+ 00000656  0x0000035c branch  0x0000027c 
+ 00000657  0x0000035f fetch  0x00000001 , 0x00004a08 
+ 00000658  0x00000360 rtn  0x00000034 
+ 00000659  0x00000361 increase  0xffffffff , 0x0000003f 
+ 00000660  0x00000362 store  0x00000001 , 0x00004a08 
+ 00000661  0x00000363 branch  0x00000297 , 0x00000034 
+ 00000662  0x00000364 branch  0x0000029d 
+ 00000663  0x00000367 fetch  0x00000001 , 0x00004666 
+ 00000664  0x00000368 beq  0x00000000 , 0x000002a3 
+ 00000665  0x00000369 beq  0x00000001 , 0x000002a5 
+ 00000666  0x0000036a beq  0x00000002 , 0x000002a7 
+ 00000667  0x0000036b beq  0x00000003 , 0x000002a9 
+ 00000668  0x0000036c rtn 
+ 00000669  0x0000036f fetch  0x00000001 , 0x00004666 
+ 00000670  0x00000370 beq  0x00000000 , 0x000002ab 
+ 00000671  0x00000371 beq  0x00000001 , 0x000002ad 
+ 00000672  0x00000372 beq  0x00000002 , 0x000002af 
+ 00000673  0x00000373 beq  0x00000003 , 0x000002b1 
+ 00000674  0x00000374 rtn 
+ 00000675  0x00000377 fetcht  0x00000001 , 0x00004bb7 
+ 00000676  0x00000378 branch  0x00006ef3 
+ 00000677  0x0000037b fetcht  0x00000001 , 0x00004bb8 
+ 00000678  0x0000037c branch  0x00006ef3 
+ 00000679  0x0000037f fetcht  0x00000001 , 0x00004bb9 
+ 00000680  0x00000380 branch  0x00006ef3 
+ 00000681  0x00000383 fetcht  0x00000001 , 0x00004bba 
+ 00000682  0x00000384 branch  0x00006ef3 
+ 00000683  0x00000387 fetcht  0x00000001 , 0x00004bb7 
+ 00000684  0x00000388 branch  0x00006ef7 
+ 00000685  0x0000038b fetcht  0x00000001 , 0x00004bb8 
+ 00000686  0x0000038c branch  0x00006ef7 
+ 00000687  0x0000038f fetcht  0x00000001 , 0x00004bb9 
+ 00000688  0x00000390 branch  0x00006ef7 
+ 00000689  0x00000393 fetcht  0x00000001 , 0x00004bba 
+ 00000690  0x00000394 branch  0x00006ef7 
+ 00000691  0x00000397 fetch  0x00000002 , 0x00004781 
+ 00000692  0x00000398 rtn  0x00000034 
+ 00000693  0x00000399 fetch  0x00000001 , 0x00004bca 
+ 00000694  0x0000039a rtn  0x00000034 
+ 00000695  0x0000039b increase  0xffffffff , 0x0000003f 
+ 00000696  0x0000039c store  0x00000001 , 0x00004bca 
+ 00000697  0x0000039d bbit1  0x00000000 , 0x0000029d 
+ 00000698  0x0000039e branch  0x00000297 
+ 00000699  0x000003a1 fetch  0x00000001 , 0x00004666 
+ 00000700  0x000003a2 beq  0x00000000 , 0x000002c0 
+ 00000701  0x000003a3 fetch  0x00000002 , 0x00004790 
+ 00000702  0x000003a4 rtn  0x00000034 
+ 00000703  0x000003a5 branch  0x000002c2 
+ 00000704  0x000003a8 fetch  0x00000002 , 0x000045d8 
+ 00000705  0x000003a9 rtn  0x00000034 
+ 00000706  0x000003aa fetch  0x00000001 , 0x00004d07 
+ 00000707  0x000003ab increase  0x00000001 , 0x0000003f 
+ 00000708  0x000003ac store  0x00000001 , 0x00004d07 
+ 00000709  0x000003ad bbit1  0x00000002 , 0x0000029d 
+ 00000710  0x000003ae branch  0x00000297 
+ 00000711  0x000003b2 jam  0x00000000 , 0x00004d0c 
+ 00000712  0x000003b3 fetch  0x00000002 , 0x00004790 
+ 00000713  0x000003b4 nrtn  0x00000034 
+ 00000714  0x000003b5 fetch  0x00000002 , 0x000045d8 
+ 00000715  0x000003b6 nrtn  0x00000034 
+ 00000716  0x000003b7 fetch  0x00000002 , 0x000045de 
+ 00000717  0x000003b8 nrtn  0x00000034 
+ 00000718  0x000003b9 fetch  0x00000001 , 0x00004a08 
+ 00000719  0x000003ba nrtn  0x00000034 
+ 00000720  0x000003bb fetch  0x00000008 , 0x00004713 
+ 00000721  0x000003bc rtnbit0  0x00000023 
+ 00000722  0x000003bd rtnbit0  0x00000004 
+ 00000723  0x000003be bbit1  0x00000027 , 0x000002e5 
+ 00000724  0x000003bf fetch  0x00000001 , 0x00004d08 
+ 00000725  0x000003c0 increase  0x00000001 , 0x0000003f 
+ 00000726  0x000003c1 store  0x00000001 , 0x00004d08 
+ 00000727  0x000003c2 sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00000728  0x000003c3 ncall  0x000002de , 0x00000002 
+ 00000729  0x000003c4 beq  0x00000002 , 0x000002e1 
+ 00000730  0x000003c5 beq  0x00000004 , 0x000002e3 
+ 00000731  0x000003c6 beq  0x00000006 , 0x000002e1 
+ 00000732  0x000003c7 beq  0x00000008 , 0x000002e3 
+ 00000733  0x000003c8 rtn 
+ 00000734  0x000003ca jam  0x00000001 , 0x00004d08 
+ 00000735  0x000003cb jam  0x00000000 , 0x00004d0b 
+ 00000736  0x000003cc branch  0x000002e3 
+ 00000737  0x000003ce fetcht  0x00000001 , 0x00004bbc 
+ 00000738  0x000003cf branch  0x00006ef7 
+ 00000739  0x000003d1 fetcht  0x00000001 , 0x00004bbc 
+ 00000740  0x000003d2 branch  0x00006ef3 
+ 00000741  0x000003d5 fetch  0x00000002 , 0x00004725 
+ 00000742  0x000003d6 fetcht  0x00000002 , 0x00004781 
+ 00000743  0x000003d7 isub  0x00000002 , 0x00000002 
+ 00000744  0x000003d8 fetch  0x00000002 , 0x00004d09 
+ 00000745  0x000003d9 isub  0x00000002 , 0x0000003e 
+ 00000746  0x000003da nbranch  0x000002e3 , 0x00000002 
+ 00000747  0x000003db jam  0x00000001 , 0x00004d0c 
+ 00000748  0x000003dc fetch  0x00000001 , 0x00004d0b 
+ 00000749  0x000003dd increase  0x00000001 , 0x0000003f 
+ 00000750  0x000003de store  0x00000001 , 0x00004d0b 
+ 00000751  0x000003df beq  0x00000001 , 0x000002e1 
+ 00000752  0x000003e0 beq  0x00000006 , 0x000002e3 
+ 00000753  0x000003e1 sub  0x0000003f , 0x00000009 , 0x0000003e 
+ 00000754  0x000003e2 ncall  0x000002de , 0x00000002 
+ 00000755  0x000003e3 rtn 
+ 00000756  0x000003e8 rtn 
+ 00000757  0x000003eb arg  0x000048ee , 0x00000013 
+ 00000758  0x000003ec arg  0x000002f8 , 0x00000012 
+ 00000759  0x000003ed branch  0x000042e7 
+ 00000760  0x000003f0 jam  0x00000001 , 0x000048eb 
+ 00000761  0x000003f1 branch  0x00004f6c 
+ 00000762  0x000003f5 arg  0x00004781 , 0x00000013 
+ 00000763  0x000003f6 arg  0x000002fd , 0x00000012 
+ 00000764  0x000003f7 branch  0x000042e7 
+ 00000765  0x000003fa fetch  0x00000001 , 0x00004666 
+ 00000766  0x000003fb beq  0x00000000 , 0x000001fb 
+ 00000767  0x000003fc branch  0x00005aad 
+ 00000768  0x000003ff fetch  0x00000001 , 0x00004ba1 
+ 00000769  0x00000400 bbit1  0x00000000 , 0x00000304 
+ 00000770  0x00000401 call  0x0000030d 
+ 00000771  0x00000402 rtn 
+ 00000772  0x00000405 fetch  0x00000001 , 0x00004ba4 
+ 00000773  0x00000406 sub  0x0000003f , 0x00000064 , 0x0000003e 
+ 00000774  0x00000407 nrtn  0x00000002 
+ 00000775  0x00000408 increase  0x00000001 , 0x0000003f 
+ 00000776  0x00000409 store  0x00000001 , 0x00004ba4 
+ 00000777  0x0000040a rtnne  0x00000019 
+ 00000778  0x0000040b jam  0x00000000 , 0x00004ba3 
+ 00000779  0x0000040d call  0x000004e6 
+ 00000780  0x0000040e branch  0x00004e39 
+ 00000781  0x00000411 jam  0x00000000 , 0x00004ba4 
+ 00000782  0x00000412 rtn 
+ 00000783  0x00000415 call  0x00004bfb 
+ 00000784  0x00000416 branch  0x00000311 
+ 00000785  0x00000419 arg  0x00000000 , 0x00000011 
+ 00000786  0x0000041a fetcht  0x00000004 , 0x00004d12 
+ 00000787  0x0000041b copy  0x00000022 , 0x00000012 
+ 00000788  0x0000041c copy  0x00000012 , 0x0000003f 
+ 00000789  0x0000041d isub  0x00000002 , 0x0000003e 
+ 00000790  0x0000041e ncall  0x00007806 , 0x00000002 
+ 00000791  0x00000420 copy  0x00000012 , 0x0000003f 
+ 00000792  0x00000421 increase  0x00000028 , 0x00000002 
+ 00000793  0x00000422 isub  0x00000002 , 0x0000003e 
+ 00000794  0x00000423 nbranch  0x00000323 , 0x00000002 
+ 00000795  0x00000424 increase  0x00000001 , 0x00000011 
+ 00000796  0x00000425 and  0x00000011 , 0x0000000f , 0x0000003f 
+ 00000797  0x00000426 nbranch  0x00000317 , 0x00000034 
+ 00000798  0x00000427 arg  0x00000000 , 0x00000011 
+ 00000799  0x00000428 call  0x00000328 
+ 00000800  0x0000042a copy  0x00000022 , 0x0000003f 
+ 00000801  0x0000042b store  0x00000004 , 0x00004d12 
+ 00000802  0x0000042c rtn 
+ 00000803  0x0000042e copy  0x00000011 , 0x0000003f 
+ 00000804  0x0000042f rtn  0x00000034 
+ 00000805  0x00000430 increase  0xffffffd8 , 0x00000002 
+ 00000806  0x00000431 set0  0x0000001c , 0x00000002 
+ 00000807  0x00000432 storet  0x00000004 , 0x00004d12 
+ 00000808  0x00000434 store  0x00000001 , 0x00004d16 
+ 00000809  0x00000436 fetch  0x00000001 , 0x00004d16 
+ 00000810  0x00000437 rtn  0x00000034 
+ 00000811  0x00000438 increase  0xffffffff , 0x0000003f 
+ 00000812  0x00000439 store  0x00000001 , 0x00004d16 
+ 00000813  0x0000043b call  0x000003ad 
+ 00000814  0x0000043d branch  0x00000329 
+ 00000815  0x00000441 fetch  0x00000008 , 0x00004713 
+ 00000816  0x00000442 bbit0  0x00000015 , 0x00000342 
+ 00000817  0x00000443 call  0x0000004b 
+ 00000818  0x00000444 call  0x00000235 
+ 00000819  0x00000445 call  0x00006f82 
+ 00000820  0x00000446 call  0x00006fb0 
+ 00000821  0x00000447 div  0x0000003f , 0x0000000a 
+ 00000822  0x00000448 call  0x00007d5f 
+ 00000823  0x00000449 store  0x00000002 , 0x00004633 
+ 00000824  0x0000044a fetch  0x00000002 , 0x0000462f 
+ 00000825  0x0000044b div  0x0000003f , 0x00000002 
+ 00000826  0x0000044c call  0x00007d5f 
+ 00000827  0x0000044d fetcht  0x00000002 , 0x00004633 
+ 00000828  0x0000044e isub  0x00000002 , 0x0000003e 
+ 00000829  0x0000044f branch  0x0000032f , 0x00000002 
+ 00000830  0x00000450 arg  0x0000462d , 0x00000011 
+ 00000831  0x00000451 call  0x00005563 
+ 00000832  0x00000452 fetch  0x00000001 , 0x0000440c 
+ 00000833  0x00000453 bbit1  0x00000001 , 0x00004f6b 
+ 00000834  0x00000455 fetch  0x00000001 , 0x000049a4 
+ 00000835  0x00000456 call  0x00004e24 , 0x00000034 
+ 00000836  0x00000457 fetch  0x00000001 , 0x000049a3 
+ 00000837  0x00000458 nrtn  0x00000034 
+ 00000838  0x00000459 fetch  0x00000001 , 0x00004666 
+ 00000839  0x0000045a beq  0x00000000 , 0x0000602f 
+ 00000840  0x0000045b call  0x00005aa8 
+ 00000841  0x0000045d fetch  0x00000006 , 0x00004668 
+ 00000842  0x0000045f branch  0x00005a94 , 0x00000034 
+ 00000843  0x00000460 branch  0x000054a0 
+ 00000844  0x00000465 call  0x00000578 
+ 00000845  0x00000466 setarg  0x00000000 
+ 00000846  0x00000467 store  0x00000002 , 0x000048e9 
+ 00000847  0x00000468 arg  0x0000489c , 0x00000006 
+ 00000848  0x00000469 arg  0x000048b0 , 0x00000005 
+ 00000849  0x0000046a arg  0x00000014 , 0x00000039 
+ 00000850  0x0000046b call  0x00007cda 
+ 00000851  0x0000046c call  0x00004c85 
+ 00000852  0x0000046d setarg  0x0000489c 
+ 00000853  0x0000046e store  0x00000002 , 0x000048e3 
+ 00000854  0x0000046f setarg  0x00004cfb 
+ 00000855  0x00000470 store  0x00000002 , 0x000048e5 
+ 00000856  0x00000471 call  0x00004c83 
+ 00000857  0x00000473 call  0x00004c81 
+ 00000858  0x00000475 fetch  0x00000002 , 0x000048e9 
+ 00000859  0x00000476 increase  0x00000001 , 0x0000003f 
+ 00000860  0x00000477 store  0x00000002 , 0x000048e9 
+ 00000861  0x00000478 bbit1  0x00000009 , 0x00000393 
+ 00000862  0x00000479 fetcht  0x00000001 , 0x00004864 
+ 00000863  0x0000047a call  0x00006ee6 
+ 00000864  0x0000047b nbranch  0x0000035a , 0x00000001 
+ 00000865  0x0000047c call  0x00004c85 
+ 00000866  0x0000047e fetcht  0x00000001 , 0x00004864 
+ 00000867  0x0000047f call  0x00006ee6 
+ 00000868  0x00000480 branch  0x00000362 , 0x00000001 
+ 00000869  0x00000482 call  0x0000038a 
+ 00000870  0x00000483 call  0x0000039a 
+ 00000871  0x00000484 call  0x00004c81 
+ 00000872  0x00000485 call  0x00004c83 
+ 00000873  0x00000487 fetch  0x00000002 , 0x0000489a 
+ 00000874  0x00000488 copy  0x0000003f , 0x00000012 
+ 00000875  0x00000489 jam  0x00000000 , 0x000048e8 
+ 00000876  0x0000048b ifetcht  0x00000001 , 0x00000012 
+ 00000877  0x0000048c fetch  0x00000002 , 0x00004898 
+ 00000878  0x0000048d copy  0x0000003f , 0x00000011 
+ 00000879  0x0000048e copy  0x00000011 , 0x00000013 
+ 00000880  0x0000048f arg  0x00000014 , 0x00000039 
+ 00000881  0x00000491 ifetch  0x00000001 , 0x00000011 
+ 00000882  0x00000492 isub  0x00000002 , 0x0000003e 
+ 00000883  0x00000493 branch  0x0000037e , 0x00000005 
+ 00000884  0x00000494 increase  0x00000001 , 0x00000011 
+ 00000885  0x00000495 loop  0x00000371 
+ 00000886  0x00000497 increase  0x00000001 , 0x00000012 
+ 00000887  0x00000498 fetch  0x00000001 , 0x000048e8 
+ 00000888  0x00000499 increase  0x00000001 , 0x0000003f 
+ 00000889  0x0000049a store  0x00000001 , 0x000048e8 
+ 00000890  0x0000049b sub  0x0000003f , 0x0000000b , 0x0000003e 
+ 00000891  0x0000049c branch  0x0000036c , 0x00000002 
+ 00000892  0x0000049d call  0x000004f0 
+ 00000893  0x0000049e branch  0x00000587 
+ 00000894  0x000004a2 fetch  0x00000002 , 0x000048e3 
+ 00000895  0x000004a3 copy  0x0000003f , 0x00000005 
+ 00000896  0x000004a4 copy  0x00000011 , 0x0000003f 
+ 00000897  0x000004a5 isub  0x00000013 , 0x0000003f 
+ 00000898  0x000004a6 iadd  0x00000005 , 0x00000005 
+ 00000899  0x000004a7 fetch  0x00000002 , 0x000048e5 
+ 00000900  0x000004a8 copy  0x0000003f , 0x00000013 
+ 00000901  0x000004a9 fetch  0x00000001 , 0x000048e8 
+ 00000902  0x000004aa iadd  0x00000013 , 0x00000013 
+ 00000903  0x000004ab ifetch  0x00000001 , 0x00000013 
+ 00000904  0x000004ac istore  0x00000001 , 0x00000005 
+ 00000905  0x000004ad branch  0x00000376 
+ 00000906  0x000004b0 jam  0x00000000 , 0x00004ab9 
+ 00000907  0x000004b1 jam  0x00000000 , 0x000048e8 
+ 00000908  0x000004b3 call  0x00004c7b 
+ 00000909  0x000004b4 call  0x00000394 
+ 00000910  0x000004b5 call  0x00004c79 
+ 00000911  0x000004b6 call  0x00000394 
+ 00000912  0x000004b7 sub  0x0000003f , 0x0000000b , 0x0000003e 
+ 00000913  0x000004b8 branch  0x0000038c , 0x00000002 
+ 00000914  0x000004b9 branch  0x00004c7b 
+ 00000915  0x000004bc branch  0x0000034c 
+ 00000916  0x000004c1 jam  0x00000000 , 0x000048e7 
+ 00000917  0x000004c2 call  0x00000398 
+ 00000918  0x000004c3 fetch  0x00000002 , 0x000048e5 
+ 00000919  0x000004c4 branch  0x00004c4a 
+ 00000920  0x000004c7 nop  0x00000078 
+ 00000921  0x000004c8 branch  0x00004c65 
+ 00000922  0x000004cb fetch  0x00000002 , 0x00004898 
+ 00000923  0x000004cc copy  0x0000003f , 0x00000012 
+ 00000924  0x000004cd jam  0x00000000 , 0x000048e8 
+ 00000925  0x000004cf jam  0x00000000 , 0x000048e7 
+ 00000926  0x000004d0 ifetcht  0x00000001 , 0x00000012 
+ 00000927  0x000004d1 isolate1  0x00000007 , 0x00000002 
+ 00000928  0x000004d2 branch  0x000003a7 , 0x00000001 
+ 00000929  0x000004d3 call  0x00006ef7 
+ 00000930  0x000004d4 call  0x00000398 
+ 00000931  0x000004d5 ifetcht  0x00000001 , 0x00000012 
+ 00000932  0x000004d6 call  0x00006ef3 
+ 00000933  0x000004d7 ifetcht  0x00000001 , 0x00000012 
+ 00000934  0x000004d8 call  0x00004c7d 
+ 00000935  0x000004da increase  0x00000001 , 0x00000012 
+ 00000936  0x000004db fetch  0x00000002 , 0x000048e3 
+ 00000937  0x000004dc call  0x00004c4a 
+ 00000938  0x000004dd sub  0x0000003f , 0x00000013 , 0x0000003e 
+ 00000939  0x000004de branch  0x0000039d , 0x00000002 
+ 00000940  0x000004df rtn 
+ 00000941  0x000004e2 fetch  0x00000001 , 0x00004d11 
+ 00000942  0x000004e3 rtn  0x00000034 
+ 00000943  0x000004e4 jam  0x00000001 , 0x00004094 
+ 00000944  0x000004e5 jam  0x00000000 , 0x00004d11 
+ 00000945  0x000004e6 rtn 
+ 00000946  0x000004e9 jam  0x00000000 , 0x00004094 
+ 00000947  0x000004ea jam  0x00000001 , 0x00004d11 
+ 00000948  0x000004eb branch  0x00004c87 
+ 00000949  0x000004ee arg  0x0000489c , 0x00000011 
+ 00000950  0x000004ef arg  0x000048b0 , 0x00000012 
+ 00000951  0x000004f0 arg  0x00000014 , 0x00000039 
+ 00000952  0x000004f1 call  0x00007d64 
+ 00000953  0x000004f2 nbranch  0x000003b2 , 0x00000005 
+ 00000954  0x000004f3 call  0x000003ef 
+ 00000955  0x000004f4 call  0x00004c87 , 0x00000034 
+ 00000956  0x000004f6 call  0x00004ccd 
+ 00000957  0x000004f7 fetch  0x00000001 , 0x0000497b 
+ 00000958  0x000004f8 nrtn  0x00000034 
+ 00000959  0x000004f9 fetch  0x00000001 , 0x000049c1 
+ 00000960  0x000004fa rtneq  0x00000001 
+ 00000961  0x000004fb rtneq  0x00000002 
+ 00000962  0x000004fc rtneq  0x00000004 
+ 00000963  0x000004fe jam  0x00000000 , 0x000048e8 
+ 00000964  0x000004ff arg  0x0000489c , 0x00000011 
+ 00000965  0x00000500 arg  0x000048c4 , 0x00000012 
+ 00000966  0x00000502 ifetcht  0x00000001 , 0x00000011 
+ 00000967  0x00000503 ifetch  0x00000001 , 0x00000012 
+ 00000968  0x00000504 ixor  0x00000002 , 0x0000003f 
+ 00000969  0x00000505 branch  0x000003e7 , 0x00000034 
+ 00000970  0x00000506 store  0x00000001 , 0x000048e7 
+ 00000971  0x00000507 storet  0x00000001 , 0x000048f6 
+ 00000972  0x00000508 istoret  0x00000001 , 0x00000012 
+ 00000973  0x00000509 jam  0x00000001 , 0x000048f4 
+ 00000974  0x0000050a jam  0x00000000 , 0x000048f7 
+ 00000975  0x0000050c fetch  0x00000001 , 0x000048e7 
+ 00000976  0x0000050d bbit0  0x00000000 , 0x000003dc 
+ 00000977  0x0000050e fetch  0x00000001 , 0x000048e8 
+ 00000978  0x0000050f mul32  0x0000003f , 0x00000008 , 0x0000003f 
+ 00000979  0x00000510 fetcht  0x00000001 , 0x000048f7 
+ 00000980  0x00000511 iadd  0x00000002 , 0x0000003f 
+ 00000981  0x00000512 arg  0x00004a16 , 0x00000006 
+ 00000982  0x00000513 iadd  0x00000006 , 0x00000006 
+ 00000983  0x00000514 ifetch  0x00000001 , 0x00000006 
+ 00000984  0x00000515 store  0x00000001 , 0x000048f5 
+ 00000985  0x00000516 call  0x00004cfc 
+ 00000986  0x00000517 call  0x00000044 
+ 00000987  0x00000518 call  0x00000402 
+ 00000988  0x0000051a fetch  0x00000001 , 0x000048e7 
+ 00000989  0x0000051b rshift  0x0000003f , 0x0000003f 
+ 00000990  0x0000051c store  0x00000001 , 0x000048e7 
+ 00000991  0x0000051d fetch  0x00000001 , 0x000048f6 
+ 00000992  0x0000051e rshift  0x0000003f , 0x0000003f 
+ 00000993  0x0000051f store  0x00000001 , 0x000048f6 
+ 00000994  0x00000520 fetch  0x00000001 , 0x000048f7 
+ 00000995  0x00000521 increase  0x00000001 , 0x0000003f 
+ 00000996  0x00000522 store  0x00000001 , 0x000048f7 
+ 00000997  0x00000523 sub  0x0000003f , 0x00000007 , 0x0000003e 
+ 00000998  0x00000524 branch  0x000003cf , 0x00000002 
+ 00000999  0x00000526 increase  0x00000001 , 0x00000011 
+ 00001000  0x00000527 increase  0x00000001 , 0x00000012 
+ 00001001  0x00000528 fetch  0x00000001 , 0x000048e8 
+ 00001002  0x00000529 increase  0x00000001 , 0x0000003f 
+ 00001003  0x0000052a store  0x00000001 , 0x000048e8 
+ 00001004  0x0000052b sub  0x0000003f , 0x00000013 , 0x0000003e 
+ 00001005  0x0000052c branch  0x000003c6 , 0x00000002 
+ 00001006  0x0000052d rtn 
+ 00001007  0x00000530 fetch  0x00000008 , 0x0000489c 
+ 00001008  0x00000531 nrtn  0x00000034 
+ 00001009  0x00000532 fetch  0x00000008 , 0x000048a4 
+ 00001010  0x00000533 nrtn  0x00000034 
+ 00001011  0x00000534 fetch  0x00000004 , 0x000048ac 
+ 00001012  0x00000535 nrtn  0x00000034 
+ 00001013  0x00000536 fetch  0x00000001 , 0x000049c4 
+ 00001014  0x00000537 nrtn  0x00000034 
+ 00001015  0x00000538 fetch  0x00000001 , 0x000049c1 
+ 00001016  0x00000539 rtneq  0x00000006 
+ 00001017  0x0000053a jam  0x00000000 , 0x000049c1 
+ 00001018  0x0000053b rtn 
+ 00001019  0x0000053f fetch  0x00000001 , 0x000049c6 
+ 00001020  0x00000540 beq  0x00000003 , 0x000003ff 
+ 00001021  0x00000541 setarg  0x000000fa 
+ 00001022  0x00000542 branch  0x00004d38 
+ 00001023  0x00000544 jam  0x00000008 , 0x000049c2 
+ 00001024  0x00000545 jam  0x0000002c , 0x000049c3 
+ 00001025  0x00000546 branch  0x00004d95 
+ 00001026  0x0000054b fetch  0x00000001 , 0x000048f5 
+ 00001027  0x0000054c arg  0x000000e0 , 0x00000002 
+ 00001028  0x0000054d isub  0x00000002 , 0x0000003e 
+ 00001029  0x0000054e nbranch  0x00000414 , 0x00000002 
+ 00001030  0x0000054f sub  0x0000003f , 0x000000e7 , 0x0000003e 
+ 00001031  0x00000550 nbranch  0x00000431 , 0x00000002 
+ 00001032  0x00000551 and_into  0x00000007 , 0x0000003f 
+ 00001033  0x00000552 copy  0x0000003f , 0x00000007 
+ 00001034  0x00000553 fetch  0x00000001 , 0x000048f6 
+ 00001035  0x00000554 bbit1  0x00000000 , 0x00000410 
+ 00001036  0x00000556 fetch  0x00000001 , 0x000048f8 
+ 00001037  0x00000557 qset0  0x0000003f 
+ 00001038  0x00000558 store  0x00000001 , 0x000048f8 
+ 00001039  0x00000559 rtn 
+ 00001040  0x0000055b fetch  0x00000001 , 0x000048f8 
+ 00001041  0x0000055c qset1  0x0000003f 
+ 00001042  0x0000055d store  0x00000001 , 0x000048f8 
+ 00001043  0x0000055e rtn 
+ 00001044  0x00000561 jam  0x00000000 , 0x00004900 
+ 00001045  0x00000562 fetch  0x00000001 , 0x000048f6 
+ 00001046  0x00000563 bbit1  0x00000000 , 0x00000425 
+ 00001047  0x00000565 fetcht  0x00000001 , 0x000048f5 
+ 00001048  0x00000566 arg  0x00000006 , 0x00000039 
+ 00001049  0x00000567 arg  0x000048fa , 0x00000006 
+ 00001050  0x00000569 ifetch  0x00000001 , 0x00000006 
+ 00001051  0x0000056a isub  0x00000002 , 0x0000003e 
+ 00001052  0x0000056b nbranch  0x00000423 , 0x00000005 
+ 00001053  0x0000056c ifetch  0x00000001 , 0x00000006 
+ 00001054  0x0000056d increase  0xfffffffe , 0x00000006 
+ 00001055  0x0000056e istore  0x00000001 , 0x00000006 
+ 00001056  0x0000056f rtn  0x00000034 
+ 00001057  0x00000570 increase  0x00000001 , 0x00000006 
+ 00001058  0x00000571 istoret  0x00000001 , 0x00000006 
+ 00001059  0x00000573 loop  0x0000041a 
+ 00001060  0x00000574 rtn 
+ 00001061  0x00000577 fetcht  0x00000001 , 0x000048f5 
+ 00001062  0x00000578 arg  0x00000006 , 0x00000039 
+ 00001063  0x00000579 arg  0x000048fa , 0x00000006 
+ 00001064  0x0000057b ifetch  0x00000001 , 0x00000006 
+ 00001065  0x0000057c branch  0x0000042e , 0x00000034 
+ 00001066  0x0000057d isub  0x00000002 , 0x0000003e 
+ 00001067  0x0000057e rtn  0x00000005 
+ 00001068  0x0000057f loop  0x00000428 
+ 00001069  0x00000580 rtn 
+ 00001070  0x00000582 increase  0xffffffff , 0x00000006 
+ 00001071  0x00000583 istoret  0x00000001 , 0x00000006 
+ 00001072  0x00000584 rtn 
+ 00001073  0x00000587 jam  0x00000001 , 0x000049c5 
+ 00001074  0x00000588 fetch  0x00000001 , 0x000048f6 
+ 00001075  0x00000589 isolate0  0x00000000 , 0x0000003f 
+ 00001076  0x0000058a call  0x00000436 , 0x00000001 
+ 00001077  0x0000058b branch  0x00000414 
+ 00001078  0x0000058e jam  0x00000002 , 0x000049c5 
+ 00001079  0x0000058f rtn 
+ 00001080  0x00000592 fetch  0x00000001 , 0x000048f6 
+ 00001081  0x00000593 isolate1  0x00000000 , 0x0000003f 
+ 00001082  0x00000594 call  0x00004d4e , 0x00000001 
+ 00001083  0x00000595 fetch  0x00000001 , 0x000049a1 
+ 00001084  0x00000596 ncall  0x00000445 , 0x00000034 
+ 00001085  0x00000597 fetch  0x00000001 , 0x000048f5 
+ 00001086  0x00000598 beq  0x00000070 , 0x00000440 
+ 00001087  0x00000599 branch  0x00004d01 
+ 00001088  0x0000059c fetch  0x00000001 , 0x000049c6 
+ 00001089  0x0000059d rtnne  0x00000000 
+ 00001090  0x0000059e jam  0x0000000a , 0x000049c2 
+ 00001091  0x0000059f jam  0x00000072 , 0x000049c3 
+ 00001092  0x000005a0 branch  0x00004d95 
+ 00001093  0x000005a3 fetch  0x00000001 , 0x000048f5 
+ 00001094  0x000005a7 branch  0x00004d12 
+ 00001095  0x000005ab call  0x00000457 
+ 00001096  0x000005ac call  0x00004e14 
+ 00001097  0x000005ad jam  0x00000000 , 0x000049a1 
+ 00001098  0x000005ae jam  0x00000000 , 0x000049a2 
+ 00001099  0x000005af jam  0x00000000 , 0x000049a3 
+ 00001100  0x000005b0 fetch  0x00000001 , 0x000048f8 
+ 00001101  0x000005b1 ncall  0x00004e41 , 0x00000034 
+ 00001102  0x000005b2 arg  0x000048fa , 0x00000006 
+ 00001103  0x000005b3 arg  0x00000006 , 0x00000039 
+ 00001104  0x000005b5 ifetch  0x00000001 , 0x00000006 
+ 00001105  0x000005b6 sub  0x0000003f , 0x0000007f , 0x0000003e 
+ 00001106  0x000005b7 call  0x00004e43 , 0x00000005 
+ 00001107  0x000005b8 sub  0x0000003f , 0x000000de , 0x0000003e 
+ 00001108  0x000005b9 call  0x00004e45 , 0x00000005 
+ 00001109  0x000005ba loop  0x00000450 
+ 00001110  0x000005bb rtn 
+ 00001111  0x000005be call  0x00007dbc 
+ 00001112  0x000005bf call  0x00000461 
+ 00001113  0x000005c0 branch  0x0000045f , 0x00000028 
+ 00001114  0x000005c1 fetch  0x00000001 , 0x00004ba1 
+ 00001115  0x000005c2 set0  0x00000000 , 0x0000003f 
+ 00001116  0x000005c3 set0  0x00000001 , 0x0000003f 
+ 00001117  0x000005c4 store  0x00000001 , 0x00004ba1 
+ 00001118  0x000005c5 rtn 
+ 00001119  0x000005c8 jam  0x00000000 , 0x000048f4 
+ 00001120  0x000005c9 rtn 
+ 00001121  0x000005cc fetch  0x00000002 , 0x000048fa 
+ 00001122  0x000005cd fetcht  0x00000002 , 0x000049a7 
+ 00001123  0x000005ce isub  0x00000002 , 0x0000003e 
+ 00001124  0x000005cf branch  0x00000469 , 0x00000005 
+ 00001125  0x000005d0 byteswap  0x00000002 , 0x00000002 
+ 00001126  0x000005d1 isub  0x00000002 , 0x0000003e 
+ 00001127  0x000005d2 branch  0x00000469 , 0x00000005 
+ 00001128  0x000005d3 rtn 
+ 00001129  0x000005d6 fetch  0x00000004 , 0x000048fc 
+ 00001130  0x000005d7 nrtn  0x00000034 
+ 00001131  0x000005d8 call  0x00007dba 
+ 00001132  0x000005d9 fetch  0x00000001 , 0x00004ba1 
+ 00001133  0x000005da set1  0x00000000 , 0x0000003f 
+ 00001134  0x000005db set0  0x00000001 , 0x0000003f 
+ 00001135  0x000005dc store  0x00000001 , 0x00004ba1 
+ 00001136  0x000005dd rtn 
+ 00001137  0x000005e2 disable  0x00000028 
+ 00001138  0x000005e3 jam  0x00000000 , 0x0000496c 
+ 00001139  0x000005e4 jam  0x00000000 , 0x0000496d 
+ 00001140  0x000005e5 jam  0x00000000 , 0x0000496e 
+ 00001141  0x000005e6 fetch  0x00000001 , 0x000049c1 
+ 00001142  0x000005e7 beq  0x00000001 , 0x00004da5 
+ 00001143  0x000005e8 beq  0x00000002 , 0x00004daa 
+ 00001144  0x000005e9 beq  0x00000003 , 0x00004daa 
+ 00001145  0x000005ea beq  0x00000004 , 0x00004dae 
+ 00001146  0x000005eb beq  0x00000006 , 0x00004db7 
+ 00001147  0x000005ec fetch  0x00000001 , 0x000048f4 
+ 00001148  0x000005ed branch  0x0000047e , 0x00000034 
+ 00001149  0x000005ee branch  0x00004e54 
+ 00001150  0x000005f1 fetch  0x00000001 , 0x00004666 
+ 00001151  0x000005f2 rtnne  0x00000000 
+ 00001152  0x000005f3 branch  0x00004e66 
+ 00001153  0x000005f6 fetch  0x00000001 , 0x00004666 
+ 00001154  0x000005f7 bne  0x00000000 , 0x00000488 
+ 00001155  0x000005f8 jam  0x00000000 , 0x000049a9 
+ 00001156  0x000005f9 fetch  0x00000002 , 0x00004855 
+ 00001157  0x000005fa ncall  0x00004afc , 0x00000034 
+ 00001158  0x000005fb fetch  0x00000006 , 0x00004858 
+ 00001159  0x000005fc ncall  0x00004afc , 0x00000034 
+ 00001160  0x000005ff fetch  0x00000001 , 0x00004855 
+ 00001161  0x00000600 beq  0x00000000 , 0x0000048b 
+ 00001162  0x00000601 branch  0x00004f19 
+ 00001163  0x00000604 jam  0x00000002 , 0x0000485f 
+ 00001164  0x00000605 call  0x00004f3e 
+ 00001165  0x00000606 fetch  0x00000001 , 0x00004666 
+ 00001166  0x00000607 bne  0x00000000 , 0x00004f2a 
+ 00001167  0x00000608 branch  0x00004f27 
+ 00001168  0x0000060c setarg  0x000004ab 
+ 00001169  0x0000060d store  0x00000002 , 0x000043e9 
+ 00001170  0x0000060e setarg  0x00004fe5 
+ 00001171  0x0000060f store  0x00000002 , 0x000045f2 
+ 00001172  0x00000610 setarg  0x00004ff8 
+ 00001173  0x00000611 store  0x00000002 , 0x000045f4 
+ 00001174  0x00000612 setarg  0x000004ae 
+ 00001175  0x00000613 store  0x00000002 , 0x000045f6 
+ 00001176  0x00000614 setarg  0x000004e0 
+ 00001177  0x00000615 store  0x00000002 , 0x000043d7 
+ 00001178  0x00000617 setarg  0x00004a9a 
+ 00001179  0x00000618 store  0x00000002 , 0x000043dd 
+ 00001180  0x00000619 setarg  0x00004bcc 
+ 00001181  0x0000061a store  0x00000002 , 0x000043db 
+ 00001182  0x0000061b setarg  0x00004f62 
+ 00001183  0x0000061c store  0x00000002 , 0x000043d5 
+ 00001184  0x0000061d setarg  0x00005b08 
+ 00001185  0x0000061e store  0x00000002 , 0x000043df 
+ 00001186  0x0000061f setarg  0x00004b19 
+ 00001187  0x00000620 store  0x00000002 , 0x000043e3 
+ 00001188  0x00000621 setarg  0x000055fa 
+ 00001189  0x00000622 store  0x00000002 , 0x000043e7 
+ 00001190  0x00000625 setarg  0x00006221 
+ 00001191  0x00000626 store  0x00000002 , 0x000043e1 
+ 00001192  0x00000627 setarg  0x00006228 
+ 00001193  0x00000628 store  0x00000002 , 0x000043e5 
+ 00001194  0x00000629 rtn 
+ 00001195  0x0000062c fetch  0x00000001 , 0x00004666 
+ 00001196  0x0000062d rtnne  0x00000000 
+ 00001197  0x0000062e branch  0x0000610b 
+ 00001198  0x00000631 call  0x000004da 
+ 00001199  0x00000632 fetcht  0x00000001 , 0x00004655 
+ 00001200  0x00000633 call  0x00006eb6 
+ 00001201  0x00000635 fetcht  0x00000001 , 0x00004bbd 
+ 00001202  0x00000636 set1  0x00000007 , 0x00000002 
+ 00001203  0x00000637 call  0x00006eb6 
+ 00001204  0x00000639 fetch  0x00000002 , 0x00004898 
+ 00001205  0x0000063a copy  0x0000003f , 0x00000012 
+ 00001206  0x0000063b arg  0x00000014 , 0x00000039 
+ 00001207  0x0000063d ifetcht  0x00000001 , 0x00000012 
+ 00001208  0x0000063e isolate1  0x00000007 , 0x00000002 
+ 00001209  0x0000063f ncall  0x00006ef7 , 0x00000001 
+ 00001210  0x00000640 increase  0x00000001 , 0x00000012 
+ 00001211  0x00000641 loop  0x000004b7 
+ 00001212  0x00000643 jam  0x00000000 , 0x00004d0d 
+ 00001213  0x00000644 fetch  0x00000002 , 0x00004896 
+ 00001214  0x00000645 copy  0x0000003f , 0x00000012 
+ 00001215  0x00000646 arg  0x00000008 , 0x00000039 
+ 00001216  0x00000648 ifetcht  0x00000001 , 0x00000012 
+ 00001217  0x00000649 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00001218  0x0000064a ncall  0x00004f5a , 0x00000005 
+ 00001219  0x0000064b increase  0x00000001 , 0x00000012 
+ 00001220  0x0000064c loop  0x000004c0 
+ 00001221  0x0000064d call  0x000004fe 
+ 00001222  0x0000064e fetcht  0x00000001 , 0x0000465b 
+ 00001223  0x0000064f call  0x000055b5 
+ 00001224  0x00000650 call  0x000055b9 
+ 00001225  0x00000651 branch  0x000054f2 
+ 00001226  0x00000655 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00001227  0x00000656 rtn  0x00000005 
+ 00001228  0x00000657 arg  0x00000004 , 0x00000008 
+ 00001229  0x00000658 isolate1  0x00000007 , 0x00000002 
+ 00001230  0x00000659 branch  0x00006ebd , 0x00000001 
+ 00001231  0x0000065a arg  0x00000003 , 0x00000008 
+ 00001232  0x0000065b branch  0x00006ebd 
+ 00001233  0x0000065e sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00001234  0x0000065f rtn  0x00000005 
+ 00001235  0x00000660 call  0x00006ee6 
+ 00001236  0x00000661 branch  0x000004d7 , 0x00000001 
+ 00001237  0x00000663 arg  0x00000003 , 0x00000008 
+ 00001238  0x00000664 branch  0x00006ebd 
+ 00001239  0x00000667 jam  0x00000001 , 0x00004d0d 
+ 00001240  0x00000668 arg  0x00000006 , 0x00000008 
+ 00001241  0x00000669 branch  0x00006ebd 
+ 00001242  0x0000066d setarg  0x00000000 
+ 00001243  0x0000066e set1  0x00000015 , 0x0000003f 
+ 00001244  0x0000066f store  0x00000008 , 0x00000016 
+ 00001245  0x00000670 setarg  0x00000000 
+ 00001246  0x00000671 istore  0x00000004 , 0x00000005 
+ 00001247  0x00000672 rtn 
+ 00001248  0x00000675 rtnmark1  0x00000026 
+ 00001249  0x00000676 branch  0x000004ae 
+ 00001250  0x0000067a jam  0x000000ff , 0x00004659 
+ 00001251  0x0000067b call  0x0000739a 
+ 00001252  0x0000067c call  0x00004f70 
+ 00001253  0x0000067d branch  0x000004ed 
+ 00001254  0x00000680 call  0x00004b6f 
+ 00001255  0x00000681 call  0x00000297 
+ 00001256  0x00000682 call  0x00000275 
+ 00001257  0x00000683 call  0x0000027c 
+ 00001258  0x00000684 branch  0x00000253 
+ 00001259  0x00000688 call  0x000004ed 
+ 00001260  0x00000689 branch  0x00004327 
+ 00001261  0x0000068d call  0x000004da 
+ 00001262  0x0000068e call  0x00004f70 
+ 00001263  0x0000068f branch  0x000004ae 
+ 00001264  0x00000692 arg  0x00008070 , 0x00000006 
+ 00001265  0x00000693 arg  0x00000010 , 0x00000039 
+ 00001266  0x00000695 ifetch  0x00000001 , 0x00000006 
+ 00001267  0x00000696 nbranch  0x000004f7 , 0x00000034 
+ 00001268  0x00000697 setarg  0x00000040 
+ 00001269  0x00000698 add  0x00000006 , 0xffffffff , 0x00000005 
+ 00001270  0x00000699 istore  0x00000001 , 0x00000005 
+ 00001271  0x0000069b loop  0x000004f2 
+ 00001272  0x0000069c arg  0x000080dc , 0x0000003f 
+ 00001273  0x0000069d isub  0x00000006 , 0x0000003e 
+ 00001274  0x0000069e rtn  0x00000005 
+ 00001275  0x0000069f arg  0x00000008 , 0x00000039 
+ 00001276  0x000006a0 arg  0x000080d4 , 0x00000006 
+ 00001277  0x000006a1 branch  0x000004f2 
+ 00001278  0x000006a4 fetch  0x00000001 , 0x00004d0d 
+ 00001279  0x000006a5 branch  0x00000501 , 0x00000034 
+ 00001280  0x000006a6 branch  0x00000505 
+ 00001281  0x000006aa setarg  0x00000010 
+ 00001282  0x000006ac store  0x00000001 , 0x00008141 
+ 00001283  0x000006ad until  0x0000003e , 0x00000033 
+ 00001284  0x000006ae rtn 
+ 00001285  0x000006b1 setarg  0x00000080 
+ 00001286  0x000006b2 branch  0x00000502 
+ 00001287  0x000006b6 call  0x00002408 
+ 00001288  0x000006b7 fetch  0x00000003 , 0x000040bd 
+ 00001289  0x000006b8 rtn  0x00000034 
+ 00001290  0x000006b9 fetch  0x00000001 , 0x000049a1 
+ 00001291  0x000006ba nrtn  0x00000034 
+ 00001292  0x000006bb fetch  0x00000001 , 0x000049a2 
+ 00001293  0x000006bc nrtn  0x00000034 
+ 00001294  0x000006bd fetch  0x00000001 , 0x00004845 
+ 00001295  0x000006be nrtn  0x00000034 
+ 00001296  0x000006bf fetch  0x00000002 , 0x00004790 
+ 00001297  0x000006c0 nrtn  0x00000034 
+ 00001298  0x000006c1 fetch  0x00000001 , 0x000049c4 
+ 00001299  0x000006c2 nrtn  0x00000034 
+ 00001300  0x000006c3 branch  0x00002490 
+ 00001301  0x000006c8 fetch  0x00000002 , 0x000043e9 
+ 00001302  0x000006c9 call  0x00007d79 
+ 00001303  0x000006cb fetch  0x00000004 , 0x000040ad 
+ 00001304  0x000006cc iadd  0x00000002 , 0x0000003f 
+ 00001305  0x000006cd store  0x00000004 , 0x000040ad 
+ 00001306  0x000006ce call  0x0000051c 
+ 00001307  0x000006d0 branch  0x00002425 
+ 00001308  0x000006d3 storer  0x00000000 , 0x00000008 , 0x000040e7 
+ 00001309  0x000006d4 arg  0x00008070 , 0x00000006 
+ 00001310  0x000006d5 arg  0x000040cc , 0x00000005 
+ 00001311  0x000006d6 call  0x00007c8f 
+ 00001312  0x000006d7 arg  0x000080d4 , 0x00000006 
+ 00001313  0x000006d8 call  0x00007c89 
+ 00001314  0x000006d9 fetch  0x00000001 , 0x00008080 
+ 00001315  0x000006da store  0x00000001 , 0x000040ef 
+ 00001316  0x000006db copy  0x00000002 , 0x00000012 
+ 00001317  0x000006dd arg  0x0000000c , 0x00000039 
+ 00001318  0x000006de arg  0x00000016 , 0x00000011 
+ 00001319  0x000006df arg  0x0000814d , 0x00000013 
+ 00001320  0x000006e0 until  0x0000003e , 0x00000033 
+ 00001321  0x000006e2 ifetch  0x00000001 , 0x00000011 
+ 00001322  0x000006e3 ifetcht  0x00000001 , 0x00000013 
+ 00001323  0x000006e4 isub  0x00000002 , 0x0000003e 
+ 00001324  0x000006e5 branch  0x0000052f , 0x00000005 
+ 00001325  0x000006e6 istore  0x00000001 , 0x00000013 
+ 00001326  0x000006e7 until  0x0000003e , 0x00000033 
+ 00001327  0x000006e9 increase  0x00000001 , 0x00000011 
+ 00001328  0x000006ea increase  0x00000001 , 0x00000013 
+ 00001329  0x000006eb loop  0x00000529 
+ 00001330  0x000006ec copy  0x00000012 , 0x00000002 
+ 00001331  0x000006ed rtn 
+ 00001332  0x000006f1 call  0x00007396 
+ 00001333  0x000006f2 call  0x0000053f 
+ 00001334  0x000006f3 call  0x00000578 
+ 00001335  0x000006f4 call  0x00000590 
+ 00001336  0x000006f5 rtn  0x0000002b 
+ 00001337  0x000006f6 call  0x000004e6 
+ 00001338  0x000006f7 call  0x0000055c 
+ 00001339  0x000006f8 fetch  0x00000001 , 0x00004a07 
+ 00001340  0x000006f9 store  0x00000001 , 0x00004a08 
+ 00001341  0x000006fa call  0x00004a7a 
+ 00001342  0x000006fb branch  0x00004962 
+ 00001343  0x000006ff call  0x000042a3 
+ 00001344  0x00000700 call  0x00000501 
+ 00001345  0x00000701 rtn  0x0000002b 
+ 00001346  0x00000702 call  0x000035f0 
+ 00001347  0x00000703 call  0x0000325b 
+ 00001348  0x00000704 fetch  0x00000001 , 0x00004666 
+ 00001349  0x00000705 store  0x00000001 , 0x00004be6 
+ 00001350  0x00000706 fetch  0x00000003 , 0x000042de 
+ 00001351  0x00000707 store  0x00000003 , 0x00004797 
+ 00001352  0x00000708 call  0x000049af 
+ 00001353  0x00000709 setarg  0x00004bfb 
+ 00001354  0x0000070a store  0x00000002 , 0x0000433f 
+ 00001355  0x0000070b setarg  0x00000020 
+ 00001356  0x0000070c store  0x00000002 , 0x00004341 
+ 00001357  0x0000070d call  0x00002a41 
+ 00001358  0x0000070f fetch  0x00000008 , 0x00004713 
+ 00001359  0x00000710 bbit1  0x00000014 , 0x000049fd 
+ 00001360  0x00000711 bbit1  0x00000012 , 0x00005d6e 
+ 00001361  0x00000712 rtn 
+ 00001362  0x00000715 arg  0x00004667 , 0x00000011 
+ 00001363  0x00000716 fetch  0x00000001 , 0x00004666 
+ 00001364  0x00000717 rtneq  0x00000000 
+ 00001365  0x00000718 increase  0xffffffff , 0x0000003f 
+ 00001366  0x00000719 mul32  0x0000003f , 0x0000000d , 0x0000003f 
+ 00001367  0x0000071a iadd  0x00000011 , 0x00000011 
+ 00001368  0x0000071b ifetch  0x00000001 , 0x00000011 
+ 00001369  0x0000071c store  0x00000001 , 0x000043f3 
+ 00001370  0x0000071d beq  0x00000034 , 0x00000575 
+ 00001371  0x0000071e rtn 
+ 00001372  0x00000722 fetch  0x00000001 , 0x00004bbc 
+ 00001373  0x00000723 fetcht  0x00000001 , 0x00004866 
+ 00001374  0x00000724 isub  0x00000002 , 0x0000003e 
+ 00001375  0x00000725 call  0x00000569 , 0x00000005 
+ 00001376  0x00000726 fetch  0x00000001 , 0x00004bbc 
+ 00001377  0x00000727 fetcht  0x00000001 , 0x00004867 
+ 00001378  0x00000728 isub  0x00000002 , 0x0000003e 
+ 00001379  0x00000729 call  0x0000056d , 0x00000005 
+ 00001380  0x0000072a fetch  0x00000001 , 0x00004bbc 
+ 00001381  0x0000072b fetcht  0x00000001 , 0x00004bbb 
+ 00001382  0x0000072c isub  0x00000002 , 0x0000003e 
+ 00001383  0x0000072d branch  0x00000571 , 0x00000005 
+ 00001384  0x0000072e rtn 
+ 00001385  0x00000731 fetch  0x00000001 , 0x00004d10 
+ 00001386  0x00000732 set1  0x00000001 , 0x0000003f 
+ 00001387  0x00000733 store  0x00000001 , 0x00004d10 
+ 00001388  0x00000734 rtn 
+ 00001389  0x00000737 fetch  0x00000001 , 0x00004d10 
+ 00001390  0x00000738 set1  0x00000000 , 0x0000003f 
+ 00001391  0x00000739 store  0x00000001 , 0x00004d10 
+ 00001392  0x0000073a rtn 
+ 00001393  0x0000073d fetch  0x00000001 , 0x00004d10 
+ 00001394  0x0000073e set1  0x00000002 , 0x0000003f 
+ 00001395  0x0000073f store  0x00000001 , 0x00004d10 
+ 00001396  0x00000740 rtn 
+ 00001397  0x00000744 ifetch  0x00000006 , 0x00000006 
+ 00001398  0x00000745 store  0x00000006 , 0x00004116 
+ 00001399  0x00000746 branch  0x00005c7d 
+ 00001400  0x00000749 call  0x000004da 
+ 00001401  0x0000074a fetcht  0x00000001 , 0x00004655 
+ 00001402  0x0000074b storet  0x00000001 , 0x00004659 
+ 00001403  0x0000074c call  0x00004c7d 
+ 00001404  0x0000074e setarg  0x0000486e 
+ 00001405  0x0000074f store  0x00000002 , 0x00004896 
+ 00001406  0x00000751 setarg  0x00004876 
+ 00001407  0x00000752 store  0x00000002 , 0x00004898 
+ 00001408  0x00000754 setarg  0x0000488a 
+ 00001409  0x00000755 store  0x00000002 , 0x0000489a 
+ 00001410  0x00000757 call  0x00000587 
+ 00001411  0x00000759 fetch  0x00000002 , 0x00004898 
+ 00001412  0x0000075a copy  0x0000003f , 0x00000012 
+ 00001413  0x0000075b arg  0x00000014 , 0x00000039 
+ 00001414  0x0000075c branch  0x000049e1 
+ 00001415  0x0000075f fetch  0x00000002 , 0x00004896 
+ 00001416  0x00000760 copy  0x0000003f , 0x00000012 
+ 00001417  0x00000761 arg  0x00000008 , 0x00000039 
+ 00001418  0x00000763 ifetcht  0x00000001 , 0x00000012 
+ 00001419  0x00000764 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00001420  0x00000765 ncall  0x000049e7 , 0x00000005 
+ 00001421  0x00000766 increase  0x00000001 , 0x00000012 
+ 00001422  0x00000767 loop  0x0000058a 
+ 00001423  0x00000768 branch  0x00000525 
+ 00001424  0x0000076d fetch  0x00000001 , 0x00004666 
+ 00001425  0x0000076e bne  0x00000000 , 0x000049f2 
+ 00001426  0x0000076f call  0x000035fb 
+ 00001427  0x00000770 branch  0x000049ec 
+ 00001428  0x00000773 fetch  0x00000001 , 0x0000066f 
+ 00001429  0x00000774 arg  0x00000008 , 0x00000039 
+ 00001430  0x00000775 arg  0x000044d3 , 0x00000006 
+ 00001431  0x00000777 ifetcht  0x00000001 , 0x00000006 
+ 00001432  0x00000778 isub  0x00000002 , 0x0000003e 
+ 00001433  0x00000779 rtn  0x00000005 
+ 00001434  0x0000077a loop  0x00000597 
+ 00001435  0x0000077b branch  0x0000782c 
+ 00001436  0x0000077e fetch  0x00000001 , 0x0000066f 
+ 00001437  0x0000077f beq  0x0000001f , 0x0000059f 
+ 00001438  0x00000780 branch  0x00007864 
+ 00001439  0x00000783 jam  0x00000034 , 0x00000032 
+ 00001440  0x00000785 fetch  0x00000001 , 0x000043cb 
+ 00001441  0x00000786 beq  0x0000000f , 0x00004bc5 
+ 00001442  0x00000787 branch  0x00006ea6 
+ 00001443  0x0000078e jam  0x00000000 , 0x000045e2 
+ 00001444  0x0000078f branch  0x000032ab 
+ 00001445  0x00000792 fetch  0x00000002 , 0x000045e0 
+ 00001446  0x00000793 and_into  0x000000e0 , 0x0000003f 
+ 00001447  0x00000794 branch  0x000005ac , 0x00000034 
+ 00001448  0x00000795 fetch  0x00000002 , 0x000045e0 
+ 00001449  0x00000796 increase  0x00000001 , 0x0000003f 
+ 00001450  0x00000797 store  0x00000002 , 0x000045e0 
+ 00001451  0x00000798 rtn 
+ 00001452  0x0000079a call  0x0000357f 
+ 00001453  0x0000079b call  0x00003651 
+ 00001454  0x0000079c nbranch  0x00003586 , 0x00000018 
+ 00001455  0x0000079d nbranch  0x00003586 , 0x0000002f 
+ 00001456  0x0000079e call  0x000005f6 
+ 00001457  0x0000079f branch  0x0000356a 
+ 00001458  0x000007a3 call  0x00003625 
+ 00001459  0x000007a4 nbranch  0x000005c2 , 0x00000028 
+ 00001460  0x000007a6 call  0x000005b8 
+ 00001461  0x000007a7 call  0x000005d0 
+ 00001462  0x000007a8 call  0x00004fd5 
+ 00001463  0x000007a9 branch  0x00004fdb 
+ 00001464  0x000007ac fetch  0x00000004 , 0x000045e8 
+ 00001465  0x000007ad fetcht  0x00000004 , 0x000045e4 
+ 00001466  0x000007ae isub  0x00000002 , 0x0000003e 
+ 00001467  0x000007af branch  0x000005bd , 0x00000005 
+ 00001468  0x000007b0 branch  0x000005c0 
+ 00001469  0x000007b3 jam  0x00000000 , 0x00004143 
+ 00001470  0x000007b4 jam  0x000000aa , 0x00004141 
+ 00001471  0x000007b5 rtn 
+ 00001472  0x000007b8 jam  0x000000ff , 0x00004143 
+ 00001473  0x000007b9 rtn 
+ 00001474  0x000007bd fetch  0x00000008 , 0x0000489c 
+ 00001475  0x000007be nbranch  0x00004fdb , 0x00000034 
+ 00001476  0x000007bf fetch  0x00000008 , 0x000048a4 
+ 00001477  0x000007c0 nbranch  0x00004fdb , 0x00000034 
+ 00001478  0x000007c1 fetch  0x00000004 , 0x000048ac 
+ 00001479  0x000007c2 nbranch  0x00004fdb , 0x00000034 
+ 00001480  0x000007c3 call  0x0000369d 
+ 00001481  0x000007c5 call  0x00004fc8 
+ 00001482  0x000007c6 nrtn  0x00000028 
+ 00001483  0x000007c7 call  0x000036be 
+ 00001484  0x000007c8 fetch  0x00000001 , 0x0000473f 
+ 00001485  0x000007c9 ncall  0x00004f75 , 0x00000034 
+ 00001486  0x000007ca fetch  0x00000008 , 0x000045af 
+ 00001487  0x000007cb branch  0x00003622 
+ 00001488  0x000007ce jam  0x00000000 , 0x00004601 
+ 00001489  0x000007d0 fetchr  0x0000000b , 0x00000002 , 0x00000040 
+ 00001490  0x000007d1 until  0x00000023 , 0x00000026 
+ 00001491  0x000007d2 call  0x00004df5 
+ 00001492  0x000007d3 fetch  0x00000002 , 0x000045d8 
+ 00001493  0x000007d4 nbranch  0x00003646 , 0x00000034 
+ 00001494  0x000007d5 call  0x00003651 
+ 00001495  0x000007d6 fetch  0x00000001 , 0x0000457f 
+ 00001496  0x000007d7 beq  0x00000001 , 0x00003646 
+ 00001497  0x000007d8 nbranch  0x000005de , 0x00000018 
+ 00001498  0x000007d9 nbranch  0x000005de , 0x0000002f 
+ 00001499  0x000007da call  0x000005f6 
+ 00001500  0x000007dc jam  0x00000000 , 0x0000473f 
+ 00001501  0x000007dd branch  0x00003646 
+ 00001502  0x000007e1 fetch  0x00000001 , 0x00004602 
+ 00001503  0x000007e2 nrtn  0x00000034 
+ 00001504  0x000007e3 fetch  0x00000002 , 0x000045fe 
+ 00001505  0x000007e4 increase  0x00000001 , 0x0000003f 
+ 00001506  0x000007e5 store  0x00000002 , 0x000045fe 
+ 00001507  0x000007e6 fetch  0x00000001 , 0x000045fe 
+ 00001508  0x000007e7 beq  0x000000ff , 0x00003676 
+ 00001509  0x000007e8 fetch  0x00000001 , 0x00004601 
+ 00001510  0x000007e9 increase  0x00000001 , 0x0000003f 
+ 00001511  0x000007ea store  0x00000001 , 0x00004601 
+ 00001512  0x000007eb and_into  0x00000003 , 0x0000003f 
+ 00001513  0x000007ec branch  0x000005eb , 0x00000034 
+ 00001514  0x000007ed branch  0x000005d1 
+ 00001515  0x000007f0 call  0x00004bfb 
+ 00001516  0x000007f1 call  0x00000457 
+ 00001517  0x000007f2 fetch  0x00000001 , 0x00004ba1 
+ 00001518  0x000007f3 nbranch  0x00003646 , 0x00000034 
+ 00001519  0x000007f4 call  0x000005f1 
+ 00001520  0x000007f5 branch  0x000005d1 
+ 00001521  0x000007f8 fetch  0x00000004 , 0x0000458f 
+ 00001522  0x000007f9 fetcht  0x00000004 , 0x000045e4 
+ 00001523  0x000007fa isub  0x00000002 , 0x0000003e 
+ 00001524  0x000007fb branch  0x00003222 , 0x00000005 
+ 00001525  0x000007fc branch  0x0000369a 
+ 00001526  0x00000800 call  0x0000366e 
+ 00001527  0x00000801 fetch  0x00000001 , 0x000044f8 
+ 00001528  0x00000802 compare  0x00000008 , 0x0000003f , 0x000000f8 
+ 00001529  0x00000803 nrtn  0x00000001 
+ 00001530  0x00000804 fetch  0x00000001 , 0x000044f9 
+ 00001531  0x00000805 beq  0x000000ff , 0x000001fb 
+ 00001532  0x00000806 store  0x00000001 , 0x000049aa 
+ 00001533  0x00000807 rtn 
+ 00001534  0x0000080a call  0x000036b4 
+ 00001535  0x0000080b nrtn  0x00000028 
+ 00001536  0x0000080c call  0x000004da 
+ 00001537  0x0000080d fetch  0x00000003 , 0x00004608 
+ 00001538  0x0000080e branch  0x00003622 
+ 00001539  0x00000812 fetch  0x00000008 , 0x000001fd 
+ 00001540  0x00000813 branch  0x00006f79 , 0x00000034 
+ 00001541  0x00000814 store  0x00000008 , 0x000043fd 
+ 00001542  0x00000815 call  0x00006b3a 
+ 00001543  0x00000816 call  0x00006aad 
+ 00001544  0x00000817 arg  0x00000fc0 , 0x0000003f 
+ 00001545  0x00000818 iadd  0x00000012 , 0x00000012 
+ 00001546  0x00000819 arg  0x0000000a , 0x00000039 
+ 00001547  0x0000081a arg  0x000001fd , 0x00000011 
+ 00001548  0x0000081b call  0x00006b74 
+ 00001549  0x0000081c call  0x00006b37 
+ 00001550  0x0000081d fetch  0x00000008 , 0x000001fd 
+ 00001551  0x0000081e rtn  0x00000034 
+ 00001552  0x0000081f store  0x00000008 , 0x00004be9 
+ 00001553  0x00000820 ifetch  0x00000002 , 0x00000006 
+ 00001554  0x00000821 istore  0x00000002 , 0x00000005 
+ 00001555  0x00000823 rtn 
+ 00001556  0x00000826 fetch  0x00000001 , 0x000080cc 
+ 00001557  0x00000827 set1  0x00000001 , 0x0000003f 
+ 00001558  0x00000828 store  0x00000001 , 0x000080cc 
+ 00001559  0x00000829 fetchr  0x00000012 , 0x00000001 , 0x00004419 
+ 00001560  0x0000082a fetch  0x00000001 , 0x00004433 
+ 00001561  0x0000082b store  0x00000001 , 0x00004419 
+ 00001562  0x0000082c arg  0x00000008 , 0x00000039 
+ 00001563  0x0000082d call  0x00006f67 
+ 00001564  0x0000082e storer  0x00000012 , 0x00000001 , 0x00004419 
+ 00001565  0x0000082f fetch  0x00000001 , 0x00008a0a 
+ 00001566  0x00000830 set0  0x00000004 , 0x0000003f 
+ 00001567  0x00000831 store  0x00000001 , 0x00008a0a 
+ 00001568  0x00000832 rtn 
+ 00001569  0x00000839 fetch  0x00000001 , 0x00004407 
+ 00001570  0x0000083a beq  0x00000001 , 0x00000625 
+ 00001571  0x0000083b beq  0x00000002 , 0x0000062c 
+ 00001572  0x0000083c rtn 
+ 00001573  0x0000083f setarg  0x000003e8 
+ 00001574  0x00000840 store  0x00000002 , 0x00004405 
+ 00001575  0x00000841 fetcht  0x00000002 , 0x00004bed 
+ 00001576  0x00000842 fetch  0x00000002 , 0x00004bef 
+ 00001577  0x00000843 arg  0x00000e10 , 0x00000013 
+ 00001578  0x00000844 call  0x00006fc0 
+ 00001579  0x00000845 branch  0x00000632 
+ 00001580  0x00000848 setarg  0x000003e8 
+ 00001581  0x00000849 store  0x00000002 , 0x00004405 
+ 00001582  0x0000084a fetcht  0x00000002 , 0x00004be9 
+ 00001583  0x0000084b fetch  0x00000002 , 0x00004beb 
+ 00001584  0x0000084c arg  0x000003e8 , 0x00000013 
+ 00001585  0x0000084d call  0x00006fc0 
+ 00001586  0x0000084f fetcht  0x00000002 , 0x00004bf1 
+ 00001587  0x00000850 imul32  0x00000002 , 0x0000003f 
+ 00001588  0x00000851 fetcht  0x00000002 , 0x00004bf3 
+ 00001589  0x00000852 idiv  0x00000002 
+ 00001590  0x00000853 branch  0x00007d5f 
+ 00001591  0x00000856 call  0x00000614 
+ 00001592  0x00000857 fetch  0x00000001 , 0x00008a09 
+ 00001593  0x00000858 set0  0x00000007 , 0x0000003f 
+ 00001594  0x00000859 store  0x00000001 , 0x00008a09 
+ 00001595  0x0000085a jam  0x00000077 , 0x00008a07 
+ 00001596  0x0000085b jam  0x000000c1 , 0x00008a08 
+ 00001597  0x0000085c jam  0x00000061 , 0x00008a0d 
+ 00001598  0x0000085d jam  0x00000000 , 0x00008a0b 
+ 00001599  0x0000085e rtn 
+ 00001600  0x00000863 call  0x00000637 
+ 00001601  0x00000864 call  0x00006f90 
+ 00001602  0x00000865 fetch  0x00000001 , 0x00004409 
+ 00001603  0x00000866 store  0x00000001 , 0x000080cd 
+ 00001604  0x00000867 call  0x00006f97 
+ 00001605  0x00000868 jam  0x00000060 , 0x00008a0d 
+ 00001606  0x00000869 jam  0x00000000 , 0x000080cd 
+ 00001607  0x0000086d call  0x00000637 
+ 00001608  0x0000086e fetch  0x00000001 , 0x00004409 
+ 00001609  0x0000086f store  0x00000001 , 0x000080cd 
+ 00001610  0x00000870 jam  0x00000050 , 0x00008a0b 
+ 00001611  0x00000871 jam  0x000000c0 , 0x00008a0e 
+ 00001612  0x00000873 arg  0x0000000b , 0x00000038 
+ 00001613  0x00000874 fetchr  0x0000002f , 0x00000002 , 0x0000440a 
+ 00001614  0x00000876 jam  0x00000003 , 0x000080cc 
+ 00001615  0x00000877 call  0x00000659 
+ 00001616  0x00000878 fetcht  0x00000002 , 0x00008164 
+ 00001617  0x00000879 storet  0x00000002 , 0x00004bf3 
+ 00001618  0x0000087a call  0x00006f9c 
+ 00001619  0x0000087c arg  0x0000000b , 0x00000038 
+ 00001620  0x0000087d storer  0x0000002f , 0x00000002 , 0x0000440a 
+ 00001621  0x0000087f jam  0x00000060 , 0x00008a0d 
+ 00001622  0x00000880 jam  0x00000000 , 0x000080cd 
+ 00001623  0x00000881 jam  0x00000000 , 0x000080cc 
+ 00001624  0x00000882 rtn 
+ 00001625  0x00000887 fetch  0x00000001 , 0x00008129 
+ 00001626  0x00000888 bbit0  0x00000005 , 0x00000659 
+ 00001627  0x00000889 rtn 
Index: output/bt_program23.list
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.list	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.list	(working copy)
@@ -0,0 +1,1876 @@
+              include "bt_format "
+              org 0x0000
+0x0 000030 bbit1 8 ,pf_patch_ext 
+0x1 000031 beq patch00_0 ,p_soft_reset 
+0x2 000032 beq patch00_2 ,p_main_loop 
+0x3 000033 beq patch02_0 ,p_shutdown_radio 
+0x4 000034 beq patch02_1 ,p_set_sync_on 
+0x5 000035 beq patch02_4 ,p_set_lemode 
+0x6 000036 beq patch02_5 ,p_rf_rx_enable 
+0x7 000037 beq patch03_0 ,p_txon 
+0x8 000038 beq patch03_1 ,p_set_tx_power 
+0x9 000039 beq patch03_2 ,p_initialize_radio_cont 
+0xa 000040 beq patch04_5 ,p_lpm_sleep 
+0xb 000041 beq patch05_0 ,p_lpm_dispatch 
+0xc 000042 beq patch08_2 ,p_keyboard_load_otp_info_check 
+0xd 000043 beq patch08_4 ,p_keyboard_store_device_info 
+0xe 000044 beq patch08_5 ,p_keyboard_cb_fuction 
+0xf 000045 beq patch08_6 ,p_keyboard_priority_bb_event 
+0x10 000046 beq patch08_7 ,p_keyboard_bb_event_timer 
+0x11 000047 beq patch09_3 ,p_keyboard_idle 
+0x12 000048 beq patch09_4 ,p_keyboard_start_work 
+0x13 000049 beq patch09_6 ,p_keyboard_keyscan 
+0x14 000050 beq patch0a_0 ,p_keyboard_key_process 
+0x15 000051 beq patch0a_2 ,p_keyboard_keyvalue_fn_replace 
+0x16 000053 beq patch0a_5 ,p_keyboard_special_key_check 
+0x17 000054 beq patch0a_7 ,p_keyboard_motion 
+0x18 000055 beq patch0b_1 ,p_keyboard_device_data_tpye_check 
+0x19 000056 beq patch0b_2 ,p_keyboard_before_hibernate 
+0x1a 000057 beq patch0b_3 ,p_keyboard_app_enter_hibernate 
+0x1b 000058 beq patch0b_4 ,p_keyboard_device_led_all_off 
+0x1c 000059 beq patch0b_5 ,p_keyboard_setgpio_hibernate 
+0x1d 000060 beq patch0b_6 ,p_keyboard_g24_transmit_process 
+0x1e 000061 beq patch0b_7 ,p_keyboard_g24_short_sleep 
+0x1f 000062 beq patch0e_1 ,p_keyboard_app_enter_hibernate 
+0x20 000063 beq patch0e_6 ,p_keyboard_adc_read 
+0x21 000064 beq patch0e_7 ,p_keyboard_adc_read_start 
+0x22 000065 beq patch10_0 ,p_mouse_init_sunt 
+0x23 000066 beq patch10_4 ,p_keyboard_app_enter_hibernate 
+0x24 000067 beq patch13_2 ,p_keyboard_discover_setting_led_gpio 
+0x25 000068 beq patch16_1 ,p_keyboard_init 
+0x26 000069 beq patch18_5 ,p_otp_read_data 
+0x27 000070 beq patch1a_5 ,p_gpio_set_wake_by_current_state 
+0x28 000071 beq patch1a_6 ,p_gpio_set_wake 
+0x29 000072 beq patch1b_2 ,p_sadc_calibration 
+0x2a 000073 beq patch1b_3 ,p_adc_init_data 
+0x2b 000074 beq patch1b_4 ,p_enable_adc 
+0x2c 000075 beq patch1b_5 ,p_vdd_calculate_by_mode 
+0x2d 000076 beq patch1e_6 ,p_ui_ipc_send_event 
+0x2e 000077 beq patch1f_2 ,p_check_51cmd_once_continue 
+0x2f 000078 branch assert 
+:      000080 pf_patch_ext:
+0x30 000081 beq patch2f_7 ,p_g24_pair_dispatch 
+0x31 000082 beq patch32_0 ,p_keyboard_g24_reconn_dispatch 
+0x32 000083 beq patch32_5 ,p_keyboard_g24_transmit_no_interrupt 
+0x33 000084 rtneq patch3f_7 
+0x34 000085 branch assert 
+:      000087 p_soft_reset:
+0x35 000088 nbranch p_soft_reset_next ,wake 
+0x36 000089 until null ,lpo_edge 
+0x37 000090 until null ,lpo_edge 
+:      000091 p_soft_reset_next:
+0x38 000092 call mouse_wakeup_from_power_check 
+0x39 000093 nbranch soft_reset + 1 ,user 
+0x3a 000094 fetch 1 ,mem_power_on_flag_new 
+0x3b 000095 branch soft_reset + 1 ,blank 
+0x3c 000096 jam 0 ,mem_power_on_flag_new 
+0x3d 000097 fetch 1 ,mem_config_select_device_button_gpio 
+0x3e 000098 beq ui_button_gpio_disable ,soft_reset + 1 
+0x3f 000099 copy pdata ,queue 
+0x40 000100 fetch 4 ,mem_saved_gpio_in 
+0x41 000101 qisolate0 pdata 
+0x42 000102 call keyboard_pb_set ,true 
+0x43 000103 branch soft_reset + 1 
+:      000105 p_keyboard_keyvalue_commbination_replace:
+0x44 000106 fetch 1 ,mem_keyboard_keyvalue_temp 
+0x45 000107 beq hid_key_search ,p_keyboard_commbination_search 
+0x46 000108 branch keyboard_keyvalue_commbination_replace + 2 
+:      000111 p_keyboard_adc_read:
+0x47 000112 fetch mouse_flag_len ,mem_mouse_flag 
+0x48 000113 rtnbit0 mouse_enable_adc 
+0x49 000114 call p_keyboard_adc_gpio_set 
+0x4a 000115 branch mouse_adc_read + 4 
+:      000117 p_keyboard_adc_gpio_set:
+0x4b 000118 fetch 1 ,mem_adc_config_flag 
+0x4c 000119 rtnne adc_config_gpio 
+0x4d 000120 fetch 1 ,mem_adc_channel 
+0x4e 000121 call p_adc_channel_set_gpio 
+0x4f 000122 copy temp ,pdata 
+0x50 000123 store 1 ,mem_adc_channel_gpio 
+0x51 000124 set1 gpio_active_bit ,pdata 
+0x52 000125 arg gpcfg_input ,temp 
+0x53 000126 branch gpio_config_function 
+:      000128 p_adc_channel_set_gpio:
+0x54 000129 arg 18 ,temp 
+0x55 000130 rtneq 0x6 
+0x56 000131 arg 10 ,temp 
+0x57 000132 rtneq 0x7 
+0x58 000133 arg 9 ,temp 
+0x59 000134 rtneq 0x8 
+0x5a 000135 arg 12 ,temp 
+0x5b 000136 rtneq 0x9 
+0x5c 000137 arg 6 ,temp 
+0x5d 000138 rtneq 0xa 
+0x5e 000139 arg 20 ,temp 
+0x5f 000140 rtneq 0xb 
+0x60 000141 arg 21 ,temp 
+0x61 000142 rtneq 0xc 
+0x62 000143 arg 22 ,temp 
+0x63 000144 rtneq 0xd 
+0x64 000145 arg 13 ,temp 
+0x65 000147 rtn 
+:      000151 p_main_loop:
+0x66 000152 call sp_calc_sequence_256 
+0x67 000153 call sp_calc_sequence_256_check 
+0x68 000154 call le_advertising_dispatch 
+0x69 000155 call idle_dispatch 
+0x6a 000156 call app_process_idle 
+0x6b 000157 call connection_dispatch 
+0x6c 000158 call g24_dispatch 
+0x6d 000159 call lpm_dispatch 
+0x6e 000160 branch p_main_loop 
+:      000161 p_shutdown_radio:
+0x6f 000162 jam 0 ,0x8900 
+0x70 000163 branch shutdown_radio + 1 
+:      000164 p_set_sync_on:
+0x71 000165 jam 0x60 ,0x8a0f 
+0x72 000166 jam 0xaa ,0x8a10 
+0x73 000167 jam 0x7a ,0x8a12 
+0x74 000168 jam 0x00 ,0x8a25 
+0x75 000169 jam 0x00 ,0x8a26 
+0x76 000170 nop 60 
+0x77 000171 jam 0x20 ,0x8a20 
+0x78 000172 jam 0xf5 ,0x8a23 
+0x79 000173 jam 0x12 ,0x8a24 
+0x7a 000174 jam 0x10 ,0x8a24 
+0x7b 000175 nop 60 
+0x7c 000176 jam 0x60 ,0x8a12 
+0x7d 000177 jam 0xdd ,0x8a23 
+0x7e 000178 rtn 
+:      000180 p_initialize_radio_cont:
+0x7f 000181 jam 0 ,mem_le_testtype 
+0x80 000182 jam 0 ,mem_cmd_le_create_conn 
+0x81 000183 until null ,lpo_edge 
+0x82 000185 jam 0x0d ,0x8946 
+0x83 000186 jam 0x10 ,0x896f 
+0x84 000187 jam 0xcd ,0x8a13 
+0x85 000188 jam 0x10 ,0x8a06 
+0x86 000189 jam 0x4a ,0x8a84 
+0x87 000190 jam 0x40 ,0x8a85 
+0x88 000191 jam 0xfe ,0x8a16 
+0x89 000192 call p_set_otp_config 
+0x8a 000195 call wdt_set_disable 
+0x8b 000197 until null ,lpo_edge 
+0x8c 000198 jam 0x5f ,0x813b 
+0x8d 000199 until null ,lpo_edge 
+0x8e 000200 jam 0x88 ,0x813c 
+0x8f 000201 until null ,lpo_edge 
+0x90 000202 fetch 1 ,mem_fcomp_div 
+0x91 000203 beq xtal_16m ,p_initialize_radio_16m 
+0x92 000204 fetch 1 ,mem_ring_ibias_trim 
+0x93 000205 or_into 0x04 ,pdata 
+0x94 000206 store 1 ,0x8a02 
+0x95 000207 jam 0x01 ,0x890f 
+0x96 000208 jam 0x24 ,0x8a80 
+0x97 000209 jam 0x62 ,0x8a81 
+0x98 000210 setarg 0xe61212 
+0x99 000211 store 3 ,0x8a73 
+:      000212 p_initialize_radio2:
+0x9a 000213 jam 0x60 ,0x8a86 
+0x9b 000214 jam 0x3b ,0x8a8b 
+0x9c 000215 call p_dpll_on 
+0x9d 000216 jam 0 ,core_config 
+0x9e 000217 jam clksel_dpll ,core_clksel 
+0x9f 000218 setarg 0x557474 
+0xa0 000219 store 3 ,0x8968 
+0xa1 000220 jam 0x6e ,0x8960 
+0xa2 000221 call p_rx_dcoc 
+0xa3 000222 call p_rfpll_aac_ghpc 
+0xa4 000223 call p_set_xtal_cap 
+0xa5 000224 jam system_clk_12m ,mem_system_clk 
+0xa6 000225 branch sadc_calibration 
+:      000228 p_set_xtal_cap:
+0xa7 000229 rtn wake 
+0xa8 000230 until null ,lpo_edge 
+0xa9 000231 fetch 1 ,mem_xtal_c_sel 
+0xaa 000232 store 1 ,core_xtal_cap 
+0xab 000233 until null ,lpo_edge 
+0xac 000234 rtn 
+:      000236 p_dpll_on:
+0xad 000237 fetch 1 ,mem_fcomp_div 
+0xae 000238 beq xtal_24m ,p_dpll_on_24m 
+0xaf 000239 fetch 1 ,mem_ring_ibias_trim 
+0xb0 000240 or_into 0x06 ,pdata 
+0xb1 000241 store 1 ,0x8a02 
+0xb2 000242 jam 0xe0 ,0x8a05 
+:      000243 p_dpll_on_24m:
+0xb3 000244 jam 0xd8 ,0x8a00 
+0xb4 000245 nop 60 
+0xb5 000246 jam 0xa0 ,0x8a01 
+0xb6 000247 jam 0xdf ,0x8a00 
+0xb7 000248 jam 0xfa ,0x8a01 
+0xb8 000249 nop 20 
+0xb9 000250 jam 0x9f ,0x8a00 
+0xba 000251 rtn 
+:      000253 p_initialize_radio_16m:
+0xbb 000254 fetch 1 ,mem_ring_ibias_trim 
+0xbc 000255 or_into 0x06 ,pdata 
+0xbd 000256 store 1 ,0x8a02 
+0xbe 000257 jam 0x00 ,0x890f 
+0xbf 000258 jam 0x23 ,0x8a80 
+0xc0 000259 jam 0xb0 ,0x8a81 
+0xc1 000260 setarg 0xe40909 
+0xc2 000261 store 3 ,0x8a73 
+0xc3 000262 jam 0x2a ,0x8a76 
+0xc4 000263 jam 0x04 ,0x8902 
+0xc5 000264 branch p_initialize_radio2 
+:      000266 p_set_otp_config:
+0xc6 000267 branch p_set_otp_config_wake ,wake 
+0xc7 000268 fetch 4 ,mem_otp_core_ldo 
+0xc8 000269 rtn blank 
+0xc9 000270 until null ,lpo_edge 
+0xca 000271 fetch 1 ,0x8136 
+0xcb 000272 and pdata ,0xf0 ,pdata 
+0xcc 000273 fetcht 1 ,mem_otp_core_ldo 
+0xcd 000274 ior temp ,pdata 
+0xce 000275 increase -3 ,pdata 
+0xcf 000276 store 1 ,0x8136 
+0xd0 000277 until null ,lpo_edge 
+0xd1 000279 fetch 1 ,0x8138 
+0xd2 000280 and pdata ,0x7 ,pdata 
+0xd3 000281 fetcht 1 ,mem_otp_verf_bg 
+0xd4 000282 lshift3 temp ,temp 
+0xd5 000283 ior temp ,pdata 
+0xd6 000284 store 1 ,0x8138 
+0xd7 000285 until null ,lpo_edge 
+:      000287 p_set_otp_config2:
+0xd8 000288 fetch 1 ,0x8acb 
+0xd9 000289 and pdata ,0xf0 ,pdata 
+0xda 000290 fetcht 1 ,mem_otp_charge_pump 
+0xdb 000291 storet 1 ,mem_otp_charge_pump_x 
+0xdc 000292 ior temp ,pdata 
+0xdd 000293 store 1 ,0x8acb 
+0xde 000295 fetch 1 ,mem_otp_dpll_ibais 
+0xdf 000296 store 1 ,mem_otp_dpll_ibais_x 
+0xe0 000297 isolate1 3 ,pdata 
+0xe1 000298 fetch 1 ,0x8a06 
+0xe2 000299 setflag true ,7 ,pdata 
+0xe3 000300 store 1 ,0x8a06 
+0xe4 000302 fetch 1 ,mem_otp_dpll_ibais 
+0xe5 000303 and pdata ,7 ,temp 
+0xe6 000304 lshift4 temp ,temp 
+0xe7 000305 lshift temp ,temp 
+0xe8 000306 storet 1 ,mem_ring_ibias_trim 
+0xe9 000307 fetch 1 ,0x8a02 
+0xea 000308 and pdata ,0x1f ,pdata 
+0xeb 000309 ior temp ,pdata 
+0xec 000310 store 1 ,0x8a02 
+0xed 000311 rtn 
+:      000313 p_set_otp_config_wake:
+0xee 000314 fetch 2 ,mem_otp_charge_pump_x 
+0xef 000315 rtn blank 
+0xf0 000316 store 2 ,mem_otp_charge_pump 
+0xf1 000317 branch p_set_otp_config2 
+:      000319 p_rf_rx_enable:
+0xf2 000320 call rf_rx_agc_set 
+0xf3 000321 force 8 ,radio_ctrl 
+0xf4 000322 force 0 ,radio_ctrl 
+0xf5 000324 setarg 0x0aaada 
+0xf6 000325 store 3 ,0x8a0f 
+0xf7 000326 jam 0x40 ,0x8a25 
+0xf8 000327 jam 0x10 ,0x8a26 
+0xf9 000328 nop 60 
+0xfa 000329 jam 0xfb ,0x8a01 
+0xfb 000330 jam 0xff ,0x8a25 
+0xfc 000331 jam 0x30 ,0x8a26 
+0xfd 000332 jam 0xfe ,0x8a16 
+0xfe 000333 branch rf_rx_enable + 14 
+:      000335 p_txon:
+0xff 000336 setarg 0x0aaa7e 
+0x100 000337 store 3 ,0x8a0f 
+0x101 000338 nop 60 
+0x102 000339 jam 0x00 ,0x8a25 
+0x103 000340 jam 0x0d ,0x8a26 
+0x104 000341 jam 0xf6 ,0x8a16 
+0x105 000342 branch txon + 7 
+:      000344 p_set_tx_power:
+0x106 000345 fetch 1 ,mem_tx_power 
+0x107 000346 beq tx_power_10db ,p_set_tx_power_10db 
+0x108 000347 branch set_tx_power + 2 
+:      000349 p_set_tx_power_10db:
+0x109 000350 jam 0x25 ,0x8a14 
+0x10a 000351 setarg 0xa93f3f 
+0x10b 000352 store 3 ,0x8a60 
+0x10c 000353 jam 0x1f ,0x8a63 
+0x10d 000354 rtn 
+:      000357 p_rx_dcoc:
+0x10e 000358 rtn wake 
+0x10f 000359 call set_sync_on 
+0x110 000360 arg 39 ,temp 
+0x111 000361 call set_freq_rx 
+0x112 000362 call rf_rx_enable 
+0x113 000363 jam 0x7f ,0x8a25 
+0x114 000364 jam 0x1a ,0x8a30 
+0x115 000365 jam 0x78 ,0x8a31 
+0x116 000366 jam 0xb2 ,0x8a8f 
+0x117 000367 jam 0 ,0x8ac2 
+0x118 000368 jam 0 ,0x8ac3 
+0x119 000369 arg 6 ,queue 
+0x11a 000370 call p_rx_dcoc_avg 
+0x11b 000371 isolate1 13 ,rega 
+0x11c 000372 call qset_start 
+0x11d 000373 isolate1 13 ,regb 
+0x11e 000374 call qset_p 
+0x11f 000375 arg 5 ,queue 
+:      000376 p_rx_dcoc_loop2:
+0x120 000377 call qset1_p 
+0x121 000378 call qset_p 
+0x122 000379 call p_rx_dcoc_avg 
+0x123 000380 arg 0x8ac2 ,contw 
+0x124 000381 rshift4 rega ,pdata 
+0x125 000382 call qsetxor 
+0x126 000383 rshift4 regb ,pdata 
+0x127 000384 call qsetxor 
+0x128 000385 increase -1 ,queue 
+0x129 000386 branch p_rx_dcoc_loop2 ,positive 
+0x12a 000387 branch rx_dcoc_loop2 + 10 
+:      000389 p_rx_dcoc_avg:
+0x12b 000390 nop 60 
+0x12c 000391 setarg mem_dcoc_buf 
+0x12d 000392 store 2 ,0x8982 
+0x12e 000393 setarg mem_dcoc_buf_end 
+0x12f 000394 store 2 ,0x8984 
+0x130 000395 jam 0x9 ,0x8981 
+0x131 000396 jam 0x3 ,0x8981 
+0x132 000397 jam 0x6 ,0x8980 
+0x133 000398 nop 60 
+0x134 000399 arg 0 ,rega 
+0x135 000400 arg 0 ,regb 
+0x136 000401 arg 16 ,loopcnt 
+0x137 000402 arg mem_dcoc_buf ,contr 
+0x138 000403 branch rx_dcoc_loop 
+:      000405 p_rfpll_aac_ghpc:
+0x139 000406 rtn wake 
+0x13a 000407 branch rfpll_aac_ghpc + 1 
+:      000409 p_keyboard_clear_pdata:
+0x13b 000410 setarg 0 
+:      000411 p_mouse_init_sunt:
+:      000412 p_dpll_ring_ibias_calc:
+0x13c 000413 rtn 
+:      000415 p_sadc_calibration:
+0x13d 000416 rtn wake 
+0x13e 000417 jam 0x77 ,core_gpadc_ctrl 
+0x13f 000418 jam 0xc9 ,core_gpadc_cfg0 
+0x140 000419 jam 0x01 ,core_gpadc_cfg3 
+0x141 000420 fetch 1 ,mem_adc_clkdiv 
+0x142 000421 store 1 ,core_sadc_clkdiv 
+0x143 000422 nop 3000 
+0x144 000423 call p_sadc_read 
+0x145 000424 jam 0xc1 ,core_gpadc_cfg0 
+0x146 000425 fetchr regb ,1 ,mem_spi_write_addr 
+0x147 000426 arg 8 ,loopcnt 
+0x148 000427 call sadc_cal_read + 1 
+0x149 000428 fetch 1 ,mem_spi_write_addr 
+0x14a 000429 store 1 ,mem_adc_cal_c7 
+0x14b 000430 storer regb ,1 ,mem_spi_write_addr 
+0x14c 000431 rtn 
+:      000434 p_sadc_read:
+0x14d 000435 jam 0x03 ,core_sadc_ctrl 
+:      000436 p_sadc_read_wait:
+0x14e 000437 fetch 1 ,core_perf_status 
+0x14f 000438 bbit0 saradc_done ,p_sadc_read_wait 
+0x150 000439 fetcht 2 ,core_sadc_data 
+0x151 000440 storet 2 ,mem_adc_current_value 
+0x152 000441 jam 0x00 ,core_sadc_ctrl 
+0x153 000442 rtn 
+:      000445 p_set_lemode:
+0x154 000446 jam 0x11 ,0x8a82 
+0x155 000447 jam 0x12 ,0x8a8d 
+0x156 000448 jam 0x0a ,0x8a8e 
+0x157 000449 fetch 1 ,mem_fcomp_div 
+0x158 000450 beq xtal_16m ,p_set_lemode_2m_16m 
+0x159 000451 setarg 0x5762 
+0x15a 000452 store 2 ,0x8907 
+:      000453 p_set_lemode_2m:
+0x15b 000454 jam 3 ,0x8901 
+0x15c 000455 jam 3 ,0x8930 
+0x15d 000456 rtnmark1 mark_ble_2m 
+0x15e 000457 jam 1 ,0x8901 
+0x15f 000458 jam 0x07 ,0x8a82 
+0x160 000459 jam 0x44 ,0x8a8d 
+0x161 000460 jam 0x0a ,0x8a8e 
+0x162 000461 fetch 1 ,mem_fcomp_div 
+0x163 000462 beq xtal_16m ,p_set_lemode_1m_16m 
+0x164 000463 setarg 0x2bb1 
+0x165 000464 store 2 ,0x8907 
+:      000465 p_set_lemode_1m:
+0x166 000466 rtnmark0 mark_ble_lr 
+0x167 000467 jam 0x24 ,0x8930 
+0x168 000468 jam 5 ,0x8901 
+0x169 000469 rtn 
+:      000471 p_set_lemode_1m_16m:
+0x16a 000472 setarg 0x4189 
+0x16b 000473 store 2 ,0x8907 
+0x16c 000474 branch p_set_lemode_1m 
+:      000476 p_set_lemode_2m_16m:
+0x16d 000477 setarg 0x8312 
+0x16e 000478 store 2 ,0x8907 
+0x16f 000479 branch p_set_lemode_2m 
+:      000481 p_otp_read_data:
+0x170 000482 call enable_otp_read 
+0x171 000483 call otp_read_data + 1 
+0x172 000484 branch otp_disable_chgpump 
+:      000486 p_keyboard_load_otp_info_check:
+0x173 000487 fetch 1 ,mem_device_flag 
+0x174 000488 beq mode_24g_device ,p_keyboard_load_otp_device_info_g24_init 
+0x175 000489 beq mode_bt_device1 ,p_keyboard_load_otp_device_info_ble_init 
+0x176 000490 rtn 
+:      000492 p_keyboard_load_otp_device_info_g24_init:
+0x177 000493 arg 8 ,regd 
+0x178 000494 fetch 2 ,mem_otp_read_retention_max_size 
+0x179 000495 idiv regd 
+0x17a 000496 call wait_div_end 
+0x17b 000497 quotient pdata 
+0x17c 000498 store 2 ,mem_pdatatemp 
+0x17d 000499 arg 0x1fbc ,pdata 
+0x17e 000500 arg 4 ,temp 
+0x17f 000501 arg 4 ,rege 
+0x180 000502 branch p_keyboard_load_otp_device_info 
+:      000504 p_keyboard_load_otp_device_info_ble_init:
+0x181 000505 arg 32 ,regd 
+0x182 000506 fetch 2 ,mem_otp_read_retention_max_size 
+0x183 000507 idiv regd 
+0x184 000508 call wait_div_end 
+0x185 000509 quotient pdata 
+0x186 000510 store 2 ,mem_pdatatemp 
+0x187 000511 arg 0x1fb0 ,pdata 
+0x188 000512 arg 16 ,temp 
+0x189 000513 arg 16 ,rege 
+0x18a 000514 branch p_keyboard_load_otp_device_info 
+:      000516 p_keyboard_load_otp_device_info:
+0x18b 000517 store 2 ,mem_pdatatemp + 2 
+0x18c 000518 storet 1 ,mem_temp 
+0x18d 000519 arg mem_otp_read_retention_memory ,rega 
+0x18e 000520 arg 0 ,regc 
+:      000521 p_keyboard_load_otp_info_check_page_loop:
+0x18f 000522 fetch 2 ,mem_pdatatemp + 2 
+0x190 000523 copy pdata ,regb 
+0x191 000524 fetchr loopcnt ,1 ,mem_temp 
+0x192 000525 arg mem_otp_read_retention_memory ,rega 
+0x193 000526 call otp_read_data 
+0x194 000527 fetch 8 ,mem_otp_read_retention_memory 
+0x195 000528 fetcht 8 ,mem_otp_read_retention_memory + 8 
+0x196 000529 ior temp ,pdata 
+0x197 000530 fetcht 8 ,mem_otp_read_retention_memory + 16 
+0x198 000531 ior temp ,pdata 
+0x199 000532 branch p_keyboard_load_otp_info_check_first_time ,blank 
+0x19a 000533 increase 1 ,regc 
+0x19b 000534 fetch 2 ,mem_pdatatemp 
+0x19c 000535 isub regc ,null 
+0x19d 000537 fetch 2 ,mem_pdatatemp + 2 
+0x19e 000538 isub regd ,pdata 
+0x19f 000539 store 2 ,mem_pdatatemp + 2 
+0x1a0 000540 branch p_keyboard_load_otp_info_check_page_loop 
+:      000541 p_keyboard_load_otp_info_check_first_time:
+0x1a1 000542 sub regc ,0 ,null 
+0x1a2 000543 branch keyboard_load_otp_info_check_first_time_process ,zero 
+:      000544 p_keyboard_load_otp_info_check_first_time_loop_init:
+0x1a3 000545 fetch 2 ,mem_pdatatemp + 2 
+0x1a4 000546 iadd regd ,pdata 
+:      000547 p_keyboard_load_otp_info_check_first_time_loop:
+0x1a5 000548 isub rege ,pdata 
+0x1a6 000549 store 2 ,mem_pdatatemp + 2 
+0x1a7 000550 fetch 2 ,mem_pdatatemp + 2 
+0x1a8 000551 copy pdata ,regb 
+0x1a9 000552 fetchr loopcnt ,1 ,mem_temp 
+0x1aa 000553 arg mem_otp_read_retention_memory ,rega 
+0x1ab 000554 call otp_read_data 
+0x1ac 000555 fetch 8 ,mem_otp_read_retention_memory 
+0x1ad 000556 fetcht 8 ,mem_otp_read_retention_memory + 8 
+0x1ae 000557 ior temp ,pdata 
+0x1af 000558 fetcht 8 ,mem_otp_read_retention_memory + 16 
+0x1b0 000559 ior temp ,pdata 
+0x1b1 000560 branch p_keyboard_load_otp_info_check_offset_process ,blank 
+0x1b2 000561 fetch 2 ,mem_pdatatemp + 2 
+0x1b3 000562 branch p_keyboard_load_otp_info_check_first_time_loop 
+:      000564 p_keyboard_load_otp_info_check_offset_process:
+0x1b4 000565 setarg 0x1fc0 
+0x1b5 000566 fetcht 2 ,mem_pdatatemp + 2 
+0x1b6 000567 isub temp ,pdata 
+0x1b7 000568 store 2 ,mem_otp_read_retention_offset 
+0x1b8 000569 copy temp ,pdata 
+0x1b9 000570 iadd rege ,regb 
+0x1ba 000571 fetchr loopcnt ,1 ,mem_temp 
+0x1bb 000572 arg mem_otp_read_retention_memory ,rega 
+0x1bc 000573 call otp_read_data 
+0x1bd 000574 fetch 1 ,mem_device_flag 
+0x1be 000575 beq mode_24g_device ,keyboard_load_otp_info_check_offset_process_g24 
+0x1bf 000576 beq mode_bt_device1 ,p_keyboard_load_otp_info_check_offset_process_ble 
+0x1c0 000577 rtn 
+:      000579 p_keyboard_load_otp_info_check_offset_process_ble:
+0x1c1 000580 fetch 1 ,mem_otp_read_retention_memory 
+0x1c2 000581 sub pdata ,system_os_mac ,null 
+0x1c3 000582 ncall set_pdata_0 ,positive 
+0x1c4 000583 store 1 ,mem_kb_computer_system 
+0x1c5 000584 fetch 1 ,mem_otp_read_retention_memory + 1 
+0x1c6 000585 store 1 ,mem_device1_type 
+0x1c7 000586 fetch 6 ,mem_otp_read_retention_memory + 2 
+0x1c8 000587 store 6 ,mem_device1_addr 
+0x1c9 000588 fetch 6 ,mem_otp_read_retention_memory + 8 
+0x1ca 000589 store 6 ,mem_device1_locall_addr 
+0x1cb 000590 fetcht 2 ,mem_otp_read_retention_memory + 14 
+0x1cc 000591 random pdata 
+0x1cd 000592 iadd temp ,pdata 
+0x1ce 000593 store 2 ,mem_random_addr_increase_count 
+0x1cf 000594 branch p_keyboard_select_reconn_device 
+:      000596 p_keyboard_store_otp_device_info:
+0x1d0 000597 fetch 1 ,mem_device_flag 
+0x1d1 000598 beq mode_24g_device ,p_keyboard_store_otp_device_info_g24 
+0x1d2 000599 beq mode_bt_device1 ,p_keyboard_store_otp_device_info_ble 
+0x1d3 000600 rtn 
+:      000602 p_keyboard_store_otp_device_info_g24:
+0x1d4 000603 fetcht 2 ,mem_otp_read_retention_offset 
+0x1d5 000604 setarg 0x1fc0 
+0x1d6 000605 branch keyboard_store_otp_device_info_g24 + 2 
+:      000607 p_keyboard_store_otp_device_info_ble:
+0x1d7 000608 jam 1 ,mem_otp_store_device_info_flag 
+0x1d8 000609 fetch 1 ,mem_otp_store_system_flag 
+0x1d9 000610 rtn blank 
+:      000611 p_keyboard_wirte_otp_ble:
+0x1da 000612 fetcht 2 ,mem_otp_read_retention_offset 
+0x1db 000613 setarg 0x1fc0 
+0x1dc 000614 isub temp ,pdata 
+0x1dd 000615 store 2 ,mem_pdatatemp 
+0x1de 000617 copy pdata ,regb 
+0x1df 000618 arg mem_kb_computer_system ,rega 
+0x1e0 000619 arg 1 ,loopcnt 
+0x1e1 000620 call otp_write 
+0x1e2 000622 fetch 2 ,mem_pdatatemp 
+0x1e3 000623 add pdata ,1 ,regb 
+0x1e4 000624 arg mem_device1_type ,rega 
+0x1e5 000625 arg 13 ,loopcnt 
+0x1e6 000626 call otp_write 
+0x1e7 000628 fetch 2 ,mem_pdatatemp 
+0x1e8 000629 add pdata ,14 ,regb 
+0x1e9 000630 arg mem_random_addr_increase_count ,rega 
+0x1ea 000631 arg 2 ,loopcnt 
+0x1eb 000632 call otp_write 
+0x1ec 000634 fetcht 2 ,mem_otp_read_retention_offset 
+0x1ed 000635 increase 16 ,temp 
+0x1ee 000636 storet 2 ,mem_otp_read_retention_offset 
+0x1ef 000637 rtn 
+:      000639 p_keyboard_store_device_info:
+0x1f0 000640 fetch mouse_flag_len ,mem_mouse_flag 
+0x1f1 000641 bbit1 mouse_enable_otp ,p_keyboard_store_otp_device_info 
+0x1f2 000642 branch keyboard_store_device_info + 2 
+:      000646 p_keyboard_priority_bb_event:
+0x1f3 000647 copy regc ,pdata 
+0x1f4 000648 beq bt_evt_24g_attempt_fail ,p_keyboard_24g_attempt_fail 
+0x1f5 000649 branch keyboard_priority_bb_event + 2 
+:      000651 p_keyboard_24g_attempt_fail:
+0x1f6 000652 fetch 1 ,mem_24g_attempt_fail_flag 
+0x1f7 000653 nbranch p_keyboard_24g_hibernate_set ,blank 
+0x1f8 000654 fetch 1 ,mem_24g_reconn_type 
+0x1f9 000655 beq fast_conn_and_3_0_addr ,p_keyboard_24g_fast_conn_attempt_fail 
+0x1fa 000656 branch keyboard_24g_attempt_fail + 4 
+:      000658 p_keyboard_24g_hibernate_set:
+0x1fb 000659 jam 0 ,mem_24g_attempt_fail_flag 
+0x1fc 000660 call g24_transmit_next_packet 
+0x1fd 000661 setarg -1 
+0x1fe 000662 store 8 ,mem_24g_enter_hibernate 
+0x1ff 000663 setarg 0 
+0x200 000664 store 7 ,mem_mouse_key 
+0x201 000665 jam 1 ,mem_sensor_shutdown_flag 
+0x202 000666 branch p_keyboard_g24_long_sleep 
+:      000669 p_keyboard_24g_fast_conn_attempt_fail:
+0x203 000670 fetch mouse_flag_len ,mem_mouse_flag 
+0x204 000671 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_start_auto_pair 
+0x205 000672 bbit1 mouse_enable_auto_24g_paring ,mouse_24g_start_auto_pair 
+0x206 000673 bbit0 mouse_enable_24g_auto_pair_nerver_been_paired ,mouse_24g_reconn_dongle_start 
+0x207 000674 fetch 4 ,mem_mouse_24g_addr 
+0x208 000675 branch p_keyboard_24g_start_pair_mode ,blank 
+0x209 000676 branch mouse_24g_reconn_dongle_start 
+:      000681 p_keyboard_bb_event_timer:
+0x20a 000683 call mouse_adc_read 
+0x20b 000684 call p_keyboard_low_voltage_led_timer 
+0x20c 000686 call g24_pair_timeout_timer 
+0x20d 000687 call g24_reconn_timeout_timer 
+0x20e 000688 call mouse_24g_long_sleep_param_update_timer 
+0x20f 000689 call p_keyboard_24g_repeat_send_data 
+0x210 000690 call keyboard_24g_led_status_get_timer 
+0x211 000693 call p_keyboard_num_capslock_led_on_timer 
+0x212 000694 call p_keyboard_device_poweron_timer 
+0x213 000695 call p_keyboard_device_pair_discovery_led_timer 
+0x214 000696 call p_keyboard_mode_led_timer 
+0x215 000697 call keyboard_check_discovery_timeout_timer 
+0x216 000698 call keyboard_check_direct_timeout_timer 
+0x217 000699 call mouse_le_enable_att_list_timer 
+0x218 000700 call keyboard_le_battery_updata_timer 
+0x219 000701 call mouse_le_send_smp_security_request_timer 
+0x21a 000702 call keyboard_le_send_conn_param_update_timer 
+0x21b 000703 call keyboard_le_auto_recognize_timer 
+0x21c 000705 call p_keyboard_key_press_timer 
+0x21d 000706 call keyboard_commbination_key_process 
+0x21e 000707 call mouse_current_mult_update_timer 
+0x21f 000708 call keyboard_store_information_delay_timer 
+0x220 000710 call p_keyboard_long_press_timer 
+0x221 000711 call keyboard_commbination_delay_release_timer 
+0x222 000712 branch p_keyboard_check_no_data_timeout_timer 
+0x223 000713 rtn 
+:      000715 p_keyboard_adc_read_start:
+0x224 000716 call p_keyboard_low_voltage_param_set 
+0x225 000717 call enable_adc 
+0x226 000718 call vdd_calculate_by_mode 
+0x227 000719 div pdata ,10 
+0x228 000720 call get_div_result 
+0x229 000721 store 2 ,mem_mouse_vdd_now_vol 
+0x22a 000722 arg mem_mouse_vdd_calculate_set ,rega 
+0x22b 000723 call mouse_adc_bat_percent_lowpower_out 
+0x22c 000724 fetch 1 ,mem_adc_power_flag 
+0x22d 000725 bbit1 1 ,keyboard_power_down 
+0x22e 000726 bbit0 0 ,p_keyboard_adc_no_low_voltage 
+0x22f 000727 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+0x230 000728 branch mouse_adc_low_voltage 
+:      000730 p_keyboard_adc_no_low_voltage:
+0x231 000731 arg mouse_low_voltage_flag ,queue 
+0x232 000732 call mouse_disable_function_flag 
+0x233 000733 jam 9 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0x234 000734 branch mouse_adc_no_low_voltage + 3 
+:      000737 p_keyboard_low_voltage_param_set:
+0x235 000738 call mouse_adc_gpio_set_before_hibernate 
+0x236 000739 setarg 0x520090 
+0x237 000740 store 3 ,mem_mouse_vdd_full_vol 
+0x238 000741 setarg 0x006d00 
+0x239 000742 istore 3 ,contw 
+0x23a 000743 fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+0x23b 000744 branch p_keyboard_low_voltage_param_set_backligh_off_1v0 ,blank 
+0x23c 000745 jam 0x70 ,mem_mouse_vdd_low_vol 
+0x23d 000746 rtn 
+:      000747 p_keyboard_low_voltage_param_set_backligh_off_1v0:
+0x23e 000748 jam 0x6d ,mem_mouse_vdd_low_vol 
+0x23f 000749 rtn 
+0x240 000750 rtn 
+:      000752 p_keyboard_24g_repeat_send_data:
+0x241 000753 fetch 1 ,mem_same_keyvalue_timerout_flag 
+0x242 000754 nrtn blank 
+0x243 000755 branch keyboard_24g_repeat_send_data 
+:      000757 p_keyboard_num_capslock_led_on_timer:
+0x244 000758 fetch 2 ,mem_mouse_no_data_timer 
+0x245 000759 rtn blank 
+0x246 000760 fetch 1 ,mem_sensor_shutdown_flag 
+0x247 000761 nrtn blank 
+0x248 000762 fetch 2 ,mem_mouse_no_data_timeout 
+0x249 000763 fetcht 2 ,mem_mouse_no_data_timer 
+0x24a 000764 isub temp ,temp 
+0x24b 000765 fetch 2 ,mem_keyboard_caps_led_on_timer 
+0x24c 000766 isub temp ,pdata 
+0x24d 000767 branch p_keyboard_num_cap_led_on ,positive 
+0x24e 000768 call p_keyboard_numlock_led_off 
+0x24f 000769 call p_keyboard_scrolllock_led_off 
+0x250 000770 branch p_keyboard_capslock_led_off 
+:      000772 p_keyboard_capslock_led_off:
+0x251 000773 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x252 000774 bbit1 keyboard_reuse_capsled_bit ,p_keyboard_lowpower_capslock_led_off 
+0x253 000775 fetcht 1 ,mem_keyboard_caps_led_gpio 
+0x254 000776 branch gpio_out_inactive 
+:      000778 p_keyboard_lowpower_capslock_led_off:
+0x255 000779 fetch mouse_flag_len ,mem_mouse_flag 
+0x256 000780 rtnbit1 mouse_low_voltage_flag 
+0x257 000781 branch p_keyboard_capslock_led_off + 2 
+:      000783 p_keyboard_capslock_led_check_on:
+0x258 000784 fetch 1 ,mem_keyboard_led_status 
+0x259 000785 bbit0 kb_pc_keysel_capslock ,p_keyboard_capslock_led_off 
+0x25a 000786 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x25b 000787 bbit1 keyboard_reuse_capsled_bit ,p_keyboard_lowpower_capslock_led_on 
+0x25c 000788 fetcht 1 ,mem_keyboard_caps_led_gpio 
+0x25d 000789 branch gpio_out_active 
+:      000791 p_keyboard_lowpower_capslock_led_on:
+0x25e 000792 fetch mouse_flag_len ,mem_mouse_flag 
+0x25f 000793 bbit0 mouse_low_voltage_flag ,p_keyboard_capslock_led_check_on + 4 
+0x260 000794 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0x261 000795 sub pdata ,11 ,null 
+0x262 000796 nbranch p_keyboard_capslock_led_check_on + 4 ,positive 
+0x263 000797 rtn 
+:      000800 p_keyboard_num_cap_led_on:
+0x264 000801 call p_keyboard_numlock_led_check_on 
+0x265 000802 call p_keyboard_scrolllock_led_check_on 
+0x266 000803 branch p_keyboard_capslock_led_check_on 
+:      000804 p_keyboard_numlock_led_check_on:
+0x267 000805 fetch 1 ,mem_keyboard_led_status 
+0x268 000806 bbit0 kb_pc_keysel_numlock ,p_keyboard_numlock_led_off 
+0x269 000807 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x26a 000808 bbit1 keyboard_reuse_numled_bit ,p_keyboard_lowpower_numlock_led_on 
+0x26b 000809 fetcht 1 ,mem_keyboard_num_led_gpio 
+0x26c 000810 branch gpio_out_active 
+:      000812 p_keyboard_lowpower_numlock_led_on:
+0x26d 000813 fetch mouse_flag_len ,mem_mouse_flag 
+0x26e 000814 bbit0 mouse_low_voltage_flag ,p_keyboard_numlock_led_check_on + 4 
+0x26f 000815 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0x270 000816 sub pdata ,11 ,null 
+0x271 000817 nbranch p_keyboard_numlock_led_check_on + 4 ,positive 
+0x272 000818 rtn 
+:      000820 p_keyboard_numlock_led_off:
+0x273 000821 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x274 000822 bbit1 keyboard_reuse_numled_bit ,p_keyboard_lowpower_numlock_led_off 
+0x275 000823 fetcht 1 ,mem_keyboard_num_led_gpio 
+0x276 000824 branch gpio_out_inactive 
+:      000826 p_keyboard_lowpower_numlock_led_off:
+0x277 000827 fetch mouse_flag_len ,mem_mouse_flag 
+0x278 000828 rtnbit1 mouse_low_voltage_flag 
+0x279 000829 branch p_keyboard_numlock_led_off + 2 
+:      000831 p_keyboard_scrolllock_led_off:
+0x27a 000832 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x27b 000833 bbit1 keyboard_reuse_scrollled_bit ,p_keyboard_lowpower_scrolllock_led_off 
+0x27c 000834 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+0x27d 000835 nrtn blank 
+0x27e 000836 fetcht 1 ,mem_keyboard_scroll_led_gpio 
+0x27f 000837 branch gpio_out_inactive 
+:      000839 p_keyboard_scrolllock_led_check_on:
+0x280 000840 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+0x281 000841 nrtn blank 
+0x282 000842 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x283 000843 bbit1 keyboard_reuse_scrollled_bit ,p_keyboard_lowpower_scroll_led_on 
+0x284 000844 fetch 1 ,mem_keyboard_led_status 
+0x285 000845 bbit0 kb_pc_keysel_scrolllock ,p_keyboard_scrolllock_led_off 
+0x286 000846 fetcht 1 ,mem_keyboard_scroll_led_gpio 
+0x287 000847 branch gpio_out_active 
+:      000849 p_keyboard_lowpower_scroll_led_on:
+0x288 000850 fetch mouse_flag_len ,mem_mouse_flag 
+0x289 000851 bbit0 mouse_low_voltage_flag ,p_keyboard_scrolllock_led_check_on + 4 
+0x28a 000852 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0x28b 000853 sub pdata ,11 ,null 
+0x28c 000854 nbranch p_keyboard_scrolllock_led_check_on + 4 ,positive 
+0x28d 000855 rtn 
+:      000857 p_keyboard_lowpower_scrolllock_led_off:
+0x28e 000858 fetch mouse_flag_len ,mem_mouse_flag 
+0x28f 000859 rtnbit1 mouse_low_voltage_flag 
+0x290 000860 branch p_keyboard_scrolllock_led_off + 2 
+:      000862 p_keyboard_device_poweron_timer:
+0x291 000863 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+0x292 000864 rtn blank 
+0x293 000865 increase -1 ,pdata 
+0x294 000866 store 1 ,mem_keyboard_device_poweron_timer_count 
+0x295 000867 branch p_keyboard_device_led_off ,blank 
+0x296 000868 branch p_keyboard_device_led_on 
+:      000870 p_keyboard_device_led_off:
+0x297 000871 fetch 1 ,mem_device_flag 
+0x298 000872 beq mode_24g_device ,p_keyboard_device_24g_led_off 
+0x299 000873 beq mode_bt_device1 ,p_keyboard_device_bt1_led_off 
+0x29a 000874 beq mode_bt_device2 ,p_keyboard_device_bt2_led_off 
+0x29b 000875 beq mode_bt_device3 ,p_keyboard_device_bt3_led_off 
+0x29c 000876 rtn 
+:      000878 p_keyboard_device_led_on:
+0x29d 000879 fetch 1 ,mem_device_flag 
+0x29e 000880 beq mode_24g_device ,p_keyboard_device_24g_led_on 
+0x29f 000881 beq mode_bt_device1 ,p_keyboard_device_bt1_led_on 
+0x2a0 000882 beq mode_bt_device2 ,p_keyboard_device_bt2_led_on 
+0x2a1 000883 beq mode_bt_device3 ,p_keyboard_device_bt3_led_on 
+0x2a2 000884 rtn 
+:      000886 p_keyboard_device_24g_led_off:
+0x2a3 000887 fetcht 1 ,mem_keyboard_24g_led_gpio 
+0x2a4 000888 branch gpio_out_inactive 
+:      000890 p_keyboard_device_bt1_led_off:
+0x2a5 000891 fetcht 1 ,mem_keyboard_bt1_led_gpio 
+0x2a6 000892 branch gpio_out_inactive 
+:      000894 p_keyboard_device_bt2_led_off:
+0x2a7 000895 fetcht 1 ,mem_keyboard_bt2_led_gpio 
+0x2a8 000896 branch gpio_out_inactive 
+:      000898 p_keyboard_device_bt3_led_off:
+0x2a9 000899 fetcht 1 ,mem_keyboard_bt3_led_gpio 
+0x2aa 000900 branch gpio_out_inactive 
+:      000902 p_keyboard_device_24g_led_on:
+0x2ab 000903 fetcht 1 ,mem_keyboard_24g_led_gpio 
+0x2ac 000904 branch gpio_out_active 
+:      000906 p_keyboard_device_bt1_led_on:
+0x2ad 000907 fetcht 1 ,mem_keyboard_bt1_led_gpio 
+0x2ae 000908 branch gpio_out_active 
+:      000910 p_keyboard_device_bt2_led_on:
+0x2af 000911 fetcht 1 ,mem_keyboard_bt2_led_gpio 
+0x2b0 000912 branch gpio_out_active 
+:      000914 p_keyboard_device_bt3_led_on:
+0x2b1 000915 fetcht 1 ,mem_keyboard_bt3_led_gpio 
+0x2b2 000916 branch gpio_out_active 
+:      000918 p_keyboard_mode_led_timer:
+0x2b3 000919 fetch 2 ,mem_mouse_no_data_timer 
+0x2b4 000920 rtn blank 
+0x2b5 000921 fetch 1 ,mem_keyboard_mode_led_on_timer 
+0x2b6 000922 rtn blank 
+0x2b7 000923 increase -1 ,pdata 
+0x2b8 000924 store 1 ,mem_keyboard_mode_led_on_timer 
+0x2b9 000925 bbit1 0 ,p_keyboard_device_led_on 
+0x2ba 000926 branch p_keyboard_device_led_off 
+:      000928 p_keyboard_device_pair_discovery_led_timer:
+0x2bb 000929 fetch 1 ,mem_device_flag 
+0x2bc 000930 beq mode_24g_device ,p_keyboard_device_pair_led 
+0x2bd 000931 fetch 2 ,mem_mouse_discovery_timer 
+0x2be 000932 rtn blank 
+0x2bf 000933 branch p_keyboard_device_pair_led + 2 
+:      000935 p_keyboard_device_pair_led:
+0x2c0 000936 fetch 2 ,mem_24g_pair_timeout 
+0x2c1 000937 rtn blank 
+0x2c2 000938 fetch 1 ,mem_keyboard_pair_led_flag 
+0x2c3 000939 increase 1 ,pdata 
+0x2c4 000940 store 1 ,mem_keyboard_pair_led_flag 
+0x2c5 000941 bbit1 2 ,p_keyboard_device_led_on 
+0x2c6 000942 branch p_keyboard_device_led_off 
+:      000945 p_keyboard_low_voltage_led_timer:
+0x2c7 000946 jam 0 ,mem_keyboard_low_volatage_led_blink_new_data_enable 
+0x2c8 000947 fetch 2 ,mem_mouse_discovery_timer 
+0x2c9 000948 nrtn blank 
+0x2ca 000949 fetch 2 ,mem_24g_pair_timeout 
+0x2cb 000950 nrtn blank 
+0x2cc 000951 fetch 2 ,mem_24g_reconn_timeout 
+0x2cd 000952 nrtn blank 
+0x2ce 000953 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+0x2cf 000954 nrtn blank 
+0x2d0 000955 fetch mouse_flag_len ,mem_mouse_flag 
+0x2d1 000956 rtnbit0 mouse_enable_low_led 
+0x2d2 000957 rtnbit0 mouse_low_voltage_flag 
+0x2d3 000958 bbit1 mouse_enable_low_voltage_led_blink_n_second ,p_keyboard_low_voltage_led_blink_new_data 
+0x2d4 000959 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0x2d5 000960 increase 1 ,pdata 
+0x2d6 000961 store 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0x2d7 000962 sub pdata ,20 ,null 
+0x2d8 000963 ncall p_keyboard_adc_low_volatage_led_timer_count_clean ,positive 
+0x2d9 000964 beq 2 ,p_keyboard_low_voltage_led_on 
+0x2da 000965 beq 4 ,p_keyboard_low_voltage_led_off 
+0x2db 000966 beq 6 ,p_keyboard_low_voltage_led_on 
+0x2dc 000967 beq 8 ,p_keyboard_low_voltage_led_off 
+0x2dd 000968 rtn 
+:      000969 p_keyboard_adc_low_volatage_led_timer_count_clean:
+0x2de 000970 jam 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0x2df 000971 jam 0 ,mem_keyboard_low_volatage_led_flag 
+0x2e0 000972 branch p_keyboard_low_voltage_led_off 
+:      000973 p_keyboard_low_voltage_led_on:
+0x2e1 000974 fetcht 1 ,mem_keyboard_low_voltage_alarm_gpio 
+0x2e2 000975 branch gpio_out_active 
+:      000976 p_keyboard_low_voltage_led_off:
+0x2e3 000977 fetcht 1 ,mem_keyboard_low_voltage_alarm_gpio 
+0x2e4 000978 branch gpio_out_inactive 
+:      000980 p_keyboard_low_voltage_led_blink_new_data:
+0x2e5 000981 fetch 2 ,mem_mouse_no_data_timeout 
+0x2e6 000982 fetcht 2 ,mem_mouse_no_data_timer 
+0x2e7 000983 isub temp ,temp 
+0x2e8 000984 fetch 2 ,mem_adc_low_volatage_led_blink_timer 
+0x2e9 000985 isub temp ,null 
+0x2ea 000986 nbranch p_keyboard_low_voltage_led_off ,positive 
+0x2eb 000987 jam 1 ,mem_keyboard_low_volatage_led_blink_new_data_enable 
+0x2ec 000988 fetch 1 ,mem_keyboard_low_volatage_led_flag 
+0x2ed 000989 increase 1 ,pdata 
+0x2ee 000990 store 1 ,mem_keyboard_low_volatage_led_flag 
+0x2ef 000991 beq 1 ,p_keyboard_low_voltage_led_on 
+0x2f0 000992 beq 6 ,p_keyboard_low_voltage_led_off 
+0x2f1 000993 sub pdata ,9 ,null 
+0x2f2 000994 ncall p_keyboard_adc_low_volatage_led_timer_count_clean ,positive 
+0x2f3 000995 rtn 
+:      000999 p_keyboard_discover_setting_led_gpio:
+0x2f4 001000 rtn 
+:      001002 p_keyboard_long_press_timer:
+0x2f5 001003 arg mem_same_keyvalue_timer ,regc 
+0x2f6 001004 arg p_keyboard_long_press_timerout ,regb 
+0x2f7 001005 branch timer_single_step_2b 
+:      001007 p_keyboard_long_press_timerout:
+0x2f8 001008 jam 1 ,mem_same_keyvalue_timerout_flag 
+0x2f9 001009 branch keyboard_app_enter_hibernate 
+:      001012 p_keyboard_check_no_data_timeout_timer:
+0x2fa 001013 arg mem_mouse_no_data_timer ,regc 
+0x2fb 001014 arg p_keyboard_check_no_data_timeout ,regb 
+0x2fc 001015 branch timer_single_step_2b 
+:      001017 p_keyboard_check_no_data_timeout:
+0x2fd 001018 fetch 1 ,mem_device_flag 
+0x2fe 001019 beq mode_24g_device ,p_keyboard_24g_hibernate_set 
+0x2ff 001020 branch mouse_disconnect 
+:      001022 p_keyboard_key_press_timer:
+0x300 001023 fetch 1 ,mem_keyboard_switch_device_flag 
+0x301 001024 bbit1 keyboard_flag_g24_device_button ,p_keyboard_device_select_g24_press_timer 
+0x302 001025 call p_keyboard_device_select_g24_nopress_timer 
+0x303 001026 rtn 
+:      001028 p_keyboard_device_select_g24_press_timer:
+0x304 001029 fetch 1 ,mem_keyboard_switch_g24_press_timer 
+0x305 001030 sub pdata ,100 ,null 
+0x306 001031 nrtn positive 
+0x307 001032 increase 1 ,pdata 
+0x308 001033 store 1 ,mem_keyboard_switch_g24_press_timer 
+0x309 001034 rtnne 25 
+0x30a 001035 jam 0 ,mem_keyboard_switch_g24_enable 
+:      001036 p_keyboard_24g_start_pair_mode:
+0x30b 001037 call p_keyboard_device_led_all_off 
+0x30c 001038 branch keyboard_24g_start_pair_mode 
+:      001040 p_keyboard_device_select_g24_nopress_timer:
+0x30d 001041 jam 0 ,mem_keyboard_switch_g24_press_timer 
+0x30e 001042 rtn 
+:      001044 p_keyboard_idle:
+0x30f 001045 call kscan_dispatch 
+0x310 001046 branch p_keyboard_evt_ui_timer_check 
+:      001048 p_keyboard_evt_ui_timer_check:
+0x311 001049 arg 0 ,rega 
+0x312 001050 fetcht 4 ,mem_keyboard_evt_btclk 
+0x313 001051 copy clkn_bt ,regb 
+0x314 001052 copy regb ,pdata 
+0x315 001053 isub temp ,null 
+0x316 001054 ncall ui_timer_timeout ,positive 
+:      001055 p_keyboard_evt_ui_timer_check_loop:
+0x317 001056 copy regb ,pdata 
+0x318 001057 increase 40 ,temp 
+0x319 001058 isub temp ,null 
+0x31a 001059 nbranch p_keyboard_evt_ui_timer_check_end ,positive 
+0x31b 001060 increase 1 ,rega 
+0x31c 001061 and rega ,0x0f ,pdata 
+0x31d 001062 nbranch p_keyboard_evt_ui_timer_check_loop ,blank 
+0x31e 001063 arg 0 ,rega 
+0x31f 001064 call p_keyboard_evt_ui_timer_check_send_evt 
+:      001065 p_keyboard_evt_ui_timer_init:
+0x320 001066 copy clkn_bt ,pdata 
+0x321 001067 store 4 ,mem_keyboard_evt_btclk 
+0x322 001068 rtn 
+:      001069 p_keyboard_evt_ui_timer_check_end:
+0x323 001070 copy rega ,pdata 
+0x324 001071 rtn blank 
+0x325 001072 increase -40 ,temp 
+0x326 001073 set0 28 ,temp 
+0x327 001074 storet 4 ,mem_keyboard_evt_btclk 
+:      001075 p_keyboard_evt_ui_timer_check_send_evt:
+0x328 001076 store 1 ,mem_keyboard_evt_timer_count 
+:      001077 p_keyboard_evt_50ms_loop:
+0x329 001078 fetch 1 ,mem_keyboard_evt_timer_count 
+0x32a 001079 rtn blank 
+0x32b 001080 increase -1 ,pdata 
+0x32c 001081 store 1 ,mem_keyboard_evt_timer_count 
+0x32d 001083 call p_keyboard_delay_lpm_timer 
+0x32e 001085 branch p_keyboard_evt_50ms_loop 
+:      001087 p_keyboard_start_work:
+:      001088 p_keyboard_start_work_adc_check:
+0x32f 001089 fetch mouse_flag_len ,mem_mouse_flag 
+0x330 001090 bbit0 mouse_enable_adc ,p_keyboard_start_work_next 
+0x331 001091 call p_keyboard_adc_gpio_set 
+0x332 001092 call p_keyboard_low_voltage_param_set 
+0x333 001093 call enable_adc 
+0x334 001094 call vdd_calculate_by_mode 
+0x335 001095 div pdata ,10 
+0x336 001096 call get_div_result 
+0x337 001097 store 2 ,mem_mouse_vdd_now_vol 
+0x338 001098 fetch 2 ,mem_mouse_vdd_empty_vol 
+0x339 001099 div pdata ,2 
+0x33a 001100 call get_div_result 
+0x33b 001101 fetcht 2 ,mem_mouse_vdd_now_vol 
+0x33c 001102 isub temp ,null 
+0x33d 001103 branch p_keyboard_start_work_adc_check ,positive 
+0x33e 001104 arg mem_mouse_vdd_calculate_set ,rega 
+0x33f 001105 call mouse_adc_bat_percent_lowpower_out 
+0x340 001106 fetch 1 ,mem_adc_power_flag 
+0x341 001107 bbit1 1 ,keyboard_power_down 
+:      001108 p_keyboard_start_work_next:
+0x342 001109 fetch 1 ,mem_keyboard_pairing_type 
+0x343 001110 call keyboard_enable_bt_button_pairing ,blank 
+0x344 001111 fetch 1 ,mem_keyboard_bt_button_flag 
+0x345 001112 nrtn blank 
+0x346 001113 fetch 1 ,mem_device_flag 
+0x347 001114 beq mode_24g_device ,mouse_24g_reconn_general_dongle 
+0x348 001115 call mouse_bluetooth_fast_conn_disable 
+:      001116 p_keyboard_start_ble1_reconnect:
+0x349 001117 fetch 6 ,mem_device1_addr 
+:      001118 p_keyboard_start_ble_reconnect:
+0x34a 001119 branch mouse_bluetooth_fast_conn_init ,blank 
+0x34b 001120 branch mouse_start_reconnect_device 
+:      001124 p_keyboard_keyscan:
+0x34c 001125 call p_keyboard_gpio_init 
+0x34d 001126 setarg 0 
+0x34e 001127 store 2 ,mem_keyscan_exmcu_wait_wake_count 
+0x34f 001128 arg mem_keyscan_value_current ,contr 
+0x350 001129 arg mem_keyscan_value_check ,contw 
+0x351 001130 arg 20 ,loopcnt 
+0x352 001131 call memcpy 
+0x353 001132 call keyboard_stb_state_low 
+0x354 001133 setarg mem_keyscan_value_current 
+0x355 001134 store 2 ,mem_keyscan_value_ptr 
+0x356 001135 setarg mem_keyscan_exmcu_value_new 
+0x357 001136 store 2 ,mem_keyscan_exmcu_value_ptr 
+0x358 001137 call keyboard_stb_state_high 
+0x359 001139 call keyboard_clk_input 
+:      001140 p_keyboard_keyscan_exmcu_start_check:
+0x35a 001141 fetch 2 ,mem_keyscan_exmcu_wait_wake_count 
+0x35b 001142 increase 1 ,pdata 
+0x35c 001143 store 2 ,mem_keyscan_exmcu_wait_wake_count 
+0x35d 001144 bbit1 9 ,p_keyboard_keyscan_reset_exmcu 
+0x35e 001145 fetcht 1 ,mem_mcu_clk_gpio 
+0x35f 001146 call gpio_get_bit 
+0x360 001147 nbranch p_keyboard_keyscan_exmcu_start_check ,true 
+0x361 001148 call keyboard_stb_state_low 
+:      001149 p_keyboard_keyscan_wait_wake_next:
+0x362 001150 fetcht 1 ,mem_mcu_clk_gpio 
+0x363 001151 call gpio_get_bit 
+0x364 001152 branch p_keyboard_keyscan_wait_wake_next ,true 
+0x365 001154 call p_keyboard_keyscan_get_exmcu_value 
+0x366 001155 call p_keyboard_keyscan_get_mcu_value 
+0x367 001156 call keyboard_clk_input 
+0x368 001157 call keyboard_stb_state_high 
+:      001158 p_keyboard_keyscan_copy_value:
+0x369 001159 fetch 2 ,mem_kb_excol_ptr 
+0x36a 001160 copy pdata ,regb 
+0x36b 001161 jam 0 ,mem_keyscan_col_loop_count 
+:      001162 p_keyboard_compare_col_excol_gpio_loop:
+0x36c 001163 ifetcht 1 ,regb 
+0x36d 001164 fetch 2 ,mem_kb_col_ptr 
+0x36e 001165 copy pdata ,rega 
+0x36f 001166 copy rega ,regc 
+0x370 001167 arg 20 ,loopcnt 
+:      001168 p_keyboard_compare_col_gpio_loop:
+0x371 001169 ifetch 1 ,rega 
+0x372 001170 isub temp ,null 
+0x373 001171 branch p_keyboard_copy_value_exmcu_to_mcu ,zero 
+0x374 001172 increase 1 ,rega 
+0x375 001173 loop p_keyboard_compare_col_gpio_loop 
+:      001174 p_keyboard_compare_col_excol_gpio_loop_next:
+0x376 001175 increase 1 ,regb 
+0x377 001176 fetch 1 ,mem_keyscan_col_loop_count 
+0x378 001177 increase 1 ,pdata 
+0x379 001178 store 1 ,mem_keyscan_col_loop_count 
+0x37a 001179 sub pdata ,11 ,null 
+0x37b 001180 branch p_keyboard_compare_col_excol_gpio_loop ,positive 
+0x37c 001181 call p_keyboard_gpio_pu_idle 
+0x37d 001182 branch p_keyboard_key_row_init 
+:      001185 p_keyboard_copy_value_exmcu_to_mcu:
+0x37e 001186 fetch 2 ,mem_keyscan_value_ptr 
+0x37f 001187 copy pdata ,contw 
+0x380 001188 copy rega ,pdata 
+0x381 001189 isub regc ,pdata 
+0x382 001190 iadd contw ,contw 
+0x383 001191 fetch 2 ,mem_keyscan_exmcu_value_ptr 
+0x384 001192 copy pdata ,regc 
+0x385 001193 fetch 1 ,mem_keyscan_col_loop_count 
+0x386 001194 iadd regc ,regc 
+0x387 001195 ifetch 1 ,regc 
+0x388 001196 istore 1 ,contw 
+0x389 001197 branch p_keyboard_compare_col_excol_gpio_loop_next 
+:      001199 p_keyboard_keyscan_get_exmcu_value:
+0x38a 001200 jam 0 ,mem_keyscan_exmcu_reset_count 
+0x38b 001201 jam 0 ,mem_keyscan_col_loop_count 
+:      001202 p_keyboard_keyscan_exmcu_start_loop:
+0x38c 001203 call keyboard_clk_state_low 
+0x38d 001204 call p_keyboard_keyscan_exmcu_get_col_value 
+0x38e 001205 call keyboard_clk_state_high 
+0x38f 001206 call p_keyboard_keyscan_exmcu_get_col_value 
+0x390 001207 sub pdata ,11 ,null 
+0x391 001208 branch p_keyboard_keyscan_exmcu_start_loop ,positive 
+0x392 001209 branch keyboard_clk_state_low 
+:      001211 p_keyboard_keyscan_reset_exmcu:
+0x393 001212 branch p_keyboard_keyscan 
+:      001216 p_keyboard_keyscan_exmcu_get_col_value:
+0x394 001217 jam 0 ,mem_keyscan_value_temp 
+0x395 001218 call p_keyboard_keyscan_get_col_value 
+0x396 001219 fetch 2 ,mem_keyscan_exmcu_value_ptr 
+0x397 001220 branch keyboard_keyscan_value_store 
+:      001222 p_keyboard_keyscan_get_col_value:
+0x398 001223 nop 120 
+0x399 001224 branch keyboard_keyscan_get_col_value 
+:      001226 p_keyboard_keyscan_get_mcu_value:
+0x39a 001227 fetch 2 ,mem_kb_col_ptr 
+0x39b 001228 copy pdata ,regb 
+0x39c 001229 jam 0 ,mem_keyscan_col_loop_count 
+:      001230 p_keyboard_keyscan_mcu_start:
+0x39d 001231 jam 0 ,mem_keyscan_value_temp 
+0x39e 001232 ifetcht 1 ,regb 
+0x39f 001233 isolate1 7 ,temp 
+0x3a0 001234 branch p_keyboard_keyscan_mcu_start_loop ,true 
+0x3a1 001235 call gpio_out_active 
+0x3a2 001236 call p_keyboard_keyscan_get_col_value 
+0x3a3 001237 ifetcht 1 ,regb 
+0x3a4 001238 call gpio_out_inactive 
+0x3a5 001239 ifetcht 1 ,regb 
+0x3a6 001240 call keyboard_gpio_config_input_pu 
+:      001241 p_keyboard_keyscan_mcu_start_loop:
+0x3a7 001242 increase 1 ,regb 
+0x3a8 001243 fetch 2 ,mem_keyscan_value_ptr 
+0x3a9 001244 call keyboard_keyscan_value_store 
+0x3aa 001245 sub pdata ,19 ,null 
+0x3ab 001246 branch p_keyboard_keyscan_mcu_start ,positive 
+0x3ac 001247 rtn 
+:      001249 p_keyboard_delay_lpm_timer:
+0x3ad 001250 fetch 1 ,mem_keyboard_delay_lpm_flag 
+0x3ae 001251 rtn blank 
+0x3af 001252 jam 1 ,mem_lpm_mode 
+0x3b0 001253 jam 0 ,mem_keyboard_delay_lpm_flag 
+0x3b1 001254 rtn 
+:      001256 p_keyboard_press_change_or_no_key:
+0x3b2 001257 jam 0 ,mem_lpm_mode 
+0x3b3 001258 jam 1 ,mem_keyboard_delay_lpm_flag 
+0x3b4 001259 branch keyboard_press_change_or_no_key 
+:      001261 p_keyboard_key_process:
+0x3b5 001262 arg mem_keyscan_value_current ,rega 
+0x3b6 001263 arg mem_keyscan_value_check ,regb 
+0x3b7 001264 arg 20 ,loopcnt 
+0x3b8 001265 call string_compare 
+0x3b9 001266 nbranch p_keyboard_press_change_or_no_key ,zero 
+0x3ba 001267 call p_keyboard_keyscan_value_current_zero_check 
+0x3bb 001268 call keyboard_press_change_or_no_key ,blank 
+0x3bc 001270 call keyboard_ghost_key_check 
+0x3bd 001271 fetch 1 ,mem_mouse_ghost_flag 
+0x3be 001272 nrtn blank 
+0x3bf 001273 fetch 1 ,mem_keyboard_commbination_key_step 
+0x3c0 001274 rtneq cammbination_key_press 
+0x3c1 001275 rtneq cammbination_key_hold 
+0x3c2 001276 rtneq cammbination_key_wait_release 
+0x3c3 001278 jam 0 ,mem_keyscan_col_loop_count 
+0x3c4 001279 arg mem_keyscan_value_current ,rega 
+0x3c5 001280 arg mem_keyscan_value_old ,regb 
+:      001281 p_keyboard_keyvalue_process:
+0x3c6 001282 ifetcht 1 ,rega 
+0x3c7 001283 ifetch 1 ,regb 
+0x3c8 001284 ixor temp ,pdata 
+0x3c9 001285 branch p_keyboard_keyvalue_process_loop ,blank 
+0x3ca 001286 store 1 ,mem_keyscan_value_temp 
+0x3cb 001287 storet 1 ,mem_keyboard_press_flag_temp 
+0x3cc 001288 istoret 1 ,regb 
+0x3cd 001289 jam 1 ,mem_keyboard_data_change_flag 
+0x3ce 001290 jam 0 ,mem_keyboard_keyvalue_bit_loop_count 
+:      001291 p_keyboard_keyvalue_change:
+0x3cf 001292 fetch 1 ,mem_keyscan_value_temp 
+0x3d0 001293 bbit0 0 ,p_keyboard_keyvalue_change_loop 
+0x3d1 001294 fetch 1 ,mem_keyscan_col_loop_count 
+0x3d2 001295 mul32 pdata ,8 ,pdata 
+0x3d3 001296 fetcht 1 ,mem_keyboard_keyvalue_bit_loop_count 
+0x3d4 001297 iadd temp ,pdata 
+0x3d5 001298 arg mem_keyboard_keyvalue_map_new ,contr 
+0x3d6 001299 iadd contr ,contr 
+0x3d7 001300 ifetch 1 ,contr 
+0x3d8 001301 store 1 ,mem_keyboard_keyvalue_temp 
+0x3d9 001302 call keyboard_keyvalue_fn_replace 
+0x3da 001303 call p_keyboard_keyvalue_commbination_replace 
+0x3db 001304 call p_keyboard_keyvalue_in_out 
+:      001305 p_keyboard_keyvalue_change_loop:
+0x3dc 001306 fetch 1 ,mem_keyscan_value_temp 
+0x3dd 001307 rshift pdata ,pdata 
+0x3de 001308 store 1 ,mem_keyscan_value_temp 
+0x3df 001309 fetch 1 ,mem_keyboard_press_flag_temp 
+0x3e0 001310 rshift pdata ,pdata 
+0x3e1 001311 store 1 ,mem_keyboard_press_flag_temp 
+0x3e2 001312 fetch 1 ,mem_keyboard_keyvalue_bit_loop_count 
+0x3e3 001313 increase 1 ,pdata 
+0x3e4 001314 store 1 ,mem_keyboard_keyvalue_bit_loop_count 
+0x3e5 001315 sub pdata ,7 ,null 
+0x3e6 001316 branch p_keyboard_keyvalue_change ,positive 
+:      001317 p_keyboard_keyvalue_process_loop:
+0x3e7 001318 increase 1 ,rega 
+0x3e8 001319 increase 1 ,regb 
+0x3e9 001320 fetch 1 ,mem_keyscan_col_loop_count 
+0x3ea 001321 increase 1 ,pdata 
+0x3eb 001322 store 1 ,mem_keyscan_col_loop_count 
+0x3ec 001323 sub pdata ,19 ,null 
+0x3ed 001324 branch p_keyboard_keyvalue_process ,positive 
+0x3ee 001325 rtn 
+:      001327 p_keyboard_keyscan_value_current_zero_check:
+0x3ef 001328 fetch 8 ,mem_keyscan_value_current 
+0x3f0 001329 nrtn blank 
+0x3f1 001330 fetch 8 ,mem_keyscan_value_current + 8 
+0x3f2 001331 nrtn blank 
+0x3f3 001332 fetch 4 ,mem_keyscan_value_current + 16 
+0x3f4 001333 nrtn blank 
+0x3f5 001334 fetch 1 ,mem_keyboard_commbination_control_key_delay_release_timer 
+0x3f6 001335 nrtn blank 
+0x3f7 001336 fetch 1 ,mem_keyboard_commbination_key_step 
+0x3f8 001337 rtneq cammbination_key_null 
+0x3f9 001338 jam cammbination_key_free ,mem_keyboard_commbination_key_step 
+0x3fa 001339 rtn 
+:      001342 p_keyboard_commbination_search:
+0x3fb 001343 fetch 1 ,mem_kb_computer_system 
+0x3fc 001344 beq system_os_mac ,p_keyboard_commbination_mac_search 
+0x3fd 001345 setarg hid_key_ac_search 
+0x3fe 001346 branch keyboard_keyvalue_store_temp 
+:      001347 p_keyboard_commbination_mac_search:
+0x3ff 001348 jam left_gui ,mem_keyboard_commbination_control_key_value 
+0x400 001349 jam hid_key_space ,mem_keyboard_commbination_standard_key_value 
+0x401 001350 branch keyboard_commbination_keypress 
+:      001354 p_keyboard_keyvalue_in_out:
+0x402 001355 fetch 1 ,mem_keyboard_keyvalue_temp 
+0x403 001356 arg hid_key_left_ctrl ,temp 
+0x404 001357 isub temp ,null 
+0x405 001358 nbranch p_keyboard_keyvalue_standard ,positive 
+0x406 001359 sub pdata ,hid_key_right_gui ,null 
+0x407 001360 nbranch p_keyboard_keyvalue_consumer ,positive 
+0x408 001361 and_into 0x07 ,pdata 
+0x409 001362 copy pdata ,queue 
+0x40a 001363 fetch 1 ,mem_keyboard_press_flag_temp 
+0x40b 001364 bbit1 0 ,p_keyboard_keyvalue_control_key_in 
+:      001365 p_keyboard_keyvalue_control_key_out:
+0x40c 001366 fetch 1 ,mem_keyboard_keyvalue_buffer 
+0x40d 001367 qset0 pdata 
+0x40e 001368 store 1 ,mem_keyboard_keyvalue_buffer 
+0x40f 001369 rtn 
+:      001370 p_keyboard_keyvalue_control_key_in:
+0x410 001371 fetch 1 ,mem_keyboard_keyvalue_buffer 
+0x411 001372 qset1 pdata 
+0x412 001373 store 1 ,mem_keyboard_keyvalue_buffer 
+0x413 001374 rtn 
+:      001376 p_keyboard_keyvalue_standard:
+0x414 001377 jam 0 ,mem_keyboard_keyvalue_buffer + 8 
+0x415 001378 fetch 1 ,mem_keyboard_press_flag_temp 
+0x416 001379 bbit1 0 ,p_keyboard_keyvalue_standard_in 
+:      001380 p_keyboard_keyvalue_standard_out:
+0x417 001381 fetcht 1 ,mem_keyboard_keyvalue_temp 
+0x418 001382 arg 6 ,loopcnt 
+0x419 001383 arg mem_keyboard_keyvalue_buffer + 2 ,contr 
+:      001384 p_keyboard_keyvalue_standard_out_loop:
+0x41a 001385 ifetch 1 ,contr 
+0x41b 001386 isub temp ,null 
+0x41c 001387 nbranch p_keyboard_keyvalue_standard_out_next ,zero 
+0x41d 001388 ifetch 1 ,contr 
+0x41e 001389 increase -2 ,contr 
+0x41f 001390 istore 1 ,contr 
+0x420 001391 rtn blank 
+0x421 001392 increase 1 ,contr 
+0x422 001393 istoret 1 ,contr 
+:      001394 p_keyboard_keyvalue_standard_out_next:
+0x423 001395 loop p_keyboard_keyvalue_standard_out_loop 
+0x424 001396 rtn 
+:      001398 p_keyboard_keyvalue_standard_in:
+0x425 001399 fetcht 1 ,mem_keyboard_keyvalue_temp 
+0x426 001400 arg 6 ,loopcnt 
+0x427 001401 arg mem_keyboard_keyvalue_buffer + 2 ,contr 
+:      001402 p_keyboard_keyvalue_standard_in_loop:
+0x428 001403 ifetch 1 ,contr 
+0x429 001404 branch p_keyboard_keyvalue_standard_in_data ,blank 
+0x42a 001405 isub temp ,null 
+0x42b 001406 rtn zero 
+0x42c 001407 loop p_keyboard_keyvalue_standard_in_loop 
+0x42d 001408 rtn 
+:      001409 p_keyboard_keyvalue_standard_in_data:
+0x42e 001410 increase -1 ,contr 
+0x42f 001411 istoret 1 ,contr 
+0x430 001412 rtn 
+:      001414 p_keyboard_keyvalue_consumer:
+0x431 001415 jam keyboard_consumer_key_press ,mem_keyboard_consumer_key_status 
+0x432 001416 fetch 1 ,mem_keyboard_press_flag_temp 
+0x433 001417 isolate0 0 ,pdata 
+0x434 001418 call p_keyboard_consumer_key_release ,true 
+0x435 001419 branch p_keyboard_keyvalue_standard 
+:      001421 p_keyboard_consumer_key_release:
+0x436 001422 jam keyboard_consumer_key_release ,mem_keyboard_consumer_key_status 
+0x437 001423 rtn 
+:      001425 p_keyboard_keyvalue_fn_replace:
+0x438 001426 fetch 1 ,mem_keyboard_press_flag_temp 
+0x439 001427 isolate1 0 ,pdata 
+0x43a 001428 call keyboard_commbination_delay_release_clear ,true 
+0x43b 001429 fetch 1 ,mem_keyboard_fn_flag 
+0x43c 001430 ncall p_keyboard_keyvalue_fn_replace_press ,blank 
+0x43d 001431 fetch 1 ,mem_keyboard_keyvalue_temp 
+0x43e 001432 beq hid_key_copilot ,p_keyboard_value_copilot 
+0x43f 001433 branch keyboard_keyvalue_fn_replace + 5 
+:      001435 p_keyboard_value_copilot:
+0x440 001436 fetch 1 ,mem_kb_computer_system 
+0x441 001437 rtnne system_os_windows 
+0x442 001438 jam left_shift_gui ,mem_keyboard_commbination_control_key_value 
+0x443 001439 jam hid_key_f23 ,mem_keyboard_commbination_standard_key_value 
+0x444 001440 branch keyboard_commbination_keypress 
+:      001442 p_keyboard_keyvalue_fn_replace_press:
+0x445 001443 fetch 1 ,mem_keyboard_keyvalue_temp 
+0x446 001447 branch keyboard_keyvalue_fn_replace_press + 1 
+:      001450 p_keyboard_special_key_check:
+0x447 001451 call p_keyboard_device_select 
+0x448 001452 call keyboard_pairing_button_check 
+0x449 001453 jam 0 ,mem_keyboard_fn_flag 
+0x44a 001454 jam 0 ,mem_keyboard_control_key_flag 
+0x44b 001455 jam 0 ,mem_keyboard_bt_button_flag 
+0x44c 001456 fetch 1 ,mem_keyboard_keyvalue_buffer 
+0x44d 001457 ncall keyborad_control_key_set ,blank 
+0x44e 001458 arg mem_keyboard_keyvalue_buffer + 2 ,contr 
+0x44f 001459 arg 6 ,loopcnt 
+:      001460 p_keyboard_special_key_check_loop:
+0x450 001461 ifetch 1 ,contr 
+0x451 001462 sub pdata ,hid_key_fn ,null 
+0x452 001463 call keyboard_fn_set ,zero 
+0x453 001464 sub pdata ,hid_key_pb ,null 
+0x454 001465 call keyboard_pb_set ,zero 
+0x455 001466 loop p_keyboard_special_key_check_loop 
+0x456 001467 rtn 
+:      001469 p_keyboard_device_select:
+0x457 001470 call disable_user 
+0x458 001471 call p_keyboard_device_select_g24 
+0x459 001472 branch p_keyboard_clear_change_flag ,user 
+0x45a 001473 fetch 1 ,mem_keyboard_switch_device_flag 
+0x45b 001474 set0 keyboard_flag_g24_device_button ,pdata 
+0x45c 001475 set0 keyboard_flag_bt_device_button ,pdata 
+0x45d 001476 store 1 ,mem_keyboard_switch_device_flag 
+0x45e 001477 rtn 
+:      001479 p_keyboard_clear_change_flag:
+0x45f 001480 jam 0 ,mem_keyboard_data_change_flag 
+0x460 001481 rtn 
+:      001483 p_keyboard_device_select_g24:
+0x461 001484 fetch 2 ,mem_keyboard_keyvalue_buffer + 2 
+0x462 001485 fetcht 2 ,mem_keyboard_commbination_key_24g 
+0x463 001486 isub temp ,null 
+0x464 001487 branch p_keyboard_device_select_g24_press ,zero 
+0x465 001488 byteswap temp ,temp 
+0x466 001489 isub temp ,null 
+0x467 001490 branch p_keyboard_device_select_g24_press ,zero 
+0x468 001491 rtn 
+:      001493 p_keyboard_device_select_g24_press:
+0x469 001494 fetch 4 ,mem_keyboard_keyvalue_buffer + 4 
+0x46a 001495 nrtn blank 
+0x46b 001496 call enable_user 
+0x46c 001497 fetch 1 ,mem_keyboard_switch_device_flag 
+0x46d 001498 set1 keyboard_flag_g24_device_button ,pdata 
+0x46e 001499 set0 keyboard_flag_bt_device_button ,pdata 
+0x46f 001500 store 1 ,mem_keyboard_switch_device_flag 
+0x470 001501 rtn 
+:      001505 p_keyboard_motion:
+0x471 001506 disable user 
+0x472 001507 jam 0 ,mem_customer_key 
+0x473 001508 jam 0 ,mem_customer_data_trigger 
+0x474 001509 jam 0 ,mem_customer_data_trigger_last 
+0x475 001510 fetch 1 ,mem_keyboard_commbination_key_step 
+0x476 001511 beq cammbination_key_press ,keyboard_commbination_key_press_process 
+0x477 001512 beq cammbination_key_hold ,keyboard_commbination_key_hold_process 
+0x478 001513 beq cammbination_key_complete ,keyboard_commbination_key_hold_process 
+0x479 001514 beq cammbination_key_wait_release ,keyboard_commbination_key_wait_release_process 
+0x47a 001515 beq cammbination_key_null ,keyboard_commbination_key_null_process 
+0x47b 001516 fetch 1 ,mem_keyboard_data_change_flag 
+0x47c 001517 branch p_keyboard_no_key_press ,blank 
+0x47d 001518 branch keyboard_motion + 13 
+:      001520 p_keyboard_no_key_press:
+0x47e 001521 fetch 1 ,mem_device_flag 
+0x47f 001522 rtnne mode_24g_device 
+0x480 001523 branch keyboard_no_key_press + 2 
+:      001525 p_keyboard_device_data_tpye_check:
+0x481 001526 fetch 1 ,mem_device_flag 
+0x482 001527 bne mode_24g_device ,p_keyboard_device_data_tpye_check_next 
+0x483 001528 jam 0 ,mem_24g_repeat_send_flag 
+0x484 001529 fetch 2 ,mem_keyboard_tx_data 
+0x485 001530 ncall keyboard_set_repeat_send_flag ,blank 
+0x486 001531 fetch 6 ,mem_keyboard_tx_data + 3 
+0x487 001532 ncall keyboard_set_repeat_send_flag ,blank 
+:      001534 p_keyboard_device_data_tpye_check_next:
+0x488 001535 fetch 1 ,mem_keyboard_tx_data 
+0x489 001536 beq hid_reportid_key_standard ,p_keyboard_standard_data_send 
+0x48a 001537 branch keyboard_device_data_tpye_check_next + 1 
+:      001539 p_keyboard_standard_data_send:
+0x48b 001540 jam device_data_tpye_standard_keyboard ,mem_keyboard_data_send_flag 
+0x48c 001541 call keyboard_clear_key_data 
+0x48d 001542 fetch 1 ,mem_device_flag 
+0x48e 001543 bne mode_24g_device ,keyboard_standard_data_send_end 
+0x48f 001544 branch keyboard_standard_data_send + 4 
+:      001547 p_keyboard_cb_fuction:
+0x490 001548 setarg p_keyboard_24g_before_lpm_sleep 
+0x491 001549 store 2 ,mem_cb_before_lpm_sleep 
+0x492 001550 setarg keyboard_24g_package_data 
+0x493 001551 store 2 ,mem_cb_24g_transmit_data 
+0x494 001552 setarg keyboard_24g_search_dongle 
+0x495 001553 store 2 ,mem_cb_24g_search_receiver 
+0x496 001554 setarg p_keyboard_lpm_before_common 
+0x497 001555 store 2 ,mem_cb_24g_lpm_before 
+0x498 001556 setarg p_keyboard_process_lpm_before 
+0x499 001557 store 2 ,mem_cb_before_lpm 
+0x49a 001559 setarg keyboard_priority_bb_event 
+0x49b 001560 store 2 ,mem_cb_bb_event_process 
+0x49c 001561 setarg keyboard_idle 
+0x49d 001562 store 2 ,mem_cb_idle_process 
+0x49e 001563 setarg keyboard_before_hibernate 
+0x49f 001564 store 2 ,mem_cb_before_hibernate 
+0x4a0 001565 setarg mouse_le_bb_event_connect_complete 
+0x4a1 001566 store 2 ,mem_cb_att_write 
+0x4a2 001567 setarg keyboard_bb_event_timer 
+0x4a3 001568 store 2 ,mem_cb_event_timer 
+0x4a4 001569 setarg mouse_spi_write_flash_cb 
+0x4a5 001570 store 2 ,mem_cb_spi_flash_write_complate 
+0x4a6 001573 setarg mouse_le_transmit 
+0x4a7 001574 store 2 ,mem_cb_ble_transmit 
+0x4a8 001575 setarg mouse_set_lpm_mult 
+0x4a9 001576 store 2 ,mem_cb_bt_set_mult 
+0x4aa 001577 rtn 
+:      001579 p_keyboard_24g_before_lpm_sleep:
+0x4ab 001580 fetch 1 ,mem_device_flag 
+0x4ac 001581 rtnne mode_24g_device 
+0x4ad 001582 branch mouse_24g_before_lpm_sleep + 2 
+:      001584 p_keyboard_lpm_before_common:
+0x4ae 001585 call p_clear_wake 
+0x4af 001586 fetcht 1 ,mem_config_select_device_button_gpio 
+0x4b0 001587 call gpio_set_wake 
+0x4b1 001589 fetcht 1 ,mem_usb_level_check_gpio 
+0x4b2 001590 set1 7 ,temp 
+0x4b3 001591 call gpio_set_wake 
+0x4b4 001593 fetch 2 ,mem_kb_col_ptr 
+0x4b5 001594 copy pdata ,regb 
+0x4b6 001595 arg 20 ,loopcnt 
+:      001596 p_keyboard_key_col_wake_init:
+0x4b7 001597 ifetcht 1 ,regb 
+0x4b8 001598 isolate1 7 ,temp 
+0x4b9 001599 ncall gpio_out_active ,true 
+0x4ba 001600 increase 1 ,regb 
+0x4bb 001601 loop p_keyboard_key_col_wake_init 
+0x4bc 001603 jam 0 ,mem_qdec_set_flag 
+0x4bd 001604 fetch 2 ,mem_kb_row_ptr 
+0x4be 001605 copy pdata ,regb 
+0x4bf 001606 arg 8 ,loopcnt 
+:      001607 p_keyboard_key_row_wake_init:
+0x4c0 001608 ifetcht 1 ,regb 
+0x4c1 001609 sub temp ,ui_button_gpio_disable ,null 
+0x4c2 001610 ncall keyboard_key_row_wake_set ,zero 
+0x4c3 001611 increase 1 ,regb 
+0x4c4 001612 loop p_keyboard_key_row_wake_init 
+0x4c5 001613 call p_keyboard_puchk_set_check 
+0x4c6 001614 fetcht 1 ,mem_mouse_reuse_2ice_gpio 
+0x4c7 001615 call mouse_gpio_config_input_pu 
+0x4c8 001616 call mouse_gpio_set_high_impedance 
+0x4c9 001617 branch mouse_adc_gpio_set_before_hibernate 
+:      001620 p_gpio_set_wake:
+0x4ca 001621 sub temp ,ui_button_gpio_disable ,null 
+0x4cb 001622 rtn zero 
+0x4cc 001623 arg 4 ,debug 
+0x4cd 001624 isolate1 gpio_active_bit ,temp 
+0x4ce 001625 branch gpio_set_wake_high ,true 
+0x4cf 001626 arg 3 ,debug 
+0x4d0 001627 branch gpio_set_wake_high 
+:      001629 p_gpio_set_wake_by_current_state:
+0x4d1 001630 sub temp ,gpio_disable ,null 
+0x4d2 001631 rtn zero 
+0x4d3 001632 call gpio_get_bit 
+0x4d4 001633 branch p_gpio_set_qdec_mode ,true 
+:      001634 p_gpio_set_low_wake:
+0x4d5 001635 arg 3 ,debug 
+0x4d6 001636 branch gpio_set_wake_high 
+:      001638 p_gpio_set_qdec_mode:
+0x4d7 001639 jam 1 ,mem_qdec_set_flag 
+0x4d8 001640 arg 6 ,debug 
+0x4d9 001641 branch gpio_set_wake_high 
+:      001644 p_clear_wake:
+0x4da 001645 setarg 0 
+0x4db 001646 set1 21 ,pdata 
+0x4dc 001647 store 8 ,mem_gpio_wakeup_cfg 
+0x4dd 001648 setarg 0 
+0x4de 001649 istore 4 ,contw 
+0x4df 001650 rtn 
+:      001652 p_keyboard_process_lpm_before:
+0x4e0 001653 rtnmark1 mark_24g 
+0x4e1 001654 branch p_keyboard_lpm_before_common 
+:      001657 p_keyboard_before_hibernate:
+0x4e2 001658 jam 0xff ,mem_sensor_motion_gpio 
+0x4e3 001659 call disable_authrom 
+0x4e4 001660 call keyboard_device_led_all_off 
+0x4e5 001661 branch p_keyboard_setgpio_hibernate 
+:      001663 p_keyboard_device_led_all_off:
+0x4e6 001664 call keyboard_power_led_off 
+0x4e7 001665 call p_keyboard_device_led_off 
+0x4e8 001666 call p_keyboard_numlock_led_off + 2 
+0x4e9 001667 call p_keyboard_scrolllock_led_off + 2 
+0x4ea 001668 branch p_keyboard_capslock_led_off + 2 
+:      001671 p_keyboard_app_enter_hibernate:
+0x4eb 001672 call p_keyboard_setgpio_hibernate 
+0x4ec 001673 branch app_enter_hibernate 
+:      001676 p_keyboard_setgpio_hibernate:
+0x4ed 001677 call p_clear_wake 
+0x4ee 001678 call keyboard_device_led_all_off 
+0x4ef 001679 branch p_keyboard_lpm_before_common 
+:      001681 p_keyboard_gpio_pu_idle:
+0x4f0 001682 arg core_gpio_conf ,contr 
+0x4f1 001683 arg gpio_number ,loopcnt 
+:      001684 p_keyboard_gpio_pu_idle_loop:
+0x4f2 001685 ifetch 1 ,contr 
+0x4f3 001686 nbranch p_keyboard_gpio_pu_idle_configured ,blank 
+0x4f4 001687 setarg gpcfg_pullup 
+0x4f5 001688 add contr ,-1 ,contw 
+0x4f6 001689 istore 1 ,contw 
+:      001690 p_keyboard_gpio_pu_idle_configured:
+0x4f7 001691 loop p_keyboard_gpio_pu_idle_loop 
+0x4f8 001692 arg core_gpio_conf_hi + gpio_number_ext ,pdata 
+0x4f9 001693 isub contr ,null 
+0x4fa 001694 rtn zero 
+0x4fb 001695 arg gpio_number_ext ,loopcnt 
+0x4fc 001696 arg core_gpio_conf_hi ,contr 
+0x4fd 001697 branch p_keyboard_gpio_pu_idle_loop 
+:      001699 p_keyboard_puchk_set_check:
+0x4fe 001700 fetch 1 ,mem_qdec_set_flag 
+0x4ff 001701 branch p_keyboard_puchk_disable ,blank 
+0x500 001702 branch p_keyboard_puchk_enable 
+:      001705 p_keyboard_puchk_disable:
+0x501 001706 setarg 0x10 
+:      001707 p_keyboard_puchk_set:
+0x502 001708 store 1 ,core_puwakeup 
+0x503 001709 until null ,lpo_edge 
+0x504 001710 rtn 
+:      001712 p_keyboard_puchk_enable:
+0x505 001713 setarg 0x80 
+0x506 001714 branch p_keyboard_puchk_set 
+:      001717 p_lpm_dispatch:
+0x507 001718 call lpo_calibration 
+0x508 001719 fetch 3 ,mem_clks_per_lpo 
+0x509 001720 rtn blank 
+0x50a 001721 fetch 1 ,mem_keyboard_fn_flag 
+0x50b 001722 nrtn blank 
+0x50c 001723 fetch 1 ,mem_keyboard_control_key_flag 
+0x50d 001724 nrtn blank 
+0x50e 001725 fetch 1 ,mem_mouse_direct_timer 
+0x50f 001726 nrtn blank 
+0x510 001727 fetch 2 ,mem_mouse_discovery_timer 
+0x511 001728 nrtn blank 
+0x512 001729 fetch 1 ,mem_keyboard_commbination_control_key_delay_release_timer 
+0x513 001730 nrtn blank 
+0x514 001731 branch lpm_dispatch + 4 
+:      001734 p_lpm_sleep:
+0x515 001736 fetch 2 ,mem_cb_before_lpm_sleep 
+0x516 001737 call callback_func 
+:      001738 p_lpm_sleep_skip_cb_function:
+0x517 001739 fetch 4 ,mem_sleep_counter_all 
+0x518 001740 iadd temp ,pdata 
+0x519 001741 store 4 ,mem_sleep_counter_all 
+0x51a 001742 call p_lpm_save_context 
+0x51b 001744 branch lpm_sleep_skip_cb_function + 4 
+:      001746 p_lpm_save_context:
+0x51c 001747 storer mark ,8 ,mem_saved_mark 
+0x51d 001748 arg core_gpio_conf ,contr 
+0x51e 001749 arg mem_saved_gpio ,contw 
+0x51f 001750 call memcpy16 
+0x520 001751 arg core_gpio_conf_hi ,contr 
+0x521 001752 call memcpy8 
+0x522 001753 fetch 1 ,core_spid_ctrl 
+0x523 001754 store 1 ,mem_saved_spidctrl 
+0x524 001755 copy temp ,regb 
+:      001756 p_lpm_write_gpio_wakeup:
+0x525 001757 arg 12 ,loopcnt 
+0x526 001758 arg mem_gpio_wakeup_cfg ,rega 
+0x527 001759 arg core_gpio_wakeup_cfg ,regc 
+0x528 001760 until null ,lpo_edge 
+:      001761 p_lpm_write_gpio_loop:
+0x529 001762 ifetch 1 ,rega 
+0x52a 001763 ifetcht 1 ,regc 
+0x52b 001764 isub temp ,null 
+0x52c 001765 branch p_lpm_write_gpio_loop_next ,zero 
+0x52d 001766 istore 1 ,regc 
+0x52e 001767 until null ,lpo_edge 
+:      001768 p_lpm_write_gpio_loop_next:
+0x52f 001769 increase 1 ,rega 
+0x530 001770 increase 1 ,regc 
+0x531 001771 loop p_lpm_write_gpio_loop 
+0x532 001772 copy regb ,temp 
+0x533 001773 rtn 
+:      001775 p_app_init:
+:      001776 p_keyboard_init:
+0x534 001777 call enable_authrom 
+0x535 001778 call p_keyboard_setting_config 
+0x536 001779 call p_keyboard_gpio_init 
+0x537 001780 call p_keyboard_low_vol_mult_set 
+0x538 001781 rtn wake 
+0x539 001782 call p_keyboard_device_led_all_off 
+0x53a 001783 call p_keyboard_led_reuse_judge 
+0x53b 001784 fetch 1 ,mem_keyboard_device_poweron_timer_count_init 
+0x53c 001785 store 1 ,mem_keyboard_device_poweron_timer_count 
+0x53d 001786 call keyboard_cb_fuction 
+0x53e 001787 branch keyboard_init_wireless 
+:      001790 p_keyboard_setting_config:
+0x53f 001791 call app_param_init 
+0x540 001792 call p_keyboard_puchk_disable 
+0x541 001793 rtn wake 
+0x542 001794 call g24_transmit_init 
+0x543 001795 call g24_chmap_param_init 
+0x544 001796 fetch 1 ,mem_device_flag 
+0x545 001797 store 1 ,mem_device_flag_temp_new 
+0x546 001798 fetch 3 ,mem_le_lap + 3 
+0x547 001799 store 3 ,mem_mouse_le_lap_temp 
+0x548 001800 call keyboard_param_init 
+0x549 001801 setarg mem_le_tx_buffer0_omemalloc_new 
+0x54a 001802 store 2 ,mem_ble_l2cap_tx_buff0_ptr 
+0x54b 001803 setarg mouse_ble_l2cap_txbuff_size_new 
+0x54c 001804 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
+0x54d 001805 call le_set_fixed_ltk_justwork 
+0x54e 001807 fetch mouse_flag_len ,mem_mouse_flag 
+0x54f 001808 bbit1 mouse_enable_otp ,keyboard_load_otp_info_check 
+0x550 001809 bbit1 mouse_enable_flash ,mouse_load_flash_info_check 
+0x551 001810 rtn 
+:      001812 p_keyboard_select_reconn_device:
+0x552 001813 arg mem_device1_type ,rega 
+0x553 001814 fetch 1 ,mem_device_flag 
+0x554 001815 rtneq mode_24g_device 
+0x555 001816 increase -1 ,pdata 
+0x556 001817 mul32 pdata ,13 ,pdata 
+0x557 001818 iadd rega ,rega 
+0x558 001819 ifetch 1 ,rega 
+0x559 001820 store 1 ,mem_xrecord_mode 
+0x55a 001821 beq rec_4_mode ,p_keyboard_load_le_device 
+0x55b 001822 rtn 
+:      001825 p_keyboard_led_reuse_judge:
+0x55c 001826 fetch 1 ,mem_keyboard_low_voltage_alarm_gpio 
+0x55d 001827 fetcht 1 ,mem_keyboard_caps_led_gpio 
+0x55e 001828 isub temp ,null 
+0x55f 001829 call p_keyboard_caps_led_reuse ,zero 
+0x560 001830 fetch 1 ,mem_keyboard_low_voltage_alarm_gpio 
+0x561 001831 fetcht 1 ,mem_keyboard_num_led_gpio 
+0x562 001832 isub temp ,null 
+0x563 001833 call p_keyboard_num_led_reuse ,zero 
+0x564 001834 fetch 1 ,mem_keyboard_low_voltage_alarm_gpio 
+0x565 001835 fetcht 1 ,mem_keyboard_scroll_led_gpio 
+0x566 001836 isub temp ,null 
+0x567 001837 branch p_keyboard_scroll_led_reuse ,zero 
+0x568 001838 rtn 
+:      001840 p_keyboard_caps_led_reuse:
+0x569 001841 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x56a 001842 set1 keyboard_reuse_capsled_bit ,pdata 
+0x56b 001843 store 1 ,mem_keyboard_reuse_led_bit 
+0x56c 001844 rtn 
+:      001846 p_keyboard_num_led_reuse:
+0x56d 001847 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x56e 001848 set1 keyboard_reuse_numled_bit ,pdata 
+0x56f 001849 store 1 ,mem_keyboard_reuse_led_bit 
+0x570 001850 rtn 
+:      001852 p_keyboard_scroll_led_reuse:
+0x571 001853 fetch 1 ,mem_keyboard_reuse_led_bit 
+0x572 001854 set1 keyboard_reuse_scrollled_bit ,pdata 
+0x573 001855 store 1 ,mem_keyboard_reuse_led_bit 
+0x574 001856 rtn 
+:      001859 p_keyboard_load_le_device:
+0x575 001860 ifetch 6 ,contr 
+0x576 001861 store 6 ,mem_hci_plap 
+0x577 001862 branch mouse_load_le_device_end + 3 
+:      001864 p_keyboard_gpio_init:
+0x578 001865 call p_clear_wake 
+0x579 001866 fetcht 1 ,mem_config_select_device_button_gpio 
+0x57a 001867 storet 1 ,mem_sensor_motion_gpio 
+0x57b 001868 call keyboard_gpio_config_input_pu 
+0x57c 001870 setarg mem_key_row_gpio 
+0x57d 001871 store 2 ,mem_kb_row_ptr 
+0x57e 001873 setarg mem_key_col_gpio 
+0x57f 001874 store 2 ,mem_kb_col_ptr 
+0x580 001876 setarg mem_key_excol_gpio 
+0x581 001877 store 2 ,mem_kb_excol_ptr 
+0x582 001879 call p_keyboard_key_row_init 
+0x583 001881 fetch 2 ,mem_kb_col_ptr 
+0x584 001882 copy pdata ,regb 
+0x585 001883 arg 20 ,loopcnt 
+0x586 001884 branch keyboard_key_cow_init 
+:      001886 p_keyboard_key_row_init:
+0x587 001887 fetch 2 ,mem_kb_row_ptr 
+0x588 001888 copy pdata ,regb 
+0x589 001889 arg 8 ,loopcnt 
+:      001890 p_keyboard_key_row_init_loop:
+0x58a 001891 ifetcht 1 ,regb 
+0x58b 001892 sub temp ,ui_button_gpio_disable ,null 
+0x58c 001893 ncall keboard_gpio_set_high_impedance ,zero 
+0x58d 001894 increase 1 ,regb 
+0x58e 001895 loop p_keyboard_key_row_init_loop 
+0x58f 001896 branch p_lpm_write_gpio_wakeup 
+:      001900 p_keyboard_low_vol_mult_set:
+0x590 001901 fetch 1 ,mem_device_flag 
+0x591 001902 bne mode_24g_device ,keyboard_low_vol_mult_ble_set + 1 
+0x592 001903 call g24_interval_param_8ms 
+0x593 001904 branch keyboard_low_vol_mult_set + 2 
+:      001906 p_ui_ipc_send_event:
+0x594 001907 fetch 1 ,mem_fifo_temp 
+0x595 001908 arg 8 ,loopcnt 
+0x596 001909 arg mem_ipc_fifo_bt2c51 ,contr 
+:      001910 p_ui_ipc_fifo_check:
+0x597 001911 ifetcht 1 ,contr 
+0x598 001912 isub temp ,null 
+0x599 001913 rtn zero 
+0x59a 001914 loop p_ui_ipc_fifo_check 
+0x59b 001915 branch ui_ipc_send_event + 1 
+:      001917 p_check_51cmd_once_continue:
+0x59c 001918 fetch 1 ,mem_fifo_temp 
+0x59d 001919 beq bt_cmd_store_reconn_info_le ,p_eeprom_store_le_reconn_info 
+0x59e 001920 branch check_51cmd_once_continue + 4 
+:      001922 p_eeprom_store_le_reconn_info:
+0x59f 001923 jam rec_4_mode ,mem_record_bt_mode 
+:      001924 p_eeprom_store_reconn_info:
+0x5a0 001925 fetch 1 ,mem_device_option 
+0x5a1 001926 beq dvc_op_keyboard ,keyboard_store_remote_bdaddr 
+0x5a2 001927 branch eeprom_store_reconn_info + 1 
+:      001933 p_g24_pair_dispatch:
+0x5a3 001934 jam default_24g_device ,mem_24g_reconn_type 
+0x5a4 001935 branch g24_pair_dispatch + 8 
+:      001937 p_keyboard_g24_reconn_dispatch:
+0x5a5 001938 fetch 2 ,mem_24g_reconn_count 
+0x5a6 001939 and_into 0xe0 ,pdata 
+0x5a7 001940 branch p_keyboard_g24_reconn_dispatch_next ,blank 
+0x5a8 001941 fetch 2 ,mem_24g_reconn_count 
+0x5a9 001942 increase 1 ,pdata 
+0x5aa 001943 store 2 ,mem_24g_reconn_count 
+0x5ab 001944 rtn 
+:      001945 p_keyboard_g24_reconn_dispatch_next:
+0x5ac 001946 call g24_reconn_data_prep 
+0x5ad 001947 call g24_transmit_receive_ack 
+0x5ae 001948 nbranch g24_reconn_device_fail ,sync 
+0x5af 001949 nbranch g24_reconn_device_fail ,user3 
+0x5b0 001950 call p_keyboard_g24_ackpayload_parse 
+0x5b1 001951 branch g24_reconn_dispatch_next + 5 
+:      001954 p_keyboard_g24_transmit_no_interrupt:
+0x5b2 001955 call g24_txdata_prep 
+0x5b3 001956 nbranch p_keyboard_g24_nodata_transmit ,user 
+:      001957 p_keyboard_g24_transmit_start:
+0x5b4 001958 call p_keyboard_24g_fast_conn_mode_check 
+0x5b5 001959 call p_keyboard_g24_transmit_process 
+0x5b6 001960 call keyboard_power_ctrl_start 
+0x5b7 001961 branch keyboard_g24_transmit_start_next 
+:      001963 p_keyboard_24g_fast_conn_mode_check:
+0x5b8 001964 fetch 4 ,mem_24g_receiver_addr 
+0x5b9 001965 fetcht 4 ,mem_24g_fast_conn_addr 
+0x5ba 001966 isub temp ,null 
+0x5bb 001967 branch p_keyboard_soft_agc_enable ,zero 
+0x5bc 001968 branch p_keyboard_soft_agc_disable 
+:      001970 p_keyboard_soft_agc_enable:
+0x5bd 001971 jam 0 ,mem_gain_fix 
+0x5be 001972 jam tx_power_factory ,mem_tx_power 
+0x5bf 001973 rtn 
+:      001975 p_keyboard_soft_agc_disable:
+0x5c0 001976 jam 0xff ,mem_gain_fix 
+0x5c1 001977 rtn 
+:      001980 p_keyboard_g24_nodata_transmit:
+0x5c2 001981 fetch 8 ,mem_keyscan_value_current 
+0x5c3 001982 nbranch keyboard_g24_transmit_start_next ,blank 
+0x5c4 001983 fetch 8 ,mem_keyscan_value_current + 8 
+0x5c5 001984 nbranch keyboard_g24_transmit_start_next ,blank 
+0x5c6 001985 fetch 4 ,mem_keyscan_value_current + 16 
+0x5c7 001986 nbranch keyboard_g24_transmit_start_next ,blank 
+0x5c8 001987 call g24_search_receiver 
+:      001988 p_keyboard_g24_long_sleep:
+0x5c9 001989 call keyboard_g24_lpm_wait 
+0x5ca 001990 nrtn user 
+0x5cb 001991 call g24_setgpio_lpm_before 
+0x5cc 001992 fetch 1 ,mem_sensor_shutdown_flag 
+0x5cd 001993 ncall keyboard_setgpio_hibernate ,blank 
+0x5ce 001994 fetch 8 ,mem_24g_enter_hibernate 
+0x5cf 001995 branch g24_long_seep2 
+:      001997 p_keyboard_g24_transmit_process:
+0x5d0 001998 jam 0 ,mem_24g_retry 
+:      001999 p_keyboard_g24_transmit_loop:
+0x5d1 002000 fetchr timeup ,2 ,mem_param_rx_setup 
+0x5d2 002001 until clkn_rt ,meet 
+0x5d3 002002 call keyboard_special_key_check 
+0x5d4 002003 fetch 2 ,mem_24g_pair_timeout 
+0x5d5 002004 nbranch g24_transmit_no_ack ,blank 
+0x5d6 002005 call g24_transmit_receive_ack 
+0x5d7 002006 fetch 1 ,mem_24g_no_ack 
+0x5d8 002007 beq no_ack_24g ,g24_transmit_no_ack 
+0x5d9 002008 nbranch p_keyboard_g24_retransmit ,sync 
+0x5da 002009 nbranch p_keyboard_g24_retransmit ,user3 
+0x5db 002010 call p_keyboard_g24_ackpayload_parse 
+0x5dc 002012 jam 0 ,mem_sensor_shutdown_flag 
+0x5dd 002013 branch g24_transmit_no_ack 
+:      002016 p_keyboard_g24_retransmit:
+0x5de 002017 fetch 1 ,mem_24g_abort_pac 
+0x5df 002018 nrtn blank 
+0x5e0 002019 fetch 2 ,mem_24g_txfail_cnt 
+0x5e1 002020 increase 1 ,pdata 
+0x5e2 002021 store 2 ,mem_24g_txfail_cnt 
+0x5e3 002022 fetch 1 ,mem_24g_txfail_cnt 
+0x5e4 002023 beq 0xff ,g24_tx_attempt_fail 
+0x5e5 002024 fetch 1 ,mem_24g_retry 
+0x5e6 002025 increase 1 ,pdata 
+0x5e7 002026 store 1 ,mem_24g_retry 
+0x5e8 002027 and_into 0x03 ,pdata 
+0x5e9 002028 branch p_keyboard_g24_transmit_hop_process ,blank 
+0x5ea 002029 branch p_keyboard_g24_transmit_loop 
+:      002031 p_keyboard_g24_transmit_hop_process:
+0x5eb 002032 call kscan_dispatch 
+0x5ec 002033 call p_keyboard_device_select 
+0x5ed 002034 fetch 1 ,mem_keyboard_switch_device_flag 
+0x5ee 002035 nbranch g24_transmit_no_ack ,blank 
+0x5ef 002036 call p_g24_tx_fast_hop 
+0x5f0 002037 branch p_keyboard_g24_transmit_loop 
+:      002039 p_g24_tx_fast_hop:
+0x5f1 002040 fetch 4 ,mem_24g_addr 
+0x5f2 002041 fetcht 4 ,mem_24g_fast_conn_addr 
+0x5f3 002042 isub temp ,null 
+0x5f4 002043 branch g24_ch ,zero 
+0x5f5 002044 branch g24_tx_fast_hop 
+:      002047 p_keyboard_g24_ackpayload_parse:
+0x5f6 002048 call g24_ackpayload_parse 
+0x5f7 002049 fetch 1 ,mem_24g_rxbuf + 1 
+0x5f8 002050 compare 0x08 ,pdata ,0xf8 
+0x5f9 002051 nrtn true 
+0x5fa 002052 fetch 1 ,mem_24g_rxbuf + 2 
+0x5fb 002053 beq 0xff ,p_keyboard_24g_hibernate_set 
+0x5fc 002054 store 1 ,mem_keyboard_led_status 
+0x5fd 002055 rtn 
+:      002057 p_keyboard_g24_short_sleep:
+0x5fe 002058 call g24_lpm_wait 
+0x5ff 002059 nrtn user 
+0x600 002060 call p_clear_wake 
+0x601 002061 fetch 3 ,mem_24g_short_sleep_set 
+0x602 002062 branch g24_long_seep2 
+:      002065 p_adc_init_data:
+0x603 002066 fetch 8 ,mem_otp_adc 
+0x604 002067 branch adc_init_cal_data_default ,blank 
+0x605 002068 store 8 ,mem_reference_inter1p8v_2v_adc_io_data 
+0x606 002069 call enable_otp_read 
+0x607 002070 call loadcode_check_otp_lock 
+0x608 002071 arg otp_offset_adc_param_l_c0 ,pdata 
+0x609 002072 iadd regb ,regb 
+0x60a 002073 arg 10 ,loopcnt 
+0x60b 002074 arg mem_otp_temp ,rega 
+0x60c 002075 call otp_read_data 
+0x60d 002076 call disable_otp 
+0x60e 002077 fetch 8 ,mem_otp_temp 
+0x60f 002078 rtn blank 
+0x610 002079 store 8 ,mem_adc_reference3v_gpio1v_ft_data 
+0x611 002080 ifetch 2 ,contr 
+0x612 002081 istore 2 ,contw 
+0x613 002083 rtn 
+:      002085 p_sadc_cal_write:
+0x614 002086 fetch 1 ,core_sadc_ctrl 
+0x615 002087 set1 1 ,pdata 
+0x616 002088 store 1 ,core_sadc_ctrl 
+0x617 002089 fetchr regb ,1 ,mem_spi_write_addr 
+0x618 002090 fetch 1 ,mem_adc_cal_c7 
+0x619 002091 store 1 ,mem_spi_write_addr 
+0x61a 002092 arg 8 ,loopcnt 
+0x61b 002093 call sadc_cal_write + 4 
+0x61c 002094 storer regb ,1 ,mem_spi_write_addr 
+0x61d 002095 fetch 1 ,core_gpadc_cfg2 
+0x61e 002096 set0 4 ,pdata 
+0x61f 002097 store 1 ,core_gpadc_cfg2 
+0x620 002098 rtn 
+:      002102 p_vdd_calculate_by_mode:
+:      002104 p_vdd_reference_inter3v_calculate:
+0x621 002105 fetch 1 ,mem_adc_config_flag 
+0x622 002106 beq adc_config_hvin ,p_vdd_reference_inter3v_calculate_by_mode_vdcdc 
+0x623 002107 beq adc_config_gpio ,p_vdd_reference_inter3v_calculate_by_mode_gpio 
+0x624 002108 rtn 
+:      002110 p_vdd_reference_inter3v_calculate_by_mode_vdcdc:
+0x625 002111 setarg 1000 
+0x626 002112 store 2 ,mem_reference_voltage 
+0x627 002113 fetcht 2 ,mem_adc_reference3v_vdcdc3p6v_ft_data 
+0x628 002114 fetch 2 ,mem_adc_reference3v_vdcdc4p6v_ft_data 
+0x629 002115 arg 3600 ,regc 
+0x62a 002116 call vdd_calculate 
+0x62b 002117 branch p_mul1v_div1v_to_cal 
+:      002119 p_vdd_reference_inter3v_calculate_by_mode_gpio:
+0x62c 002120 setarg 1000 
+0x62d 002121 store 2 ,mem_reference_voltage 
+0x62e 002122 fetcht 2 ,mem_adc_reference3v_gpio1v_ft_data 
+0x62f 002123 fetch 2 ,mem_adc_reference3v_gpio2v_ft_data 
+0x630 002124 arg 1000 ,regc 
+0x631 002125 call vdd_calculate 
+:      002126 p_mul1v_div1v_to_cal:
+0x632 002127 fetcht 2 ,mem_adc_reference3v_inter1v_ft_data 
+0x633 002128 imul32 temp ,pdata 
+0x634 002129 fetcht 2 ,mem_adc_reference3v_inter1v_now_data 
+0x635 002130 idiv temp 
+0x636 002131 branch get_div_result 
+:      002133 p_enable_adc_init_config:
+0x637 002134 call p_sadc_cal_write 
+0x638 002135 fetch 1 ,core_gpadc_cfg1 
+0x639 002136 set0 7 ,pdata 
+0x63a 002137 store 1 ,core_gpadc_cfg1 
+0x63b 002138 jam 0x77 ,core_gpadc_ctrl 
+0x63c 002139 jam 0xc1 ,core_gpadc_cfg0 
+0x63d 002140 jam 0x61 ,core_vtest_ctrl0 
+0x63e 002141 jam 0x00 ,core_gpadc_cfg3 
+0x63f 002142 rtn 
+:      002144 p_enable_adc:
+:      002146 p_enable_adc_reference_source_inter3v:
+0x640 002147 call p_enable_adc_init_config 
+0x641 002148 call sadc_channel 
+0x642 002149 fetch 1 ,mem_adc_clkdiv 
+0x643 002150 store 1 ,core_sadc_clkdiv 
+0x644 002151 call sadc_read 
+0x645 002152 jam 0x60 ,core_vtest_ctrl0 
+0x646 002153 jam 0x00 ,core_sadc_clkdiv 
+:      002156 p_read_adc_inter1v:
+0x647 002157 call p_enable_adc_init_config 
+0x648 002158 fetch 1 ,mem_adc_clkdiv 
+0x649 002159 store 1 ,core_sadc_clkdiv 
+0x64a 002160 jam 0x50 ,core_gpadc_cfg3 
+0x64b 002161 jam 0xc0 ,core_vtest_ctrl1 
+0x64c 002163 arg 0xb ,regext_index 
+0x64d 002164 fetchr regext ,2 ,mem_adc_current_value 
+0x64e 002166 jam 0x03 ,core_sadc_ctrl 
+0x64f 002167 call p_sar_adc_read_wait 
+0x650 002168 fetcht 2 ,core_sadc_data 
+0x651 002169 storet 2 ,mem_adc_reference3v_inter1v_now_data 
+0x652 002170 call sadc_read_wait + 4 
+0x653 002172 arg 0xb ,regext_index 
+0x654 002173 storer regext ,2 ,mem_adc_current_value 
+0x655 002175 jam 0x60 ,core_vtest_ctrl0 
+0x656 002176 jam 0x00 ,core_sadc_clkdiv 
+0x657 002177 jam 0x00 ,core_sadc_ctrl 
+0x658 002178 rtn 
+:      002182 p_sar_adc_read_wait:
+0x659 002183 fetch 1 ,core_perf_status 
+0x65a 002184 bbit0 saradc_done ,p_sar_adc_read_wait 
+0x65b 002185 rtn 
Index: output/bt_program23.meta
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.meta	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.meta	(working copy)
@@ -0,0 +1,2188 @@
+define SECURE_CONNECTION
+define NEC
+define DEBUG_RF_INIT
+define COMPILE_SHUTTER
+define COMPILE_MOUSE
+define COMPILE_MODULE
+define COMPILE_USB
+define COMPILE_DONGLE
+define COMPILE_LE
+define COMPILE_24G
+define COMPILE_CAR
+define COMPILE_REMOTE_CAR
+define COMPLIE_ADPCM
+define SDKCODE
+INCLUDE "bt_format"
+org 0x0000  // start from patch ram address start
+//define ex_eeprom
+define g24_enable
+//define ble_enable
+//define ice_disable
+//define RGB_backlight
+define num_led_enable
+define scroll_led_enable
+define ADC_1121SB
+//define ADC_1121SB_1V8_MODE
+define ADC_1V5
+//define ADC_3V0
+//define ADC_4V2
+
+	bbit1 8,pf_patch_ext
+	beq patch00_0,p_soft_reset
+	beq patch00_2,p_main_loop
+	beq patch02_0,p_shutdown_radio
+	beq patch02_1,p_set_sync_on
+	beq patch02_4,p_set_lemode
+	beq patch02_5,p_rf_rx_enable
+	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 patch05_0,p_lpm_dispatch
+	beq patch08_2,p_keyboard_load_otp_info_check
+	beq patch08_4,p_keyboard_store_device_info
+	beq patch08_5,p_keyboard_cb_fuction
+	beq patch08_6,p_keyboard_priority_bb_event
+	beq patch08_7,p_keyboard_bb_event_timer
+	beq patch09_3,p_keyboard_idle
+	beq patch09_4,p_keyboard_start_work
+	beq patch09_6,p_keyboard_keyscan
+	beq patch0a_0,p_keyboard_key_process
+	beq patch0a_2,p_keyboard_keyvalue_fn_replace
+	//beq patch0a_3,p_keyboard_keyvalue_commbination_replace
+	beq patch0a_5,p_keyboard_special_key_check
+	beq patch0a_7,p_keyboard_motion
+	beq patch0b_1,p_keyboard_device_data_tpye_check
+	beq patch0b_2,p_keyboard_before_hibernate
+	beq patch0b_3,p_keyboard_app_enter_hibernate
+	beq patch0b_4,p_keyboard_device_led_all_off
+	beq patch0b_5,p_keyboard_setgpio_hibernate
+	beq patch0b_6,p_keyboard_g24_transmit_process
+	beq patch0b_7,p_keyboard_g24_short_sleep
+	beq patch0e_1,p_keyboard_app_enter_hibernate
+	beq patch0e_6,p_keyboard_adc_read
+	beq patch0e_7,p_keyboard_adc_read_start
+	beq patch10_0,p_mouse_init_sunt
+	beq patch10_4,p_keyboard_app_enter_hibernate
+	beq patch13_2,p_keyboard_discover_setting_led_gpio
+	beq patch16_1,p_keyboard_init
+	beq patch18_5,p_otp_read_data
+	beq patch1a_5,p_gpio_set_wake_by_current_state
+	beq patch1a_6,p_gpio_set_wake
+	beq patch1b_2,p_sadc_calibration
+	beq patch1b_3,p_adc_init_data
+	beq patch1b_4,p_enable_adc
+	beq patch1b_5,p_vdd_calculate_by_mode
+	beq patch1e_6,p_ui_ipc_send_event
+	beq patch1f_2,p_check_51cmd_once_continue
+	branch assert
+
+pf_patch_ext:
+	beq patch2f_7,p_g24_pair_dispatch
+	beq patch32_0,p_keyboard_g24_reconn_dispatch
+	beq patch32_5,p_keyboard_g24_transmit_no_interrupt
+	rtneq patch3f_7
+	branch assert
+
+p_soft_reset:
+	nbranch p_soft_reset_next,wake
+	until null,lpo_edge
+	until null,lpo_edge
+p_soft_reset_next:
+	call mouse_wakeup_from_power_check
+	nbranch soft_reset+1,user
+	fetch 1,mem_power_on_flag_new
+	branch soft_reset+1,blank
+	jam 0,mem_power_on_flag_new
+	fetch 1,mem_config_select_device_button_gpio
+	beq UI_BUTTON_GPIO_DISABLE,soft_reset+1
+	copy pdata,queue
+	fetch 4,mem_saved_gpio_in
+	qisolate0 pdata					// bt button gpio num
+	call keyboard_pb_set,true
+	branch soft_reset+1
+
+p_keyboard_keyvalue_commbination_replace:
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_SEARCH,p_keyboard_commbination_search
+	branch keyboard_keyvalue_commbination_replace+2
+
+
+p_keyboard_adc_read:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_ADC
+	call p_keyboard_adc_gpio_set
+	branch mouse_adc_read+4
+
+p_keyboard_adc_gpio_set:
+	fetch 1,mem_adc_config_flag
+	rtnne ADC_CONFIG_GPIO
+	fetch 1,mem_adc_channel
+	call p_adc_channel_set_gpio
+	copy temp,pdata
+	store 1,mem_adc_channel_gpio
+	set1 GPIO_ACTIVE_BIT,pdata
+	arg gpcfg_input,temp
+	branch gpio_config_function
+
+p_adc_channel_set_gpio:
+	arg 18,temp
+	rtneq 0x6
+	arg 10,temp
+	rtneq 0x7
+	arg 9,temp
+	rtneq 0x8
+	arg 12,temp
+	rtneq 0x9
+	arg 6,temp
+	rtneq 0xa
+	arg 20,temp
+	rtneq 0xb
+	arg 21,temp
+	rtneq 0xc
+	arg 22,temp
+	rtneq 0xd
+	arg 13,temp
+//	rtnne 0xe
+	rtn
+
+
+
+p_main_loop:
+	call sp_calc_sequence_256
+	call sp_calc_sequence_256_check
+	call le_advertising_dispatch
+	call idle_dispatch
+	call app_process_idle
+	call connection_dispatch
+	call g24_dispatch
+	call lpm_dispatch
+	branch p_main_loop
+p_shutdown_radio:
+	jam 0,0x8900
+	branch shutdown_radio+1
+p_set_sync_on:
+	jam 0x60,0x8a0f
+	jam 0xaa,0x8a10
+	jam 0x7a,0x8a12
+	jam 0x00,0x8a25
+	jam 0x00,0x8a26
+	nop 60
+	jam 0x20,0x8a20
+	jam 0xf5,0x8a23
+	jam 0x12,0x8a24
+	jam 0x10,0x8a24
+	nop 60
+	jam 0x60,0x8a12
+	jam 0xdd,0x8a23
+	rtn
+
+p_initialize_radio_cont:
+	jam 0,mem_le_testtype
+	jam 0,mem_cmd_le_create_conn
+	until null,lpo_edge
+
+	jam 0x0d,0x8946
+	jam 0x10,0x896f
+	jam 0xcd,0x8a13
+	jam 0x10,0x8a06
+	jam 0x4a,0x8a84
+	jam 0x40,0x8a85
+	jam 0xfe,0x8a16
+	call p_set_otp_config
+//	branch initialize_radio_cont+1
+	//fetch 1,mem_wdt_always_work
+	call wdt_set_disable
+
+	until null,lpo_edge
+	jam 0x5f,0x813b
+	until null,lpo_edge
+	jam 0x88,0x813c
+	until null,lpo_edge
+	fetch 1,mem_fcomp_div
+	beq XTAL_16M,p_initialize_radio_16m
+	fetch 1,mem_ring_ibias_trim
+	or_into 0x04,pdata
+	store 1,0x8a02
+	jam 0x01,0x890f
+	jam 0x24,0x8a80
+	jam 0x62,0x8a81
+	setarg 0xe61212
+	store 3,0x8a73
+p_initialize_radio2:
+	jam 0x60,0x8a86
+	jam 0x3b,0x8a8b
+	call p_dpll_on
+	jam 0,core_config
+	jam CLKSEL_DPLL,core_clksel
+	setarg 0x557474
+	store 3,0x8968
+	jam 0x6e,0x8960
+	call p_rx_dcoc
+	call p_rfpll_aac_ghpc
+	call p_set_xtal_cap
+	jam SYSTEM_CLK_12M,mem_system_clk
+	branch sadc_calibration
+//	branch p_dpll_ring_ibias_calc
+
+p_set_xtal_cap:
+	rtn wake
+	until null,lpo_edge
+	fetch 1,mem_xtal_c_sel
+	store 1,core_xtal_cap
+	until null,lpo_edge
+	rtn
+
+p_dpll_on:
+	fetch 1,mem_fcomp_div
+	beq XTAL_24M,p_dpll_on_24m
+	fetch 1,mem_ring_ibias_trim
+	or_into 0x06,pdata
+	store 1,0x8a02
+	jam 0xe0,0x8a05
+p_dpll_on_24m:
+	jam 0xd8,0x8a00
+	nop 60
+	jam 0xa0,0x8a01
+	jam 0xdf,0x8a00
+	jam 0xfa,0x8a01
+	nop 20
+	jam 0x9f,0x8a00
+	rtn
+
+p_initialize_radio_16m:
+	fetch 1,mem_ring_ibias_trim
+	or_into 0x06,pdata
+	store 1,0x8a02
+	jam 0x00,0x890f
+	jam 0x23,0x8a80
+	jam 0xb0,0x8a81
+	setarg 0xe40909
+	store 3,0x8a73
+	jam 0x2a,0x8a76
+	jam 0x04,0x8902
+	branch p_initialize_radio2
+
+p_set_otp_config:
+	branch p_set_otp_config_wake,wake
+	fetch 4,mem_otp_core_ldo
+	rtn blank
+	until null,lpo_edge
+	fetch 1,0x8136
+	and pdata,0xf0,pdata
+	fetcht 1,mem_otp_core_ldo
+	ior temp,pdata
+	increase -3,pdata
+	store 1,0x8136
+	until null,lpo_edge
+
+	fetch 1,0x8138
+	and pdata,0x7,pdata
+	fetcht 1,mem_otp_verf_bg
+	lshift3 temp,temp
+	ior temp,pdata
+	store 1,0x8138
+	until null,lpo_edge
+
+p_set_otp_config2:
+	fetch 1,0x8acb
+	and pdata,0xf0,pdata
+	fetcht 1,mem_otp_charge_pump
+	storet 1,mem_otp_charge_pump_x
+	ior temp,pdata
+	store 1,0x8acb
+
+	fetch 1,mem_otp_dpll_ibais
+	store 1,mem_otp_dpll_ibais_x
+	isolate1 3,pdata
+	fetch 1,0x8a06
+	setflag true,7,pdata
+	store 1,0x8a06
+
+	fetch 1,mem_otp_dpll_ibais
+	and pdata,7,temp
+	lshift4 temp,temp
+	lshift temp,temp
+	storet 1,mem_ring_ibias_trim
+	fetch 1,0x8a02
+	and pdata,0x1f,pdata
+	ior temp,pdata
+	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_rx_agc_set
+	force 8,radio_ctrl
+	force 0,radio_ctrl
+
+	setarg 0x0aaada
+	store 3,0x8a0f
+	jam 0x40,0x8a25
+	jam 0x10,0x8a26
+	nop 60
+	jam 0xfb,0x8a01
+	jam 0xff,0x8a25
+	jam 0x30,0x8a26
+	jam 0xfe,0x8a16
+	branch rf_rx_enable+14
+
+p_txon:
+	setarg 0x0aaa7e
+	store 3,0x8a0f
+	nop 60
+	jam 0x00,0x8a25
+	jam 0x0d,0x8a26
+	jam 0xf6,0x8a16
+	branch txon+7
+
+p_set_tx_power:
+	fetch 1,mem_tx_power
+	beq TX_POWER_10DB,p_set_tx_power_10db
+	branch set_tx_power+2
+
+p_set_tx_power_10db:
+	jam 0x25,0x8a14
+	setarg 0xa93f3f
+	store 3,0x8a60
+	jam 0x1f,0x8a63
+	rtn
+
+
+p_rx_dcoc:
+	rtn wake
+	call set_sync_on
+	arg 39,temp
+	call set_freq_rx
+	call rf_rx_enable
+	jam 0x7f,0x8a25
+	jam 0x1a,0x8a30
+	jam 0x78,0x8a31
+	jam 0xb2,0x8a8f
+	jam 0,0x8ac2
+	jam 0,0x8ac3
+	arg 6,queue
+	call p_rx_dcoc_avg
+	isolate1 13,rega
+	call qset_start
+	isolate1 13,regb
+	call qset_p
+	arg 5,queue
+p_rx_dcoc_loop2:
+	call qset1_p
+	call qset_p
+	call p_rx_dcoc_avg
+	arg 0x8ac2,contw
+	rshift4 rega,pdata
+	call qsetxor
+	rshift4 regb,pdata
+	call qsetxor
+	increase -1,queue
+	branch p_rx_dcoc_loop2,positive
+	branch rx_dcoc_loop2+10
+
+p_rx_dcoc_avg:
+	nop 60
+	setarg mem_dcoc_buf
+	store 2,0x8982
+	setarg mem_dcoc_buf_end
+	store 2,0x8984
+	jam 0x9,0x8981
+	jam 0x3,0x8981
+	jam 0x6,0x8980
+	nop 60
+	arg 0,rega
+	arg 0,regb
+	arg 16,loopcnt
+	arg mem_dcoc_buf,contr
+	branch rx_dcoc_loop
+
+p_rfpll_aac_ghpc:
+	rtn wake
+	branch rfpll_aac_ghpc+1
+
+p_keyboard_clear_pdata:
+	setarg 0
+p_mouse_init_sunt:
+p_dpll_ring_ibias_calc:
+	rtn
+
+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
+	jam 0x0a,0x8a8e
+	fetch 1,mem_fcomp_div
+	beq XTAL_16M,p_set_lemode_2m_16m
+	setarg 0x5762
+	store 2,0x8907
+p_set_lemode_2m:
+	jam 3,0x8901
+	jam 3,0x8930
+	rtnmark1 mark_ble_2M
+	jam 1,0x8901
+	jam 0x07,0x8a82
+	jam 0x44,0x8a8d
+	jam 0x0a,0x8a8e
+	fetch 1,mem_fcomp_div
+	beq XTAL_16M,p_set_lemode_1m_16m
+	setarg 0x2bb1
+	store 2,0x8907
+p_set_lemode_1m:
+	rtnmark0 mark_ble_lr
+	jam 0x24,0x8930
+	jam 5,0x8901
+	rtn
+
+p_set_lemode_1m_16m:
+	setarg 0x4189
+	store 2,0x8907
+	branch p_set_lemode_1m
+
+p_set_lemode_2m_16m:
+	setarg 0x8312
+	store 2,0x8907
+	branch p_set_lemode_2m
+
+p_otp_read_data:
+	call enable_otp_read			//read enable
+	call otp_read_data+1
+	branch otp_disable_chgpump	//disable otp
+
+p_keyboard_load_otp_info_check:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_load_otp_device_info_g24_init
+	beq MODE_BT_DEVICE1,p_keyboard_load_otp_device_info_ble_init
+	rtn
+
+p_keyboard_load_otp_device_info_g24_init:
+	arg 8,regd
+	fetch 2,mem_otp_read_retention_max_size
+	idiv regd
+	call wait_div_end
+	quotient pdata
+	store 2,mem_pdatatemp
+	arg 0x1fbc,pdata
+	arg 4,temp
+	arg 4,rege
+	branch p_keyboard_load_otp_device_info
+
+p_keyboard_load_otp_device_info_ble_init:
+	arg 32,regd
+	fetch 2,mem_otp_read_retention_max_size
+	idiv regd
+	call wait_div_end
+	quotient pdata
+	store 2,mem_pdatatemp
+	arg 0x1fb0,pdata
+	arg 16,temp
+	arg 16,rege
+	branch p_keyboard_load_otp_device_info
+
+p_keyboard_load_otp_device_info:
+	store 2,mem_pdatatemp+2
+	storet 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	arg 0,regc
+p_keyboard_load_otp_info_check_page_loop:
+	fetch 2,mem_pdatatemp+2
+	copy pdata,regb
+	fetchr loopcnt, 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	call otp_read_data
+	fetch 8,mem_otp_read_retention_memory
+	fetcht 8,mem_otp_read_retention_memory+8
+	ior temp,pdata
+	fetcht 8,mem_otp_read_retention_memory+16
+	ior temp,pdata
+	branch p_keyboard_load_otp_info_check_first_time,blank
+	increase 1,regc
+	fetch 2,mem_pdatatemp
+	isub regc,null
+//	nbranch p_keyboard_load_otp_info_check_overwise,positive
+	fetch 2,mem_pdatatemp+2
+	isub regd,pdata
+	store 2,mem_pdatatemp+2
+	branch p_keyboard_load_otp_info_check_page_loop
+p_keyboard_load_otp_info_check_first_time:
+	sub regc,0,null
+	branch keyboard_load_otp_info_check_first_time_process,zero
+p_keyboard_load_otp_info_check_first_time_loop_init:
+	fetch 2,mem_pdatatemp+2
+	iadd regd,pdata
+p_keyboard_load_otp_info_check_first_time_loop:
+	isub rege,pdata
+	store 2,mem_pdatatemp+2
+	fetch 2,mem_pdatatemp+2
+	copy pdata,regb
+	fetchr loopcnt, 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	call otp_read_data
+	fetch 8,mem_otp_read_retention_memory
+	fetcht 8,mem_otp_read_retention_memory+8
+	ior temp,pdata
+	fetcht 8,mem_otp_read_retention_memory+16
+	ior temp,pdata
+	branch p_keyboard_load_otp_info_check_offset_process,blank
+	fetch 2,mem_pdatatemp+2
+	branch p_keyboard_load_otp_info_check_first_time_loop
+
+p_keyboard_load_otp_info_check_offset_process:
+	setarg 0x1fc0
+	fetcht 2,mem_pdatatemp+2
+	isub temp,pdata
+	store 2,mem_otp_read_retention_offset		//store the next field offset ,convenient for next storage
+	copy temp,pdata
+	iadd rege,regb
+	fetchr loopcnt, 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	call otp_read_data
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_load_otp_info_check_offset_process_g24
+	beq MODE_BT_DEVICE1,p_keyboard_load_otp_info_check_offset_process_ble
+	rtn
+
+p_keyboard_load_otp_info_check_offset_process_ble:
+	fetch 1,mem_otp_read_retention_memory
+	sub pdata,SYSTEM_OS_MAC,null
+	ncall set_pdata_0,positive
+	store 1,mem_kb_computer_system
+	fetch 1,mem_otp_read_retention_memory+1
+	store 1,mem_device1_type
+	fetch 6,mem_otp_read_retention_memory+2
+	store 6,mem_device1_addr
+	fetch 6,mem_otp_read_retention_memory+8
+	store 6,mem_device1_locall_addr
+	fetcht 2,mem_otp_read_retention_memory+14
+	random pdata
+	iadd temp,pdata
+	store 2,mem_random_addr_increase_count
+	branch p_keyboard_select_reconn_device
+
+p_keyboard_store_otp_device_info:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_store_otp_device_info_g24
+	beq MODE_BT_DEVICE1,p_keyboard_store_otp_device_info_ble
+	rtn
+
+p_keyboard_store_otp_device_info_g24:
+	fetcht 2,mem_otp_read_retention_offset
+	setarg 0x1fc0
+	branch keyboard_store_otp_device_info_g24+2
+
+p_keyboard_store_otp_device_info_ble:
+	jam 1,mem_otp_store_device_info_flag
+	fetch 1,mem_otp_store_system_flag
+	rtn blank
+p_keyboard_wirte_otp_ble:
+	fetcht 2,mem_otp_read_retention_offset
+	setarg 0x1fc0
+	isub temp,pdata
+	store 2,mem_pdatatemp
+
+	copy pdata,regb
+	arg mem_kb_computer_system,rega
+	arg 1,loopcnt
+	call otp_write   
+
+	fetch 2,mem_pdatatemp
+	add pdata,1,regb
+	arg mem_device1_type,rega
+	arg 13,loopcnt
+	call otp_write   
+
+	fetch 2,mem_pdatatemp
+	add pdata,14,regb
+	arg mem_random_addr_increase_count,rega
+	arg 2,loopcnt
+	call otp_write  
+
+	fetcht 2,mem_otp_read_retention_offset
+	increase 16,temp
+	storet 2,mem_otp_read_retention_offset
+	rtn
+
+p_keyboard_store_device_info:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_OTP,p_keyboard_store_otp_device_info
+	branch keyboard_store_device_info+2
+
+
+
+p_keyboard_priority_bb_event:
+	copy regc,pdata
+	beq BT_EVT_24G_ATTEMPT_FAIL,p_keyboard_24g_attempt_fail
+	branch keyboard_priority_bb_event+2
+
+p_keyboard_24g_attempt_fail:
+	fetch 1,mem_24g_attempt_fail_flag
+	nbranch p_keyboard_24g_hibernate_set,blank
+	fetch 1,mem_24g_reconn_type
+	beq FAST_CONN_AND_3_0_ADDR,p_keyboard_24g_fast_conn_attempt_fail
+	branch keyboard_24g_attempt_fail+4
+
+p_keyboard_24g_hibernate_set:
+	jam 0,mem_24g_attempt_fail_flag
+	call g24_transmit_next_packet
+	setarg -1
+	store 8,mem_24g_enter_hibernate
+	setarg 0
+	store 7,mem_mouse_key
+	jam 1,mem_sensor_shutdown_flag
+	branch p_keyboard_g24_long_sleep
+
+
+p_keyboard_24g_fast_conn_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_start_auto_pair
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_start_auto_pair
+	bbit0 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED,mouse_24g_reconn_dongle_start
+	fetch 4,mem_mouse_24g_addr		// auto pair first time
+	branch p_keyboard_24g_start_pair_mode,blank
+	branch mouse_24g_reconn_dongle_start
+
+
+
+
+p_keyboard_bb_event_timer:
+
+	call mouse_adc_read
+	call p_keyboard_low_voltage_led_timer
+
+	call g24_pair_timeout_timer
+	call g24_reconn_timeout_timer
+	call mouse_24g_long_sleep_param_update_timer
+	call p_keyboard_24g_repeat_send_data
+	call keyboard_24g_led_status_get_timer
+
+	//led
+	call p_keyboard_num_capslock_led_on_timer
+	call p_keyboard_device_poweron_timer
+	call p_keyboard_device_pair_discovery_led_timer
+	call p_keyboard_mode_led_timer
+	call keyboard_check_discovery_timeout_timer
+	call keyboard_check_direct_timeout_timer
+	call mouse_le_enable_att_list_timer
+	call keyboard_le_battery_updata_timer
+	call mouse_le_send_smp_security_request_timer
+	call keyboard_le_send_conn_param_update_timer
+	call keyboard_le_auto_recognize_timer
+
+	call p_keyboard_key_press_timer
+	call keyboard_commbination_key_process
+	call mouse_current_mult_update_timer
+	call keyboard_store_information_delay_timer
+
+	call p_keyboard_long_press_timer
+	call keyboard_commbination_delay_release_timer
+	branch p_keyboard_check_no_data_timeout_timer
+	rtn
+
+p_keyboard_adc_read_start:
+	call p_keyboard_low_voltage_param_set
+	call enable_adc
+	call vdd_calculate_by_mode
+	div pdata,10
+	call get_div_result
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+	call mouse_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,keyboard_power_down
+	bbit0 0,p_keyboard_adc_no_low_voltage
+	jam 1,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_adc_low_voltage
+
+p_keyboard_adc_no_low_voltage:
+	arg MOUSE_LOW_VOLTAGE_FLAG,queue
+	call mouse_disable_function_flag
+	jam 9,mem_keyboard_adc_low_volatage_led_timer_count
+	branch mouse_adc_no_low_voltage+3
+
+
+p_keyboard_low_voltage_param_set:
+	call mouse_adc_gpio_set_before_hibernate
+	setarg 0x520090		// 0x0090--1.5V  0x0052--0.9V  0x005a--1.0V  0x006d--1.1V
+	store 3,mem_mouse_vdd_full_vol
+	setarg 0x006d00
+	istore 3,contw
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	branch p_keyboard_low_voltage_param_set_backligh_off_1V0,blank
+	jam 0x70,mem_mouse_vdd_low_vol
+	rtn
+p_keyboard_low_voltage_param_set_backligh_off_1V0:
+	jam 0x6d,mem_mouse_vdd_low_vol
+	rtn
+	rtn
+
+p_keyboard_24g_repeat_send_data:
+	fetch 1,mem_same_keyvalue_timerout_flag
+	nrtn blank
+	branch keyboard_24g_repeat_send_data
+
+p_keyboard_num_capslock_led_on_timer:
+	fetch 2,mem_mouse_no_data_timer
+	rtn blank
+	fetch 1,mem_sensor_shutdown_flag
+	nrtn blank
+	fetch 2,mem_mouse_no_data_timeout
+	fetcht 2,mem_mouse_no_data_timer
+	isub temp,temp
+	fetch 2,mem_keyboard_caps_led_on_timer
+	isub temp,pdata
+	branch p_keyboard_num_cap_led_on,positive
+	call p_keyboard_numlock_led_off
+	call p_keyboard_scrolllock_led_off
+	branch p_keyboard_capslock_led_off
+
+p_keyboard_capslock_led_off:
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_CAPSLED_BIT,p_keyboard_lowpower_capslock_led_off
+	fetcht 1,mem_keyboard_caps_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_lowpower_capslock_led_off:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LOW_VOLTAGE_FLAG
+	branch p_keyboard_capslock_led_off+2
+
+p_keyboard_capslock_led_check_on:
+	fetch 1,mem_keyboard_led_status
+	bbit0 KB_PC_KEYSEL_CAPSLOCK,p_keyboard_capslock_led_off
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_CAPSLED_BIT,p_keyboard_lowpower_capslock_led_on
+	fetcht 1,mem_keyboard_caps_led_gpio
+	branch gpio_out_active
+
+p_keyboard_lowpower_capslock_led_on:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_LOW_VOLTAGE_FLAG,p_keyboard_capslock_led_check_on+4
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,11,null
+	nbranch p_keyboard_capslock_led_check_on+4,positive
+	rtn
+
+
+p_keyboard_num_cap_led_on:
+	call p_keyboard_numlock_led_check_on
+	call p_keyboard_scrolllock_led_check_on
+	branch p_keyboard_capslock_led_check_on
+p_keyboard_numlock_led_check_on:
+	fetch 1,mem_keyboard_led_status
+	bbit0 KB_PC_KEYSEL_NUMLOCK,p_keyboard_numlock_led_off
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_NUMLED_BIT,p_keyboard_lowpower_numlock_led_on
+	fetcht 1,mem_keyboard_num_led_gpio
+	branch gpio_out_active
+
+p_keyboard_lowpower_numlock_led_on:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_LOW_VOLTAGE_FLAG,p_keyboard_numlock_led_check_on+4
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,11,null
+	nbranch p_keyboard_numlock_led_check_on+4,positive
+	rtn
+
+p_keyboard_numlock_led_off:
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_NUMLED_BIT,p_keyboard_lowpower_numlock_led_off
+	fetcht 1,mem_keyboard_num_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_lowpower_numlock_led_off:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LOW_VOLTAGE_FLAG
+	branch p_keyboard_numlock_led_off+2
+
+p_keyboard_scrolllock_led_off:
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_SCROLLLED_BIT,p_keyboard_lowpower_scrolllock_led_off
+	fetch 1,mem_keyboard_device_poweron_timer_count
+	nrtn blank
+	fetcht 1,mem_keyboard_scroll_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_scrolllock_led_check_on:
+	fetch 1,mem_keyboard_device_poweron_timer_count
+	nrtn blank
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_SCROLLLED_BIT,p_keyboard_lowpower_scroll_led_on
+	fetch 1,mem_keyboard_led_status
+	bbit0 KB_PC_KEYSEL_SCROLLLOCK,p_keyboard_scrolllock_led_off
+	fetcht 1,mem_keyboard_scroll_led_gpio
+	branch gpio_out_active
+
+p_keyboard_lowpower_scroll_led_on:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_LOW_VOLTAGE_FLAG,p_keyboard_scrolllock_led_check_on+4
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,11,null
+	nbranch p_keyboard_scrolllock_led_check_on+4,positive
+	rtn
+
+p_keyboard_lowpower_scrolllock_led_off:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LOW_VOLTAGE_FLAG
+	branch p_keyboard_scrolllock_led_off+2
+
+p_keyboard_device_poweron_timer:
+	fetch 1,mem_keyboard_device_poweron_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_keyboard_device_poweron_timer_count
+	branch p_keyboard_device_led_off,blank
+	branch p_keyboard_device_led_on
+
+p_keyboard_device_led_off:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_device_24g_led_off
+	beq MODE_BT_DEVICE1,p_keyboard_device_bt1_led_off
+	beq MODE_BT_DEVICE2,p_keyboard_device_bt2_led_off
+	beq MODE_BT_DEVICE3,p_keyboard_device_bt3_led_off
+	rtn
+
+p_keyboard_device_led_on:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_device_24g_led_on
+	beq MODE_BT_DEVICE1,p_keyboard_device_bt1_led_on
+	beq MODE_BT_DEVICE2,p_keyboard_device_bt2_led_on
+	beq MODE_BT_DEVICE3,p_keyboard_device_bt3_led_on
+	rtn
+
+p_keyboard_device_24g_led_off:
+	fetcht 1,mem_keyboard_24g_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_bt1_led_off:
+	fetcht 1,mem_keyboard_bt1_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_bt2_led_off:
+	fetcht 1,mem_keyboard_bt2_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_bt3_led_off:
+	fetcht 1,mem_keyboard_bt3_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_24g_led_on:
+	fetcht 1,mem_keyboard_24g_led_gpio
+	branch gpio_out_active
+
+p_keyboard_device_bt1_led_on:
+	fetcht 1,mem_keyboard_bt1_led_gpio
+	branch gpio_out_active
+
+p_keyboard_device_bt2_led_on:
+	fetcht 1,mem_keyboard_bt2_led_gpio
+	branch gpio_out_active
+
+p_keyboard_device_bt3_led_on:
+	fetcht 1,mem_keyboard_bt3_led_gpio
+	branch gpio_out_active
+
+p_keyboard_mode_led_timer:
+	fetch 2,mem_mouse_no_data_timer
+	rtn blank
+	fetch 1,mem_keyboard_mode_led_on_timer
+	rtn blank
+	increase -1,pdata
+	store 1,mem_keyboard_mode_led_on_timer
+	bbit1 0,p_keyboard_device_led_on
+	branch p_keyboard_device_led_off
+
+p_keyboard_device_pair_discovery_led_timer:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_device_pair_led
+	fetch 2,mem_mouse_discovery_timer
+	rtn blank
+	branch p_keyboard_device_pair_led+2
+
+p_keyboard_device_pair_led:
+	fetch 2,mem_24g_pair_timeout
+	rtn blank
+	fetch 1,mem_keyboard_pair_led_flag
+	increase 1,pdata
+	store 1,mem_keyboard_pair_led_flag
+	bbit1 2,p_keyboard_device_led_on
+	branch p_keyboard_device_led_off
+
+
+p_keyboard_low_voltage_led_timer:
+	jam 0,mem_keyboard_low_volatage_led_blink_new_data_enable
+	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_keyboard_device_poweron_timer_count
+	nrtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_LOW_LED
+	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+	bbit1 MOUSE_ENABLE_LOW_VOLTAGE_LED_BLINK_N_SECOND,p_keyboard_low_voltage_led_blink_new_data
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	increase 1,pdata
+	store 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,20,null
+	ncall p_keyboard_adc_low_volatage_led_timer_count_clean,positive
+	beq 2,p_keyboard_low_voltage_led_on
+	beq 4,p_keyboard_low_voltage_led_off
+	beq 6,p_keyboard_low_voltage_led_on
+	beq 8,p_keyboard_low_voltage_led_off
+	rtn
+p_keyboard_adc_low_volatage_led_timer_count_clean:
+	jam 1,mem_keyboard_adc_low_volatage_led_timer_count
+	jam 0,mem_keyboard_low_volatage_led_flag
+	branch p_keyboard_low_voltage_led_off
+p_keyboard_low_voltage_led_on:
+	fetcht 1,mem_keyboard_low_voltage_alarm_gpio
+	branch gpio_out_active
+p_keyboard_low_voltage_led_off:
+	fetcht 1,mem_keyboard_low_voltage_alarm_gpio
+	branch gpio_out_inactive
+
+p_keyboard_low_voltage_led_blink_new_data:
+	fetch 2,mem_mouse_no_data_timeout
+	fetcht 2,mem_mouse_no_data_timer
+	isub temp,temp
+	fetch 2,mem_adc_low_volatage_led_blink_timer
+	isub temp,null
+	nbranch p_keyboard_low_voltage_led_off,positive
+	jam 1,mem_keyboard_low_volatage_led_blink_new_data_enable
+	fetch 1,mem_keyboard_low_volatage_led_flag
+	increase 1,pdata
+	store 1,mem_keyboard_low_volatage_led_flag
+	beq 1,p_keyboard_low_voltage_led_on
+	beq 6,p_keyboard_low_voltage_led_off
+	sub pdata,9,null
+	ncall p_keyboard_adc_low_volatage_led_timer_count_clean,positive
+	rtn
+
+
+
+p_keyboard_discover_setting_led_gpio:
+	rtn
+
+p_keyboard_long_press_timer:
+	arg mem_same_keyvalue_timer,regc
+	arg p_keyboard_long_press_timerout,regb
+	branch timer_single_step_2B
+
+p_keyboard_long_press_timerout:
+	jam 1,mem_same_keyvalue_timerout_flag
+	branch keyboard_app_enter_hibernate
+
+
+p_keyboard_check_no_data_timeout_timer:
+	arg mem_mouse_no_data_timer,regc
+	arg p_keyboard_check_no_data_timeout,regb
+	branch timer_single_step_2B
+
+p_keyboard_check_no_data_timeout:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_24g_hibernate_set
+	branch mouse_disconnect
+
+p_keyboard_key_press_timer:
+	fetch 1,mem_keyboard_switch_device_flag
+	bbit1 KEYBOARD_FLAG_G24_DEVICE_BUTTON,p_keyboard_device_select_g24_press_timer
+	call p_keyboard_device_select_g24_nopress_timer
+	rtn
+
+p_keyboard_device_select_g24_press_timer:
+	fetch 1,mem_keyboard_switch_g24_press_timer
+	sub pdata,100,null
+	nrtn positive
+	increase 1,pdata
+	store 1,mem_keyboard_switch_g24_press_timer
+	rtnne 25
+	jam 0,mem_keyboard_switch_g24_enable
+p_keyboard_24g_start_pair_mode:
+	call p_keyboard_device_led_all_off
+	branch keyboard_24g_start_pair_mode
+
+p_keyboard_device_select_g24_nopress_timer:
+	jam 0,mem_keyboard_switch_g24_press_timer
+	rtn
+
+p_keyboard_idle:
+	call kscan_dispatch
+	branch p_keyboard_evt_ui_timer_check
+
+p_keyboard_evt_ui_timer_check:
+	arg 0,rega
+	fetcht 4,mem_keyboard_evt_btclk
+	copy clkn_bt,regb
+	copy regb,pdata
+	isub temp,null
+	ncall ui_timer_timeout,positive
+p_keyboard_evt_ui_timer_check_loop:
+	copy regb,pdata
+	increase 40,temp    //40clk = 12.5ms
+	isub temp,null
+	nbranch p_keyboard_evt_ui_timer_check_end,positive
+	increase 1,rega   //increase 1 every 100ms count
+	and rega,0x0f,pdata
+	nbranch p_keyboard_evt_ui_timer_check_loop,blank
+	arg 0,rega  //reset timer if it's longer than 1.5s between 2 checks
+	call p_keyboard_evt_ui_timer_check_send_evt
+p_keyboard_evt_ui_timer_init:
+	copy clkn_bt,pdata
+	store 4,mem_keyboard_evt_btclk
+	rtn
+p_keyboard_evt_ui_timer_check_end:
+	copy rega,pdata
+	rtn blank
+	increase -40,temp    //160btclk = 50ms
+	set0 28,temp
+	storet 4,mem_keyboard_evt_btclk
+p_keyboard_evt_ui_timer_check_send_evt:
+	store 1,mem_keyboard_evt_timer_count
+p_keyboard_evt_50ms_loop:
+	fetch 1,mem_keyboard_evt_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_keyboard_evt_timer_count
+
+	call p_keyboard_delay_lpm_timer
+
+	branch p_keyboard_evt_50ms_loop
+
+p_keyboard_start_work:
+p_keyboard_start_work_adc_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_ADC,p_keyboard_start_work_next
+	call p_keyboard_adc_gpio_set
+	call p_keyboard_low_voltage_param_set
+	call enable_adc
+	call vdd_calculate_by_mode
+	div pdata,10
+	call get_div_result
+	store 2,mem_mouse_vdd_now_vol
+	fetch 2,mem_mouse_vdd_empty_vol
+	div pdata,2
+	call get_div_result
+	fetcht 2,mem_mouse_vdd_now_vol
+	isub temp,null
+	branch p_keyboard_start_work_adc_check,positive // now vol < empty vol/2  check again
+	arg mem_mouse_vdd_calculate_set,rega
+	call mouse_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,keyboard_power_down
+p_keyboard_start_work_next:
+	fetch 1,mem_keyboard_pairing_type
+	call keyboard_enable_bt_button_pairing,blank
+	fetch 1,mem_keyboard_bt_button_flag
+	nrtn blank
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_reconn_general_dongle
+	call mouse_bluetooth_fast_conn_disable
+p_keyboard_start_ble1_reconnect:
+	fetch 6,mem_device1_addr
+p_keyboard_start_ble_reconnect:
+	branch mouse_bluetooth_fast_conn_init,blank
+	branch mouse_start_reconnect_device
+
+
+
+p_keyboard_keyscan:
+	call p_keyboard_gpio_init
+	setarg 0
+	store 2,mem_keyscan_exmcu_wait_wake_count
+	arg mem_keyscan_value_current,contr
+	arg mem_keyscan_value_check,contw
+	arg 20,loopcnt
+	call memcpy
+	call keyboard_stb_state_low							// exmcu wake up
+	setarg mem_keyscan_value_current
+	store 2,mem_keyscan_value_ptr
+	setarg mem_keyscan_exmcu_value_new
+	store 2,mem_keyscan_exmcu_value_ptr
+	call keyboard_stb_state_high
+//	call keyboard_clk_state_high
+	call keyboard_clk_input
+p_keyboard_keyscan_exmcu_start_check:
+	fetch 2,mem_keyscan_exmcu_wait_wake_count
+	increase 1,pdata
+	store 2,mem_keyscan_exmcu_wait_wake_count
+	bbit1 9,p_keyboard_keyscan_reset_exmcu 				// 953us reset exmcu
+	fetcht 1,mem_mcu_clk_gpio							// waiting for exmcu wake done
+	call gpio_get_bit
+	nbranch p_keyboard_keyscan_exmcu_start_check,true
+	call keyboard_stb_state_low
+p_keyboard_keyscan_wait_wake_next:
+	fetcht 1,mem_mcu_clk_gpio							// waiting for exmcu clk done
+	call gpio_get_bit
+	branch p_keyboard_keyscan_wait_wake_next,true
+
+	call p_keyboard_keyscan_get_exmcu_value
+	call p_keyboard_keyscan_get_mcu_value
+	call keyboard_clk_input
+	call keyboard_stb_state_high							// exmcu sleep
+p_keyboard_keyscan_copy_value:
+	fetch 2,mem_kb_excol_ptr
+	copy pdata,regb
+	jam 0,mem_keyscan_col_loop_count
+p_keyboard_compare_col_excol_gpio_loop:		// loop 12 times
+	ifetcht 1,regb
+	fetch 2,mem_kb_col_ptr
+	copy pdata,rega
+	copy rega,regc
+	arg 20,loopcnt
+p_keyboard_compare_col_gpio_loop:
+	ifetch 1,rega
+	isub temp,null
+	branch p_keyboard_copy_value_exmcu_to_mcu,zero
+	increase 1,rega
+	loop p_keyboard_compare_col_gpio_loop
+p_keyboard_compare_col_excol_gpio_loop_next:
+	increase 1,regb
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	sub pdata,11,null
+	branch p_keyboard_compare_col_excol_gpio_loop,positive
+	call p_keyboard_gpio_pu_idle
+	branch p_keyboard_key_row_init
+
+
+p_keyboard_copy_value_exmcu_to_mcu:
+	fetch 2,mem_keyscan_value_ptr
+	copy pdata,contw
+	copy rega,pdata
+	isub regc,pdata
+	iadd contw,contw							// offset = rega-regc
+	fetch 2,mem_keyscan_exmcu_value_ptr
+	copy pdata,regc
+	fetch 1,mem_keyscan_col_loop_count
+	iadd regc,regc
+	ifetch 1, regc								// offset = mem_keyscan_col_loop_count
+	istore 1,contw
+	branch p_keyboard_compare_col_excol_gpio_loop_next
+
+p_keyboard_keyscan_get_exmcu_value:
+	jam 0,mem_keyscan_exmcu_reset_count
+	jam 0,mem_keyscan_col_loop_count
+p_keyboard_keyscan_exmcu_start_loop:	// clk:0 1 0 1 0 1 0 1 0 1 0 1
+	call keyboard_clk_state_low
+	call p_keyboard_keyscan_exmcu_get_col_value
+	call keyboard_clk_state_high
+	call p_keyboard_keyscan_exmcu_get_col_value
+	sub pdata,11,null
+	branch p_keyboard_keyscan_exmcu_start_loop,positive
+	branch keyboard_clk_state_low
+
+p_keyboard_keyscan_reset_exmcu:
+	branch p_keyboard_keyscan
+
+
+
+p_keyboard_keyscan_exmcu_get_col_value:
+	jam 0,mem_keyscan_value_temp
+	call p_keyboard_keyscan_get_col_value
+	fetch 2,mem_keyscan_exmcu_value_ptr
+	branch keyboard_keyscan_value_store
+
+p_keyboard_keyscan_get_col_value:
+	nop 120
+	branch keyboard_keyscan_get_col_value
+
+p_keyboard_keyscan_get_mcu_value:
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	jam 0,mem_keyscan_col_loop_count
+p_keyboard_keyscan_mcu_start:		// loop 20 times
+	jam 0,mem_keyscan_value_temp
+	ifetcht 1,regb
+	isolate1 7,temp								// exmcu gpio
+	branch p_keyboard_keyscan_mcu_start_loop,true
+	call gpio_out_active
+	call p_keyboard_keyscan_get_col_value
+	ifetcht 1,regb
+	call gpio_out_inactive
+	ifetcht 1,regb
+	call keyboard_gpio_config_input_pu
+p_keyboard_keyscan_mcu_start_loop:
+	increase 1,regb
+	fetch 2,mem_keyscan_value_ptr
+	call keyboard_keyscan_value_store
+	sub pdata,19,null						//sub pdata,19,null
+	branch p_keyboard_keyscan_mcu_start,positive
+	rtn
+
+p_keyboard_delay_lpm_timer:
+	fetch 1,mem_keyboard_delay_lpm_flag
+	rtn blank
+	jam 1,mem_lpm_mode
+	jam 0,mem_keyboard_delay_lpm_flag
+	rtn
+
+p_keyboard_press_change_or_no_key:
+	jam 0,mem_lpm_mode
+	jam 1,mem_keyboard_delay_lpm_flag
+	branch keyboard_press_change_or_no_key
+
+p_keyboard_key_process:
+	arg mem_keyscan_value_current,rega
+	arg mem_keyscan_value_check,regb
+	arg 20,loopcnt
+	call string_compare
+	nbranch p_keyboard_press_change_or_no_key,zero
+	call p_keyboard_keyscan_value_current_zero_check
+	call keyboard_press_change_or_no_key,blank
+
+	call keyboard_ghost_key_check
+	fetch 1,mem_mouse_ghost_flag
+	nrtn blank
+	fetch 1,mem_keyboard_commbination_key_step
+	rtneq CAMMBINATION_KEY_PRESS
+	rtneq CAMMBINATION_KEY_HOLD
+	rtneq CAMMBINATION_KEY_WAIT_RELEASE
+	// keyvalue get from map,and in or out process
+	jam 0,mem_keyscan_col_loop_count
+	arg mem_keyscan_value_current,rega
+	arg mem_keyscan_value_old,regb
+p_keyboard_keyvalue_process:		// loop 20 times
+	ifetcht 1,rega
+	ifetch 1,regb
+	ixor  temp,pdata
+	branch p_keyboard_keyvalue_process_loop,blank
+	store 1,mem_keyscan_value_temp
+	storet 1,mem_keyboard_press_flag_temp
+	istoret 1,regb
+	jam 1,mem_keyboard_data_change_flag
+	jam 0,mem_keyboard_keyvalue_bit_loop_count
+p_keyboard_keyvalue_change:			// loop 8 times
+	fetch 1,mem_keyscan_value_temp
+	bbit0 0,p_keyboard_keyvalue_change_loop
+	fetch 1,mem_keyscan_col_loop_count
+	mul32 pdata,8,pdata
+	fetcht 1,mem_keyboard_keyvalue_bit_loop_count
+	iadd temp,pdata									// map offset
+	arg mem_keyboard_keyvalue_map_new,contr
+	iadd contr,contr
+	ifetch 1,contr
+	store 1,mem_keyboard_keyvalue_temp				// keyvalue
+	call keyboard_keyvalue_fn_replace
+	call p_keyboard_keyvalue_commbination_replace
+	call p_keyboard_keyvalue_in_out
+p_keyboard_keyvalue_change_loop:
+	fetch 1,mem_keyscan_value_temp
+	rshift pdata,pdata
+	store 1,mem_keyscan_value_temp
+	fetch 1,mem_keyboard_press_flag_temp
+	rshift pdata,pdata
+	store 1,mem_keyboard_press_flag_temp
+	fetch 1,mem_keyboard_keyvalue_bit_loop_count
+	increase 1,pdata
+	store 1,mem_keyboard_keyvalue_bit_loop_count
+	sub pdata,7,null
+	branch p_keyboard_keyvalue_change,positive
+p_keyboard_keyvalue_process_loop:
+	increase 1,rega
+	increase 1,regb
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	sub pdata,19,null
+	branch p_keyboard_keyvalue_process,positive
+	rtn
+
+p_keyboard_keyscan_value_current_zero_check:
+	fetch 8,mem_keyscan_value_current
+	nrtn blank
+	fetch 8,mem_keyscan_value_current+8
+	nrtn blank
+	fetch 4,mem_keyscan_value_current+16
+	nrtn blank
+	fetch 1,mem_keyboard_commbination_control_key_delay_release_timer
+	nrtn blank
+	fetch 1,mem_keyboard_commbination_key_step
+	rtneq CAMMBINATION_KEY_NULL
+	jam CAMMBINATION_KEY_FREE,mem_keyboard_commbination_key_step
+	rtn
+
+
+p_keyboard_commbination_search:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_MAC,p_keyboard_commbination_mac_search
+	setarg HID_KEY_AC_SEARCH
+	branch keyboard_keyvalue_store_temp
+p_keyboard_commbination_mac_search:
+	jam LEFT_GUI,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_SPACE,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+
+
+p_keyboard_keyvalue_in_out:
+	fetch 1,mem_keyboard_keyvalue_temp
+	arg HID_KEY_LEFT_CTRL,temp
+	isub temp,null
+	nbranch p_keyboard_keyvalue_standard,positive		// value < 0xe0
+	sub pdata,HID_KEY_RIGHT_GUI,null
+	nbranch p_keyboard_keyvalue_consumer,positive		// value  > 0xe7
+	and_into 0x07,pdata
+	copy pdata,queue
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit1 0,p_keyboard_keyvalue_control_key_in
+p_keyboard_keyvalue_control_key_out:
+	fetch 1,mem_keyboard_keyvalue_buffer
+	qset0 pdata
+	store 1,mem_keyboard_keyvalue_buffer
+	rtn
+p_keyboard_keyvalue_control_key_in:
+	fetch 1,mem_keyboard_keyvalue_buffer
+	qset1 pdata
+	store 1,mem_keyboard_keyvalue_buffer
+	rtn
+
+p_keyboard_keyvalue_standard:
+	jam 0,mem_keyboard_keyvalue_buffer+8
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit1 0,p_keyboard_keyvalue_standard_in
+p_keyboard_keyvalue_standard_out:
+	fetcht 1,mem_keyboard_keyvalue_temp
+	arg 6,loopcnt
+	arg mem_keyboard_keyvalue_buffer+2,contr
+p_keyboard_keyvalue_standard_out_loop:
+	ifetch 1,contr
+	isub temp,null
+	nbranch p_keyboard_keyvalue_standard_out_next,zero
+	ifetch 1,contr
+	increase -2,contr
+	istore 1,contr
+	rtn blank
+	increase 1,contr
+	istoret 1,contr
+p_keyboard_keyvalue_standard_out_next:
+	loop p_keyboard_keyvalue_standard_out_loop
+	rtn
+
+p_keyboard_keyvalue_standard_in:
+	fetcht 1,mem_keyboard_keyvalue_temp
+	arg 6,loopcnt
+	arg mem_keyboard_keyvalue_buffer+2,contr
+p_keyboard_keyvalue_standard_in_loop:
+	ifetch 1,contr
+	branch p_keyboard_keyvalue_standard_in_data,blank
+	isub temp,null
+	rtn zero
+	loop p_keyboard_keyvalue_standard_in_loop
+	rtn
+p_keyboard_keyvalue_standard_in_data:
+	increase -1,contr
+	istoret 1,contr
+	rtn
+
+p_keyboard_keyvalue_consumer:
+	jam KEYBOARD_CONSUMER_KEY_PRESS,mem_keyboard_consumer_key_status
+	fetch 1,mem_keyboard_press_flag_temp
+	isolate0 0,pdata
+	call p_keyboard_consumer_key_release,true
+	branch p_keyboard_keyvalue_standard
+
+p_keyboard_consumer_key_release:
+	jam KEYBOARD_CONSUMER_KEY_RELEASE,mem_keyboard_consumer_key_status
+	rtn
+
+p_keyboard_keyvalue_fn_replace:
+	fetch 1,mem_keyboard_press_flag_temp
+	isolate1 0,pdata
+	call keyboard_commbination_delay_release_clear,true
+	fetch 1,mem_keyboard_fn_flag
+	ncall p_keyboard_keyvalue_fn_replace_press,blank
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_COPILOT,p_keyboard_value_copilot
+	branch keyboard_keyvalue_fn_replace+5
+
+p_keyboard_value_copilot:
+	fetch 1,mem_kb_computer_system
+	rtnne SYSTEM_OS_WINDOWS
+	jam LEFT_SHIFT_GUI,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_F23,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+p_keyboard_keyvalue_fn_replace_press:
+	fetch 1,mem_keyboard_keyvalue_temp
+//	beq HID_KEY_Q,p_keyboard_keyvalue_os_andriod
+//	beq HID_KEY_W,p_keyboard_keyvalue_os_windows
+//	beq HID_KEY_E,p_keyboard_keyvalue_os_ios
+	branch keyboard_keyvalue_fn_replace_press+1
+
+
+p_keyboard_special_key_check:
+	call p_keyboard_device_select
+	call keyboard_pairing_button_check
+	jam 0,mem_keyboard_fn_flag
+	jam 0,mem_keyboard_control_key_flag
+	jam 0,mem_keyboard_bt_button_flag
+	fetch 1,mem_keyboard_keyvalue_buffer
+	ncall keyborad_control_key_set,blank
+	arg mem_keyboard_keyvalue_buffer+2,contr
+	arg 6,loopcnt
+p_keyboard_special_key_check_loop:
+	ifetch 1,contr
+	sub pdata,HID_KEY_FN,null
+	call keyboard_fn_set,zero
+	sub pdata,HID_KEY_PB,null
+	call keyboard_pb_set,zero
+	loop p_keyboard_special_key_check_loop
+	rtn
+
+p_keyboard_device_select:
+	call disable_user
+	call p_keyboard_device_select_g24
+	branch p_keyboard_clear_change_flag,user
+	fetch 1,mem_keyboard_switch_device_flag
+	set0 KEYBOARD_FLAG_G24_DEVICE_BUTTON,pdata
+	set0 KEYBOARD_FLAG_BT_DEVICE_BUTTON,pdata
+	store 1,mem_keyboard_switch_device_flag
+	rtn
+
+p_keyboard_clear_change_flag:
+	jam 0,mem_keyboard_data_change_flag
+	rtn
+
+p_keyboard_device_select_g24:
+	fetch 2,mem_keyboard_keyvalue_buffer+2
+	fetcht 2,mem_keyboard_commbination_key_24g
+	isub temp,null
+	branch p_keyboard_device_select_g24_press,zero
+	byteswap temp,temp
+	isub temp,null
+	branch p_keyboard_device_select_g24_press,zero
+	rtn
+
+p_keyboard_device_select_g24_press:
+	fetch 4,mem_keyboard_keyvalue_buffer+4
+	nrtn blank
+	call enable_user
+	fetch 1,mem_keyboard_switch_device_flag
+	set1 KEYBOARD_FLAG_G24_DEVICE_BUTTON,pdata
+	set0 KEYBOARD_FLAG_BT_DEVICE_BUTTON,pdata
+	store 1,mem_keyboard_switch_device_flag
+	rtn
+
+
+
+p_keyboard_motion:
+	disable user
+	jam 0,mem_customer_key
+	jam 0,mem_customer_data_trigger
+	jam 0,mem_customer_data_trigger_last
+	fetch 1,mem_keyboard_commbination_key_step
+	beq CAMMBINATION_KEY_PRESS,keyboard_commbination_key_press_process
+	beq CAMMBINATION_KEY_HOLD,keyboard_commbination_key_hold_process
+	beq CAMMBINATION_KEY_COMPLETE,keyboard_commbination_key_hold_process
+	beq CAMMBINATION_KEY_WAIT_RELEASE,keyboard_commbination_key_wait_release_process
+	beq CAMMBINATION_KEY_NULL,keyboard_commbination_key_null_process
+	fetch 1,mem_keyboard_data_change_flag
+	branch p_keyboard_no_key_press,blank
+	branch keyboard_motion+13
+
+p_keyboard_no_key_press:
+	fetch 1,mem_device_flag
+	rtnne MODE_24G_DEVICE
+	branch keyboard_no_key_press+2
+
+p_keyboard_device_data_tpye_check:
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,p_keyboard_device_data_tpye_check_next
+	jam 0,mem_24g_repeat_send_flag
+	fetch 2,mem_keyboard_tx_data
+	ncall keyboard_set_repeat_send_flag,blank
+	fetch 6,mem_keyboard_tx_data+3
+	ncall keyboard_set_repeat_send_flag,blank
+
+p_keyboard_device_data_tpye_check_next:
+	fetch 1,mem_keyboard_tx_data
+	beq HID_REPORTID_KEY_STANDARD,p_keyboard_standard_data_send
+	branch keyboard_device_data_tpye_check_next+1
+
+p_keyboard_standard_data_send:
+	jam DEVICE_DATA_TPYE_STANDARD_KEYBOARD,mem_keyboard_data_send_flag
+	call keyboard_clear_key_data
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,keyboard_standard_data_send_end
+	branch keyboard_standard_data_send+4
+
+
+p_keyboard_cb_fuction:
+	setarg p_keyboard_24g_before_lpm_sleep
+	store 2,mem_cb_before_lpm_sleep
+	setarg keyboard_24g_package_data
+	store 2,mem_cb_24g_transmit_data
+	setarg keyboard_24g_search_dongle
+	store 2,mem_cb_24g_search_receiver
+	setarg p_keyboard_lpm_before_common
+	store 2,mem_cb_24g_lpm_before
+	setarg p_keyboard_process_lpm_before
+	store 2,mem_cb_before_lpm
+
+	setarg keyboard_priority_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg keyboard_idle
+	store 2,mem_cb_idle_process
+	setarg keyboard_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg mouse_le_bb_event_connect_complete
+	store 2,mem_cb_att_write
+	setarg keyboard_bb_event_timer
+	store 2,mem_cb_event_timer
+	setarg mouse_spi_write_flash_cb
+	store 2,mem_cb_spi_flash_write_complate
+//	setarg p_mouse_lpm_check_wake_lock
+//	store 2,mem_cb_check_wakelock
+	setarg mouse_le_transmit
+	store 2,mem_cb_ble_transmit
+	setarg mouse_set_lpm_mult
+	store 2,mem_cb_bt_set_mult
+	rtn
+
+p_keyboard_24g_before_lpm_sleep:
+	fetch 1,mem_device_flag
+	rtnne MODE_24G_DEVICE
+	branch mouse_24g_before_lpm_sleep+2
+
+p_keyboard_lpm_before_common:
+	call p_clear_wake
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_set_wake
+
+	fetcht 1,mem_usb_level_check_gpio
+	set1 7,temp
+	call gpio_set_wake
+
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	arg 20,loopcnt
+p_keyboard_key_col_wake_init:
+	ifetcht 1,regb
+	isolate1 7,temp				// exmcu gpio
+	ncall gpio_out_active,true
+	increase 1,regb
+	loop p_keyboard_key_col_wake_init
+
+	jam 0,mem_qdec_set_flag
+	fetch 2,mem_kb_row_ptr
+	copy pdata,regb
+	arg 8,loopcnt
+p_keyboard_key_row_wake_init:
+	ifetcht 1,regb
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	ncall keyboard_key_row_wake_set,zero
+	increase 1,regb
+	loop p_keyboard_key_row_wake_init
+	call p_keyboard_puchk_set_check
+	fetcht 1,mem_mouse_reuse_2ice_gpio
+	call mouse_gpio_config_input_pu
+	call mouse_gpio_set_high_impedance
+	branch mouse_adc_gpio_set_before_hibernate
+
+
+p_gpio_set_wake:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	arg 4,debug
+	isolate1 GPIO_ACTIVE_BIT,temp
+	branch gpio_set_wake_high,true
+	arg 3,debug
+	branch gpio_set_wake_high
+
+p_gpio_set_wake_by_current_state:
+	sub temp,GPIO_DISABLE,null
+	rtn zero
+	call gpio_get_bit
+	branch p_gpio_set_qdec_mode,true
+p_gpio_set_low_wake:
+	arg 3,debug
+	branch gpio_set_wake_high
+
+p_gpio_set_qdec_mode:
+	jam 1,mem_qdec_set_flag
+	arg 6,debug
+	branch gpio_set_wake_high
+
+
+p_clear_wake:
+	setarg 0
+	set1 21,pdata				//gpio5(ice) enable wakeup
+	store 8,mem_gpio_wakeup_cfg
+	setarg 0
+	istore 4,contw
+	rtn
+
+p_keyboard_process_lpm_before:
+	rtnmark1 mark_24g
+	branch p_keyboard_lpm_before_common
+
+
+p_keyboard_before_hibernate:
+	jam 0xff,mem_sensor_motion_gpio
+	call disable_authrom
+	call keyboard_device_led_all_off
+	branch p_keyboard_setgpio_hibernate
+
+p_keyboard_device_led_all_off:
+	call keyboard_power_led_off
+	call p_keyboard_device_led_off
+	call p_keyboard_numlock_led_off+2
+	call p_keyboard_scrolllock_led_off+2
+	branch p_keyboard_capslock_led_off+2
+
+
+p_keyboard_app_enter_hibernate:
+	call p_keyboard_setgpio_hibernate
+	branch app_enter_hibernate
+
+
+p_keyboard_setgpio_hibernate:
+	call p_clear_wake
+	call keyboard_device_led_all_off
+	branch p_keyboard_lpm_before_common
+
+p_keyboard_gpio_pu_idle:
+	arg core_gpio_conf,contr
+	arg GPIO_NUMBER,loopcnt
+p_keyboard_gpio_pu_idle_loop:
+	ifetch 1,contr
+	nbranch p_keyboard_gpio_pu_idle_configured,blank
+	setarg gpcfg_pullup
+	add contr,-1,contw
+	istore 1,contw
+p_keyboard_gpio_pu_idle_configured:
+	loop p_keyboard_gpio_pu_idle_loop
+	arg core_gpio_conf_hi+GPIO_NUMBER_EXT,pdata
+	isub contr,null
+	rtn zero
+	arg GPIO_NUMBER_EXT,loopcnt
+	arg core_gpio_conf_hi,contr
+	branch p_keyboard_gpio_pu_idle_loop
+
+p_keyboard_puchk_set_check:
+	fetch 1,mem_qdec_set_flag
+	branch p_keyboard_puchk_disable,blank
+	branch p_keyboard_puchk_enable
+
+
+p_keyboard_puchk_disable:
+	setarg 0x10			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable
+p_keyboard_puchk_set:
+	store 1,core_puwakeup
+	until null,lpo_edge
+	rtn
+
+p_keyboard_puchk_enable:
+	setarg 0x80			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable
+	branch p_keyboard_puchk_set
+
+
+p_lpm_dispatch:
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	fetch 1,mem_keyboard_fn_flag
+	nrtn blank
+	fetch 1,mem_keyboard_control_key_flag
+	nrtn blank
+	fetch 1,mem_mouse_direct_timer
+	nrtn blank
+	fetch 2,mem_mouse_discovery_timer
+	nrtn blank
+	fetch 1,mem_keyboard_commbination_control_key_delay_release_timer
+	nrtn blank
+	branch lpm_dispatch+4
+
+
+p_lpm_sleep:
+	//call xtal_fast_wake
+	fetch 2,mem_cb_before_lpm_sleep
+	call callback_func
+p_lpm_sleep_skip_cb_function:
+	fetch 4,mem_sleep_counter_all	// sleep total time, 32k unit
+	iadd temp,pdata
+	store 4,mem_sleep_counter_all
+	call p_lpm_save_context
+
+	branch lpm_sleep_skip_cb_function+4
+
+p_lpm_save_context:
+	storer mark,8,mem_saved_mark
+	arg core_gpio_conf,contr
+	arg mem_saved_gpio,contw
+	call memcpy16
+	arg core_gpio_conf_hi,contr
+	call memcpy8
+	fetch 1,core_spid_ctrl
+	store 1,mem_saved_spidctrl
+	copy temp,regb
+p_lpm_write_gpio_wakeup:		// gpio auto wakeup
+	arg 12,loopcnt
+	arg mem_gpio_wakeup_cfg,rega
+	arg core_gpio_wakeup_cfg,regc
+	until null,lpo_edge
+p_lpm_write_gpio_loop:
+	ifetch 1,rega
+	ifetcht 1,regc
+	isub temp,null
+	branch p_lpm_write_gpio_loop_next,zero
+	istore 1,regc
+	until null,lpo_edge
+p_lpm_write_gpio_loop_next:
+	increase 1,rega
+	increase 1,regc
+	loop p_lpm_write_gpio_loop
+	copy regb,temp
+	rtn
+
+p_app_init:
+p_keyboard_init:
+	call enable_authrom
+	call p_keyboard_setting_config
+	call p_keyboard_gpio_init
+	call p_keyboard_low_vol_mult_set
+	rtn wake
+	call p_keyboard_device_led_all_off
+	call p_keyboard_led_reuse_judge
+	fetch 1,mem_keyboard_device_poweron_timer_count_init
+	store 1,mem_keyboard_device_poweron_timer_count
+	call keyboard_cb_fuction
+	branch keyboard_init_wireless
+
+
+p_keyboard_setting_config:
+	call app_param_init
+	call p_keyboard_puchk_disable
+	rtn wake
+	call g24_transmit_init
+	call g24_chmap_param_init
+	fetch 1,mem_device_flag
+	store 1,mem_device_flag_temp_new
+	fetch 3,mem_le_lap+3
+	store 3,mem_mouse_le_lap_temp
+	call keyboard_param_init
+	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
+	call le_set_fixed_ltk_justwork
+
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_OTP,keyboard_load_otp_info_check
+	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_check
+	rtn
+
+p_keyboard_select_reconn_device:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	increase -1,pdata
+	mul32 pdata,13,pdata
+	iadd rega,rega
+	ifetch 1,rega
+	store 1,mem_xrecord_mode
+	beq REC_4_MODE,p_keyboard_load_le_device
+	rtn
+
+//num灯，caps灯复用判断
+p_keyboard_led_reuse_judge:
+	fetch 1,mem_keyboard_low_voltage_alarm_gpio
+	fetcht 1,mem_keyboard_caps_led_gpio
+	isub temp,null
+	call p_keyboard_caps_led_reuse,zero
+	fetch 1,mem_keyboard_low_voltage_alarm_gpio
+	fetcht 1,mem_keyboard_num_led_gpio
+	isub temp,null
+	call p_keyboard_num_led_reuse,zero
+	fetch 1,mem_keyboard_low_voltage_alarm_gpio
+	fetcht 1,mem_keyboard_scroll_led_gpio
+	isub temp,null
+	branch p_keyboard_scroll_led_reuse,zero
+	rtn
+
+p_keyboard_caps_led_reuse:
+	fetch 1,mem_keyboard_reuse_led_bit
+	set1 KEYBOARD_REUSE_CAPSLED_BIT,pdata
+	store 1,mem_keyboard_reuse_led_bit
+	rtn
+
+p_keyboard_num_led_reuse:
+	fetch 1,mem_keyboard_reuse_led_bit
+	set1 KEYBOARD_REUSE_NUMLED_BIT,pdata
+	store 1,mem_keyboard_reuse_led_bit
+	rtn
+
+p_keyboard_scroll_led_reuse:
+	fetch 1,mem_keyboard_reuse_led_bit
+	set1 KEYBOARD_REUSE_SCROLLLED_BIT,pdata
+	store 1,mem_keyboard_reuse_led_bit
+	rtn
+
+
+p_keyboard_load_le_device:
+	ifetch 6,contr
+	store 6,mem_hci_plap
+	branch mouse_load_le_device_end+3
+
+p_keyboard_gpio_init:
+	call p_clear_wake
+	fetcht 1,mem_config_select_device_button_gpio
+	storet 1,mem_sensor_motion_gpio
+	call keyboard_gpio_config_input_pu
+	//row init
+	setarg mem_key_row_gpio
+	store 2,mem_kb_row_ptr
+	//col init
+	setarg mem_key_col_gpio
+	store 2,mem_kb_col_ptr
+	//portA and B init
+	setarg mem_key_excol_gpio
+	store 2,mem_kb_excol_ptr
+
+	call p_keyboard_key_row_init
+
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	arg 20,loopcnt
+	branch keyboard_key_cow_init
+
+p_keyboard_key_row_init:
+	fetch 2,mem_kb_row_ptr
+	copy pdata,regb
+	arg 8,loopcnt
+p_keyboard_key_row_init_loop:
+	ifetcht 1,regb
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	ncall keboard_gpio_set_high_impedance,zero
+	increase 1,regb
+	loop p_keyboard_key_row_init_loop
+	branch p_lpm_write_gpio_wakeup
+
+
+
+p_keyboard_low_vol_mult_set:
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,keyboard_low_vol_mult_ble_set+1
+	call g24_interval_param_8ms
+	branch keyboard_low_vol_mult_set+2
+
+p_ui_ipc_send_event:
+	fetch 1,mem_fifo_temp
+	arg 8,loopcnt
+	arg mem_ipc_fifo_bt2c51,contr
+p_ui_ipc_fifo_check:
+	ifetcht 1,contr
+	isub temp,null
+	rtn zero
+	loop p_ui_ipc_fifo_check
+	branch ui_ipc_send_event+1
+
+p_check_51cmd_once_continue:
+	fetch 1,mem_fifo_temp
+	beq BT_CMD_STORE_RECONN_INFO_LE,p_eeprom_store_le_reconn_info
+	branch check_51cmd_once_continue+4
+
+p_eeprom_store_le_reconn_info:
+	jam REC_4_MODE,mem_record_bt_mode
+p_eeprom_store_reconn_info:
+	fetch 1,mem_device_option
+	beq DVC_OP_KEYBOARD,keyboard_store_remote_bdaddr
+	branch eeprom_store_reconn_info+1
+
+///////////////////////
+///////////////////////
+
+///////////////////////
+p_g24_pair_dispatch:
+	jam DEFAULT_24G_DEVICE,mem_24g_reconn_type
+	branch g24_pair_dispatch+8
+
+p_keyboard_g24_reconn_dispatch:
+	fetch 2,mem_24g_reconn_count
+	and_into 0xe0,pdata
+	branch p_keyboard_g24_reconn_dispatch_next,blank		// each 0x100 times,reconnect 16 times
+	fetch 2,mem_24g_reconn_count
+	increase 1,pdata
+	store 2,mem_24g_reconn_count
+	rtn
+p_keyboard_g24_reconn_dispatch_next:
+	call g24_reconn_data_prep
+	call g24_transmit_receive_ack
+	nbranch g24_reconn_device_fail,sync
+	nbranch g24_reconn_device_fail,user3
+	call p_keyboard_g24_ackpayload_parse
+	branch g24_reconn_dispatch_next+5
+
+
+p_keyboard_g24_transmit_no_interrupt:
+	call g24_txdata_prep
+	nbranch p_keyboard_g24_nodata_transmit,user
+p_keyboard_g24_transmit_start:
+	call p_keyboard_24g_fast_conn_mode_check
+	call p_keyboard_g24_transmit_process
+	call keyboard_power_ctrl_start
+	branch keyboard_g24_transmit_start_next
+
+p_keyboard_24g_fast_conn_mode_check:
+	fetch 4,mem_24g_receiver_addr
+	fetcht 4,mem_24g_fast_conn_addr
+	isub temp,null
+	branch p_keyboard_soft_agc_enable,zero
+	branch p_keyboard_soft_agc_disable
+
+p_keyboard_soft_agc_enable:
+	jam 0,mem_gain_fix
+	jam TX_POWER_FACTORY,mem_tx_power
+	rtn
+
+p_keyboard_soft_agc_disable:
+	jam 0xff,mem_gain_fix
+	rtn
+
+
+p_keyboard_g24_nodata_transmit:
+	fetch 8,mem_keyscan_value_current
+	nbranch keyboard_g24_transmit_start_next,blank
+	fetch 8,mem_keyscan_value_current+8
+	nbranch keyboard_g24_transmit_start_next,blank
+	fetch 4,mem_keyscan_value_current+16
+	nbranch keyboard_g24_transmit_start_next,blank
+	call g24_search_receiver
+p_keyboard_g24_long_sleep:
+	call keyboard_g24_lpm_wait
+	nrtn user
+	call g24_setgpio_lpm_before
+	fetch 1,mem_sensor_shutdown_flag
+	ncall keyboard_setgpio_hibernate,blank
+	fetch 8,mem_24g_enter_hibernate
+	branch g24_long_seep2
+
+p_keyboard_g24_transmit_process:
+	jam 0,mem_24g_retry
+p_keyboard_g24_transmit_loop:
+	fetchr timeup,2,mem_param_rx_setup
+	until clkn_rt,meet
+	call keyboard_special_key_check
+	fetch 2,mem_24g_pair_timeout
+	nbranch g24_transmit_no_ack,blank
+	call g24_transmit_receive_ack
+	fetch 1,mem_24g_no_ack	//tx noack
+	beq no_ack_24g,g24_transmit_no_ack
+	nbranch p_keyboard_g24_retransmit,sync
+	nbranch p_keyboard_g24_retransmit,user3
+	call p_keyboard_g24_ackpayload_parse
+//	call p_keyboard_device_select_g24_nopress_timer
+	jam 0,mem_sensor_shutdown_flag
+	branch g24_transmit_no_ack
+
+
+p_keyboard_g24_retransmit:
+	fetch 1,mem_24g_abort_pac
+	nrtn blank
+	fetch 2,mem_24g_txfail_cnt
+	increase 1,pdata
+	store 2,mem_24g_txfail_cnt
+	fetch 1,mem_24g_txfail_cnt
+	beq 0xff,g24_tx_attempt_fail
+	fetch 1,mem_24g_retry
+	increase 1,pdata
+	store 1,mem_24g_retry
+	and_into 0x03,pdata
+	branch p_keyboard_g24_transmit_hop_process,blank		//each 4 times change channel
+	branch p_keyboard_g24_transmit_loop
+
+p_keyboard_g24_transmit_hop_process:
+	call kscan_dispatch
+	call p_keyboard_device_select
+	fetch 1,mem_keyboard_switch_device_flag
+	nbranch g24_transmit_no_ack,blank
+	call p_g24_tx_fast_hop
+	branch p_keyboard_g24_transmit_loop
+
+p_g24_tx_fast_hop:
+	fetch 4,mem_24g_addr
+	fetcht 4,mem_24g_fast_conn_addr
+	isub temp,null
+	branch g24_ch,zero
+	branch g24_tx_fast_hop
+
+
+p_keyboard_g24_ackpayload_parse:
+	call g24_ackpayload_parse
+	fetch 1,mem_24g_rxbuf+1
+	compare 0x08,pdata,0xf8
+	nrtn true
+	fetch 1,mem_24g_rxbuf+2		// pc sleep mouse ackpayload: 01 08 ff
+	beq 0xff,p_keyboard_24g_hibernate_set
+	store 1,mem_keyboard_led_status
+	rtn
+
+p_keyboard_g24_short_sleep:
+	call g24_lpm_wait
+	nrtn user
+	call p_clear_wake
+	fetch 3,mem_24g_short_sleep_set
+	branch g24_long_seep2
+///////////////////////
+
+p_adc_init_data:
+	fetch 8,mem_otp_adc
+	branch adc_init_cal_data_default,blank
+	store 8,mem_reference_inter1p8v_2v_adc_io_data
+	call enable_otp_read
+	call loadcode_check_otp_lock
+	arg OTP_OFFSET_ADC_PARAM_L_C0,pdata
+	iadd regb,regb
+	arg 10,loopcnt
+	arg mem_otp_temp,rega
+	call otp_read_data
+	call disable_otp
+	fetch 8, mem_otp_temp
+	rtn blank
+	store 8,mem_adc_reference3v_gpio1v_ft_data
+	ifetch 2,contr
+	istore 2,contw
+	//call  eut_test_data_init
+	rtn
+
+p_sadc_cal_write:
+	fetch 1,core_sadc_ctrl
+	set1 1,pdata
+	store 1,core_sadc_ctrl
+	fetchr regb,1,mem_spi_write_addr
+	fetch 1,mem_adc_cal_c7
+	store 1,mem_spi_write_addr
+	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
+	call sadc_cal_write+4
+	storer regb,1,mem_spi_write_addr
+	fetch 1,core_gpadc_cfg2
+	set0 4,pdata//caliberation write disable
+	store 1,core_gpadc_cfg2
+	rtn
+
+
+
+p_vdd_calculate_by_mode:
+
+p_vdd_reference_inter3V_calculate:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_HVIN,p_vdd_reference_inter3V_calculate_by_mode_vdcdc
+	beq ADC_CONFIG_GPIO,p_vdd_reference_inter3V_calculate_by_mode_gpio
+	rtn
+
+p_vdd_reference_inter3V_calculate_by_mode_vdcdc:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_adc_reference3v_vdcdc3p6v_ft_data
+	fetch 2,mem_adc_reference3v_vdcdc4p6v_ft_data
+	arg 3600,regc
+	call vdd_calculate
+	branch p_mul1V_div1V_to_cal
+
+p_vdd_reference_inter3V_calculate_by_mode_gpio:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_adc_reference3v_gpio1v_ft_data
+	fetch 2,mem_adc_reference3v_gpio2v_ft_data
+	arg 1000,regc
+	call vdd_calculate
+p_mul1V_div1V_to_cal:
+	fetcht 2,mem_adc_reference3v_inter1v_ft_data
+	imul32 temp,pdata
+	fetcht 2,mem_adc_reference3v_inter1v_now_data
+	idiv temp
+	branch get_div_result
+
+p_enable_adc_init_config:
+	call p_sadc_cal_write
+	fetch 1,core_gpadc_cfg1
+	set0 7,pdata
+	store 1,core_gpadc_cfg1
+	jam 0x77,core_gpadc_ctrl
+	jam 0xc1,core_gpadc_cfg0
+	jam 0x61,core_vtest_ctrl0
+	jam 0x00,core_gpadc_cfg3
+	rtn
+
+p_enable_adc:
+
+p_enable_adc_reference_source_inter3V:
+	call p_enable_adc_init_config
+	call sadc_channel
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	call sadc_read
+	jam 0x60,core_vtest_ctrl0
+	jam 0x00,core_sadc_clkdiv
+//	rtn
+
+p_read_adc_inter1V:
+	call p_enable_adc_init_config
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	jam 0x50,core_gpadc_cfg3
+	jam 0xc0,core_vtest_ctrl1//select vref1v
+
+	arg 0xb,regext_index
+	fetchr regext, 2,mem_adc_current_value
+
+	jam 0x03,core_sadc_ctrl
+	call p_sar_adc_read_wait
+	fetcht 2,core_sadc_data
+	storet 2,mem_adc_reference3v_inter1v_now_data
+	call sadc_read_wait+4
+
+	arg 0xb,regext_index
+	storer regext,2,mem_adc_current_value
+
+	jam 0x60,core_vtest_ctrl0
+	jam 0x00,core_sadc_clkdiv
+	jam 0x00,core_sadc_ctrl
+	rtn
+
+
+
+p_sar_adc_read_wait:
+	fetch 1,core_perf_status
+	bbit0 SARADC_DONE,p_sar_adc_read_wait
+	rtn
+
+
+
Index: output/bt_program23.rom
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.rom	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/bt_program23.rom	(working copy)
@@ -0,0 +1,1628 @@
+11000010100001000000000000110000
+11000000000000000000000000110101
+11000000000000010000000001100110
+11000000000010000000000001101111
+11000000000010001000000001110001
+11000000000010100000000101010100
+11000000000010101000000011110010
+11000000000011000000000011111111
+11000000000011001000000100000110
+11000000000011010000000001111111
+11000000000100101000010100010101
+11000000000101000000010100000111
+11000000001000010000000101110011
+11000000001000100000000111110000
+11000000001000101000010010010000
+11000000001000110000000111110011
+11000000001000111000001000001010
+11000000001001011000001100001111
+11000000001001100000001100101111
+11000000001001110000001101001100
+11000000001010000000001110110101
+11000000001010010000010000111000
+11000000001010101000010001000111
+11000000001010111000010001110001
+11000000001011001000010010000001
+11000000001011010000010011100010
+11000000001011011000010011101011
+11000000001011100000010011100110
+11000000001011101000010011101101
+11000000001011110000010111010000
+11000000001011111000010111111110
+11000000001110001000010011101011
+11000000001110110000000001000111
+11000000001110111000001000100100
+11000000010000000000000100111100
+11000000010000100000010011101011
+11000000010011010000001011110100
+11000000010110001000010100110100
+11000000011000101000000101110000
+11000000011010101000010011010001
+11000000011010110000010011001010
+11000000011011010000000100111101
+11000000011011011000011000000011
+11000000011011100000011001000000
+11000000011011101000011000100001
+11000000011110110000010110010100
+11000000011111010000010110011100
+00100000001000000010001101011010
+11000000001111111000010110100011
+11000000010010000000010110100101
+11000000010010101000010110110010
+11000001011111111000000000000000
+00100000001000000010001101011010
+00100100001101011000000000111000
+00110111110110011000001000000000
+00110111110110011000001000000000
+00100000010000000101010010101100
+00100100001101000010000000000010
+01101111111000001100101010111010
+00100000001110100010000000000010
+01110000010010101011101000000000
+01101111111000001100011001010101
+11000000011111111010000000000010
+00011111111000100000111000000000
+01101111111000100000011010011101
+10101111111011000000000000000000
+00100000010000001100111001000101
+00100000001000000010000000000010
+01101111111000001100100011110101
+11000000010101101000001111111011
+00100000001000000100110100111100
+01101111111001000100011100010011
+11000100000010101000000000000000
+00100000010000000000000001001011
+00100000001000000101010101000001
+01101111111000001100010000000111
+11000001100000010000000000000000
+01101111111000001100010000001000
+00100000010000000000000001010100
+00011000010000100111111000000000
+01100111111000001100011000110101
+01111001001000000111111000000111
+11011000010000000000000000000000
+00100000001000000110111100100000
+11011000010000000000000000010010
+11000001000000110000000000000000
+11011000010000000000000000001010
+11000001000000111000000000000000
+11011000010000000000000000001001
+11000001000001000000000000000000
+11011000010000000000000000001100
+11000001000001001000000000000000
+11011000010000000000000000000110
+11000001000001010000000000000000
+11011000010000000000000000010100
+11000001000001011000000000000000
+11011000010000000000000000010101
+11000001000001100000000000000000
+11011000010000000000000000010110
+11000001000001101000000000000000
+11011000010000000000000000001101
+00100000011000000000000000000000
+00100000010000000111010101010010
+00100000010000000111010001001000
+00100000010000000010101001000101
+00100000010000000010000000101010
+00100000010000000100001010101101
+00100000010000000010000000011000
+00100000010000000011000100001111
+00100000010000000010010010001100
+00100000001000000000000001100110
+01110000100010010000000000000000
+00100000001000000010000101010011
+01110000100010100000111101100000
+01110000100010100001000010101010
+01110000100010100001001001111010
+01110000100010100010010100000000
+01110000100010100010011000000000
+00100000000000000000000000111100
+01110000100010100010000000100000
+01110000100010100010001111110101
+01110000100010100010010000010010
+01110000100010100010010000010000
+00100000000000000000000000111100
+01110000100010100001001001100000
+01110000100010100010001111011101
+00100000011000000000000000000000
+01110000000000011011101100000000
+01110000000000011011110000000000
+00110111110110011000001000000000
+01110000100010010100011000001101
+01110000100010010110111100010000
+01110000100010100001001111001101
+01110000100010100000011000010000
+01110000100010101000010001001010
+01110000100010101000010101000000
+01110000100010100001011011111110
+00100000010000000000000011000110
+00100000010000000111000011010111
+00110111110110011000001000000000
+01110000100000010011101101011111
+00110111110110011000001000000000
+01110000100000010011110010001000
+00110111110110011000001000000000
+01101111111000001100000010011001
+11000000000010000000000010111011
+01101111111000001100010000111000
+00011111111000011111111000000100
+01100111111100001000101000000010
+01110000100010010000111100000001
+01110000100010101000000000100100
+01110000100010101000000101100010
+01011000111001100001001000010010
+01100111111100011000101001110011
+01110000100010101000011001100000
+01110000100010101000101100111011
+00100000010000000000000010101101
+01110000100000000100001100000000
+01110000100000000100001000000101
+01011000010101010111010001110100
+01100111111100011000100101101000
+01110000100010010110000001101110
+00100000010000000000000100001110
+00100000010000000000000100111001
+00100000010000000000000010100111
+01110000010000010100100000001100
+00100000001000000110111101001110
+00100000011101011000000000000000
+00110111110110011000001000000000
+01101111111000001100000100011100
+01100111111100001000000100111010
+00110111110110011000001000000000
+00100000011000000000000000000000
+01101111111000001100000010011001
+11000000000011000000000010110011
+01101111111000001100010000111000
+00011111111000011111111000000110
+01100111111100001000101000000010
+01110000100010100000010111100000
+01110000100010100000000011011000
+00100000000000000000000000111100
+01110000100010100000000110100000
+01110000100010100000000011011111
+01110000100010100000000111111010
+00100000000000000000000000010100
+01110000100010100000000010011111
+00100000011000000000000000000000
+01101111111000001100010000111000
+00011111111000011111111000000110
+01100111111100001000101000000010
+01110000100010010000111100000000
+01110000100010101000000000100011
+01110000100010101000000110110000
+01011000111001000000100100001001
+01100111111100011000101001110011
+01110000100010100111011000101010
+01110000100010010000001000000100
+00100000001000000000000010011010
+00100000001101011000000011101110
+01101111111000100000001000001101
+00100000011110100000000000000000
+00110111110110011000001000000000
+01101111111100001000000100110110
+00011111111000010111111011110000
+01101000010010001000001000001101
+10011000010000011111111000000000
+00011111111000001111111111111101
+01100111111100001000000100110110
+00110111110110011000001000000000
+01101111111100001000000100111000
+00011111111000010111111000000111
+01101000010010001000001000001110
+00011000010010011000010000000000
+10011000010000011111111000000000
+01100111111100001000000100111000
+00110111110110011000001000000000
+01101111111100001000101011001011
+00011111111000010111111011110000
+01101000010010001000001000001111
+01100000010010001100000101011011
+10011000010000011111111000000000
+01100111111100001000101011001011
+01101111111000001000001000010000
+01100111111000001100000101011100
+00101111111011111111111000000011
+01101111111100001000101000000110
+01111001001000001111111000000111
+01100111111100001000101000000110
+01101111111000001000001000010000
+00011111111000010000010000000111
+00011000010100100000010000000000
+00011000010000111000010000000000
+01100000010010001100010000111000
+01101111111100001000101000000010
+00011111111000010111111000011111
+10011000010000011111111000000000
+01100111111100001000101000000010
+00100000011000000000000000000000
+01101111111000010100000101011011
+00100000011110100000000000000000
+01100111111000010000001000001111
+00100000001000000000000011011000
+00100000010000000010000110111010
+00011000000000000010101000001000
+00011000000000000010101000000000
+01011000000010101010101011011010
+01100111111100011000101000001111
+01110000100010100010010101000000
+01110000100010100010011000010000
+00100000000000000000000000111100
+01110000100010100000000111111011
+01110000100010100010010111111111
+01110000100010100010011000110000
+01110000100010100001011011111110
+00100000001000000010000110110100
+01011000000010101010101001111110
+01100111111100011000101000001111
+00100000000000000000000000111100
+01110000100010100010010100000000
+01110000100010100010011000001101
+01110000100010100001011011110110
+00100000001000000010001000000011
+01101111111000001100000101000001
+11000000000001010000000100001001
+00100000001000000010001000001110
+01110000100010100001010000100101
+01011000101010010011111100111111
+01100111111100011000101001100000
+01110000100010100110001100011111
+00100000011000000000000000000000
+00100000011101011000000000000000
+00100000010000000010000101100000
+11011000010000000000000000100111
+00100000010000000010000101101111
+00100000010000000010000110100110
+01110000100010100010010101111111
+01110000100010100011000000011010
+01110000100010100011000101111000
+01110000100010101000111110110010
+01110000100010101100001000000000
+01110000100010101100001100000000
+11011000111000000000000000000110
+00100000010000000000000100101011
+00101010001011111111111000001101
+00100000010000000010000100011101
+00101010010011111111111000001101
+00100000010000000010000100011110
+11011000111000000000000000000101
+00100000010000000010000100011100
+00100000010000000010000100011110
+00100000010000000000000100101011
+11011000101000001000101011000010
+00011010001100011111111000000000
+00100000010000000010000100010111
+00011010010100011111111000000000
+00100000010000000010000100010111
+00011000111000001000111111111111
+00100000001000010000000100100000
+00100000001000000010000101001111
+00100000000000000000000000111100
+01011000000000000000111100000000
+01100111111100010000100110000010
+01011000000000000000111111110000
+01100111111100010000100110000100
+01110000100010011000000100001001
+01110000100010011000000100000011
+01110000100010011000000000000110
+00100000000000000000000000111100
+11011010001000000000000000000000
+11011010010000000000000000000000
+11011111001000000000000000010000
+11011000110000000000111100000000
+00100000001000000010000100101101
+00100000011101011000000000000000
+00100000001000000010001001110010
+01011000000000000000000000000000
+00100000011000000000000000000000
+00100000011101011000000000000000
+01110000100010100000011101110111
+01110000100010100000100011001001
+01110000100010100000101100000001
+01101111111000001100010000001001
+01100111111100001000000011001101
+00100000000000000000101110111000
+00100000010000000000000101001101
+01110000100010100000100011000001
+01101010010000001100010000011001
+11011111001000000000000000001000
+00100000010000000110111101011000
+01101111111000001100010000011001
+01100111111000001100010000110011
+01100010010000001100010000011001
+00100000011000000000000000000000
+01110000100000001100110000000011
+01101111111100001000000100101001
+11000011000000101000000101001110
+01101000010110010000000101100100
+01100000010010010100010000001010
+01110000100000001100110000000000
+00100000011000000000000000000000
+01110000100010101000001000010001
+01110000100010101000110100010010
+01110000100010101000111000001010
+01101111111000001100000010011001
+11000000000010000000000101101101
+01011000000000000101011101100010
+01100111111100010000100100000111
+01110000100010010000000100000011
+01110000100010010011000000000011
+11000110000101101000000000000000
+01110000100010010000000100000001
+01110000100010101000001000000111
+01110000100010101000110101000100
+01110000100010101000111000001010
+01101111111000001100000010011001
+11000000000010000000000101101010
+01011000000000000010101110110001
+01100111111100010000100100000111
+11000110100101111000000000000000
+01110000100010010011000000100100
+01110000100010010000000100000101
+00100000011000000000000000000000
+01011000000000000100000110001001
+01100111111100010000100100000111
+00100000001000000000000101100110
+01011000000000001000001100010010
+01100111111100010000100100000111
+00100000001000000000000101011011
+00100000010000000110101100111010
+00100000010000000110101101110101
+00100000001000000110101100111000
+01101111111000001100011001100110
+11000000000000000000000101110111
+11000000000000001000000110000001
+00100000011000000000000000000000
+11011011000000000000000000001000
+01101111111000010100110100001110
+10011011000001101111110000000000
+00100000010000000111110101100010
+00011000000001111111111000000000
+01100111111000010000011001110000
+11011111111000000001111110111100
+11011000010000000000000000000100
+11011101011000000000000000000100
+00100000001000000000000110001011
+11011011000000000000000000100000
+01101111111000010100110100001110
+10011011000001101111110000000000
+00100000010000000111110101100010
+00011000000001111111111000000000
+01100111111000010000011001110000
+11011111111000000001111110110000
+11011000010000000000000000010000
+11011101011000000000000000010000
+00100000001000000000000110001011
+01100111111000010000011001110010
+01100000010010001000011001111000
+11011010001000000100100111000111
+11011010011000000000000000000000
+01101111111000010000011001110010
+00011111111000100010010000000000
+01101111001000001000011001111000
+11011010001000000100100111000111
+00100000010000000110101101110100
+01101111111001000100100111000111
+01101000010011000100100111001111
+10011000010000011111111000000000
+01101000010011000100100111010111
+10011000010000011111111000000000
+00100000001110100000000110100001
+00011010011000001010011000000001
+01101111111000010000011001110000
+10011010011001100111110000000000
+01101111111000010000011001110010
+10011011000001100111111000000000
+01100111111000010000011001110010
+00100000001000000000000110001111
+00011010011001100111110000000000
+00100000001000101100101000111000
+01101111111000010000011001110010
+10011011000000001111111000000000
+10011101011001100111111000000000
+01100111111000010000011001110010
+01101111111000010000011001110010
+00011111111000100010010000000000
+01101111001000001000011001111000
+11011010001000000100100111000111
+00100000010000000110101101110100
+01101111111001000100100111000111
+01101000010011000100100111001111
+10011000010000011111111000000000
+01101000010011000100100111010111
+10011000010000011111111000000000
+00100000001110100000000110110100
+01101111111000010000011001110010
+00100000001000000000000110100101
+01011000000000000001111111000000
+01101000010010010000011001110010
+10011000010001100111111000000000
+01100111111000010100100111011111
+00011000010000100111111000000000
+10011101011000001010010000000000
+01101111001000001000011001111000
+11011010001000000100100111000111
+00100000010000000110101101110100
+01101111111000001100011001100110
+11000000000000000100101001000111
+11000000000000001000000111000001
+00100000011000000000000000000000
+01101111111000001100100111000111
+00011111111001100111110000000011
+00100100010000010111110111001010
+01100111111000001100100111000110
+01101111111000001100100111001000
+01100111111000001100011001100111
+01101111111000110100100111001001
+01100111111000110100011001101000
+01101111111000110100100111001111
+01100111111000110100011001101110
+01101000010010010100100111010101
+00011000000010100111111000000000
+10011000010000001111111000000000
+01100111111000010100011010010101
+00100000001000000000010101010010
+01101111111000001100011001100110
+11000000000000000000000111010100
+11000000000000001000000111010111
+00100000011000000000000000000000
+01101000010010010100100111011111
+01011000000000000001111111000000
+00100000001000000100101001100011
+01110000010010111110011100000001
+01101111111000001100101111101000
+00100000011110100000000000000000
+01101000010010010100100111011111
+01011000000000000001111111000000
+10011000010001100111111000000000
+01100111111000010000011001110000
+00011111111000100010010000000000
+11011010001000000100100111000110
+11011111001000000000000000000001
+00100000010000000110101101000101
+01101111111000010000011001110000
+00011111111000001010010000000001
+11011010001000000100011001100111
+11011111001000000000000000001101
+00100000010000000110101101000101
+01101111111000010000011001110000
+00011111111000001010010000001110
+11011010001000000100011010010101
+11011111001000000000000000000010
+00100000010000000110101101000101
+01101000010010010100100111011111
+00011000010000001000010000010000
+01100000010010010100100111011111
+00100000011000000000000000000000
+01101111111001000100011100010011
+11000010100010100000000111010000
+00100000001000000100101001011000
+00011010011000100111111000000000
+11000000000111010000000111110110
+00100000001000000100101010011100
+01101111111000001100011000000000
+00100100001110100000000111111011
+01101111111000001100010111100010
+11000000000000010000001000000011
+00100000001000000100101100000010
+01110000010001100000000000000000
+00100000010000000011011001000111
+01011111111111111111111111111111
+01100111111001000100010110101111
+01011000000000000000000000000000
+01100111111000111100100001000110
+01110000010001110011111100000001
+00100000001000000000010111001001
+01101111111001000100011100010011
+11000010100111110110000000110100
+11000010100110000110000000110100
+11000011000111010110000001100111
+01101111111000100100011010010001
+00100000001110100000001100001011
+00100000001000000110000001100111
+00100000010000000101010100111101
+00100000010000000000001011000111
+00100000010000000011001010001110
+00100000010000000011010100110001
+00100000010000000101111111011101
+00100000010000000000001001000001
+00100000010000000100101101101000
+00100000010000000000001001000100
+00100000010000000000001010010001
+00100000010000000000001010111011
+00100000010000000000001010110011
+00100000010000000100101101000011
+00100000010000000100101101011000
+00100000010000000101101111100001
+00100000010000000100101101011100
+00100000010000000101101111100100
+00100000010000000100101101011111
+00100000010000000100101101010101
+00100000010000000000001100000000
+00100000010000000100101100110010
+00100000010000000101101111111110
+00100000010000000100101101001000
+00100000010000000000001011110101
+00100000010000000100101110000111
+00100000001000000000001011111010
+00100000011000000000000000000000
+00100000010000000000001000110101
+00100000010000000110111110000010
+00100000010000000110111110110000
+00011111111001101111110000001010
+00100000010000000111110101011111
+01100111111000010100011000110011
+11011010001000000100011000101101
+00100000010000000101010101100011
+01101111111000001100010000001100
+11000010100000001100111101101011
+11000011000000000000001000110001
+01110000010001100011011100000001
+00100000001000000101010101011010
+11011000111000000000000000000100
+00100000010000000101111100000100
+01110000010011010000100000001001
+00100000001000000101010101011111
+00100000010000000101010011110010
+01011000010100100000000010010000
+01100111111000011100011000101101
+01011000000000000110110100000000
+11100111111000011000000000000101
+01101111111000001100011000110111
+00100000001110100000001000111110
+01110000010001100011000101110000
+00100000011000000000000000000000
+01110000010001100011000101101101
+00100000011000000000000000000000
+00100000011000000000000000000000
+01101111111000001100100011101011
+00100100011110100000000000000000
+00100000001000000100101101100010
+01101111111000010100011110000001
+00100000011110100000000000000000
+01101111111000001100011100111111
+00100100011110100000000000000000
+01101111111000010100011100100101
+01101000010010010100011110000001
+10011000010001100000010000000000
+01101111111000010100100001101001
+10011000010001100111111000000000
+00100000001000010000001001100100
+00100000010000000000001001110011
+00100000010000000000001001111010
+00100000001000000000001001010001
+01101111111000001100110100010000
+11000010100000001000001001010101
+01101000010010001100100001100110
+00100000001000000110111011110011
+01101111111001000100011100010011
+11000011100000100000000000000000
+00100000001000000000001001010011
+01101111111000001100100110101010
+11000011000000001000001001010001
+01101111111000001100110100010000
+11000010100000001000001001011110
+01101000010010001100100001100110
+00100000001000000110111011110111
+01101111111001000100011100010011
+11000011000000100000001001011100
+01101111111000001100110100001000
+00011111111001100111110000001011
+00100100001000010000001001011100
+00100000011000000000000000000000
+00100000010000000000001001100111
+00100000010000000000001010000000
+00100000001000000000001001011000
+01101111111000001100100110101010
+11000011000000000000001001110011
+01101111111000001100110100010000
+11000010100000000000001001101101
+01101000010010001100100001100111
+00100000001000000110111011110111
+01101111111001000100011100010011
+11000011000000100000001001101011
+01101111111000001100110100001000
+00011111111001100111110000001011
+00100100001000010000001001101011
+00100000011000000000000000000000
+01101111111000001100110100010000
+11000010100000000000001001110111
+01101000010010001100100001100111
+00100000001000000110111011110011
+01101111111001000100011100010011
+11000011100000100000000000000000
+00100000001000000000001001110101
+01101111111000001100110100010000
+11000010100000010000001010001110
+01101111111000001100101000001000
+00100100011110100000000000000000
+01101000010010001100101110111011
+00100000001000000110111011110011
+01101111111000001100101000001000
+00100100011110100000000000000000
+01101111111000001100110100010000
+11000010100000010000001010001000
+01101111111000001100100110101010
+11000011000000010000001001111010
+01101000010010001100101110111011
+00100000001000000110111011110111
+01101111111001000100011100010011
+11000011000000100000001010000100
+01101111111000001100110100001000
+00011111111001100111110000001011
+00100100001000010000001010000100
+00100000011000000000000000000000
+01101111111001000100011100010011
+11000011100000100000000000000000
+00100000001000000000001001111100
+01101111111000001100101000001000
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100111111000001100101000001000
+00100000001110100000001010010111
+00100000001000000000001010011101
+01101111111000001100011001100110
+11000000000000000000001010100011
+11000000000000001000001010100101
+11000000000000010000001010100111
+11000000000000011000001010101001
+00100000011000000000000000000000
+01101111111000001100011001100110
+11000000000000000000001010101011
+11000000000000001000001010101101
+11000000000000010000001010101111
+11000000000000011000001010110001
+00100000011000000000000000000000
+01101000010010001100101110110111
+00100000001000000110111011110011
+01101000010010001100101110111000
+00100000001000000110111011110011
+01101000010010001100101110111001
+00100000001000000110111011110011
+01101000010010001100101110111010
+00100000001000000110111011110011
+01101000010010001100101110110111
+00100000001000000110111011110111
+01101000010010001100101110111000
+00100000001000000110111011110111
+01101000010010001100101110111001
+00100000001000000110111011110111
+01101000010010001100101110111010
+00100000001000000110111011110111
+01101111111000010100011110000001
+00100000011110100000000000000000
+01101111111000001100101111001010
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100111111000001100101111001010
+11000010100000000000001010011101
+00100000001000000000001010010111
+01101111111000001100011001100110
+11000000000000000000001011000000
+01101111111000010100011110010000
+00100000011110100000000000000000
+00100000001000000000001011000010
+01101111111000010100010111011000
+00100000011110100000000000000000
+01101111111000001100110100000111
+00011111111000001111111000000001
+01100111111000001100110100000111
+11000010100000010000001010011101
+00100000001000000000001010010111
+01110000010011010000110000000000
+01101111111000010100011110010000
+00100100011110100000000000000000
+01101111111000010100010111011000
+00100100011110100000000000000000
+01101111111000010100010111011110
+00100100011110100000000000000000
+01101111111000001100101000001000
+00100100011110100000000000000000
+01101111111001000100011100010011
+11000100000100011000000000000000
+11000100000000100000000000000000
+11000010100100111000001011100101
+01101111111000001100110100001000
+00011111111000001111111000000001
+01100111111000001100110100001000
+00011111111001100111110000010100
+00100100010000010000001011011110
+11000000000000010000001011100001
+11000000000000100000001011100011
+11000000000000110000001011100001
+11000000000001000000001011100011
+00100000011000000000000000000000
+01110000010011010000100000000001
+01110000010011010000101100000000
+00100000001000000000001011100011
+01101000010010001100101110111100
+00100000001000000110111011110111
+01101000010010001100101110111100
+00100000001000000110111011110011
+01101111111000010100011100100101
+01101000010010010100011110000001
+10011000010001100000010000000000
+01101111111000010100110100001001
+10011000010001100111110000000000
+00100100001000010000001011100011
+01110000010011010000110000000001
+01101111111000001100110100001011
+00011111111000001111111000000001
+01100111111000001100110100001011
+11000000000000001000001011100001
+11000000000000110000001011100011
+00011111111001100111110000001001
+00100100010000010000001011011110
+00100000011000000000000000000000
+00100000011000000000000000000000
+11011010011000000100100011101110
+11011010010000000000001011111000
+00100000001000000100001011100111
+01110000010010001110101100000001
+00100000001000000100111101101100
+11011010011000000100011110000001
+11011010010000000000001011111101
+00100000001000000100001011100111
+01101111111000001100011001100110
+11000000000000000000000111111011
+00100000001000000101101010101101
+01101111111000001100101110100001
+11000010100000000000001100000100
+00100000010000000000001100001101
+00100000011000000000000000000000
+01101111111000001100101110100100
+00011111111001100111110001100100
+00100100011000010000000000000000
+00011111111000001111111000000001
+01100111111000001100101110100100
+11000001100011001000000000000000
+01110000010010111010001100000000
+00100000010000000000010011100110
+00100000001000000100111000111001
+01110000010010111010010000000000
+00100000011000000000000000000000
+00100000010000000100101111111011
+00100000001000000000001100010001
+11011010001000000000000000000000
+01101000010010100100110100010010
+00011100010000100010010000000000
+00011010010000100111111000000000
+10011000010001100111110000000000
+00100100010000010111100000000110
+00011010010000100111111000000000
+00011000010000001000010000101000
+10011000010001100111110000000000
+00100100001000010000001100100011
+00011010001000001010001000000001
+00011010001000010111111000001111
+00100100001110100000001100010111
+11011010001000000000000000000000
+00100000010000000000001100101000
+00011100010000100111111000000000
+01100111111000100100110100010010
+00100000011000000000000000000000
+00011010001000100111111000000000
+00100000011110100000000000000000
+00011000010000001000010111011000
+01111001001111111000010000011100
+01100000010010100100110100010010
+01100111111000001100110100010110
+01101111111000001100110100010110
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100111111000001100110100010110
+00100000010000000000001110101101
+00100000001000000000001100101001
+01101111111001000100011100010011
+11000011000010101000001101000010
+00100000010000000000000001001011
+00100000010000000000001000110101
+00100000010000000110111110000010
+00100000010000000110111110110000
+00011111111001101111110000001010
+00100000010000000111110101011111
+01100111111000010100011000110011
+01101111111000010100011000101111
+00011111111001101111110000000010
+00100000010000000111110101011111
+01101000010010010100011000110011
+10011000010001100111110000000000
+00100000001000010000001100101111
+11011010001000000100011000101101
+00100000010000000101010101100011
+01101111111000001100010000001100
+11000010100000001100111101101011
+01101111111000001100100110100100
+00100000010110100100111000100100
+01101111111000001100100110100011
+00100100011110100000000000000000
+01101111111000001100011001100110
+11000000000000000110000000101111
+00100000010000000101101010101000
+01101111111000110100011001101000
+00100000001110100101101010010100
+00100000001000000101010010100000
+00100000010000000000010101111000
+01011000000000000000000000000000
+01100111111000010100100011101001
+11011000110000000100100010011100
+11011000101000000100100010110000
+11011111001000000000000000010100
+00100000010000000111110011011010
+00100000010000000100110010000101
+01011000000000000100100010011100
+01100111111000010100100011100011
+01011000000000000100110011111011
+01100111111000010100100011100101
+00100000010000000100110010000011
+00100000010000000100110010000001
+01101111111000010100100011101001
+00011111111000001111111000000001
+01100111111000010100100011101001
+11000010100001001000001110010011
+01101000010010001100100001100100
+00100000010000000110111011100110
+00100100001000001000001101011010
+00100000010000000100110010000101
+01101000010010001100100001100100
+00100000010000000110111011100110
+00100000001000001000001101100010
+00100000010000000000001110001010
+00100000010000000000001110011010
+00100000010000000100110010000001
+00100000010000000100110010000011
+01101111111000010100100010011010
+00011111111000100010010000000000
+01110000010010001110100000000000
+11101000010000001000000000010010
+01101111111000010100100010011000
+00011111111000100010001000000000
+00011010001000100010011000000000
+11011111001000000000000000010100
+11101111111000001000000000010001
+10011000010001100111110000000000
+00100000001000101000001101111110
+00011010001000001010001000000001
+11000010000000000000001101110001
+00011010010000001010010000000001
+01101111111000001100100011101000
+00011111111000001111111000000001
+01100111111000001100100011101000
+00011111111001100111110000001011
+00100000001000010000001101101100
+00100000010000000000010011110000
+00100000001000000000010110000111
+01101111111000010100100011100011
+00011111111000100000101000000000
+00011010001000100111111000000000
+10011010011001100111111000000000
+10011000101000001000101000000000
+01101111111000010100100011100101
+00011111111000100010011000000000
+01101111111000001100100011101000
+10011010011000001010011000000000
+11101111111000001000000000010011
+11100111111000001000000000000101
+00100000001000000000001101110110
+01110000010010101011100100000000
+01110000010010001110100000000000
+00100000010000000100110001111011
+00100000010000000000001110010100
+00100000010000000100110001111001
+00100000010000000000001110010100
+00011111111001100111110000001011
+00100000001000010000001110001100
+00100000001000000100110001111011
+00100000001000000000001101001100
+01110000010010001110011100000000
+00100000010000000000001110011000
+01101111111000010100100011100101
+00100000001000000100110001001010
+00100000000000000000000001111000
+00100000001000000100110001100101
+01101111111000010100100010011000
+00011111111000100010010000000000
+01110000010010001110100000000000
+01110000010010001110011100000000
+11101000010000001000000000010010
+00101000010011111111111000000111
+00100000001000001000001110100111
+00100000010000000110111011110111
+00100000010000000000001110011000
+11101000010000001000000000010010
+00100000010000000110111011110011
+11101000010000001000000000010010
+00100000010000000100110001111101
+00011010010000001010010000000001
+01101111111000010100100011100011
+00100000010000000100110001001010
+00011111111001100111110000010011
+00100000001000010000001110011101
+00100000011000000000000000000000
+01101111111000001100110100010001
+00100000011110100000000000000000
+01110000010000001001010000000001
+01110000010011010001000100000000
+00100000011000000000000000000000
+01110000010000001001010000000000
+01110000010011010001000100000001
+00100000001000000100110010000111
+11011010001000000100100010011100
+11011010010000000100100010110000
+11011111001000000000000000010100
+00100000010000000111110101100100
+00100100001000101000001110110010
+00100000010000000000001111101111
+00100000010110100100110010000111
+00100000010000000100110011001101
+01101111111000001100100101111011
+00100100011110100000000000000000
+01101111111000001100100111000001
+11000001000000001000000000000000
+11000001000000010000000000000000
+11000001000000100000000000000000
+01110000010010001110100000000000
+11011010001000000100100010011100
+11011010010000000100100011000100
+11101000010000001000000000010001
+11101111111000001000000000010010
+10011000010000101111111000000000
+00100000001110100000001111100111
+01100111111000001100100011100111
+01100000010010001100100011110110
+11100000010000001000000000010010
+01110000010010001111010000000001
+01110000010010001111011100000000
+01101111111000001100100011100111
+11000011000000000000001111011100
+01101111111000001100100011101000
+00011111111011111111111000001000
+01101000010010001100100011110111
+10011000010000001111111000000000
+11011000110000000100101000010110
+10011000110000001000110000000000
+11101111111000001000000000000110
+01100111111000001100100011110101
+00100000010000000100110011111100
+00100000010000000000000001000100
+00100000010000000000010000000010
+01101111111000001100100011100111
+00011111111000110111111000000000
+01100111111000001100100011100111
+01101111111000001100100011110110
+00011111111000110111111000000000
+01100111111000001100100011110110
+01101111111000001100100011110111
+00011111111000001111111000000001
+01100111111000001100100011110111
+00011111111001100111110000000111
+00100000001000010000001111001111
+00011010001000001010001000000001
+00011010010000001010010000000001
+01101111111000001100100011101000
+00011111111000001111111000000001
+01100111111000001100100011101000
+00011111111001100111110000010011
+00100000001000010000001111000110
+00100000011000000000000000000000
+01101111111001000100100010011100
+00100100011110100000000000000000
+01101111111001000100100010100100
+00100100011110100000000000000000
+01101111111000100100100010101100
+00100100011110100000000000000000
+01101111111000001100100111000100
+00100100011110100000000000000000
+01101111111000001100100111000001
+11000001000000110000000000000000
+01110000010010011100000100000000
+00100000011000000000000000000000
+01101111111000001100100111000110
+11000000000000011000001111111111
+01011000000000000000000011111010
+00100000001000000100110100111000
+01110000010010011100001000001000
+01110000010010011100001100101100
+00100000001000000100110110010101
+01101111111000001100100011110101
+11011000010000000000000011100000
+10011000010001100111110000000000
+00100100001000010000010000010100
+00011111111001100111110011100111
+00100100001000010000010000110001
+00011111111000010111111000000111
+00011111111000100000111000000000
+01101111111000001100100011110110
+11000010100000000000010000010000
+01101111111000001100100011111000
+11111001001111111111111000000000
+01100111111000001100100011111000
+00100000011000000000000000000000
+01101111111000001100100011111000
+11111001001000000111111000000000
+01100111111000001100100011111000
+00100000011000000000000000000000
+01110000010010010000000000000000
+01101111111000001100100011110110
+11000010100000000000010000100101
+01101000010010001100100011110101
+11011111001000000000000000000110
+11011000110000000100100011111010
+11101111111000001000000000000110
+10011000010001100111110000000000
+00100100001000101000010000100011
+11101111111000001000000000000110
+00011000110000001000110111111110
+11100111111000001000000000000110
+00100000011110100000000000000000
+00011000110000001000110000000001
+11100000010000001000000000000110
+11000010000000000000010000011010
+00100000011000000000000000000000
+01101000010010001100100011110101
+11011111001000000000000000000110
+11011000110000000100100011111010
+11101111111000001000000000000110
+00100000001110100000010000101110
+10011000010001100111110000000000
+00100000011000101000000000000000
+11000010000000000000010000101000
+00100000011000000000000000000000
+00011000110000001000110111111111
+11100000010000001000000000000110
+00100000011000000000000000000000
+01110000010010011100010100000001
+01101111111000001100100011110110
+00101111111011000000000000000000
+00100000010000001000010000110110
+00100000001000000000010000010100
+01110000010010011100010100000010
+00100000011000000000000000000000
+01101111111000001100100011110110
+00101111111011111111111000000000
+00100000010000001100110101001110
+01101111111000001100100110100001
+00100100010110100000010001000101
+01101111111000001100100011110101
+11000000001110000000010001000000
+00100000001000000100110100000001
+01101111111000001100100111000110
+11000001100000000000000000000000
+01110000010010011100001000001010
+01110000010010011100001101110010
+00100000001000000100110110010101
+01101111111000001100100011110101
+00100000001000000100110100010010
+00100000010000000000010001010111
+00100000010000000100111000010100
+01110000010010011010000100000000
+01110000010010011010001000000000
+01110000010010011010001100000000
+01101111111000001100100011111000
+00100100010110100100111001000001
+11011000110000000100100011111010
+11011111001000000000000000000110
+11101111111000001000000000000110
+00011111111001100111110001111111
+00100000010000101100111001000011
+00011111111001100111110011011110
+00100000010000101100111001000101
+11000010000000000000010001010000
+00100000011000000000000000000000
+00100000010000000111110110111100
+00100000010000000000010001100001
+00100000001101000000010001011111
+01101111111000001100101110100001
+01111001001111111111111000000000
+01111001001111111111111000000001
+01100111111000001100101110100001
+00100000011000000000000000000000
+01110000010010001111010000000000
+00100000011000000000000000000000
+01101111111000010100100011111010
+01101000010010010100100110100111
+10011000010001100111110000000000
+00100000001000101000010001101001
+00011000010100001000010000000000
+10011000010001100111110000000000
+00100000001000101000010001101001
+00100000011000000000000000000000
+01101111111000100100100011111100
+00100100011110100000000000000000
+00100000010000000111110110111010
+01101111111000001100101110100001
+01111001001000000111111000000000
+01111001001111111111111000000001
+01100111111000001100101110100001
+00100000011000000000000000000000
+01111000010101000111110000000000
+01110000010010010110110000000000
+01110000010010010110110100000000
+01110000010010010110111000000000
+01101111111000001100100111000001
+11000000000000001100110110100101
+11000000000000010100110110101010
+11000000000000011100110110101010
+11000000000000100100110110101110
+11000000000000110100110110110111
+01101111111000001100100011110100
+00100000001110100000010001111110
+00100000001000000100111001010100
+01101111111000001100011001100110
+11000001100000000000000000000000
+00100000001000000100111001100110
+01101111111000001100011001100110
+11000000100000000000010010001000
+01110000010010011010100100000000
+01101111111000010100100001010101
+00100100010110100100101011111100
+01101111111000110100100001011000
+00100100010110100100101011111100
+01101111111000001100100001010101
+11000000000000000000010010001011
+00100000001000000100111100011001
+01110000010010000101111100000010
+00100000010000000100111100111110
+01101111111000001100011001100110
+11000000100000000100111100101010
+00100000001000000100111100100111
+01011000000000000000010010101011
+01100111111000010100001111101001
+01011000000000000100111111100101
+01100111111000010100010111110010
+01011000000000000100111111111000
+01100111111000010100010111110100
+01011000000000000000010010101110
+01100111111000010100010111110110
+01011000000000000000010011100000
+01100111111000010100001111010111
+01011000000000000100101010011010
+01100111111000010100001111011101
+01011000000000000100101111001100
+01100111111000010100001111011011
+01011000000000000100111101100010
+01100111111000010100001111010101
+01011000000000000101101100001000
+01100111111000010100001111011111
+01011000000000000100101100011001
+01100111111000010100001111100011
+01011000000000000101010111111010
+01100111111000010100001111100111
+01011000000000000110001000100001
+01100111111000010100001111100001
+01011000000000000110001000101000
+01100111111000010100001111100101
+00100000011000000000000000000000
+01101111111000001100011001100110
+11000001100000000000000000000000
+00100000001000000110000100001011
+00100000010000000000010011011010
+01101000010010001100011001010101
+00100000010000000110111010110110
+01101000010010001100101110111101
+01111001001000000000010000000111
+00100000010000000110111010110110
+01101111111000010100100010011000
+00011111111000100010010000000000
+11011111001000000000000000010100
+11101000010000001000000000010010
+00101000010011111111111000000111
+00100100010000001110111011110111
+00011010010000001010010000000001
+11000010000000000000010010110111
+01110000010011010000110100000000
+01101111111000010100100010010110
+00011111111000100010010000000000
+11011111001000000000000000001000
+11101000010000001000000000010010
+00011000010001100111110011111111
+00100100010000101100111101011010
+00011010010000001010010000000001
+11000010000000000000010011000000
+00100000010000000000010011111110
+01101000010010001100011001011011
+00100000010000000101010110110101
+00100000010000000101010110111001
+00100000001000000101010011110010
+00011000010001100111110011111111
+00100000011000101000000000000000
+11011001000000000000000000000100
+00101000010011111111111000000111
+00100000001000001110111010111101
+11011001000000000000000000000011
+00100000001000000110111010111101
+00011000010001100111110011111111
+00100000011000101000000000000000
+00100000010000000110111011100110
+00100000001000001000010011010111
+11011001000000000000000000000011
+00100000001000000110111010111101
+01110000010011010000110100000001
+11011001000000000000000000000110
+00100000001000000110111010111101
+01011000000000000000000000000000
+01111001001000000111111000010101
+01100111111001000000000000010110
+01011000000000000000000000000000
+11100111111000100000000000000101
+00100000011000000000000000000000
+11000110000100110000000000000000
+00100000001000000000010010101110
+01110000010001100101100111111111
+00100000010000000111001110011010
+00100000010000000100111101110000
+00100000001000000000010011101101
+00100000010000000100101101101111
+00100000010000000000001010010111
+00100000010000000000001001110101
+00100000010000000000001001111100
+00100000001000000000001001010011
+00100000010000000000010011101101
+00100000001000000100001100100111
+00100000010000000000010011011010
+00100000010000000100111101110000
+00100000001000000000010010101110
+11011000110000001000000001110000
+11011111001000000000000000010000
+11101111111000001000000000000110
+00100100001110100000010011110111
+01011000000000000000000001000000
+00011000110000001000101111111111
+11100111111000001000000000000101
+11000010000000000000010011110010
+11011111111000001000000011011100
+10011000110001100111110000000000
+00100000011000101000000000000000
+11011111001000000000000000001000
+11011000110000001000000011010100
+00100000001000000000010011110010
+01101111111000001100110100001101
+00100000001110100000010100000001
+00100000001000000000010100000101
+01011000000000000000000000010000
+01100111111100001000000101000001
+00110111110110011000001000000000
+00100000011000000000000000000000
+01011000000000000000000010000000
+00100000001000000000010100000010
+00100000010000000010010000001000
+01101111111000011100000010111101
+00100000011110100000000000000000
+01101111111000001100100110100001
+00100100011110100000000000000000
+01101111111000001100100110100010
+00100100011110100000000000000000
+01101111111000001100100001000101
+00100100011110100000000000000000
+01101111111000010100011110010000
+00100100011110100000000000000000
+01101111111000001100100111000100
+00100100011110100000000000000000
+00100000001000000010010010010000
+01101111111000010100001111101001
+00100000010000000111110101111001
+01101111111000100100000010101101
+10011000010000001111111000000000
+01100111111000100100000010101101
+00100000010000000000010100011100
+00100000001000000010010000100101
+01100000000001000100000011100111
+11011000110000001000000001110000
+11011000101000000100000011001100
+00100000010000000111110010001111
+11011000110000001000000011010100
+00100000010000000111110010001001
+01101111111100001000000010000000
+01100111111000001100000011101111
+00011000010000100010010000000000
+11011111001000000000000000001100
+11011010001000000000000000010110
+11011010011000001000000101001101
+00110111110110011000001000000000
+11101111111000001000000000010001
+11101000010000001000000000010011
+10011000010001100111110000000000
+00100000001000101000010100101111
+11100111111000001000000000010011
+00110111110110011000001000000000
+00011010001000001010001000000001
+00011010011000001010011000000001
+11000010000000000000010100101001
+00011010010000100000010000000000
+00100000011000000000000000000000
+00100000010000000111001110010110
+00100000010000000000010100111111
+00100000010000000000010101111000
+00100000010000000000010110010000
+00100000011101011000000000000000
+00100000010000000000010011100110
+00100000010000000000010101011100
+01101111111000001100101000000111
+01100111111000001100101000001000
+00100000010000000100101001111010
+00100000001000000100100101100010
+00100000010000000100001010100011
+00100000010000000000010100000001
+00100000011101011000000000000000
+00100000010000000011010111110000
+00100000010000000011001001011011
+01101111111000001100011001100110
+01100111111000001100101111100110
+01101111111000011100001011011110
+01100111111000011100011110010111
+00100000010000000100100110101111
+01011000000000000100101111111011
+01100111111000010100001100111111
+01011000000000000000000000100000
+01100111111000010100001101000001
+00100000010000000010101001000001
+01101111111001000100011100010011
+11000010100010100100100111111101
+11000010100010010101110101101110
+00100000011000000000000000000000
+11011010001000000100011001100111
+01101111111000001100011001100110
+11000001000000000000000000000000
+00011111111000001111111111111111
+00011111111011111111111000001101
+10011010001000001010001000000000
+11101111111000001000000000010001
+01100111111000001100001111110011
+11000000000110100000010101110101
+00100000011000000000000000000000
+01101111111000001100101110111100
+01101000010010001100100001100110
+10011000010001100111110000000000
+00100000010000101000010101101001
+01101111111000001100101110111100
+01101000010010001100100001100111
+10011000010001100111110000000000
+00100000010000101000010101101101
+01101111111000001100101110111100
+01101000010010001100101110111011
+10011000010001100111110000000000
+00100000001000101000010101110001
+00100000011000000000000000000000
+01101111111000001100110100010000
+01111001001000000111111000000001
+01100111111000001100110100010000
+00100000011000000000000000000000
+01101111111000001100110100010000
+01111001001000000111111000000000
+01100111111000001100110100010000
+00100000011000000000000000000000
+01101111111000001100110100010000
+01111001001000000111111000000010
+01100111111000001100110100010000
+00100000011000000000000000000000
+11101111111000110000000000000110
+01100111111000110100000100010110
+00100000001000000101110001111101
+00100000010000000000010011011010
+01101000010010001100011001010101
+01100000010010001100011001011001
+00100000010000000100110001111101
+01011000000000000100100001101110
+01100111111000010100100010010110
+01011000000000000100100001110110
+01100111111000010100100010011000
+01011000000000000100100010001010
+01100111111000010100100010011010
+00100000010000000000010110000111
+01101111111000010100100010011000
+00011111111000100010010000000000
+11011111001000000000000000010100
+00100000001000000100100111100001
+01101111111000010100100010010110
+00011111111000100010010000000000
+11011111001000000000000000001000
+11101000010000001000000000010010
+00011000010001100111110011111111
+00100100010000101100100111100111
+00011010010000001010010000000001
+11000010000000000000010110001010
+00100000001000000000010100100101
+01101111111000001100011001100110
+11000000100000000100100111110010
+00100000010000000011010111111011
+00100000001000000100100111101100
+01101111111000001000011001101111
+11011111001000000000000000001000
+11011000110000000100010011010011
+11101000010000001000000000000110
+10011000010001100111110000000000
+00100000011000101000000000000000
+11000010000000000000010110010111
+00100000001000000111100000101100
+01101111111000001000011001101111
+11000000000011111000010110011111
+00100000001000000111100001100100
+01110000000000000011001000110100
+01101111111000001100001111001011
+11000000000001111100101111000101
+00100000001000000110111010100110
+01110000010001011110001000000000
+00100000001000000011001010101011
+01101111111000010100010111100000
+00011111111000010111111011100000
+00100000001110100000010110101100
+01101111111000010100010111100000
+00011111111000001111111000000001
+01100111111000010100010111100000
+00100000011000000000000000000000
+00100000010000000011010101111111
+00100000010000000011011001010001
+00100100001011000011010110000110
+00100100001101111011010110000110
+00100000010000000000010111110110
+00100000001000000011010101101010
+00100000010000000011011000100101
+00100100001101000000010111000010
+00100000010000000000010110111000
+00100000010000000000010111010000
+00100000010000000100111111010101
+00100000001000000100111111011011
+01101111111000100100010111101000
+01101000010010100100010111100100
+10011000010001100111110000000000
+00100000001000101000010110111101
+00100000001000000000010111000000
+01110000010000010100001100000000
+01110000010000010100000110101010
+00100000011000000000000000000000
+01110000010000010100001111111111
+00100000011000000000000000000000
+01101111111001000100100010011100
+00100100001110100100111111011011
+01101111111001000100100010100100
+00100100001110100100111111011011
+01101111111000100100100010101100
+00100100001110100100111111011011
+00100000010000000011011010011101
+00100000010000000100111111001000
+00100100011101000000000000000000
+00100000010000000011011010111110
+01101111111000001100011100111111
+00100100010110100100111101110101
+01101111111001000100010110101111
+00100000001000000011011000100010
+01110000010001100000000100000000
+01101001011000010000000001000000
+00110100011100110000001000000000
+00100000010000000100110111110101
+01101111111000010100010111011000
+00100100001110100011011001000110
+00100000010000000011011001010001
+01101111111000001100010101111111
+11000000000000001011011001000110
+00100100001011000000010111011110
+00100100001101111000010111011110
+00100000010000000000010111110110
+01110000010001110011111100000000
+00100000001000000011011001000110
+01101111111000001100011000000010
+00100100011110100000000000000000
+01101111111000010100010111111110
+00011111111000001111111000000001
+01100111111000010100010111111110
+01101111111000001100010111111110
+11000000011111111011011001110110
+01101111111000001100011000000001
+00011111111000001111111000000001
+01100111111000001100011000000001
+00011111111000010111111000000011
+00100000001110100000010111101011
+00100000001000000000010111010001
+00100000010000000100101111111011
+00100000010000000000010001010111
+01101111111000001100101110100001
+00100100001110100011011001000110
+00100000010000000000010111110001
+00100000001000000000010111010001
+01101111111000100100010110001111
+01101000010010100100010111100100
+10011000010001100111110000000000
+00100000001000101011001000100010
+00100000001000000011011010011010
+00100000010000000011011001101110
+01101111111000001100010011111000
+00101111111000011111000000001000
+00100100011000001000000000000000
+01101111111000001100010011111001
+11000000011111111000000111111011
+01100111111000001100100110101010
+00100000011000000000000000000000
+00100000010000000011011010110100
+00100100011101000000000000000000
+00100000010000000000010011011010
+01101111111000011100011000001000
+00100000001000000011011000100010
+01101111111001000000000111111101
+00100000001110100110111101111001
+01100111111001000100001111111101
+00100000010000000110101100111010
+00100000010000000110101010101101
+11011111111000000000111111000000
+10011010010000001010010000000000
+11011111001000000000000000001010
+11011010001000000000000111111101
+00100000010000000110101101110100
+00100000010000000110101100110111
+01101111111001000000000111111101
+00100000011110100000000000000000
+01100111111001000100101111101001
+11101111111000010000000000000110
+11100111111000010000000000000101
+00100000011000000000000000000000
+01101111111100001000000011001100
+01111001001000000111111000000001
+01100111111100001000000011001100
+01101010010000001100010000011001
+01101111111000001100010000110011
+01100111111000001100010000011001
+11011111001000000000000000001000
+00100000010000000110111101100111
+01100010010000001100010000011001
+01101111111100001000101000001010
+01111001001111111111111000000100
+01100111111100001000101000001010
+00100000011000000000000000000000
+01101111111000001100010000000111
+11000000000000001000011000100101
+11000000000000010000011000101100
+00100000011000000000000000000000
+01011000000000000000001111101000
+01100111111000010100010000000101
+01101000010010010100101111101101
+01101111111000010100101111101111
+11011010011000000000111000010000
+00100000010000000110111111000000
+00100000001000000000011000110010
+01011000000000000000001111101000
+01100111111000010100010000000101
+01101000010010010100101111101001
+01101111111000010100101111101011
+11011010011000000000001111101000
+00100000010000000110111111000000
+01101000010010010100101111110001
+10011000010011111111111000000000
+01101000010010010100101111110011
+10011000010001101111110000000000
+00100000001000000111110101011111
+00100000010000000000011000010100
+01101111111100001000101000001001
+01111001001111111111111000000111
+01100111111100001000101000001001
+01110000100010100000011101110111
+01110000100010100000100011000001
+01110000100010100000110101100001
+01110000100010100000101100000000
+00100000011000000000000000000000
+00100000010000000000011000110111
+00100000010000000110111110010000
+01101111111000001100010000001001
+01100111111100001000000011001101
+00100000010000000110111110010111
+01110000100010100000110101100000
+01110000100000001100110100000000
+00100000010000000000011000110111
+01101111111000001100010000001001
+01100111111100001000000011001101
+01110000100010100000101101010000
+01110000100010100000111011000000
+11011111000000000000000000001011
+01101101111000010100010000001010
+01110000100000001100110000000011
+00100000010000000000011001011001
+01101000010110010000000101100100
+01100000010010010100101111110011
+00100000010000000110111110011100
+11011111000000000000000000001011
+01100101111000010100010000001010
+01110000100010100000110101100000
+01110000100000001100110100000000
+01110000100000001100110000000000
+00100000011000000000000000000000
+01101111111100001000000100101001
+11000011000000101000011001011001
+00100000011000000000000000000000
Index: output/eeprom.dat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/eeprom.dat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/eeprom.dat	(working copy)
@@ -0,0 +1,8192 @@
+00
+02
+8f
+ab
+f1
+00
+3c
+ae
+c6
+03
+78
+5c
+8d
+07
+e0
+71
+35
+1e
+aa
+55
+80
+19
+24
+e6
+00
+31
+6d
+0c
+53
+9d
+49
+7e
+20
+2c
+3d
+fc
+1c
+6c
+a9
+8b
+3f
+4e
+68
+bd
+31
+db
+fc
+2e
+10
+e6
+17
+75
+69
+db
+d4
+cd
+56
+92
+4e
+f0
+8f
+be
+bc
+7c
+1e
+32
+7f
+53
+ad
+ca
+ab
+b6
+cb
+33
+d6
+da
+12
+c7
+8b
+35
+f4
+54
+f0
+e1
+38
+79
+7c
+7e
+78
+48
+41
+64
+a2
+1d
+f1
+15
+e6
+75
+27
+2e
+97
+03
+5d
+1f
+74
+51
+7c
+4d
+1c
+3d
+b8
+61
+bb
+83
+eb
+0f
+1c
+c0
+52
+e4
+5c
+be
+e3
+7d
+0c
+9d
+5d
+4e
+da
+5e
+ba
+65
+9b
+5b
+e5
+f4
+30
+f8
+15
+d1
+61
+b7
+1c
+e8
+46
+97
+9c
+29
+df
+4c
+f1
+c9
+94
+6a
+46
+08
+0c
+31
+4b
+f7
+1a
+f9
+91
+b6
+53
+15
+50
+73
+a7
+bf
+6e
+07
+9e
+15
+f7
+91
+a3
+6c
+04
+c7
+98
+36
+4b
+41
+c9
+cf
+e3
+ad
+89
+3a
+1e
+b2
+eb
+98
+ab
+2f
+4a
+e6
+f0
+86
+4d
+71
+94
+8d
+56
+68
+44
+4a
+e3
+79
+c5
+89
+a4
+a5
+19
+44
+2e
+43
+b9
+b0
+ce
+5e
+26
+66
+37
+27
+a2
+fb
+11
+89
+89
+6f
+4f
+4a
+f4
+6d
+48
+9c
+a2
+23
+64
+f6
+cc
+e5
+a4
+f2
+b3
+4d
+f1
+30
+8f
+e9
+48
+42
+c7
+96
+e3
+10
+8b
+25
+0d
+cc
+ef
+8a
+6e
+aa
+e3
+6f
+cc
+1c
+b0
+3e
+7b
+16
+f4
+6c
+03
+ac
+08
+d6
+2c
+cf
+9b
+d7
+71
+8d
+3f
+b6
+91
+8e
+74
+4d
+9a
+81
+f8
+3e
+d8
+db
+14
+eb
+d4
+70
+db
+2d
+b8
+a5
+71
+46
+f0
+72
+70
+34
+44
+0a
+55
+e7
+5a
+9d
+87
+70
+2f
+0e
+80
+50
+bc
+f5
+85
+2e
+68
+98
+2a
+fe
+81
+37
+22
+be
+13
+f1
+b5
+32
+a6
+fd
+e8
+d0
+73
+e3
+07
+6e
+0b
+a7
+a9
+5f
+1b
+60
+e8
+06
+33
+19
+10
+33
+6b
+64
+34
+c4
+0f
+be
+a9
+85
+7c
+23
+68
+43
+ec
+41
+fe
+a3
+b8
+85
+1b
+b5
+5c
+17
+2b
+f2
+31
+6b
+ac
+ed
+ce
+39
+59
+9d
+ab
+51
+f2
+42
+cc
+9c
+8a
+42
+75
+83
+e5
+61
+fb
+53
+c6
+de
+2b
+af
+4a
+e0
+44
+78
+12
+b6
+fc
+26
+e9
+20
+73
+aa
+ee
+53
+02
+a0
+64
+14
+bf
+92
+3f
+4f
+1c
+b0
+cc
+f0
+b7
+00
+0f
+a8
+ba
+6f
+b3
+2d
+6d
+49
+a1
+78
+b4
+4c
+02
+36
+01
+1c
+cb
+42
+d7
+df
+f7
+95
+85
+f0
+5c
+9a
+30
+74
+9d
+62
+83
+8e
+2d
+97
+b8
+38
+d6
+cb
+95
+8c
+b4
+66
+97
+09
+9b
+be
+51
+55
+96
+ee
+e6
+42
+90
+6c
+34
+df
+36
+48
+20
+63
+4f
+00
+ad
+64
+f5
+45
+72
+22
+c8
+c1
+bf
+37
+f4
+fd
+11
+f4
+b9
+ff
+f9
+ab
+a3
+3a
+b9
+4f
+88
+68
+ce
+01
+95
+61
+89
+31
+57
+20
+70
+98
+af
+92
+34
+61
+85
+09
+f0
+a5
+b2
+28
+c2
+46
+2b
+77
+d7
+1f
+27
+21
+fd
+c9
+f2
+f3
+c9
+30
+d1
+b9
+dc
+3c
+d3
+7d
+ec
+20
+77
+a4
+7f
+39
+43
+45
+ab
+87
+68
+03
+81
+06
+1f
+8d
+b9
+92
+90
+7f
+eb
+81
+bc
+e6
+cd
+8a
+dc
+2c
+76
+5a
+2c
+d7
+f5
+76
+a7
+7e
+d6
+ef
+ab
+7e
+54
+96
+5f
+2a
+0e
+42
+12
+90
+00
+9a
+a4
+36
+b6
+24
+da
+5c
+20
+af
+b9
+fb
+56
+1c
+28
+5c
+e3
+b1
+66
+bf
+34
+9b
+ce
+4b
+a6
+f2
+ef
+54
+1f
+2c
+eb
+41
+b4
+0a
+33
+47
+63
+5c
+71
+1f
+95
+d9
+58
+95
+83
+90
+7c
+6d
+df
+d1
+2e
+ae
+cc
+81
+f4
+7b
+7d
+cd
+bf
+1d
+33
+b1
+b1
+46
+0a
+56
+0b
+96
+94
+5f
+12
+5d
+56
+39
+83
+b7
+57
+30
+54
+cb
+30
+57
+94
+5c
+f2
+68
+2b
+56
+c4
+66
+98
+54
+c0
+38
+be
+0c
+76
+96
+5b
+c2
+16
+a2
+6e
+50
+3b
+34
+85
+82
+0f
+7b
+22
+81
+a5
+01
+0d
+70
+54
+75
+99
+46
+8f
+9b
+1e
+c8
+05
+af
+20
+ec
+59
+fb
+bf
+6b
+c4
+c2
+71
+ab
+26
+2f
+9e
+74
+51
+07
+e7
+3e
+c4
+3f
+9d
+0b
+9b
+f7
+b7
+af
+7a
+18
+fc
+b6
+9a
+b4
+b9
+da
+d4
+9a
+97
+91
+30
+39
+ed
+a3
+66
+08
+c9
+0f
+98
+c1
+15
+3e
+73
+61
+18
+aa
+92
+cf
+ff
+e3
+57
+e0
+0a
+86
+e4
+0e
+c0
+3e
+fe
+8d
+e8
+50
+9e
+a1
+88
+42
+ae
+92
+b0
+8b
+e0
+da
+5a
+dd
+70
+aa
+93
+04
+ce
+7a
+0d
+8a
+21
+a8
+5a
+f9
+3c
+c5
+7a
+c0
+f6
+f8
+ea
+11
+fb
+08
+de
+83
+f7
+b7
+21
+78
+5b
+52
+bb
+d9
+6b
+14
+8b
+cb
+99
+e3
+b4
+b4
+81
+5f
+88
+73
+2a
+bb
+5e
+ac
+ed
+eb
+87
+29
+58
+89
+df
+17
+df
+9f
+e6
+d4
+15
+dd
+f3
+b5
+3e
+6f
+1e
+4d
+d7
+f0
+7d
+06
+e8
+e9
+b3
+a6
+79
+9f
+b8
+1c
+d5
+f4
+a4
+eb
+52
+cf
+ca
+dc
+bd
+d6
+2f
+27
+07
+85
+17
+6a
+9a
+be
+d7
+79
+46
+22
+2e
+fc
+4e
+23
+83
+c5
+70
+6a
+22
+c5
+13
+cc
+b8
+30
+97
+ee
+e3
+91
+46
+9b
+72
+88
+dc
+d8
+2e
+f0
+5e
+40
+6e
+29
+b9
+db
+a7
+d2
+55
+b0
+15
+85
+27
+e6
+e0
+aa
+48
+25
+b0
+31
+1d
+b4
+89
+b7
+9e
+d6
+24
+f8
+27
+04
+fc
+65
+eb
+c5
+23
+56
+86
+fa
+eb
+d1
+3c
+67
+ab
+e2
+b1
+26
+28
+8d
+68
+87
+ec
+08
+d8
+fb
+93
+d0
+a3
+60
+98
+1a
+ef
+23
+9e
+77
+c9
+4f
+a2
+dd
+b0
+ee
+0b
+ae
+f5
+59
+53
+e1
+58
+c6
+dd
+e8
+10
+f7
+52
+1f
+dd
+26
+32
+29
+57
+3b
+15
+74
+a7
+45
+f7
+9e
+a9
+16
+37
+c7
+08
+ec
+58
+c4
+b9
+d0
+84
+10
+f3
+ca
+a0
+71
+ae
+63
+d7
+7b
+72
+12
+58
+89
+d2
+be
+97
+1a
+53
+fc
+4b
+36
+bc
+77
+c3
+83
+5f
+e7
+57
+16
+ef
+b4
+7d
+03
+29
+a8
+97
+dc
+0e
+98
+3c
+60
+dc
+41
+8a
+62
+e7
+00
+3c
+61
+1e
+42
+64
+f3
+7f
+94
+63
+81
+6a
+69
+a8
+72
+b2
+8c
+cb
+8e
+c0
+2e
+04
+fe
+eb
+67
+dd
+a2
+98
+6b
+35
+01
+a7
+0d
+c0
+8f
+30
+76
+ee
+16
+4e
+ed
+de
+f0
+4c
+14
+2b
+07
+ce
+a7
+0d
+0c
+31
+fd
+8b
+6f
+90
+30
+61
+1b
+3f
+33
+52
+b4
+73
+b9
+06
+3c
+e3
+d4
+99
+45
+16
+5c
+b6
+c5
+89
+46
+22
+50
+af
+4a
+0d
+d9
+08
+b8
+2c
+9b
+6e
+80
+db
+3a
+cd
+11
+03
+13
+4f
+70
+5b
+f0
+cd
+e4
+e8
+49
+2a
+ef
+35
+3a
+b1
+53
+47
+d5
+45
+10
+40
+e8
+73
+e2
+20
+98
+be
+23
+f9
+cf
+69
+52
+eb
+ad
+7a
+42
+72
+06
+52
+ca
+76
+42
+ff
+13
+7e
+6d
+12
+75
+5c
+99
+69
+19
+7a
+ba
+0e
+88
+f1
+ce
+78
+7e
+fc
+ca
+8d
+8d
+ef
+72
+bc
+02
+dd
+54
+e3
+d9
+56
+2b
+8f
+76
+17
+7c
+06
+7e
+80
+90
+c5
+d7
+99
+a8
+cb
+5d
+01
+a9
+c9
+0b
+99
+48
+09
+0d
+20
+04
+4d
+07
+e1
+6a
+cc
+c4
+0e
+76
+aa
+48
+df
+aa
+37
+98
+cd
+c1
+df
+dd
+c1
+30
+3a
+33
+4a
+79
+d9
+21
+c4
+d6
+ad
+2e
+99
+a5
+e4
+4f
+1d
+cf
+8e
+05
+59
+c8
+0e
+5c
+5f
+57
+3f
+53
+cd
+ce
+b0
+34
+2c
+c5
+fb
+b7
+84
+b7
+8c
+73
+9d
+51
+31
+59
+5c
+40
+92
+2b
+d0
+42
+44
+f5
+f2
+6c
+28
+c5
+8b
+6f
+94
+0e
+ff
+50
+fe
+4c
+67
+ae
+96
+d0
+0a
+bd
+55
+7d
+54
+7d
+5a
+c1
+f8
+ab
+e1
+e1
+06
+04
+b4
+da
+6d
+f9
+16
+78
+e0
+4b
+ba
+3d
+a2
+f4
+ac
+e8
+66
+47
+ed
+ef
+2d
+e3
+6c
+74
+a0
+04
+cc
+c4
+ce
+55
+99
+74
+53
+57
+55
+39
+96
+11
+f7
+83
+8f
+7f
+d2
+d5
+1f
+63
+dd
+bd
+2c
+0b
+82
+c0
+5d
+27
+c8
+33
+fc
+a6
+f8
+58
+45
+53
+1c
+08
+84
+34
+65
+81
+bf
+51
+82
+6b
+4b
+75
+2c
+5f
+ba
+46
+3b
+4c
+21
+12
+74
+a4
+ea
+bb
+6d
+94
+f2
+3a
+a6
+4b
+53
+4b
+c4
+e3
+e5
+58
+fe
+b2
+6c
+ec
+30
+59
+d4
+88
+61
+97
+b4
+15
+98
+04
+c3
+fd
+5f
+f5
+1f
+b7
+d7
+1a
+7a
+a6
+11
+8c
+6d
+c9
+34
+70
+92
+47
+55
+92
+af
+aa
+ac
+48
+a0
+50
+00
+54
+a3
+b3
+4a
+57
+84
+99
+27
+ff
+9a
+b6
+41
+ae
+43
+d5
+09
+0a
+39
+6b
+48
+43
+75
+d5
+49
+e3
+a3
+a7
+d6
+f6
+96
+24
+f6
+a6
+89
+bb
+c2
+68
+d9
+47
+45
+a3
+ea
+36
+87
+02
+7c
+a9
+24
+b8
+7c
+95
+7f
+44
+da
+42
+2f
+9e
+dd
+e0
+d3
+cc
+37
+70
+b1
+9d
+af
+1b
+21
+66
+a6
+42
+6f
+1d
+37
+b4
+4e
+33
+90
+da
+4b
+57
+eb
+57
+87
+94
+9b
+08
+ce
+8a
+08
+5c
+ea
+5d
+cb
+79
+b2
+48
+6b
+98
+68
+be
+dd
+d5
+a2
+ba
+81
+95
+5b
+7f
+2b
+91
+87
+dc
+f5
+16
+10
+9f
+f7
+ad
+fb
+d7
+da
+6c
+ae
+56
+3c
+5d
+45
+b6
+3e
+2b
+e7
+b6
+e4
+8c
+dd
+49
+0a
+a1
+c1
+69
+93
+a9
+e7
+d0
+31
+f7
+5d
+b2
+fc
+24
+d8
+a0
+6e
+72
+2d
+01
+72
+c8
+be
+c8
+66
+ee
+00
+a6
+03
+96
+45
+3d
+26
+a9
+c3
+1e
+bd
+54
+49
+fe
+71
+f2
+6f
+56
+47
+c7
+df
+51
+47
+e9
+79
+63
+30
+f7
+b1
+4d
+83
+44
+b0
+f6
+0c
+ef
+63
+a8
+43
+50
+23
+57
+9f
+a2
+4b
+b4
+75
+3f
+a3
+a7
+d6
+60
+c3
+da
+f3
+b5
+f0
+bd
+ab
+a0
+3c
+2b
+9e
+b7
+36
+14
+d5
+af
+f5
+01
+1f
+76
+c2
+fa
+9c
+ca
+50
+eb
+d5
+3f
+03
+0f
+c5
+9d
+fb
+90
+33
+f4
+45
+95
+5e
+e3
+4f
+ce
+80
+56
+4c
+e4
+f6
+93
+2c
+d2
+b3
+bb
+4c
+b8
+82
+72
+d4
+2b
+c0
+66
+66
+e5
+0f
+96
+7d
+9a
+40
+57
+6c
+c5
+30
+41
+bb
+5f
+39
+07
+00
+a1
+2d
+83
+1f
+35
+d0
+2b
+5d
+58
+7d
+61
+83
+74
+b0
+60
+26
+c2
+e8
+90
+11
+b4
+71
+c0
+92
+24
+84
+28
+df
+ea
+10
+36
+17
+b0
+39
+36
+54
+d6
+56
+ba
+dc
+f3
+1f
+b1
+80
+28
+b4
+fd
+75
+ba
+1f
+16
+c2
+a3
+ed
+4e
+ae
+b6
+b0
+9d
+83
+c7
+5e
+b9
+eb
+6f
+b2
+f2
+a7
+d5
+5f
+9d
+41
+51
+88
+e0
+0b
+fc
+2e
+a6
+a5
+97
+a8
+1d
+9e
+77
+b5
+c8
+01
+ef
+aa
+db
+48
+54
+6b
+b0
+d6
+4c
+36
+76
+cd
+c0
+67
+70
+96
+b7
+23
+3c
+31
+e9
+d3
+bb
+20
+0c
+36
+d1
+6f
+b0
+98
+73
+1e
+2c
+81
+2e
+29
+02
+b0
+c4
+6f
+b1
+b4
+12
+4f
+5c
+49
+6d
+03
+66
+95
+8d
+22
+42
+74
+4c
+91
+fd
+f9
+9f
+dd
+22
+63
+64
+66
+84
+8b
+59
+8a
+b1
+af
+b6
+29
+dd
+8d
+c5
+e2
+0f
+41
+16
+16
+8e
+9a
+43
+88
+d1
+16
+69
+18
+7c
+a0
+b9
+61
+63
+cf
+54
+00
+27
+a6
+cf
+22
+91
+22
+d0
+a8
+a8
+d3
+88
+b0
+ca
+b6
+26
+d9
+df
+89
+8b
+10
+45
+ea
+c3
+e4
+e2
+53
+00
+3a
+2c
+79
+73
+55
+5d
+b4
+dc
+e7
+91
+ab
+fb
+4e
+92
+98
+38
+5b
+be
+24
+c2
+45
+9c
+62
+dd
+84
+84
+37
+9b
+b6
+52
+57
+65
+a9
+14
+ad
+fc
+d2
+19
+92
+5a
+d5
+73
+67
+d8
+6a
+58
+5d
+6c
+4e
+fd
+a1
+ff
+f1
+1f
+3e
+4c
+7d
+7f
+fe
+1c
+ae
+a0
+0e
+f5
+b9
+02
+be
+7a
+74
+7a
+bf
+9c
+81
+c7
+f8
+1c
+33
+aa
+0f
+32
+cf
+a4
+10
+12
+c2
+ce
+67
+98
+22
+b5
+62
+47
+ea
+24
+1a
+6c
+22
+e7
+39
+41
+14
+2d
+bb
+d4
+24
+09
+05
+49
+f1
+c9
+68
+d0
+1b
+b2
+4e
+3e
+c9
+7d
+7d
+d6
+26
+60
+31
+6e
+06
+b8
+68
+71
+a8
+fe
+55
+af
+f2
+75
+5d
+db
+ff
+be
+d7
+e1
+4a
+90
+b7
+d0
+4c
+a1
+d8
+65
+ac
+17
+13
+2c
+25
+cb
+cb
+12
+31
+fc
+28
+3c
+15
+30
+74
+a8
+53
+74
+77
+6a
+96
+bb
+a4
+13
+12
+d8
+4d
+32
+48
+79
+50
+bf
+04
+a8
+66
+bb
+88
+d4
+08
+34
+26
+ae
+ae
+17
+ca
+0b
+2c
+c1
+88
+47
+2d
+17
+7f
+e3
+7a
+52
+30
+55
+64
+2f
+d5
+cd
+3d
+f6
+d6
+30
+01
+af
+7a
+83
+2f
+ac
+16
+7c
+7f
+f0
+a1
+5e
+9d
+21
+b5
+6e
+07
+be
+f3
+e3
+85
+30
+27
+5a
+65
+b9
+37
+71
+40
+f2
+fd
+a6
+53
+b8
+5d
+43
+8f
+8e
+ba
+c5
+31
+94
+80
+e0
+31
+2a
+b5
+47
+e2
+d2
+d8
+10
+cd
+36
+5d
+15
+ee
+0c
+28
+c8
+ac
+c3
+be
+1b
+6e
+5a
+23
+ea
+47
+43
+9a
+ee
+af
+81
+e3
+5f
+42
+28
+da
+20
+32
+72
+aa
+20
+1e
+ae
+91
+c1
+07
+dc
+a3
+9d
+32
+09
+a8
+4d
+5b
+f6
+ee
+c8
+d9
+48
+f8
+ea
+86
+91
+62
+e3
+79
+b5
+d0
+fe
+62
+2c
+ee
+67
+c0
+1b
+ee
+e9
+6a
+85
+2e
+68
+1b
+1b
+e9
+21
+61
+ef
+a1
+19
+b1
+fb
+68
+04
+ea
+fa
+1d
+29
+09
+e0
+43
+0a
+33
+af
+35
+82
+85
+11
+22
+73
+00
+94
+64
+4d
+3d
+5c
+c5
+7d
+ce
+a4
+eb
+e8
+6b
+bf
+c8
+d5
+0b
+1f
+8a
+1f
+17
+2f
+96
+2d
+66
+32
+2a
+58
+3f
+78
+8c
+cc
+9b
+eb
+19
+eb
+65
+62
+4e
+69
+72
+a4
+1e
+90
+3b
+e6
+3b
+64
+7c
+21
+46
+68
+60
+52
+a4
+22
+29
+7d
+a7
+88
+80
+18
+79
+0d
+19
+70
+18
+b6
+d4
+c9
+a8
+1c
+d4
+be
+45
+43
+d5
+b3
+49
+1e
+f3
+ab
+57
+60
+a6
+68
+1d
+32
+e9
+ee
+76
+a3
+5e
+bd
+95
+f2
+c6
+2c
+00
+72
+b6
+1b
+32
+eb
+b0
+49
+e8
+5a
+e5
+d5
+42
+2e
+3d
+bb
+d7
+01
+1e
+93
+1a
+a2
+50
+8a
+82
+ca
+74
+2f
+30
+1d
+e1
+00
+41
+ee
+be
+82
+7a
+d1
+73
+9a
+1d
+36
+88
+4a
+72
+a8
+dc
+8e
+2a
+ae
+24
+e9
+1d
+1c
+ab
+bd
+42
+a6
+6d
+b3
+cb
+78
+2c
+63
+84
+fb
+f4
+57
+09
+92
+8b
+aa
+f2
+1b
+ae
+f8
+47
+69
+0d
+f4
+09
+16
+6c
+c3
+e7
+ca
+03
+e5
+22
+6b
+67
+31
+88
+63
+50
+94
+9f
+64
+e6
+9d
+a7
+47
+51
+ef
+9a
+ad
+f5
+7a
+1e
+36
+9b
+2d
+8e
+9b
+ae
+d2
+72
+62
+0e
+81
+fd
+7c
+a2
+af
+48
+5e
+48
+75
+58
+68
+d3
+d7
+b5
+bd
+cb
+5a
+1b
+38
+d9
+e4
+52
+95
+96
+4d
+56
+a4
+7d
+02
+66
+2c
+72
+e5
+14
+a0
+6c
+e0
+f1
+80
+f5
+fb
+f8
+93
+cb
+5f
+e8
+7f
+2f
+34
+7c
+a6
+c6
+e8
+39
+75
+76
+e7
+d4
+9e
+28
+ef
+aa
+1d
+a8
+89
+fc
+59
+c9
+da
+03
+22
+da
+51
+e5
+97
+cf
+e0
+aa
+21
+81
+95
+f5
+41
+2f
+cf
+35
+57
+41
+ad
+24
+62
+b8
+1e
+2a
+28
+59
+33
+5e
+9c
+bc
+da
+3d
+d6
+54
+10
+0c
+fa
+6f
+47
+f8
+57
+42
+1e
+0a
+ff
+17
+2f
+b0
+a2
+a7
+76
+08
+8f
+92
+6e
+f8
+ac
+91
+3d
+87
+c0
+b2
+78
+46
+36
+d4
+70
+70
+b3
+aa
+d2
+19
+cc
+e6
+15
+22
+e8
+cf
+b9
+e2
+80
+3a
+a1
+6f
+07
+af
+4c
+03
+6e
+3b
+64
+5e
+d3
+a4
+ec
+03
+a2
+14
+97
+8e
+67
+a8
+74
+69
+16
+1a
+9c
+be
+83
+56
+b3
+ad
+f4
+c2
+16
+ed
+47
+d7
+b5
+20
+fb
+40
+ca
+67
+fb
+16
+11
+fe
+c7
+42
+e2
+f2
+af
+62
+59
+fc
+26
+88
+4a
+9c
+32
+7e
+41
+b5
+ec
+51
+36
+39
+23
+3f
+a1
+2d
+63
+b6
+9c
+b5
+b8
+41
+25
+e1
+fa
+29
+eb
+d5
+e8
+a3
+f8
+03
+91
+c8
+79
+45
+25
+51
+80
+9a
+8e
+9a
+23
+6f
+2f
+1b
+47
+b3
+48
+ec
+d7
+33
+8d
+c1
+9c
+88
+c4
+d3
+68
+a6
+c5
+97
+3a
+2e
+a4
+c0
+ab
+77
+24
+93
+3e
+ca
+76
+5b
+56
+cc
+3e
+53
+31
+05
+f6
+1c
+e0
+74
+a6
+a1
+c8
+a4
+76
+c6
+10
+03
+0f
+7c
+ce
+d0
+9d
+e3
+88
+9e
+59
+e5
+3d
+d2
+b6
+e0
+ee
+01
+c9
+0f
+3a
+94
+80
+c1
+2b
+15
+28
+6e
+22
+76
+f2
+af
+62
+e1
+51
+99
+41
+02
+cf
+d1
+3c
+7d
+a3
+3a
+72
+35
+b8
+4c
+7b
+4c
+32
+7b
+bc
+b9
+55
+9a
+3b
+a7
+bf
+ae
+93
+74
+0b
+af
+c0
+30
+81
+c8
+a0
+87
+4a
+b5
+b8
+08
+4a
+ae
+1d
+22
+e1
+6a
+99
+bf
+0e
+54
+92
+11
+76
+2a
+d9
+29
+4d
+d1
+f0
+ad
+80
+31
+71
+1a
+8b
+0a
+bb
+b7
+24
+80
+be
+2e
+7f
+5d
+9a
+2b
+3a
+26
+cc
+e0
+aa
+1f
+eb
+9c
+aa
+f9
+64
+7e
+a9
+fe
+0b
+77
+8b
+56
+57
+87
+65
+4e
+a2
+ac
+a1
+07
+f9
+95
+5b
+5f
+22
+5d
+db
+7f
+08
+cd
+69
+cf
+cb
+c7
+ad
+fc
+6b
+5b
+d4
+a1
+de
+ca
+03
+df
+bf
+48
+cb
+f6
+60
+ad
+e5
+cd
+56
+08
+a1
+b1
+aa
+83
+b7
+05
+0b
+f0
+75
+69
+e0
+d9
+ba
+20
+fe
+25
+d6
+df
+87
+d5
+5d
+95
+f2
+15
+2e
+38
+8a
+d9
+49
+6e
+43
+b7
+c2
+a4
+e3
+3f
+5c
+3c
+78
+81
+e8
+e0
+48
+cf
+d3
+fe
+53
+66
+bf
+85
+0b
+35
+41
+df
+58
+e4
+82
+96
+7c
+9a
+b5
+29
+a7
+1f
+f5
+79
+b6
+46
+e7
+49
+1f
+55
+42
+a3
+61
+52
+96
+1d
+4c
+ec
+95
+cd
+d3
+78
+01
+b9
+f4
+55
+01
+7d
+e5
+7f
+7c
+74
+3b
+c5
+5f
+8e
+c6
+fa
+0d
+3a
+fe
+d4
+69
+1e
+bd
+c9
+19
+9f
+22
+ad
+03
+d4
+9d
+51
+ec
+03
+42
+93
+d2
+0c
+76
+73
+31
+73
+db
+22
+12
+0c
+be
+db
+38
+a9
+e5
+ea
+38
+0f
+99
+8c
+a2
+81
+b3
+36
+0c
+16
+8b
+ac
+03
+db
+d1
+8b
+6c
+61
+09
+a8
+b0
+4a
+40
+c0
+63
+a2
+35
+19
+c0
+c1
+7a
+ff
+6b
+57
+c2
+e2
+b1
+c7
+75
+66
+4a
+c6
+01
+45
+05
+15
+6e
+ad
+06
+c9
+d9
+37
+01
+fd
+b3
+80
+ca
+b8
+7a
+8a
+d6
+d2
+1d
+68
+db
+54
+1d
+a5
+c6
+d7
+99
+9c
+5f
+2c
+48
+54
+a8
+c9
+49
+32
+df
+fb
+71
+f5
+17
+b1
+87
+de
+cc
+2d
+95
+4c
+90
+e1
+41
+3a
+7a
+e5
+a2
+ec
+2b
+21
+8c
+28
+e4
+92
+f5
+54
+a4
+ad
+fe
+ed
+40
+5c
+d3
+70
+18
+8a
+83
+ce
+45
+8c
+2c
+8d
+13
+75
+61
+00
+87
+d4
+40
+d2
+8b
+1f
+f4
+69
+db
+61
+7e
+c5
+f6
+f8
+38
+52
+25
+da
+66
+4d
+2b
+97
+78
+2b
+bc
+34
+88
+b1
+1e
+b5
+53
+9b
+e4
+78
+37
+51
+c7
+a1
+b9
+47
+0b
+bb
+92
+60
+d4
+c7
+cf
+bd
+00
+4d
+f5
+c9
+30
+7f
+ba
+9c
+c3
+d4
+71
+b5
+14
+61
+c6
+cc
+e7
+36
+83
+60
+d4
+a0
+3d
+0b
+9e
+22
+7a
+4a
+d1
+9f
+6a
+4b
+07
+40
+cb
+ac
+4f
+c1
+55
+31
+da
+32
+40
+a1
+6d
+55
+ab
+69
+4e
+ab
+b5
+18
+f4
+28
+87
+da
+81
+9b
+4a
+1c
+bd
+98
+24
+31
+ef
+b2
+0f
+42
+1a
+db
+04
+a0
+c2
+55
+79
+ad
+cd
+93
+fe
+93
+df
+f3
+51
+6d
+f5
+3c
+81
+cf
+d0
+1d
+ce
+ad
+79
+7b
+f2
+23
+d1
+d3
+88
+39
+f3
+69
+58
+0d
+f2
+bd
+59
+00
+cb
+c0
+9e
+73
+49
+3c
+3a
+df
+ae
+9a
+b5
+ce
+0d
+1a
+68
+f6
+02
+02
+6c
+9f
+42
+c5
+d3
+f7
+ec
+0e
+6a
+45
+fb
+75
+70
+42
+66
+57
+59
+42
+df
+16
+8e
+84
+da
+24
+30
+e2
+a4
+cb
+af
+3e
+5e
+05
+29
+5f
+21
+45
+bb
+38
+84
+28
+79
+78
+39
+b1
+a2
+e2
+8b
+02
+8d
+a4
+2a
+e4
+14
+52
+8b
+88
+89
+f6
+ce
+6a
+a9
+8c
+27
+80
+b6
+9d
+ed
+32
+8a
+ab
+04
+03
+1b
+22
+98
+18
+ce
+1b
+6d
+f6
+7d
+ce
+33
+6e
+92
+dd
+86
+2c
+8f
+a2
+6b
+90
+e7
+89
+11
+53
+34
+8e
+77
+bb
+1f
+20
+d0
+c7
+f4
+37
+d0
+a7
+5a
+6b
+88
+dd
+86
+c5
+29
+b9
+c3
+1c
+f6
+6f
+1a
+4e
+4f
+6a
+4e
+2b
+7d
+5e
+cf
+e2
+11
+05
+aa
+2d
+82
+b9
+37
+e0
+83
+9c
+64
+8a
+67
+91
+fa
+c4
+5c
+6e
+77
+31
+17
+a8
+09
+09
+7c
+98
+73
+8f
+4b
+84
+ee
+22
+35
+28
+29
+86
+c8
+31
+d6
+a9
+05
+dc
+16
+43
+7c
+c4
+47
+fb
+1d
+07
+f3
+e3
+48
+ad
+c2
+28
+98
+5e
+b9
+90
+35
+e5
+10
+3e
+92
+13
+06
+78
+77
+21
+08
+ba
+8f
+ce
+9f
+1e
+53
+e9
+69
+8e
+86
+b9
+cb
+16
+bd
+0c
+98
+86
+5e
+d5
+43
+33
+42
+c8
+90
+c6
+46
+25
+20
+07
+d1
+28
+4c
+6b
+70
+75
+9c
+9b
+e7
+bc
+2b
+c9
+47
+ba
+04
+6b
+59
+1d
+8f
+6c
+c9
+f2
+de
+4d
+00
+db
+7a
+2a
+23
+fc
+af
+c2
+9a
+ba
+79
+f5
+7e
+c8
+c3
+07
+d6
+95
+74
+5c
+51
+e1
+3b
+03
+ba
+90
+55
+f2
+71
+02
+02
+ec
+ac
+e2
+62
+2f
+c9
+5b
+a2
+80
+31
+8d
+6c
+1a
+5e
+67
+86
+75
+cb
+3d
+20
+33
+d1
+85
+6a
+a6
+35
+d9
+a7
+b1
+7a
+ab
+78
+73
+1c
+01
+5e
+2c
+52
+29
+e7
+ec
+32
+08
+d1
+10
+9c
+96
+9a
+58
+70
+91
+d6
+ea
+94
+d1
+ba
+8b
+d0
+94
+84
+ed
+73
+5e
+9a
+4a
+47
+62
+a1
+d5
+81
+1c
+5d
+b3
+2a
+9c
+b8
+76
+6f
+c5
+d1
+a8
+24
+87
+74
+80
+9e
+f0
+7b
+de
+99
+4c
+86
+86
+2f
+8b
+87
+f0
+3c
+e6
+c3
+19
+1e
+92
+d8
+26
+9c
+b1
+ab
+5a
+4f
+39
+91
+42
+23
+f9
+29
+e1
+cc
+25
+83
+87
+8c
+70
+ce
+17
+18
+63
+af
+5f
+74
+38
+2d
+3f
+c2
+1b
+51
+84
+b9
+ca
+37
+ec
+18
+05
+9b
+ba
+f6
+e8
+19
+10
+dc
+6b
+62
+3c
+6b
+c9
+a3
+fb
+84
+c6
+f4
+87
+3a
+98
+f4
+cc
+23
+2c
+2b
+d9
+04
+16
+3a
+12
+f0
+53
+de
+84
+68
+e3
+2c
+3c
+2d
+99
+7a
+df
+86
+d4
+8f
+89
+a9
+30
+e1
+bb
+58
+ba
+68
+98
+c3
+6a
+45
+ed
+54
+91
+38
+b2
+ec
+51
+f5
+71
+41
+12
+02
+b8
+7f
+b9
+37
+82
+ca
+30
+d3
+f3
+64
+a0
+d1
+29
+08
+55
+66
+94
+b5
+ba
+a3
+74
+7b
+7b
+fa
+16
+1e
+17
+fd
+7f
+36
+31
+22
+c7
+87
+81
+33
+47
+b1
+b5
+32
+1e
+85
+39
+fe
+b3
+04
+ef
+ca
+f1
+42
+b2
+69
+06
+96
+02
+c8
+56
+9f
+69
+42
+b3
+8b
+a7
+26
+2e
+88
+75
+d1
+1c
+85
+5c
+39
+1e
+dd
+45
+97
+90
+73
+22
+14
+6d
+5d
+73
+02
+4b
+7a
+06
+83
+a8
+fa
+b9
+e3
+a7
+08
+db
+4b
+3b
+ae
+75
+bc
+f1
+f0
+13
+12
+c7
+6f
+f6
+fb
+62
+c4
+6f
+dd
+71
+3c
+81
+d8
+40
+e1
+5b
+f5
+8c
+74
+79
+85
+6e
+e9
+80
+fb
+63
+86
+d8
+90
+da
+e4
+2a
+23
+7e
+1f
+55
+ab
+96
+19
+a2
+f9
+38
+b6
+1b
+72
+5d
+f6
+63
+b8
+67
+cd
+9c
+b0
+0f
+77
+2b
+75
+9b
+b9
+1e
+fb
+61
+0a
+bd
+60
+77
+91
+e0
+77
+29
+08
+8a
+ef
+66
+1a
+62
+a9
+5c
+98
+dc
+e1
+a0
+f6
+5f
+6f
+a2
+47
+d2
+91
+05
+bc
+66
+d7
+b6
+97
+8f
+56
+56
+5f
+d1
+60
+01
+d9
+a3
+93
+2d
+30
+39
+0d
+c9
+e8
+23
+3d
+76
+8a
+68
+32
+11
+80
+b9
+0e
+8b
+b1
+67
+76
+58
+a3
+10
+d7
+1d
+1d
+e2
+ab
+af
+fb
+f3
+7d
+2a
+4a
+a2
+73
+03
+da
+69
+73
+a1
+fa
+bc
+ea
+ea
+80
+46
+30
+86
+ff
+78
+87
+df
+65
+f4
+5b
+1d
+cc
+7a
+85
+40
+e7
+de
+9c
+20
+83
+18
+7d
+41
+32
+ba
+87
+2d
+e6
+b9
+a8
+bb
+54
+53
+89
+a3
+ca
+f9
+8f
+4b
+96
+07
+14
+a0
+6c
+8b
+c9
+55
+ba
+7e
+5b
+81
+4b
+75
+77
+04
+33
+4f
+24
+be
+42
+39
+07
+89
+67
+e6
+ab
+88
+ab
+fd
+8b
+75
+e4
+87
+a4
+01
+1d
+7f
+07
+7b
+b2
+6e
+96
+ab
+5b
+31
+ac
+4b
+09
+11
+a6
+57
+0f
+61
+a9
+01
+fb
+b3
+ad
+56
+4a
+dc
+a1
+e9
+fa
+72
+72
+ea
+35
+c4
+ca
+94
+b7
+df
+70
+db
+95
+16
+91
+28
+b9
+cd
+55
+59
+4d
+78
+dd
+38
+e4
+82
+db
+d3
+0b
+72
+2e
+77
+6e
+91
+7b
+f5
+ab
+e8
+fc
+a9
+73
+b6
+60
+00
+3b
+06
+d5
+2f
+6f
+e2
+18
+9b
+a0
+2d
+cc
+e3
+ac
+6c
+aa
+38
+f0
+df
+29
+37
+8d
+c1
+1f
+ae
+e1
+25
+40
+be
+45
+55
+18
+2e
+7f
+40
+92
+7e
+20
+3e
+cb
+f9
+bf
+dc
+79
+88
+0c
+b1
+57
+69
+45
+64
+59
+51
+81
+e5
+fd
+57
+f3
+3a
+cd
+36
+c2
+c4
+42
+76
+ed
+c2
+b4
+b0
+01
+3d
+bb
+5c
+f0
+c5
+2e
+f6
+80
+fd
+b3
+f8
+fb
+76
+51
+6f
+9a
+ee
+77
+8d
+2f
+46
+a3
+b5
+54
+75
+81
+b3
+17
+99
+28
+12
+19
+96
+d1
+d5
+8f
+a3
+9b
+fa
+8e
+a5
+da
+ca
+f4
+18
+6f
+fd
+78
+ef
+a9
+09
+dc
+ac
+87
+69
+6f
+d1
+20
+00
+3b
+1f
+c0
+4a
+ec
+45
+98
+6f
+4c
+7e
+be
+ca
+44
+4d
+0b
+9d
+e2
+5a
+f9
+16
+7c
+f1
+5a
+9c
+3f
+89
+c3
+1d
+90
+51
+d9
+8f
+d8
+26
+05
+0b
+10
+30
+19
+43
+82
+ae
+86
+6b
+b7
+48
+07
+9f
+cf
+e4
+0b
+d6
+a5
+6d
+44
+15
+4f
+7f
+44
+00
+ef
+d0
+16
+73
+f7
+5c
+4b
+1b
+0f
+e7
+29
+7f
+ff
+a4
+02
+94
+ec
+2e
+27
+d0
+f5
+60
+b9
+92
+5f
+63
+ee
+60
+85
+29
+40
+cf
+b0
+14
+40
+10
+28
+85
+66
+5d
+53
+22
+9e
+ab
+a3
+58
+1c
+05
+d0
+a6
+f7
+cf
+2b
+3f
+3b
+96
+be
+b5
+42
+c7
+85
+7e
+00
+34
+50
+fa
+90
+97
+29
+5d
+1f
+33
+31
+4b
+b0
+d5
+ea
+bc
+6e
+cc
+84
+be
+a0
+4d
+35
+46
+07
+04
+11
+22
+77
+cb
+73
+95
+de
+10
+6b
+88
+a9
+1f
+a8
+2a
+58
+45
+cd
+5e
+44
+c2
+78
+10
+2f
+6b
+30
+d4
+c0
+7c
+0e
+6c
+c4
+5a
+f9
+c7
+7e
+c7
+a2
+f0
+f3
+6b
+82
+c5
+c6
+eb
+9c
+e6
+8a
+54
+6f
+e9
+46
+28
+9a
+54
+40
+e9
+59
+5a
+6c
+4c
+89
+ae
+b1
+71
+be
+54
+3b
+57
+96
+c2
+45
+c5
+29
+41
+ad
+23
+c8
+00
+0b
+59
+ea
+5b
+77
+d6
+98
+17
+bc
+46
+75
+ac
+3a
+6e
+68
+f5
+49
+34
+0d
+27
+49
+43
+8a
+22
+06
+29
+cf
+ff
+1a
+cc
+ed
+49
+37
+5d
+7d
+a5
+12
+5f
+b9
+84
+7b
+5e
+25
+29
+d6
+09
+a9
+1e
+f7
+91
+a4
+48
+75
+f6
+c9
+6b
+7a
+f7
+96
+c1
+95
+6e
+bc
+5b
+94
+4f
+00
+b1
+25
+2c
+b5
+f5
+ed
+2b
+2a
+6b
+0c
+78
+34
+9b
+ad
+32
+38
+15
+1d
+b9
+cd
+cc
+e6
+4f
+b7
+24
+c7
+e8
+9d
+58
+d2
+51
+ff
+1a
+b7
+08
+c8
+a3
+0a
+73
+f3
+43
+02
+42
+23
+25
+b1
+b5
+25
+5c
+fe
+84
+8c
+e5
+8b
+63
+f7
+33
+24
+f6
+bb
+b7
+bd
+fb
+74
+2c
+96
+55
+40
+8e
+96
+c8
+4c
+2b
+ad
+f6
+c2
+45
+e5
+41
+df
+d1
+5e
+bb
+f6
+b3
+80
+a8
+21
+03
+18
+33
+5a
+df
+27
+8c
+24
+38
+aa
+87
+26
+c8
+27
+45
+9f
+06
+0f
+b7
+8d
+bf
+b0
+9e
+4d
+46
+b7
+0e
+31
+30
+04
+b4
+ea
+34
+8e
+62
+0d
+53
+6e
+56
+bb
+c8
+7b
+4c
+fb
+88
+9c
+3d
+86
+01
+8d
+ce
+13
+f1
+40
+a6
+38
+b8
+6c
+5c
+55
+14
+b9
+41
+be
+4f
+45
+03
+3a
+a8
+e4
+24
+92
+49
+a4
+aa
+e2
+f9
+fd
+28
+ee
+f7
+e4
+f7
+02
+6f
+43
+2f
+aa
+55
+1d
+28
+c0
+56
+6b
+4b
+cf
+45
+18
+ad
+7c
+ed
+fc
+c4
+af
+3e
+44
+1b
+93
+2f
+5f
+ac
+96
+e3
+61
+91
+46
+bd
+74
+73
+95
+91
+4d
+69
+1e
+1e
+6f
+b3
+cd
+e9
+0d
+03
+9a
+80
+63
+38
+fb
+10
+03
+fa
+14
+1c
+f6
+20
+7c
+49
+9d
+fd
+31
+57
+d4
+0c
+a6
+5a
+b6
+47
+63
+02
+f7
+ce
+7e
+0b
+e9
+7e
+af
+65
+77
+28
+8b
+8b
+a7
+5b
+37
+9b
+04
+d6
+80
+20
+85
+5b
+ac
+fe
+63
+11
+5d
+fc
+94
+96
+e3
+9a
+fb
+f4
+a4
+7a
+ec
+f2
+0a
+2d
+88
+d7
+27
+74
+74
+5e
+ae
+21
+7c
+6f
+58
+6c
+e4
+cf
+88
+65
+ae
+48
+74
+a4
+9b
+d1
+8d
+42
+36
+19
+32
+86
+6f
+4f
+16
+27
+94
+45
+6e
+79
+19
+ea
+22
+54
+74
+79
+a9
+f4
+a6
+72
+f3
+7a
+12
+3b
+07
+2d
+9c
+e5
+52
+08
+78
+67
+7a
+34
+ee
+f3
+ad
+9f
+d8
+77
+03
+08
+01
+16
+51
+21
+15
+55
+48
+15
+6e
+11
+95
+1d
+f0
+62
+b4
+54
+77
+aa
+df
+54
+29
+1d
+18
+a9
+25
+67
+ba
+82
+18
+63
+26
+7f
+3e
+d9
+04
+9b
+50
+d1
+21
+3e
+2a
+12
+2a
+18
+3d
+4e
+7d
+b9
+07
+98
+3b
+20
+d3
+cc
+5a
+ea
+74
+21
+4b
+5a
+36
+e5
+10
+19
+91
+ef
+78
+0a
+57
+d6
+eb
+c9
+f0
+ee
+7e
+f6
+65
+ca
+e0
+e7
+88
+bc
+09
+5a
+a6
+d3
+2d
+74
+de
+35
+97
+f6
+5b
+4c
+19
+4d
+8a
+27
+05
+6e
+a6
+e8
+03
+a9
+88
+ce
+48
+b9
+16
+58
+16
+84
+d6
+b3
+d9
+7f
+ec
+1d
+43
+bb
+18
+83
+70
+9e
+88
+74
+9a
+3a
+bc
+22
+48
+d2
+ca
+71
+cc
+69
+8e
+3d
+bc
+6a
+1b
+75
+ef
+d9
+12
+1e
+3f
+13
+6d
+4d
+72
+7e
+de
+24
+7f
+2f
+fe
+7a
+70
+e4
+78
+86
+9a
+e3
+71
+01
+d8
+56
+48
+27
+06
+2e
+72
+45
+03
+a3
+f3
+c8
+3c
+47
+3f
+05
+11
+9e
+8a
+69
+a6
+91
+70
+7d
+e7
+9f
+ff
+a3
+36
+37
+f6
+4c
+47
+35
+7d
+66
+10
+c7
+b0
+dc
+f1
+e9
+dc
+75
+e7
+3c
+1e
+ba
+fd
+16
+86
+4d
+73
+f3
+06
+1c
+40
+1e
+e4
+c9
+3d
+61
+05
+8d
+36
+32
+56
+82
+c0
+10
+4d
+90
+94
+f5
+0c
+f3
+7c
+d8
+eb
+3e
+26
+cb
+61
+fb
+ff
+07
+8c
+e2
+3f
+3d
+83
+d8
+bf
+a9
+8c
+12
+b2
+e1
+63
+42
+17
+af
+ff
+3d
+28
+ed
+f7
+8f
+f2
+7d
+b3
+88
+1a
+0f
+0b
+ab
+dd
+df
+bd
+2b
+c1
+89
+ed
+e6
+d6
+ac
+2d
+0a
+da
+e5
+8f
+d1
+08
+70
+88
+d8
+38
+d7
+c7
+cd
+b0
+88
+ed
+f5
+9b
+48
+c6
+b8
+22
+7d
+2f
+80
+41
+2d
+ef
+7e
+dc
+68
+92
+d4
+f9
+93
+f2
+18
+e4
+91
+0f
+1b
+c4
+aa
+a9
+99
+69
+d0
+86
+61
+b3
+4e
+9a
+6f
+cc
+10
+ff
+65
+e1
+21
+9c
+7d
+a2
+e2
+7d
+95
+bd
+c5
+96
+d8
+67
+cd
+4e
+fa
+29
+80
+f7
+04
+dc
+1e
+07
+b0
+34
+15
+f9
+bd
+d8
+ec
+eb
+af
+5e
+f2
+d5
+67
+d0
+8d
+c0
+65
+6b
+a7
+c3
+44
+54
+a0
+5f
+90
+85
+54
+76
+9d
+c2
+f5
+3b
+b3
+90
+2b
+46
+cd
+fd
+90
+e7
+56
+d6
+26
+9d
+87
+7b
+45
+33
+c0
+16
+6a
+a9
+6d
+4b
+54
+b9
+82
+d9
+94
+fe
+54
+6f
+da
+6f
+14
+65
+78
+1c
+8f
+64
+e7
+80
+1f
+d7
+ae
+11
+9a
+0b
+bb
+20
+25
+9a
+6f
+de
+53
+ea
+19
+88
+31
+34
+9a
+6d
+e3
+9c
+e7
+b0
+e8
+14
+1f
+de
+53
+7a
+09
+d6
+6c
+54
+1f
+41
+d9
+e5
+3f
+7e
+08
+12
+46
+df
+5d
+57
+4f
+dd
+f1
+01
+dd
+99
+bf
+34
+7d
+ef
+59
+94
+32
+71
+50
+c8
+11
+53
+41
+db
+af
+f1
+ec
+69
+8a
+05
+39
+7c
+7e
+cc
+0c
+d6
+90
+4d
+36
+e6
+50
+c6
+a8
+c5
+52
+6c
+80
+cc
+e1
+fe
+a8
+24
+cc
+ed
+4f
+97
+73
+d6
+e1
+69
+13
+36
+92
+13
+85
+f6
+07
+28
+47
+37
+c4
+a8
+bc
+76
+72
+09
+3d
+d3
+8d
+1a
+17
+17
+27
+ac
+67
+af
+01
+03
+da
+64
+81
+32
+12
+bb
+5b
+86
+16
+e8
+fd
+10
+f5
+80
+9b
+12
+5e
+8a
+f5
+ff
+b3
+61
+46
+72
+89
+7e
+eb
+02
+56
+ef
+25
+7e
+60
+ee
+89
+9b
+db
+bd
+f1
+14
+5f
+97
+45
+48
+8a
+e5
+63
+ef
+97
+5e
+49
+05
+6a
+02
+7f
+64
+53
+24
+63
+95
+f5
+cb
+3a
+d3
+8a
+12
+80
+0a
+b6
+38
+5d
+f6
+fe
+8c
+fb
+28
+8a
+7a
+b7
+1a
+95
+06
+90
+4a
+1f
+27
+21
+83
+0d
+e3
+30
+05
+08
+43
+a5
+e3
+ad
+dc
+18
+e4
+d1
+99
+ca
+ae
+f3
+2a
+38
+ae
+6a
+57
+ea
+fe
+da
+c0
+63
+42
+b7
+ad
+04
+a8
+85
+2b
+d8
+d6
+93
+51
+d1
+79
+d9
+28
+71
+89
+83
+60
+6c
+ff
+41
+d0
+19
+7c
+09
+c4
+b7
+53
+51
+18
+5f
+2f
+3d
+ed
+6f
+9a
+48
+7d
+e0
+fd
+04
+01
+32
+c7
+70
+22
+29
+a9
+23
+93
+56
+42
+30
+cc
+ae
+fc
+af
+19
+c6
+65
+4a
+40
+a1
+ef
+a5
+0c
+f3
+17
+8b
+3b
+bc
+2d
+b1
+37
+7d
+7a
+e9
+44
+ff
+b0
+55
+fc
+3e
+1d
+35
+54
+42
+8b
+bb
+5f
+a5
+60
+4a
+50
+8c
+f0
+53
+78
+e9
+f3
+54
+b4
+89
+f8
+4f
+d9
+24
+e9
+a5
+d4
+d1
+83
+71
+b4
+65
+fb
+21
+e8
+c3
+3c
+0f
+32
+32
+02
+ac
+60
+2d
+d0
+6e
+f1
+a3
+81
+37
+55
+db
+db
+4b
+0a
+9c
+82
+ea
+f7
+a8
+26
+ca
+50
+ed
+9d
+00
+99
+a7
+4a
+10
+b9
+9f
+86
+15
+04
+bc
+3d
+67
+95
+ee
+7a
+51
+bd
+1d
+ac
+fd
+02
+0e
+3d
+50
+ea
+ce
+6c
+7a
+a9
+59
+eb
+70
+aa
+69
+e2
+da
+21
+8b
+ca
+ac
+0b
+49
+27
+68
+9c
+58
+f3
+2a
+10
+4d
+dd
+60
+76
+13
+94
+9c
+8c
+42
+97
+17
+74
+aa
+a6
+ef
+a2
+b4
+47
+a7
+20
+41
+99
+85
+bf
+ea
+6b
+bf
+33
+ba
+11
+5e
+a0
+d8
+d3
+74
+12
+18
+a5
+7c
+09
+bd
+5b
+d9
+03
+bc
+d7
+4b
+19
+de
+e4
+7b
+70
+e6
+9b
+c3
+8d
+1e
+ba
+2a
+cc
+77
+31
+5e
+83
+5c
+23
+0d
+cd
+04
+e9
+16
+b8
+65
+c9
+5e
+e1
+85
+89
+04
+fd
+6e
+dd
+bc
+22
+bc
+96
+0e
+b5
+84
+ec
+9f
+fe
+8d
+5d
+02
+46
+b0
+eb
+c5
+b4
+c6
+b9
+61
+8b
+36
+ca
+23
+82
+36
+c3
+72
+34
+1b
+29
+69
+9e
+37
+ca
+53
+7f
+b5
+86
+94
+a9
+e7
+6d
+47
+20
+d6
+34
+75
+15
+c9
+70
+37
+3d
+62
+65
+a6
+2d
+7b
+52
+36
+e3
+c5
+b4
+e3
+fb
+9b
+05
+82
+b0
+08
+83
+a9
+77
+fc
+54
+54
+5d
+fa
+f0
+b2
+4a
+30
+a1
+f9
+e2
+12
+59
+65
+57
+f7
+48
+65
+f5
+a3
+16
+3e
+15
+23
+2c
+bf
+50
+25
+e2
+3f
+18
+d9
+2b
+18
+6b
+d3
+8b
+8f
+21
+f7
+b4
+53
+82
+a8
+70
+41
+db
+a4
+81
+44
+6d
+8f
+01
+c3
+7b
+8a
+7b
+72
+fc
+9c
+da
+f7
+2b
+e7
+ea
+6f
+fb
+ef
+de
+db
+f1
+8e
+1f
+29
+2f
+65
+6f
+2b
+d2
+19
+87
+d1
+af
+5f
+70
+38
+b3
+6f
+e8
+05
+a8
+20
+41
+c3
+40
+f5
+db
+62
+5b
+d9
+d6
+34
+3b
+d5
+0d
+8b
+b4
+52
+62
+a6
+b8
+e8
+f4
+f3
+41
+52
+b9
+d0
+14
+cb
+e5
+e1
+ce
+d7
+85
+ba
+7f
+e8
+38
+ee
+0b
+72
+5a
+02
+64
+58
+97
+f1
+1b
+10
+d6
+7b
+bd
+2b
+28
+d7
+05
+3f
+ad
+df
+9b
+70
+4e
+6f
+ea
+8d
+ad
+37
+2e
+5f
+c4
+11
+86
+ae
+58
+56
+32
+ce
+bb
+6d
+b2
+4d
+49
+16
+ee
+7f
+b9
+04
+cc
+c4
+b1
+1d
+2f
+ff
+1f
+2d
+8a
+10
+6e
+58
+c4
+37
+e7
+77
+3b
+bf
+39
+8b
+c0
+42
+74
+2f
+80
+4c
+d1
+46
+a3
+78
+b0
+bb
+c6
+eb
+24
+ad
+6e
+6e
+2a
+99
+59
+02
+06
+e0
+3a
+3f
+3d
+55
+bb
+c8
+fb
+e2
+e9
+5f
+1d
+47
+f3
+64
+45
+f3
+07
+30
+6c
+61
+3c
+30
+fa
+69
+fd
+e9
+c7
+b6
+e3
+1d
+26
+6c
+8c
+22
+3c
+94
+0d
+26
+b1
+59
+90
+37
+a1
+5d
+7e
+52
+2c
+22
+6b
+4f
+96
+5f
+ae
+eb
+e0
+37
+25
+57
+81
+24
+e0
+31
+97
+f0
+cd
+bc
+c6
+e3
+aa
+24
+6c
+69
+70
+9d
+ce
+85
+66
+b1
+e4
+52
+fa
+58
+c6
+1a
+26
+fc
+90
+c8
+93
+b0
+19
+aa
+55
+40
+00
+00
+40
+05
+00
+33
+07
+20
+01
+00
+00
+f4
+58
+a5
+fe
+00
+00
+c2
+00
+11
+00
+00
+04
+00
+00
+02
+00
+20
+00
+60
+3c
+00
+00
+40
+04
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+80
+00
+00
+21
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+08
+00
+13
+47
+04
+09
+72
+00
+08
+00
+00
+0c
+aa
+55
+01
+00
+cb
+43
+0f
+aa
+55
+01
+00
+ba
+4a
+01
+aa
+55
+01
+00
+bd
+4b
+ff
+aa
+55
+01
+00
+ec
+44
+ff
+aa
+55
+01
+00
+eb
+44
+1e
+aa
+55
+03
+00
+ee
+44
+01
+0b
+4a
+aa
+55
+01
+00
+0d
+4a
+ff
+aa
+55
+01
+00
+41
+41
+01
+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
+06
+00
+f1
+44
+33
+11
+3b
+55
+51
+a1
+aa
+55
+01
+00
+89
+45
+02
+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
+02
+00
+8b
+45
+c0
+12
+aa
+55
+01
+00
+3e
+46
+94
+aa
+55
+03
+00
+af
+45
+00
+48
+60
+aa
+55
+02
+00
+1d
+46
+0a
+00
+aa
+55
+02
+00
+1b
+46
+50
+00
+aa
+55
+02
+00
+23
+47
+32
+00
+aa
+55
+01
+00
+f4
+46
+02
+aa
+55
+08
+00
+c0
+43
+fb
+00
+48
+08
+fb
+00
+48
+08
+aa
+55
+01
+00
+94
+40
+01
+aa
+55
+01
+00
+c0
+40
+10
+aa
+55
+01
+00
+6b
+49
+10
+aa
+55
+06
+00
+db
+42
+73
+83
+92
+a1
+b1
+c1
+aa
+55
+01
+00
+93
+43
+07
+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
+28
+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
+c1
+03
+aa
+55
+10
+00
+a0
+47
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+11
+00
+68
+43
+1f
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+0f
+00
+6b
+42
+0e
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+08
+00
+d3
+42
+07
+00
+07
+00
+20
+00
+2c
+01
+aa
+55
+06
+00
+9a
+47
+03
+12
+18
+ff
+00
+00
+aa
+55
+09
+00
+f4
+49
+41
+70
+70
+6c
+65
+20
+49
+6e
+63
+aa
+55
+02
+00
+f2
+49
+0a
+18
+aa
+55
+10
+00
+e1
+49
+d0
+00
+2d
+12
+1e
+4b
+0f
+a4
+99
+4e
+ce
+b5
+31
+f4
+05
+79
+aa
+55
+02
+00
+fd
+49
+c1
+03
+aa
+55
+02
+00
+bb
+4a
+78
+00
+aa
+55
+08
+00
+99
+4b
+01
+02
+e8
+04
+21
+70
+01
+00
+aa
+55
+01
+00
+07
+44
+02
+aa
+55
+01
+00
+09
+44
+0a
+aa
+55
+01
+00
+08
+44
+0c
+aa
+55
+01
+00
+11
+44
+00
+aa
+55
+04
+00
+0d
+44
+00
+07
+ff
+07
+aa
+55
+01
+00
+07
+4a
+1e
+aa
+55
+02
+00
+09
+4a
+e8
+03
+aa
+55
+02
+00
+21
+47
+02
+00
+aa
+55
+01
+00
+3d
+46
+64
+aa
+55
+02
+00
+3a
+46
+58
+02
+aa
+55
+01
+00
+1e
+47
+64
+aa
+55
+01
+00
+3c
+46
+64
+aa
+55
+02
+00
+38
+46
+58
+02
+aa
+55
+02
+00
+25
+47
+70
+17
+aa
+55
+02
+00
+09
+4d
+64
+00
+aa
+55
+02
+00
+ec
+48
+b8
+0b
+aa
+55
+02
+00
+69
+48
+58
+02
+aa
+55
+08
+00
+66
+46
+00
+34
+00
+00
+00
+00
+00
+00
+aa
+55
+06
+00
+01
+4a
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+01
+00
+1b
+47
+01
+aa
+55
+01
+00
+a4
+49
+01
+aa
+55
+01
+00
+55
+46
+ff
+aa
+55
+04
+00
+a5
+49
+7f
+06
+29
+14
+aa
+55
+03
+00
+27
+44
+ff
+ff
+ff
+aa
+55
+02
+00
+eb
+43
+10
+00
+aa
+55
+02
+00
+0e
+4d
+40
+02
+aa
+55
+03
+00
+66
+48
+88
+8c
+ff
+aa
+55
+01
+00
+bc
+4b
+8c
+aa
+55
+01
+00
+bb
+4b
+80
+aa
+55
+04
+00
+b7
+4b
+8c
+ff
+ff
+ff
+aa
+55
+03
+00
+63
+48
+01
+02
+ff
+aa
+55
+01
+00
+59
+46
+ff
+aa
+55
+01
+00
+5b
+46
+05
+aa
+55
+0c
+00
+8a
+48
+c2
+c3
+c4
+c5
+c6
+c7
+80
+81
+82
+83
+84
+85
+aa
+55
+1c
+00
+6e
+48
+0d
+0e
+0f
+10
+11
+12
+13
+14
+85
+c4
+c5
+c6
+c3
+c2
+03
+04
+83
+84
+82
+c7
+80
+07
+06
+81
+0a
+0b
+ff
+ff
+aa
+55
+90
+00
+16
+4a
+48
+a1
+a0
+a0
+e4
+00
+e0
+3e
+14
+2b
+04
+29
+1d
+8b
+35
+1e
+1a
+39
+16
+64
+1b
+8a
+3a
+1f
+08
+3c
+07
+3d
+06
+88
+3b
+20
+15
+17
+09
+0a
+19
+05
+22
+21
+18
+1c
+0d
+0b
+10
+11
+23
+24
+0c
+30
+0e
+3f
+36
+87
+2e
+25
+12
+40
+0f
+00
+37
+65
+41
+26
+13
+2f
+33
+34
+32
+38
+2d
+27
+47
+00
+7f
+e2
+00
+e6
+00
+46
+89
+2a
+31
+44
+28
+45
+42
+43
+5f
+5c
+59
+2c
+53
+51
+4c
+a1
+60
+5d
+5a
+62
+54
+4f
+49
+a0
+61
+5e
+5b
+63
+55
+56
+4b
+4e
+57
+85
+58
+52
+e9
+50
+4a
+4d
+00
+e1
+e5
+ed
+ee
+ec
+eb
+e8
+f1
+e3
+f6
+f8
+f7
+f9
+ef
+fa
+91
+70
+70
+f0
+ea
+f2
+fb
+90
+aa
+55
+13
+00
+ae
+49
+00
+29
+e8
+ed
+ee
+ef
+eb
+ec
+e9
+ea
+fb
+f1
+f0
+f5
+4c
+01
+00
+00
+00
+aa
+55
+02
+00
+ff
+49
+2a
+10
+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
+ff
+68
+91
+c5
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+84
+63
Index: output/flash.dat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/flash.dat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/flash.dat	(working copy)
@@ -0,0 +1,8192 @@
+00
+02
+8f
+ab
+f1
+00
+3c
+ae
+c6
+03
+78
+5c
+8d
+07
+e0
+71
+35
+1e
+aa
+55
+80
+19
+24
+e6
+00
+31
+6d
+0c
+53
+9d
+49
+7e
+20
+2c
+3d
+fc
+1c
+6c
+a9
+8b
+3f
+4e
+68
+bd
+31
+db
+fc
+2e
+10
+e6
+17
+75
+69
+db
+d4
+cd
+56
+92
+4e
+f0
+8f
+be
+bc
+7c
+1e
+32
+7f
+53
+ad
+ca
+ab
+b6
+cb
+33
+d6
+da
+12
+c7
+8b
+35
+f4
+54
+f0
+e1
+38
+79
+7c
+7e
+78
+48
+41
+64
+a2
+1d
+f1
+15
+e6
+75
+27
+2e
+97
+03
+5d
+1f
+74
+51
+7c
+4d
+1c
+3d
+b8
+61
+bb
+83
+eb
+0f
+1c
+c0
+52
+e4
+5c
+be
+e3
+7d
+0c
+9d
+5d
+4e
+da
+5e
+ba
+65
+9b
+5b
+e5
+f4
+30
+f8
+15
+d1
+61
+b7
+1c
+e8
+46
+97
+9c
+29
+df
+4c
+f1
+c9
+94
+6a
+46
+08
+0c
+31
+4b
+f7
+1a
+f9
+91
+b6
+53
+15
+50
+73
+a7
+bf
+6e
+07
+9e
+15
+f7
+91
+a3
+6c
+04
+c7
+98
+36
+4b
+41
+c9
+cf
+e3
+ad
+89
+3a
+1e
+b2
+eb
+98
+ab
+2f
+4a
+e6
+f0
+86
+4d
+71
+94
+8d
+56
+68
+44
+4a
+e3
+79
+c5
+89
+a4
+a5
+19
+44
+2e
+43
+b9
+b0
+ce
+5e
+26
+66
+37
+27
+a2
+fb
+11
+89
+89
+6f
+4f
+4a
+f4
+6d
+48
+9c
+a2
+23
+64
+f6
+cc
+e5
+a4
+f2
+b3
+4d
+f1
+30
+8f
+e9
+48
+42
+c7
+96
+e3
+10
+8b
+25
+0d
+cc
+ef
+8a
+6e
+aa
+e3
+6f
+cc
+1c
+b0
+3e
+7b
+16
+f4
+6c
+03
+ac
+08
+d6
+2c
+cf
+9b
+d7
+71
+8d
+3f
+b6
+91
+8e
+74
+4d
+9a
+81
+f8
+3e
+d8
+db
+14
+eb
+d4
+70
+db
+2d
+b8
+a5
+71
+46
+f0
+72
+70
+34
+44
+0a
+55
+e7
+5a
+9d
+87
+70
+2f
+0e
+80
+50
+bc
+f5
+85
+2e
+68
+98
+2a
+fe
+81
+37
+22
+be
+13
+f1
+b5
+32
+a6
+fd
+e8
+d0
+73
+e3
+07
+6e
+0b
+a7
+a9
+5f
+1b
+60
+e8
+06
+33
+19
+10
+33
+6b
+64
+34
+c4
+0f
+be
+a9
+85
+7c
+23
+68
+43
+ec
+41
+fe
+a3
+b8
+85
+1b
+b5
+5c
+17
+2b
+f2
+31
+6b
+ac
+ed
+ce
+39
+59
+9d
+ab
+51
+f2
+42
+cc
+9c
+8a
+42
+75
+83
+e5
+61
+fb
+53
+c6
+de
+2b
+af
+4a
+e0
+44
+78
+12
+b6
+fc
+26
+e9
+20
+73
+aa
+ee
+53
+02
+a0
+64
+14
+bf
+92
+3f
+4f
+1c
+b0
+cc
+f0
+b7
+00
+0f
+a8
+ba
+6f
+b3
+2d
+6d
+49
+a1
+78
+b4
+4c
+02
+36
+01
+1c
+cb
+42
+d7
+df
+f7
+95
+85
+f0
+5c
+9a
+30
+74
+9d
+62
+83
+8e
+2d
+97
+b8
+38
+d6
+cb
+95
+8c
+b4
+66
+97
+09
+9b
+be
+51
+55
+96
+ee
+e6
+42
+90
+6c
+34
+df
+36
+48
+20
+63
+4f
+00
+ad
+64
+f5
+45
+72
+22
+c8
+c1
+bf
+37
+f4
+fd
+11
+f4
+b9
+ff
+f9
+ab
+a3
+3a
+b9
+4f
+88
+68
+ce
+01
+95
+61
+89
+31
+57
+20
+70
+98
+af
+92
+34
+61
+85
+09
+f0
+a5
+b2
+28
+c2
+46
+2b
+77
+d7
+1f
+27
+21
+fd
+c9
+f2
+f3
+c9
+30
+d1
+b9
+dc
+3c
+d3
+7d
+ec
+20
+77
+a4
+7f
+39
+43
+45
+ab
+87
+68
+03
+81
+06
+1f
+8d
+b9
+92
+90
+7f
+eb
+81
+bc
+e6
+cd
+8a
+dc
+2c
+76
+5a
+2c
+d7
+f5
+76
+a7
+7e
+d6
+ef
+ab
+7e
+54
+96
+5f
+2a
+0e
+42
+12
+90
+00
+9a
+a4
+36
+b6
+24
+da
+5c
+20
+af
+b9
+fb
+56
+1c
+28
+5c
+e3
+b1
+66
+bf
+34
+9b
+ce
+4b
+a6
+f2
+ef
+54
+1f
+2c
+eb
+41
+b4
+0a
+33
+47
+63
+5c
+71
+1f
+95
+d9
+58
+95
+83
+90
+7c
+6d
+df
+d1
+2e
+ae
+cc
+81
+f4
+7b
+7d
+cd
+bf
+1d
+33
+b1
+b1
+46
+0a
+56
+0b
+96
+94
+5f
+12
+5d
+56
+39
+83
+b7
+57
+30
+54
+cb
+30
+57
+94
+5c
+f2
+68
+2b
+56
+c4
+66
+98
+54
+c0
+38
+be
+0c
+76
+96
+5b
+c2
+16
+a2
+6e
+50
+3b
+34
+85
+82
+0f
+7b
+22
+81
+a5
+01
+0d
+70
+54
+75
+99
+46
+8f
+9b
+1e
+c8
+05
+af
+20
+ec
+59
+fb
+bf
+6b
+c4
+c2
+71
+ab
+26
+2f
+9e
+74
+51
+07
+e7
+3e
+c4
+3f
+9d
+0b
+9b
+f7
+b7
+af
+7a
+18
+fc
+b6
+9a
+b4
+b9
+da
+d4
+9a
+97
+91
+30
+39
+ed
+a3
+66
+08
+c9
+0f
+98
+c1
+15
+3e
+73
+61
+18
+aa
+92
+cf
+ff
+e3
+57
+e0
+0a
+86
+e4
+0e
+c0
+3e
+fe
+8d
+e8
+50
+9e
+a1
+88
+42
+ae
+92
+b0
+8b
+e0
+da
+5a
+dd
+70
+aa
+93
+04
+ce
+7a
+0d
+8a
+21
+a8
+5a
+f9
+3c
+c5
+7a
+c0
+f6
+f8
+ea
+11
+fb
+08
+de
+83
+f7
+b7
+21
+78
+5b
+52
+bb
+d9
+6b
+14
+8b
+cb
+99
+e3
+b4
+b4
+81
+5f
+88
+73
+2a
+bb
+5e
+ac
+ed
+eb
+87
+29
+58
+89
+df
+17
+df
+9f
+e6
+d4
+15
+dd
+f3
+b5
+3e
+6f
+1e
+4d
+d7
+f0
+7d
+06
+e8
+e9
+b3
+a6
+79
+9f
+b8
+1c
+d5
+f4
+a4
+eb
+52
+cf
+ca
+dc
+bd
+d6
+2f
+27
+07
+85
+17
+6a
+9a
+be
+d7
+79
+46
+22
+2e
+fc
+4e
+23
+83
+c5
+70
+6a
+22
+c5
+13
+cc
+b8
+30
+97
+ee
+e3
+91
+46
+9b
+72
+88
+dc
+d8
+2e
+f0
+5e
+40
+6e
+29
+b9
+db
+a7
+d2
+55
+b0
+15
+85
+27
+e6
+e0
+aa
+48
+25
+b0
+31
+1d
+b4
+89
+b7
+9e
+d6
+24
+f8
+27
+04
+fc
+65
+eb
+c5
+23
+56
+86
+fa
+eb
+d1
+3c
+67
+ab
+e2
+b1
+26
+28
+8d
+68
+87
+ec
+08
+d8
+fb
+93
+d0
+a3
+60
+98
+1a
+ef
+23
+9e
+77
+c9
+4f
+a2
+dd
+b0
+ee
+0b
+ae
+f5
+59
+53
+e1
+58
+c6
+dd
+e8
+10
+f7
+52
+1f
+dd
+26
+32
+29
+57
+3b
+15
+74
+a7
+45
+f7
+9e
+a9
+16
+37
+c7
+08
+ec
+58
+c4
+b9
+d0
+84
+10
+f3
+ca
+a0
+71
+ae
+63
+d7
+7b
+72
+12
+58
+89
+d2
+be
+97
+1a
+53
+fc
+4b
+36
+bc
+77
+c3
+83
+5f
+e7
+57
+16
+ef
+b4
+7d
+03
+29
+a8
+97
+dc
+0e
+98
+3c
+60
+dc
+41
+8a
+62
+e7
+00
+3c
+61
+1e
+42
+64
+f3
+7f
+94
+63
+81
+6a
+69
+a8
+72
+b2
+8c
+cb
+8e
+c0
+2e
+04
+fe
+eb
+67
+dd
+a2
+98
+6b
+35
+01
+a7
+0d
+c0
+8f
+30
+76
+ee
+16
+4e
+ed
+de
+f0
+4c
+14
+2b
+07
+ce
+a7
+0d
+0c
+31
+fd
+8b
+6f
+90
+30
+61
+1b
+3f
+33
+52
+b4
+73
+b9
+06
+3c
+e3
+d4
+99
+45
+16
+5c
+b6
+c5
+89
+46
+22
+50
+af
+4a
+0d
+d9
+08
+b8
+2c
+9b
+6e
+80
+db
+3a
+cd
+11
+03
+13
+4f
+70
+5b
+f0
+cd
+e4
+e8
+49
+2a
+ef
+35
+3a
+b1
+53
+47
+d5
+45
+10
+40
+e8
+73
+e2
+20
+98
+be
+23
+f9
+cf
+69
+52
+eb
+ad
+7a
+42
+72
+06
+52
+ca
+76
+42
+ff
+13
+7e
+6d
+12
+75
+5c
+99
+69
+19
+7a
+ba
+0e
+88
+f1
+ce
+78
+7e
+fc
+ca
+8d
+8d
+ef
+72
+bc
+02
+dd
+54
+e3
+d9
+56
+2b
+8f
+76
+17
+7c
+06
+7e
+80
+90
+c5
+d7
+99
+a8
+cb
+5d
+01
+a9
+c9
+0b
+99
+48
+09
+0d
+20
+04
+4d
+07
+e1
+6a
+cc
+c4
+0e
+76
+aa
+48
+df
+aa
+37
+98
+cd
+c1
+df
+dd
+c1
+30
+3a
+33
+4a
+79
+d9
+21
+c4
+d6
+ad
+2e
+99
+a5
+e4
+4f
+1d
+cf
+8e
+05
+59
+c8
+0e
+5c
+5f
+57
+3f
+53
+cd
+ce
+b0
+34
+2c
+c5
+fb
+b7
+84
+b7
+8c
+73
+9d
+51
+31
+59
+5c
+40
+92
+2b
+d0
+42
+44
+f5
+f2
+6c
+28
+c5
+8b
+6f
+94
+0e
+ff
+50
+fe
+4c
+67
+ae
+96
+d0
+0a
+bd
+55
+7d
+54
+7d
+5a
+c1
+f8
+ab
+e1
+e1
+06
+04
+b4
+da
+6d
+f9
+16
+78
+e0
+4b
+ba
+3d
+a2
+f4
+ac
+e8
+66
+47
+ed
+ef
+2d
+e3
+6c
+74
+a0
+04
+cc
+c4
+ce
+55
+99
+74
+53
+57
+55
+39
+96
+11
+f7
+83
+8f
+7f
+d2
+d5
+1f
+63
+dd
+bd
+2c
+0b
+82
+c0
+5d
+27
+c8
+33
+fc
+a6
+f8
+58
+45
+53
+1c
+08
+84
+34
+65
+81
+bf
+51
+82
+6b
+4b
+75
+2c
+5f
+ba
+46
+3b
+4c
+21
+12
+74
+a4
+ea
+bb
+6d
+94
+f2
+3a
+a6
+4b
+53
+4b
+c4
+e3
+e5
+58
+fe
+b2
+6c
+ec
+30
+59
+d4
+88
+61
+97
+b4
+15
+98
+04
+c3
+fd
+5f
+f5
+1f
+b7
+d7
+1a
+7a
+a6
+11
+8c
+6d
+c9
+34
+70
+92
+47
+55
+92
+af
+aa
+ac
+48
+a0
+50
+00
+54
+a3
+b3
+4a
+57
+84
+99
+27
+ff
+9a
+b6
+41
+ae
+43
+d5
+09
+0a
+39
+6b
+48
+43
+75
+d5
+49
+e3
+a3
+a7
+d6
+f6
+96
+24
+f6
+a6
+89
+bb
+c2
+68
+d9
+47
+45
+a3
+ea
+36
+87
+02
+7c
+a9
+24
+b8
+7c
+95
+7f
+44
+da
+42
+2f
+9e
+dd
+e0
+d3
+cc
+37
+70
+b1
+9d
+af
+1b
+21
+66
+a6
+42
+6f
+1d
+37
+b4
+4e
+33
+90
+da
+4b
+57
+eb
+57
+87
+94
+9b
+08
+ce
+8a
+08
+5c
+ea
+5d
+cb
+79
+b2
+48
+6b
+98
+68
+be
+dd
+d5
+a2
+ba
+81
+95
+5b
+7f
+2b
+91
+87
+dc
+f5
+16
+10
+9f
+f7
+ad
+fb
+d7
+da
+6c
+ae
+56
+3c
+5d
+45
+b6
+3e
+2b
+e7
+b6
+e4
+8c
+dd
+49
+0a
+a1
+c1
+69
+93
+a9
+e7
+d0
+31
+f7
+5d
+b2
+fc
+24
+d8
+a0
+6e
+72
+2d
+01
+72
+c8
+be
+c8
+66
+ee
+00
+a6
+03
+96
+45
+3d
+26
+a9
+c3
+1e
+bd
+54
+49
+fe
+71
+f2
+6f
+56
+47
+c7
+df
+51
+47
+e9
+79
+63
+30
+f7
+b1
+4d
+83
+44
+b0
+f6
+0c
+ef
+63
+a8
+43
+50
+23
+57
+9f
+a2
+4b
+b4
+75
+3f
+a3
+a7
+d6
+60
+c3
+da
+f3
+b5
+f0
+bd
+ab
+a0
+3c
+2b
+9e
+b7
+36
+14
+d5
+af
+f5
+01
+1f
+76
+c2
+fa
+9c
+ca
+50
+eb
+d5
+3f
+03
+0f
+c5
+9d
+fb
+90
+33
+f4
+45
+95
+5e
+e3
+4f
+ce
+80
+56
+4c
+e4
+f6
+93
+2c
+d2
+b3
+bb
+4c
+b8
+82
+72
+d4
+2b
+c0
+66
+66
+e5
+0f
+96
+7d
+9a
+40
+57
+6c
+c5
+30
+41
+bb
+5f
+39
+07
+00
+a1
+2d
+83
+1f
+35
+d0
+2b
+5d
+58
+7d
+61
+83
+74
+b0
+60
+26
+c2
+e8
+90
+11
+b4
+71
+c0
+92
+24
+84
+28
+df
+ea
+10
+36
+17
+b0
+39
+36
+54
+d6
+56
+ba
+dc
+f3
+1f
+b1
+80
+28
+b4
+fd
+75
+ba
+1f
+16
+c2
+a3
+ed
+4e
+ae
+b6
+b0
+9d
+83
+c7
+5e
+b9
+eb
+6f
+b2
+f2
+a7
+d5
+5f
+9d
+41
+51
+88
+e0
+0b
+fc
+2e
+a6
+a5
+97
+a8
+1d
+9e
+77
+b5
+c8
+01
+ef
+aa
+db
+48
+54
+6b
+b0
+d6
+4c
+36
+76
+cd
+c0
+67
+70
+96
+b7
+23
+3c
+31
+e9
+d3
+bb
+20
+0c
+36
+d1
+6f
+b0
+98
+73
+1e
+2c
+81
+2e
+29
+02
+b0
+c4
+6f
+b1
+b4
+12
+4f
+5c
+49
+6d
+03
+66
+95
+8d
+22
+42
+74
+4c
+91
+fd
+f9
+9f
+dd
+22
+63
+64
+66
+84
+8b
+59
+8a
+b1
+af
+b6
+29
+dd
+8d
+c5
+e2
+0f
+41
+16
+16
+8e
+9a
+43
+88
+d1
+16
+69
+18
+7c
+a0
+b9
+61
+63
+cf
+54
+00
+27
+a6
+cf
+22
+91
+22
+d0
+a8
+a8
+d3
+88
+b0
+ca
+b6
+26
+d9
+df
+89
+8b
+10
+45
+ea
+c3
+e4
+e2
+53
+00
+3a
+2c
+79
+73
+55
+5d
+b4
+dc
+e7
+91
+ab
+fb
+4e
+92
+98
+38
+5b
+be
+24
+c2
+45
+9c
+62
+dd
+84
+84
+37
+9b
+b6
+52
+57
+65
+a9
+14
+ad
+fc
+d2
+19
+92
+5a
+d5
+73
+67
+d8
+6a
+58
+5d
+6c
+4e
+fd
+a1
+ff
+f1
+1f
+3e
+4c
+7d
+7f
+fe
+1c
+ae
+a0
+0e
+f5
+b9
+02
+be
+7a
+74
+7a
+bf
+9c
+81
+c7
+f8
+1c
+33
+aa
+0f
+32
+cf
+a4
+10
+12
+c2
+ce
+67
+98
+22
+b5
+62
+47
+ea
+24
+1a
+6c
+22
+e7
+39
+41
+14
+2d
+bb
+d4
+24
+09
+05
+49
+f1
+c9
+68
+d0
+1b
+b2
+4e
+3e
+c9
+7d
+7d
+d6
+26
+60
+31
+6e
+06
+b8
+68
+71
+a8
+fe
+55
+af
+f2
+75
+5d
+db
+ff
+be
+d7
+e1
+4a
+90
+b7
+d0
+4c
+a1
+d8
+65
+ac
+17
+13
+2c
+25
+cb
+cb
+12
+31
+fc
+28
+3c
+15
+30
+74
+a8
+53
+74
+77
+6a
+96
+bb
+a4
+13
+12
+d8
+4d
+32
+48
+79
+50
+bf
+04
+a8
+66
+bb
+88
+d4
+08
+34
+26
+ae
+ae
+17
+ca
+0b
+2c
+c1
+88
+47
+2d
+17
+7f
+e3
+7a
+52
+30
+55
+64
+2f
+d5
+cd
+3d
+f6
+d6
+30
+01
+af
+7a
+83
+2f
+ac
+16
+7c
+7f
+f0
+a1
+5e
+9d
+21
+b5
+6e
+07
+be
+f3
+e3
+85
+30
+27
+5a
+65
+b9
+37
+71
+40
+f2
+fd
+a6
+53
+b8
+5d
+43
+8f
+8e
+ba
+c5
+31
+94
+80
+e0
+31
+2a
+b5
+47
+e2
+d2
+d8
+10
+cd
+36
+5d
+15
+ee
+0c
+28
+c8
+ac
+c3
+be
+1b
+6e
+5a
+23
+ea
+47
+43
+9a
+ee
+af
+81
+e3
+5f
+42
+28
+da
+20
+32
+72
+aa
+20
+1e
+ae
+91
+c1
+07
+dc
+a3
+9d
+32
+09
+a8
+4d
+5b
+f6
+ee
+c8
+d9
+48
+f8
+ea
+86
+91
+62
+e3
+79
+b5
+d0
+fe
+62
+2c
+ee
+67
+c0
+1b
+ee
+e9
+6a
+85
+2e
+68
+1b
+1b
+e9
+21
+61
+ef
+a1
+19
+b1
+fb
+68
+04
+ea
+fa
+1d
+29
+09
+e0
+43
+0a
+33
+af
+35
+82
+85
+11
+22
+73
+00
+94
+64
+4d
+3d
+5c
+c5
+7d
+ce
+a4
+eb
+e8
+6b
+bf
+c8
+d5
+0b
+1f
+8a
+1f
+17
+2f
+96
+2d
+66
+32
+2a
+58
+3f
+78
+8c
+cc
+9b
+eb
+19
+eb
+65
+62
+4e
+69
+72
+a4
+1e
+90
+3b
+e6
+3b
+64
+7c
+21
+46
+68
+60
+52
+a4
+22
+29
+7d
+a7
+88
+80
+18
+79
+0d
+19
+70
+18
+b6
+d4
+c9
+a8
+1c
+d4
+be
+45
+43
+d5
+b3
+49
+1e
+f3
+ab
+57
+60
+a6
+68
+1d
+32
+e9
+ee
+76
+a3
+5e
+bd
+95
+f2
+c6
+2c
+00
+72
+b6
+1b
+32
+eb
+b0
+49
+e8
+5a
+e5
+d5
+42
+2e
+3d
+bb
+d7
+01
+1e
+93
+1a
+a2
+50
+8a
+82
+ca
+74
+2f
+30
+1d
+e1
+00
+41
+ee
+be
+82
+7a
+d1
+73
+9a
+1d
+36
+88
+4a
+72
+a8
+dc
+8e
+2a
+ae
+24
+e9
+1d
+1c
+ab
+bd
+42
+a6
+6d
+b3
+cb
+78
+2c
+63
+84
+fb
+f4
+57
+09
+92
+8b
+aa
+f2
+1b
+ae
+f8
+47
+69
+0d
+f4
+09
+16
+6c
+c3
+e7
+ca
+03
+e5
+22
+6b
+67
+31
+88
+63
+50
+94
+9f
+64
+e6
+9d
+a7
+47
+51
+ef
+9a
+ad
+f5
+7a
+1e
+36
+9b
+2d
+8e
+9b
+ae
+d2
+72
+62
+0e
+81
+fd
+7c
+a2
+af
+48
+5e
+48
+75
+58
+68
+d3
+d7
+b5
+bd
+cb
+5a
+1b
+38
+d9
+e4
+52
+95
+96
+4d
+56
+a4
+7d
+02
+66
+2c
+72
+e5
+14
+a0
+6c
+e0
+f1
+80
+f5
+fb
+f8
+93
+cb
+5f
+e8
+7f
+2f
+34
+7c
+a6
+c6
+e8
+39
+75
+76
+e7
+d4
+9e
+28
+ef
+aa
+1d
+a8
+89
+fc
+59
+c9
+da
+03
+22
+da
+51
+e5
+97
+cf
+e0
+aa
+21
+81
+95
+f5
+41
+2f
+cf
+35
+57
+41
+ad
+24
+62
+b8
+1e
+2a
+28
+59
+33
+5e
+9c
+bc
+da
+3d
+d6
+54
+10
+0c
+fa
+6f
+47
+f8
+57
+42
+1e
+0a
+ff
+17
+2f
+b0
+a2
+a7
+76
+08
+8f
+92
+6e
+f8
+ac
+91
+3d
+87
+c0
+b2
+78
+46
+36
+d4
+70
+70
+b3
+aa
+d2
+19
+cc
+e6
+15
+22
+e8
+cf
+b9
+e2
+80
+3a
+a1
+6f
+07
+af
+4c
+03
+6e
+3b
+64
+5e
+d3
+a4
+ec
+03
+a2
+14
+97
+8e
+67
+a8
+74
+69
+16
+1a
+9c
+be
+83
+56
+b3
+ad
+f4
+c2
+16
+ed
+47
+d7
+b5
+20
+fb
+40
+ca
+67
+fb
+16
+11
+fe
+c7
+42
+e2
+f2
+af
+62
+59
+fc
+26
+88
+4a
+9c
+32
+7e
+41
+b5
+ec
+51
+36
+39
+23
+3f
+a1
+2d
+63
+b6
+9c
+b5
+b8
+41
+25
+e1
+fa
+29
+eb
+d5
+e8
+a3
+f8
+03
+91
+c8
+79
+45
+25
+51
+80
+9a
+8e
+9a
+23
+6f
+2f
+1b
+47
+b3
+48
+ec
+d7
+33
+8d
+c1
+9c
+88
+c4
+d3
+68
+a6
+c5
+97
+3a
+2e
+a4
+c0
+ab
+77
+24
+93
+3e
+ca
+76
+5b
+56
+cc
+3e
+53
+31
+05
+f6
+1c
+e0
+74
+a6
+a1
+c8
+a4
+76
+c6
+10
+03
+0f
+7c
+ce
+d0
+9d
+e3
+88
+9e
+59
+e5
+3d
+d2
+b6
+e0
+ee
+01
+c9
+0f
+3a
+94
+80
+c1
+2b
+15
+28
+6e
+22
+76
+f2
+af
+62
+e1
+51
+99
+41
+02
+cf
+d1
+3c
+7d
+a3
+3a
+72
+35
+b8
+4c
+7b
+4c
+32
+7b
+bc
+b9
+55
+9a
+3b
+a7
+bf
+ae
+93
+74
+0b
+af
+c0
+30
+81
+c8
+a0
+87
+4a
+b5
+b8
+08
+4a
+ae
+1d
+22
+e1
+6a
+99
+bf
+0e
+54
+92
+11
+76
+2a
+d9
+29
+4d
+d1
+f0
+ad
+80
+31
+71
+1a
+8b
+0a
+bb
+b7
+24
+80
+be
+2e
+7f
+5d
+9a
+2b
+3a
+26
+cc
+e0
+aa
+1f
+eb
+9c
+aa
+f9
+64
+7e
+a9
+fe
+0b
+77
+8b
+56
+57
+87
+65
+4e
+a2
+ac
+a1
+07
+f9
+95
+5b
+5f
+22
+5d
+db
+7f
+08
+cd
+69
+cf
+cb
+c7
+ad
+fc
+6b
+5b
+d4
+a1
+de
+ca
+03
+df
+bf
+48
+cb
+f6
+60
+ad
+e5
+cd
+56
+08
+a1
+b1
+aa
+83
+b7
+05
+0b
+f0
+75
+69
+e0
+d9
+ba
+20
+fe
+25
+d6
+df
+87
+d5
+5d
+95
+f2
+15
+2e
+38
+8a
+d9
+49
+6e
+43
+b7
+c2
+a4
+e3
+3f
+5c
+3c
+78
+81
+e8
+e0
+48
+cf
+d3
+fe
+53
+66
+bf
+85
+0b
+35
+41
+df
+58
+e4
+82
+96
+7c
+9a
+b5
+29
+a7
+1f
+f5
+79
+b6
+46
+e7
+49
+1f
+55
+42
+a3
+61
+52
+96
+1d
+4c
+ec
+95
+cd
+d3
+78
+01
+b9
+f4
+55
+01
+7d
+e5
+7f
+7c
+74
+3b
+c5
+5f
+8e
+c6
+fa
+0d
+3a
+fe
+d4
+69
+1e
+bd
+c9
+19
+9f
+22
+ad
+03
+d4
+9d
+51
+ec
+03
+42
+93
+d2
+0c
+76
+73
+31
+73
+db
+22
+12
+0c
+be
+db
+38
+a9
+e5
+ea
+38
+0f
+99
+8c
+a2
+81
+b3
+36
+0c
+16
+8b
+ac
+03
+db
+d1
+8b
+6c
+61
+09
+a8
+b0
+4a
+40
+c0
+63
+a2
+35
+19
+c0
+c1
+7a
+ff
+6b
+57
+c2
+e2
+b1
+c7
+75
+66
+4a
+c6
+01
+45
+05
+15
+6e
+ad
+06
+c9
+d9
+37
+01
+fd
+b3
+80
+ca
+b8
+7a
+8a
+d6
+d2
+1d
+68
+db
+54
+1d
+a5
+c6
+d7
+99
+9c
+5f
+2c
+48
+54
+a8
+c9
+49
+32
+df
+fb
+71
+f5
+17
+b1
+87
+de
+cc
+2d
+95
+4c
+90
+e1
+41
+3a
+7a
+e5
+a2
+ec
+2b
+21
+8c
+28
+e4
+92
+f5
+54
+a4
+ad
+fe
+ed
+40
+5c
+d3
+70
+18
+8a
+83
+ce
+45
+8c
+2c
+8d
+13
+75
+61
+00
+87
+d4
+40
+d2
+8b
+1f
+f4
+69
+db
+61
+7e
+c5
+f6
+f8
+38
+52
+25
+da
+66
+4d
+2b
+97
+78
+2b
+bc
+34
+88
+b1
+1e
+b5
+53
+9b
+e4
+78
+37
+51
+c7
+a1
+b9
+47
+0b
+bb
+92
+60
+d4
+c7
+cf
+bd
+00
+4d
+f5
+c9
+30
+7f
+ba
+9c
+c3
+d4
+71
+b5
+14
+61
+c6
+cc
+e7
+36
+83
+60
+d4
+a0
+3d
+0b
+9e
+22
+7a
+4a
+d1
+9f
+6a
+4b
+07
+40
+cb
+ac
+4f
+c1
+55
+31
+da
+32
+40
+a1
+6d
+55
+ab
+69
+4e
+ab
+b5
+18
+f4
+28
+87
+da
+81
+9b
+4a
+1c
+bd
+98
+24
+31
+ef
+b2
+0f
+42
+1a
+db
+04
+a0
+c2
+55
+79
+ad
+cd
+93
+fe
+93
+df
+f3
+51
+6d
+f5
+3c
+81
+cf
+d0
+1d
+ce
+ad
+79
+7b
+f2
+23
+d1
+d3
+88
+39
+f3
+69
+58
+0d
+f2
+bd
+59
+00
+cb
+c0
+9e
+73
+49
+3c
+3a
+df
+ae
+9a
+b5
+ce
+0d
+1a
+68
+f6
+02
+02
+6c
+9f
+42
+c5
+d3
+f7
+ec
+0e
+6a
+45
+fb
+75
+70
+42
+66
+57
+59
+42
+df
+16
+8e
+84
+da
+24
+30
+e2
+a4
+cb
+af
+3e
+5e
+05
+29
+5f
+21
+45
+bb
+38
+84
+28
+79
+78
+39
+b1
+a2
+e2
+8b
+02
+8d
+a4
+2a
+e4
+14
+52
+8b
+88
+89
+f6
+ce
+6a
+a9
+8c
+27
+80
+b6
+9d
+ed
+32
+8a
+ab
+04
+03
+1b
+22
+98
+18
+ce
+1b
+6d
+f6
+7d
+ce
+33
+6e
+92
+dd
+86
+2c
+8f
+a2
+6b
+90
+e7
+89
+11
+53
+34
+8e
+77
+bb
+1f
+20
+d0
+c7
+f4
+37
+d0
+a7
+5a
+6b
+88
+dd
+86
+c5
+29
+b9
+c3
+1c
+f6
+6f
+1a
+4e
+4f
+6a
+4e
+2b
+7d
+5e
+cf
+e2
+11
+05
+aa
+2d
+82
+b9
+37
+e0
+83
+9c
+64
+8a
+67
+91
+fa
+c4
+5c
+6e
+77
+31
+17
+a8
+09
+09
+7c
+98
+73
+8f
+4b
+84
+ee
+22
+35
+28
+29
+86
+c8
+31
+d6
+a9
+05
+dc
+16
+43
+7c
+c4
+47
+fb
+1d
+07
+f3
+e3
+48
+ad
+c2
+28
+98
+5e
+b9
+90
+35
+e5
+10
+3e
+92
+13
+06
+78
+77
+21
+08
+ba
+8f
+ce
+9f
+1e
+53
+e9
+69
+8e
+86
+b9
+cb
+16
+bd
+0c
+98
+86
+5e
+d5
+43
+33
+42
+c8
+90
+c6
+46
+25
+20
+07
+d1
+28
+4c
+6b
+70
+75
+9c
+9b
+e7
+bc
+2b
+c9
+47
+ba
+04
+6b
+59
+1d
+8f
+6c
+c9
+f2
+de
+4d
+00
+db
+7a
+2a
+23
+fc
+af
+c2
+9a
+ba
+79
+f5
+7e
+c8
+c3
+07
+d6
+95
+74
+5c
+51
+e1
+3b
+03
+ba
+90
+55
+f2
+71
+02
+02
+ec
+ac
+e2
+62
+2f
+c9
+5b
+a2
+80
+31
+8d
+6c
+1a
+5e
+67
+86
+75
+cb
+3d
+20
+33
+d1
+85
+6a
+a6
+35
+d9
+a7
+b1
+7a
+ab
+78
+73
+1c
+01
+5e
+2c
+52
+29
+e7
+ec
+32
+08
+d1
+10
+9c
+96
+9a
+58
+70
+91
+d6
+ea
+94
+d1
+ba
+8b
+d0
+94
+84
+ed
+73
+5e
+9a
+4a
+47
+62
+a1
+d5
+81
+1c
+5d
+b3
+2a
+9c
+b8
+76
+6f
+c5
+d1
+a8
+24
+87
+74
+80
+9e
+f0
+7b
+de
+99
+4c
+86
+86
+2f
+8b
+87
+f0
+3c
+e6
+c3
+19
+1e
+92
+d8
+26
+9c
+b1
+ab
+5a
+4f
+39
+91
+42
+23
+f9
+29
+e1
+cc
+25
+83
+87
+8c
+70
+ce
+17
+18
+63
+af
+5f
+74
+38
+2d
+3f
+c2
+1b
+51
+84
+b9
+ca
+37
+ec
+18
+05
+9b
+ba
+f6
+e8
+19
+10
+dc
+6b
+62
+3c
+6b
+c9
+a3
+fb
+84
+c6
+f4
+87
+3a
+98
+f4
+cc
+23
+2c
+2b
+d9
+04
+16
+3a
+12
+f0
+53
+de
+84
+68
+e3
+2c
+3c
+2d
+99
+7a
+df
+86
+d4
+8f
+89
+a9
+30
+e1
+bb
+58
+ba
+68
+98
+c3
+6a
+45
+ed
+54
+91
+38
+b2
+ec
+51
+f5
+71
+41
+12
+02
+b8
+7f
+b9
+37
+82
+ca
+30
+d3
+f3
+64
+a0
+d1
+29
+08
+55
+66
+94
+b5
+ba
+a3
+74
+7b
+7b
+fa
+16
+1e
+17
+fd
+7f
+36
+31
+22
+c7
+87
+81
+33
+47
+b1
+b5
+32
+1e
+85
+39
+fe
+b3
+04
+ef
+ca
+f1
+42
+b2
+69
+06
+96
+02
+c8
+56
+9f
+69
+42
+b3
+8b
+a7
+26
+2e
+88
+75
+d1
+1c
+85
+5c
+39
+1e
+dd
+45
+97
+90
+73
+22
+14
+6d
+5d
+73
+02
+4b
+7a
+06
+83
+a8
+fa
+b9
+e3
+a7
+08
+db
+4b
+3b
+ae
+75
+bc
+f1
+f0
+13
+12
+c7
+6f
+f6
+fb
+62
+c4
+6f
+dd
+71
+3c
+81
+d8
+40
+e1
+5b
+f5
+8c
+74
+79
+85
+6e
+e9
+80
+fb
+63
+86
+d8
+90
+da
+e4
+2a
+23
+7e
+1f
+55
+ab
+96
+19
+a2
+f9
+38
+b6
+1b
+72
+5d
+f6
+63
+b8
+67
+cd
+9c
+b0
+0f
+77
+2b
+75
+9b
+b9
+1e
+fb
+61
+0a
+bd
+60
+77
+91
+e0
+77
+29
+08
+8a
+ef
+66
+1a
+62
+a9
+5c
+98
+dc
+e1
+a0
+f6
+5f
+6f
+a2
+47
+d2
+91
+05
+bc
+66
+d7
+b6
+97
+8f
+56
+56
+5f
+d1
+60
+01
+d9
+a3
+93
+2d
+30
+39
+0d
+c9
+e8
+23
+3d
+76
+8a
+68
+32
+11
+80
+b9
+0e
+8b
+b1
+67
+76
+58
+a3
+10
+d7
+1d
+1d
+e2
+ab
+af
+fb
+f3
+7d
+2a
+4a
+a2
+73
+03
+da
+69
+73
+a1
+fa
+bc
+ea
+ea
+80
+46
+30
+86
+ff
+78
+87
+df
+65
+f4
+5b
+1d
+cc
+7a
+85
+40
+e7
+de
+9c
+20
+83
+18
+7d
+41
+32
+ba
+87
+2d
+e6
+b9
+a8
+bb
+54
+53
+89
+a3
+ca
+f9
+8f
+4b
+96
+07
+14
+a0
+6c
+8b
+c9
+55
+ba
+7e
+5b
+81
+4b
+75
+77
+04
+33
+4f
+24
+be
+42
+39
+07
+89
+67
+e6
+ab
+88
+ab
+fd
+8b
+75
+e4
+87
+a4
+01
+1d
+7f
+07
+7b
+b2
+6e
+96
+ab
+5b
+31
+ac
+4b
+09
+11
+a6
+57
+0f
+61
+a9
+01
+fb
+b3
+ad
+56
+4a
+dc
+a1
+e9
+fa
+72
+72
+ea
+35
+c4
+ca
+94
+b7
+df
+70
+db
+95
+16
+91
+28
+b9
+cd
+55
+59
+4d
+78
+dd
+38
+e4
+82
+db
+d3
+0b
+72
+2e
+77
+6e
+91
+7b
+f5
+ab
+e8
+fc
+a9
+73
+b6
+60
+00
+3b
+06
+d5
+2f
+6f
+e2
+18
+9b
+a0
+2d
+cc
+e3
+ac
+6c
+aa
+38
+f0
+df
+29
+37
+8d
+c1
+1f
+ae
+e1
+25
+40
+be
+45
+55
+18
+2e
+7f
+40
+92
+7e
+20
+3e
+cb
+f9
+bf
+dc
+79
+88
+0c
+b1
+57
+69
+45
+64
+59
+51
+81
+e5
+fd
+57
+f3
+3a
+cd
+36
+c2
+c4
+42
+76
+ed
+c2
+b4
+b0
+01
+3d
+bb
+5c
+f0
+c5
+2e
+f6
+80
+fd
+b3
+f8
+fb
+76
+51
+6f
+9a
+ee
+77
+8d
+2f
+46
+a3
+b5
+54
+75
+81
+b3
+17
+99
+28
+12
+19
+96
+d1
+d5
+8f
+a3
+9b
+fa
+8e
+a5
+da
+ca
+f4
+18
+6f
+fd
+78
+ef
+a9
+09
+dc
+ac
+87
+69
+6f
+d1
+20
+00
+3b
+1f
+c0
+4a
+ec
+45
+98
+6f
+4c
+7e
+be
+ca
+44
+4d
+0b
+9d
+e2
+5a
+f9
+16
+7c
+f1
+5a
+9c
+3f
+89
+c3
+1d
+90
+51
+d9
+8f
+d8
+26
+05
+0b
+10
+30
+19
+43
+82
+ae
+86
+6b
+b7
+48
+07
+9f
+cf
+e4
+0b
+d6
+a5
+6d
+44
+15
+4f
+7f
+44
+00
+ef
+d0
+16
+73
+f7
+5c
+4b
+1b
+0f
+e7
+29
+7f
+ff
+a4
+02
+94
+ec
+2e
+27
+d0
+f5
+60
+b9
+92
+5f
+63
+ee
+60
+85
+29
+40
+cf
+b0
+14
+40
+10
+28
+85
+66
+5d
+53
+22
+9e
+ab
+a3
+58
+1c
+05
+d0
+a6
+f7
+cf
+2b
+3f
+3b
+96
+be
+b5
+42
+c7
+85
+7e
+00
+34
+50
+fa
+90
+97
+29
+5d
+1f
+33
+31
+4b
+b0
+d5
+ea
+bc
+6e
+cc
+84
+be
+a0
+4d
+35
+46
+07
+04
+11
+22
+77
+cb
+73
+95
+de
+10
+6b
+88
+a9
+1f
+a8
+2a
+58
+45
+cd
+5e
+44
+c2
+78
+10
+2f
+6b
+30
+d4
+c0
+7c
+0e
+6c
+c4
+5a
+f9
+c7
+7e
+c7
+a2
+f0
+f3
+6b
+82
+c5
+c6
+eb
+9c
+e6
+8a
+54
+6f
+e9
+46
+28
+9a
+54
+40
+e9
+59
+5a
+6c
+4c
+89
+ae
+b1
+71
+be
+54
+3b
+57
+96
+c2
+45
+c5
+29
+41
+ad
+23
+c8
+00
+0b
+59
+ea
+5b
+77
+d6
+98
+17
+bc
+46
+75
+ac
+3a
+6e
+68
+f5
+49
+34
+0d
+27
+49
+43
+8a
+22
+06
+29
+cf
+ff
+1a
+cc
+ed
+49
+37
+5d
+7d
+a5
+12
+5f
+b9
+84
+7b
+5e
+25
+29
+d6
+09
+a9
+1e
+f7
+91
+a4
+48
+75
+f6
+c9
+6b
+7a
+f7
+96
+c1
+95
+6e
+bc
+5b
+94
+4f
+00
+b1
+25
+2c
+b5
+f5
+ed
+2b
+2a
+6b
+0c
+78
+34
+9b
+ad
+32
+38
+15
+1d
+b9
+cd
+cc
+e6
+4f
+b7
+24
+c7
+e8
+9d
+58
+d2
+51
+ff
+1a
+b7
+08
+c8
+a3
+0a
+73
+f3
+43
+02
+42
+23
+25
+b1
+b5
+25
+5c
+fe
+84
+8c
+e5
+8b
+63
+f7
+33
+24
+f6
+bb
+b7
+bd
+fb
+74
+2c
+96
+55
+40
+8e
+96
+c8
+4c
+2b
+ad
+f6
+c2
+45
+e5
+41
+df
+d1
+5e
+bb
+f6
+b3
+80
+a8
+21
+03
+18
+33
+5a
+df
+27
+8c
+24
+38
+aa
+87
+26
+c8
+27
+45
+9f
+06
+0f
+b7
+8d
+bf
+b0
+9e
+4d
+46
+b7
+0e
+31
+30
+04
+b4
+ea
+34
+8e
+62
+0d
+53
+6e
+56
+bb
+c8
+7b
+4c
+fb
+88
+9c
+3d
+86
+01
+8d
+ce
+13
+f1
+40
+a6
+38
+b8
+6c
+5c
+55
+14
+b9
+41
+be
+4f
+45
+03
+3a
+a8
+e4
+24
+92
+49
+a4
+aa
+e2
+f9
+fd
+28
+ee
+f7
+e4
+f7
+02
+6f
+43
+2f
+aa
+55
+1d
+28
+c0
+56
+6b
+4b
+cf
+45
+18
+ad
+7c
+ed
+fc
+c4
+af
+3e
+44
+1b
+93
+2f
+5f
+ac
+96
+e3
+61
+91
+46
+bd
+74
+73
+95
+91
+4d
+69
+1e
+1e
+6f
+b3
+cd
+e9
+0d
+03
+9a
+80
+63
+38
+fb
+10
+03
+fa
+14
+1c
+f6
+20
+7c
+49
+9d
+fd
+31
+57
+d4
+0c
+a6
+5a
+b6
+47
+63
+02
+f7
+ce
+7e
+0b
+e9
+7e
+af
+65
+77
+28
+8b
+8b
+a7
+5b
+37
+9b
+04
+d6
+80
+20
+85
+5b
+ac
+fe
+63
+11
+5d
+fc
+94
+96
+e3
+9a
+fb
+f4
+a4
+7a
+ec
+f2
+0a
+2d
+88
+d7
+27
+74
+74
+5e
+ae
+21
+7c
+6f
+58
+6c
+e4
+cf
+88
+65
+ae
+48
+74
+a4
+9b
+d1
+8d
+42
+36
+19
+32
+86
+6f
+4f
+16
+27
+94
+45
+6e
+79
+19
+ea
+22
+54
+74
+79
+a9
+f4
+a6
+72
+f3
+7a
+12
+3b
+07
+2d
+9c
+e5
+52
+08
+78
+67
+7a
+34
+ee
+f3
+ad
+9f
+d8
+77
+03
+08
+01
+16
+51
+21
+15
+55
+48
+15
+6e
+11
+95
+1d
+f0
+62
+b4
+54
+77
+aa
+df
+54
+29
+1d
+18
+a9
+25
+67
+ba
+82
+18
+63
+26
+7f
+3e
+d9
+04
+9b
+50
+d1
+21
+3e
+2a
+12
+2a
+18
+3d
+4e
+7d
+b9
+07
+98
+3b
+20
+d3
+cc
+5a
+ea
+74
+21
+4b
+5a
+36
+e5
+10
+19
+91
+ef
+78
+0a
+57
+d6
+eb
+c9
+f0
+ee
+7e
+f6
+65
+ca
+e0
+e7
+88
+bc
+09
+5a
+a6
+d3
+2d
+74
+de
+35
+97
+f6
+5b
+4c
+19
+4d
+8a
+27
+05
+6e
+a6
+e8
+03
+a9
+88
+ce
+48
+b9
+16
+58
+16
+84
+d6
+b3
+d9
+7f
+ec
+1d
+43
+bb
+18
+83
+70
+9e
+88
+74
+9a
+3a
+bc
+22
+48
+d2
+ca
+71
+cc
+69
+8e
+3d
+bc
+6a
+1b
+75
+ef
+d9
+12
+1e
+3f
+13
+6d
+4d
+72
+7e
+de
+24
+7f
+2f
+fe
+7a
+70
+e4
+78
+86
+9a
+e3
+71
+01
+d8
+56
+48
+27
+06
+2e
+72
+45
+03
+a3
+f3
+c8
+3c
+47
+3f
+05
+11
+9e
+8a
+69
+a6
+91
+70
+7d
+e7
+9f
+ff
+a3
+36
+37
+f6
+4c
+47
+35
+7d
+66
+10
+c7
+b0
+dc
+f1
+e9
+dc
+75
+e7
+3c
+1e
+ba
+fd
+16
+86
+4d
+73
+f3
+06
+1c
+40
+1e
+e4
+c9
+3d
+61
+05
+8d
+36
+32
+56
+82
+c0
+10
+4d
+90
+94
+f5
+0c
+f3
+7c
+d8
+eb
+3e
+26
+cb
+61
+fb
+ff
+07
+8c
+e2
+3f
+3d
+83
+d8
+bf
+a9
+8c
+12
+b2
+e1
+63
+42
+17
+af
+ff
+3d
+28
+ed
+f7
+8f
+f2
+7d
+b3
+88
+1a
+0f
+0b
+ab
+dd
+df
+bd
+2b
+c1
+89
+ed
+e6
+d6
+ac
+2d
+0a
+da
+e5
+8f
+d1
+08
+70
+88
+d8
+38
+d7
+c7
+cd
+b0
+88
+ed
+f5
+9b
+48
+c6
+b8
+22
+7d
+2f
+80
+41
+2d
+ef
+7e
+dc
+68
+92
+d4
+f9
+93
+f2
+18
+e4
+91
+0f
+1b
+c4
+aa
+a9
+99
+69
+d0
+86
+61
+b3
+4e
+9a
+6f
+cc
+10
+ff
+65
+e1
+21
+9c
+7d
+a2
+e2
+7d
+95
+bd
+c5
+96
+d8
+67
+cd
+4e
+fa
+29
+80
+f7
+04
+dc
+1e
+07
+b0
+34
+15
+f9
+bd
+d8
+ec
+eb
+af
+5e
+f2
+d5
+67
+d0
+8d
+c0
+65
+6b
+a7
+c3
+44
+54
+a0
+5f
+90
+85
+54
+76
+9d
+c2
+f5
+3b
+b3
+90
+2b
+46
+cd
+fd
+90
+e7
+56
+d6
+26
+9d
+87
+7b
+45
+33
+c0
+16
+6a
+a9
+6d
+4b
+54
+b9
+82
+d9
+94
+fe
+54
+6f
+da
+6f
+14
+65
+78
+1c
+8f
+64
+e7
+80
+1f
+d7
+ae
+11
+9a
+0b
+bb
+20
+25
+9a
+6f
+de
+53
+ea
+19
+88
+31
+34
+9a
+6d
+e3
+9c
+e7
+b0
+e8
+14
+1f
+de
+53
+7a
+09
+d6
+6c
+54
+1f
+41
+d9
+e5
+3f
+7e
+08
+12
+46
+df
+5d
+57
+4f
+dd
+f1
+01
+dd
+99
+bf
+34
+7d
+ef
+59
+94
+32
+71
+50
+c8
+11
+53
+41
+db
+af
+f1
+ec
+69
+8a
+05
+39
+7c
+7e
+cc
+0c
+d6
+90
+4d
+36
+e6
+50
+c6
+a8
+c5
+52
+6c
+80
+cc
+e1
+fe
+a8
+24
+cc
+ed
+4f
+97
+73
+d6
+e1
+69
+13
+36
+92
+13
+85
+f6
+07
+28
+47
+37
+c4
+a8
+bc
+76
+72
+09
+3d
+d3
+8d
+1a
+17
+17
+27
+ac
+67
+af
+01
+03
+da
+64
+81
+32
+12
+bb
+5b
+86
+16
+e8
+fd
+10
+f5
+80
+9b
+12
+5e
+8a
+f5
+ff
+b3
+61
+46
+72
+89
+7e
+eb
+02
+56
+ef
+25
+7e
+60
+ee
+89
+9b
+db
+bd
+f1
+14
+5f
+97
+45
+48
+8a
+e5
+63
+ef
+97
+5e
+49
+05
+6a
+02
+7f
+64
+53
+24
+63
+95
+f5
+cb
+3a
+d3
+8a
+12
+80
+0a
+b6
+38
+5d
+f6
+fe
+8c
+fb
+28
+8a
+7a
+b7
+1a
+95
+06
+90
+4a
+1f
+27
+21
+83
+0d
+e3
+30
+05
+08
+43
+a5
+e3
+ad
+dc
+18
+e4
+d1
+99
+ca
+ae
+f3
+2a
+38
+ae
+6a
+57
+ea
+fe
+da
+c0
+63
+42
+b7
+ad
+04
+a8
+85
+2b
+d8
+d6
+93
+51
+d1
+79
+d9
+28
+71
+89
+83
+60
+6c
+ff
+41
+d0
+19
+7c
+09
+c4
+b7
+53
+51
+18
+5f
+2f
+3d
+ed
+6f
+9a
+48
+7d
+e0
+fd
+04
+01
+32
+c7
+70
+22
+29
+a9
+23
+93
+56
+42
+30
+cc
+ae
+fc
+af
+19
+c6
+65
+4a
+40
+a1
+ef
+a5
+0c
+f3
+17
+8b
+3b
+bc
+2d
+b1
+37
+7d
+7a
+e9
+44
+ff
+b0
+55
+fc
+3e
+1d
+35
+54
+42
+8b
+bb
+5f
+a5
+60
+4a
+50
+8c
+f0
+53
+78
+e9
+f3
+54
+b4
+89
+f8
+4f
+d9
+24
+e9
+a5
+d4
+d1
+83
+71
+b4
+65
+fb
+21
+e8
+c3
+3c
+0f
+32
+32
+02
+ac
+60
+2d
+d0
+6e
+f1
+a3
+81
+37
+55
+db
+db
+4b
+0a
+9c
+82
+ea
+f7
+a8
+26
+ca
+50
+ed
+9d
+00
+99
+a7
+4a
+10
+b9
+9f
+86
+15
+04
+bc
+3d
+67
+95
+ee
+7a
+51
+bd
+1d
+ac
+fd
+02
+0e
+3d
+50
+ea
+ce
+6c
+7a
+a9
+59
+eb
+70
+aa
+69
+e2
+da
+21
+8b
+ca
+ac
+0b
+49
+27
+68
+9c
+58
+f3
+2a
+10
+4d
+dd
+60
+76
+13
+94
+9c
+8c
+42
+97
+17
+74
+aa
+a6
+ef
+a2
+b4
+47
+a7
+20
+41
+99
+85
+bf
+ea
+6b
+bf
+33
+ba
+11
+5e
+a0
+d8
+d3
+74
+12
+18
+a5
+7c
+09
+bd
+5b
+d9
+03
+bc
+d7
+4b
+19
+de
+e4
+7b
+70
+e6
+9b
+c3
+8d
+1e
+ba
+2a
+cc
+77
+31
+5e
+83
+5c
+23
+0d
+cd
+04
+e9
+16
+b8
+65
+c9
+5e
+e1
+85
+89
+04
+fd
+6e
+dd
+bc
+22
+bc
+96
+0e
+b5
+84
+ec
+9f
+fe
+8d
+5d
+02
+46
+b0
+eb
+c5
+b4
+c6
+b9
+61
+8b
+36
+ca
+23
+82
+36
+c3
+72
+34
+1b
+29
+69
+9e
+37
+ca
+53
+7f
+b5
+86
+94
+a9
+e7
+6d
+47
+20
+d6
+34
+75
+15
+c9
+70
+37
+3d
+62
+65
+a6
+2d
+7b
+52
+36
+e3
+c5
+b4
+e3
+fb
+9b
+05
+82
+b0
+08
+83
+a9
+77
+fc
+54
+54
+5d
+fa
+f0
+b2
+4a
+30
+a1
+f9
+e2
+12
+59
+65
+57
+f7
+48
+65
+f5
+a3
+16
+3e
+15
+23
+2c
+bf
+50
+25
+e2
+3f
+18
+d9
+2b
+18
+6b
+d3
+8b
+8f
+21
+f7
+b4
+53
+82
+a8
+70
+41
+db
+a4
+81
+44
+6d
+8f
+01
+c3
+7b
+8a
+7b
+72
+fc
+9c
+da
+f7
+2b
+e7
+ea
+6f
+fb
+ef
+de
+db
+f1
+8e
+1f
+29
+2f
+65
+6f
+2b
+d2
+19
+87
+d1
+af
+5f
+70
+38
+b3
+6f
+e8
+05
+a8
+20
+41
+c3
+40
+f5
+db
+62
+5b
+d9
+d6
+34
+3b
+d5
+0d
+8b
+b4
+52
+62
+a6
+b8
+e8
+f4
+f3
+41
+52
+b9
+d0
+14
+cb
+e5
+e1
+ce
+d7
+85
+ba
+7f
+e8
+38
+ee
+0b
+72
+5a
+02
+64
+58
+97
+f1
+1b
+10
+d6
+7b
+bd
+2b
+28
+d7
+05
+3f
+ad
+df
+9b
+70
+4e
+6f
+ea
+8d
+ad
+37
+2e
+5f
+c4
+11
+86
+ae
+58
+56
+32
+ce
+bb
+6d
+b2
+4d
+49
+16
+ee
+7f
+b9
+04
+cc
+c4
+b1
+1d
+2f
+ff
+1f
+2d
+8a
+10
+6e
+58
+c4
+37
+e7
+77
+3b
+bf
+39
+8b
+c0
+42
+74
+2f
+80
+4c
+d1
+46
+a3
+78
+b0
+bb
+c6
+eb
+24
+ad
+6e
+6e
+2a
+99
+59
+02
+06
+e0
+3a
+3f
+3d
+55
+bb
+c8
+fb
+e2
+e9
+5f
+1d
+47
+f3
+64
+45
+f3
+07
+30
+6c
+61
+3c
+30
+fa
+69
+fd
+e9
+c7
+b6
+e3
+1d
+26
+6c
+8c
+22
+3c
+94
+0d
+26
+b1
+59
+90
+37
+a1
+5d
+7e
+52
+2c
+22
+6b
+4f
+96
+5f
+ae
+eb
+e0
+37
+25
+57
+81
+24
+e0
+31
+97
+f0
+cd
+bc
+c6
+e3
+aa
+24
+6c
+69
+70
+9d
+ce
+85
+66
+b1
+e4
+52
+fa
+58
+c6
+1a
+26
+fc
+90
+c8
+93
+b0
+19
+aa
+55
+40
+00
+00
+40
+05
+00
+33
+07
+20
+01
+00
+00
+f4
+58
+a5
+fe
+00
+00
+c2
+00
+11
+00
+00
+04
+00
+00
+02
+00
+20
+00
+60
+3c
+00
+00
+40
+04
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+80
+00
+00
+21
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+08
+00
+13
+47
+04
+09
+72
+00
+08
+00
+00
+0c
+aa
+55
+01
+00
+cb
+43
+0f
+aa
+55
+01
+00
+ba
+4a
+01
+aa
+55
+01
+00
+bd
+4b
+ff
+aa
+55
+01
+00
+ec
+44
+ff
+aa
+55
+01
+00
+eb
+44
+1e
+aa
+55
+03
+00
+ee
+44
+01
+0b
+4a
+aa
+55
+01
+00
+0d
+4a
+ff
+aa
+55
+01
+00
+41
+41
+01
+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
+06
+00
+f1
+44
+33
+11
+3b
+55
+51
+a1
+aa
+55
+01
+00
+89
+45
+02
+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
+02
+00
+8b
+45
+c0
+12
+aa
+55
+01
+00
+3e
+46
+94
+aa
+55
+03
+00
+af
+45
+00
+48
+60
+aa
+55
+02
+00
+1d
+46
+0a
+00
+aa
+55
+02
+00
+1b
+46
+50
+00
+aa
+55
+02
+00
+23
+47
+32
+00
+aa
+55
+01
+00
+f4
+46
+02
+aa
+55
+08
+00
+c0
+43
+fb
+00
+48
+08
+fb
+00
+48
+08
+aa
+55
+01
+00
+94
+40
+01
+aa
+55
+01
+00
+c0
+40
+10
+aa
+55
+01
+00
+6b
+49
+10
+aa
+55
+06
+00
+db
+42
+73
+83
+92
+a1
+b1
+c1
+aa
+55
+01
+00
+93
+43
+07
+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
+28
+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
+c1
+03
+aa
+55
+10
+00
+a0
+47
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+11
+00
+68
+43
+1f
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+0f
+00
+6b
+42
+0e
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+08
+00
+d3
+42
+07
+00
+07
+00
+20
+00
+2c
+01
+aa
+55
+06
+00
+9a
+47
+03
+12
+18
+ff
+00
+00
+aa
+55
+09
+00
+f4
+49
+41
+70
+70
+6c
+65
+20
+49
+6e
+63
+aa
+55
+02
+00
+f2
+49
+0a
+18
+aa
+55
+10
+00
+e1
+49
+d0
+00
+2d
+12
+1e
+4b
+0f
+a4
+99
+4e
+ce
+b5
+31
+f4
+05
+79
+aa
+55
+02
+00
+fd
+49
+c1
+03
+aa
+55
+02
+00
+bb
+4a
+78
+00
+aa
+55
+08
+00
+99
+4b
+01
+02
+e8
+04
+21
+70
+01
+00
+aa
+55
+01
+00
+07
+44
+02
+aa
+55
+01
+00
+09
+44
+0a
+aa
+55
+01
+00
+08
+44
+0c
+aa
+55
+01
+00
+11
+44
+00
+aa
+55
+04
+00
+0d
+44
+00
+07
+ff
+07
+aa
+55
+01
+00
+07
+4a
+1e
+aa
+55
+02
+00
+09
+4a
+e8
+03
+aa
+55
+02
+00
+21
+47
+02
+00
+aa
+55
+01
+00
+3d
+46
+64
+aa
+55
+02
+00
+3a
+46
+58
+02
+aa
+55
+01
+00
+1e
+47
+64
+aa
+55
+01
+00
+3c
+46
+64
+aa
+55
+02
+00
+38
+46
+58
+02
+aa
+55
+02
+00
+25
+47
+70
+17
+aa
+55
+02
+00
+09
+4d
+64
+00
+aa
+55
+02
+00
+ec
+48
+b8
+0b
+aa
+55
+02
+00
+69
+48
+58
+02
+aa
+55
+08
+00
+66
+46
+00
+34
+00
+00
+00
+00
+00
+00
+aa
+55
+06
+00
+01
+4a
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+01
+00
+1b
+47
+01
+aa
+55
+01
+00
+a4
+49
+01
+aa
+55
+01
+00
+55
+46
+ff
+aa
+55
+04
+00
+a5
+49
+7f
+06
+29
+14
+aa
+55
+03
+00
+27
+44
+ff
+ff
+ff
+aa
+55
+02
+00
+eb
+43
+10
+00
+aa
+55
+02
+00
+0e
+4d
+40
+02
+aa
+55
+03
+00
+66
+48
+88
+8c
+ff
+aa
+55
+01
+00
+bc
+4b
+8c
+aa
+55
+01
+00
+bb
+4b
+80
+aa
+55
+04
+00
+b7
+4b
+8c
+ff
+ff
+ff
+aa
+55
+03
+00
+63
+48
+01
+02
+ff
+aa
+55
+01
+00
+59
+46
+ff
+aa
+55
+01
+00
+5b
+46
+05
+aa
+55
+0c
+00
+8a
+48
+c2
+c3
+c4
+c5
+c6
+c7
+80
+81
+82
+83
+84
+85
+aa
+55
+1c
+00
+6e
+48
+0d
+0e
+0f
+10
+11
+12
+13
+14
+85
+c4
+c5
+c6
+c3
+c2
+03
+04
+83
+84
+82
+c7
+80
+07
+06
+81
+0a
+0b
+ff
+ff
+aa
+55
+90
+00
+16
+4a
+48
+a1
+a0
+a0
+e4
+00
+e0
+3e
+14
+2b
+04
+29
+1d
+8b
+35
+1e
+1a
+39
+16
+64
+1b
+8a
+3a
+1f
+08
+3c
+07
+3d
+06
+88
+3b
+20
+15
+17
+09
+0a
+19
+05
+22
+21
+18
+1c
+0d
+0b
+10
+11
+23
+24
+0c
+30
+0e
+3f
+36
+87
+2e
+25
+12
+40
+0f
+00
+37
+65
+41
+26
+13
+2f
+33
+34
+32
+38
+2d
+27
+47
+00
+7f
+e2
+00
+e6
+00
+46
+89
+2a
+31
+44
+28
+45
+42
+43
+5f
+5c
+59
+2c
+53
+51
+4c
+a1
+60
+5d
+5a
+62
+54
+4f
+49
+a0
+61
+5e
+5b
+63
+55
+56
+4b
+4e
+57
+85
+58
+52
+e9
+50
+4a
+4d
+00
+e1
+e5
+ed
+ee
+ec
+eb
+e8
+f1
+e3
+f6
+f8
+f7
+f9
+ef
+fa
+91
+70
+70
+f0
+ea
+f2
+fb
+90
+aa
+55
+13
+00
+ae
+49
+00
+29
+e8
+ed
+ee
+ef
+eb
+ec
+e9
+ea
+fb
+f1
+f0
+f5
+4c
+01
+00
+00
+00
+aa
+55
+02
+00
+ff
+49
+2a
+10
+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
+ff
+68
+91
+c5
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+84
+63
Index: output/memmap.format
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/memmap.format	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/memmap.format	(working copy)
@@ -0,0 +1,2548 @@
+0x0000 mem_le_adv_transmit
+0x0001 mem_le_adv_waitcnt
+0x0002 mem_le_adv_rcv
+0x0003 mem_le_req_rcv
+0x0004 mem_le_scanrsp_rcv
+0x0005 mem_le_conn_rcv
+0x0006 mem_current_context
+0x0007 mem_le_ch_mapped
+0x0008 mem_last_freq
+0x0009 mem_rssi
+0x000a mem_context_ptr
+0x000c mem_rx_window
+0x000e mem_lpm_adjust
+0x000f mem_sync_clke
+0x0015 mem_lpm_current_mult
+0x0016 mem_gpio_wakeup_cfg
+0x0022 mem_clkn_bt
+0x0026 mem_clke_bt
+0x002a mem_dpll_clkn
+0x002e mem_slot_offset
+0x0030 mem_loadcode_times
+0x0031 mem_select_list_item
+0x0032 mem_temp_reconn_record
+0x0032 mem_record_bt_mode
+0x0033 mem_list_item_ptr
+0x0035 mem_rssi_hex
+0x0036 mem_param_tx_setup
+0x0038 mem_param_rf_setup
+0x003a mem_param_conn_access
+0x003c mem_param_clke_cal
+0x003e mem_param_pll_setup
+0x0040 mem_param_rx_setup
+0x0042 mem_param_dpll_start_delay
+0x0044 mem_param_rt_rthalfslot
+0x0046 mem_param_clke_cal_le_1m
+0x0048 mem_param_clke_cal_le_2m
+0x004a mem_param_clke_cal_le_coded
+0x004c mem_le_rxbuf
+0x0150 mem_le_mic
+0x0154 mem_le_peer_mic
+0x0158 mem_le_mrand
+0x0168 mem_le_state
+0x0169 mem_le_mode
+0x016a mem_le_tsniff
+0x016c mem_le_anchor
+0x0170 mem_le_clk_offset
+0x0176 mem_le_receive_window
+0x0178 mem_le_plap
+0x017e mem_le_conn_handle
+0x017f mem_le_arq
+0x0180 mem_le_ch
+0x0181 mem_le_hop
+0x0182 mem_le_event_count
+0x0184 mem_le_supervision_timer
+0x0188 mem_le_instant
+0x018a mem_le_channels
+0x018b mem_le_op
+0x018c mem_le_access
+0x0190 mem_le_crcinit
+0x0193 mem_le_window_size
+0x0194 mem_le_slave_latency
+0x0196 mem_le_superto
+0x0198 mem_le_channel_map
+0x019d mem_le_rx_phy
+0x019e mem_le_tx_phy
+0x019f mem_le_update_new_param
+0x01a8 mem_le_sk
+0x01b8 mem_le_peer_sca
+0x01b9 mem_le_err_code
+0x01ba mem_le_ll_pairing_fail_reason
+0x01bb mem_le_testtype
+0x01bc mem_cmd_le_create_conn
+0x01bd memresult
+0x01bd mem_sp_calc_result
+0x01bd memh
+0x01c1 memg
+0x01c5 memf
+0x01c9 meme
+0x01cd mem_sp_calc_result_high
+0x01cd memd
+0x01d1 memc
+0x01d5 memb
+0x01d9 mema
+0x01dd mem_ucode_status
+0x01de mem_spid_tbuf
+0x01df mem_iicd_tbuf
+0x01df mem_addr_hi
+0x01e0 mem_addr_mi
+0x01e1 mem_addr_lo
+0x01e2 mem_iicd_addr
+0x01e3 mem_spid_rbuf
+0x01e7 mem_ucode_buf
+0x01e9 mem_ucode_len
+0x01eb mem_sched_addr
+0x01ed mem_ucode_keybuf
+0x01fd mem_otp_temp
+0x021d mem_app_evt_timer_count
+0x021e mem_input_store
+0x022e mem_ec_loopc
+0x0230 mem_aes_cmac_data_length
+0x0231 mem_dat
+0x0291 mem_ax_256//32 bytes
+0x02b1 mem_ay_256// 32 bytes
+0x02d1 mem_az_256// 32 bytes
+0x02f1 mem_bx_256// 32 bytes
+0x0311 mem_by_256// 31 bytes
+0x0331 mem_bz_256//32 bytes
+0x0331 mem_tmp1
+0x0331 memahbak
+0x0349 mem_tmp5
+0x0351 mem_cx_256//32 bytes
+0x0371 mem_cy_256// 32 bytes
+0x0390 mem_cy5_256// 1 byte
+0x0391 mem_cz_256// 32 bytes
+0x03b1 mem_k_256//32 bytes
+0x03d1 mem_tmp1_256//32 bytes
+0x03f1 mem_tmp5_256
+0x0411 mem_tmp2_256
+0x0431 mem_tmp3_256
+0x0431 mem_t1_256
+0x0451 mem_tmp0_256
+0x0451 mem_t0_256
+0x0471 mem_t2_256
+0x0491 mem_t3_256
+0x04b1 mem_t7_256
+0x04d1 mem_p
+0x04e9 mem_a
+0x0501 mem_b
+0x0519 mem_gx
+0x0531 mem_gy
+0x0549 memh0
+0x0569 mem_p_256
+0x0589 mem_a_256
+0x05a9 mem_gx_256
+0x05c9 mem_gy_256
+0x05e9 mem_le_slat
+0x05f9 mem_sp_state_start
+0x05f9 mem_sp_dhkey_invalid
+0x05fa mem_gkey
+0x05fe mem_sp_state_end
+0x05fe mem_le_pubkey_remote_x_256
+0x061e mem_le_pubkey_remote_y_256
+0x063e mem_le_dhkey_256
+0x065e mem_sp_confirm_remote
+0x066e mem_ipc_skip_continue_proc
+0x066f mem_fifo_temp
+0x0670 mem_pdatatemp
+0x0678 mem_temp//8 bytes
+0x0680 mem_timeup// 4 bytes
+0x0684 mem_rega//4 bytes
+0x0688 mem_regb//4 bytes
+0x068c mem_regc//3 bytes
+0x068f mem_contr//2 bytes
+0x0691 mem_contw//2 bytes
+0x0693 mem_contus
+0x0695 mem_contue
+0x0697 mem_contu
+0x0699 mem_queue
+0x069b mem_loopcnt
+0x069d mem_saved_gpio_in
+0x06a1 mem_module_rx_error_data_buffer
+0x06a1 mem_le_adv_channel_map_temp
+0x06a1 mem_le_data_len_temp//1byte
+0x06a1 mem_event_cmd_response_content//2byte
+0x06a1 mem_le_prand//16byte
+0x06a1 mem_AES_CMAC_k//16 bytes
+0x06a1 mem_regext_index//1 bytes
+0x06a1 mem_temp_block0
+0x06a2 mem_le_data_temp//15bytes
+0x06a2 mem_temp_block1
+0x06b1 mem_le_tx_buf_temp//48byte
+0x06b1 mem_le_aes_128//16byte
+0x06b1 mem_regext//64 bytes
+0x06b1 mem_AES_CMAC_k1//16 bytes
+0x06b1 mem_temp_block2
+0x06c1 mem_AES_CMAC_k2//16 bytes
+0x06c1 mem_temp_block3
+0x06d1 mem_AES_CMAC_temp// 16 bytes
+0x06d1 mem_temp_block4
+0x06e1 mem_AES_CMAC_M_last// 16 bytes
+0x06e1 mem_module_uart_cmd
+0x06e2 mem_module_uart_opcode
+0x06e3 mem_module_uart_len
+0x06e4 mem_module_temp_nl_discard_packet
+0x06e5 mem_temp_block5
+0x06f1 mem_le_mackey//16 bytes
+0x06f1 mem_app_receive_temp
+0x06f1 mem_key_value_temp
+0x06f3 mem_key_value
+0x06f5 mem_key_value_temp1
+0x06f6 mem_key_value_temp2
+0x06f7 mem_key_value_temp3
+0x06f8 mem_key_value_temp4
+0x06f9 mem_key_value_temp5
+0x06fa mem_key_value_temp6
+0x06fb mem_temp_block6
+0x0701 mem_scale_ratio
+0x0704 mem_xcnt
+0x0707 mem_scale_ratio_temp
+0x0709 mem_mesh_receive_model_message_payload_len
+0x070a mem_mesh_receive_model_message_payload_opcode
+0x070b mem_mesh_receive_model_message_payload
+0x0722 mem_mesh_access_layer_payload_len
+0x0723 mem_mesh_access_layer_payload
+0x0723 mem_mesh_access_payload
+0x0755 mem_mesh_access_payload_padding//Ϊ��͸��ģ��Ԥ��
+0x0787 mem_mesh_queue_ele_temp
+0x0787 mem_mesh_queue_ele_duration
+0x0788 mem_mesh_queue_ele_gatt_msg_id
+0x0789 mem_mesh_queue_ele_len
+0x078a mem_mesh_queue_ele_payload
+0x07a9 mem_mesh_queue_ele_padding
+0x07aa mem_le_txheader_mesh_temp
+0x07d1 mem_mesh_sha256_chunk_start
+0x07d1 mem_mesh_sha256_chunk1
+0x0811 mem_mesh_sha256_chunk2
+0x0851 mem_mesh_sha256_chunk3
+0x0891 mem_mesh_sha256_chunk4
+0x08d1 mem_mesh_Privacy_Plaintext
+0x08d1 mem_mesh_Privacy_Plaintext_Zero_String
+0x08d6 mem_mesh_Privacy_Plaintext_IV_Index
+0x08da mem_mesh_Privacy_Plaintext_Privacy_Random
+0x08da mem_mesh_Privacy_Plaintext_Privacy_Random_EncDST
+0x08dc mem_mesh_Privacy_Plaintext_Privacy_Random_EncTransportPDU_or_NetMIC
+0x08e1 mem_mesh_PECB
+0x08f1 mem_nonce_ptr
+0x08f3 mem_ccm_data_len
+0x08f4 mem_ccm_data_ptr
+0x08f6 mem_ccm_mic
+0x08fe mem_ccm_type
+0x08ff mem_mesh_Device_UUID
+0x090f mem_mesh_receive_VID
+0x0910 mem_mesh_mic_cache_ptr
+0x0912 mem_adv_CRC_False_initValue
+0x0914 mem_CRC16_polynomial
+0x0916 mem_mesh_lower_transport_layer_payload_len
+0x0917 mem_mesh_loopcnt_tmep
+0x0919 mem_mesh_rega_temp
+0x091b mem_mesh_regb_temp
+0x091d mem_mesh_regc_temp
+0x091f mem_mesh_alarm_temp
+0x0921 mem_mesh_message_Transport_NetMIC_length
+0x0922 mem_mesh_message_NID
+0x0923 mem_mesh_message_TTL
+0x0924 mem_mesh_message_SEQ
+0x0927 mem_mesh_message_SRC
+0x0929 mem_mesh_message_DST
+0x092b mem_mesh_message_Proxy_TransportPDU_opcode
+0x092b mem_mesh_message_Transport_NetMIC
+0x092b mem_mesh_message_Transport_Head
+0x092c mem_mesh_message_Proxy_TransportPDU_Parameters
+0x092c mem_mesh_message_Transport_unsegmented_access_messagePDU
+0x092c mem_mesh_message_Transport_segmented_access_messagePDU
+0x092c mem_mesh_message_segment_access_SZMIC_SeqZero_SegO_SegN
+0x092f mem_mesh_message_Transport_segmented_access_messagePDU_Segment
+0x092f mem_mesh_message_Transport_NetMIC_end
+0x093f mem_mesh_nonce_struct
+0x094c mem_mesh_send_message_DST
+0x094e mem_mesh_last_message_SEQ
+0x0951 mem_mesh_network_packet_type
+0x0952 mem_mesh_receive_message_count
+0x0953 mem_mesh_receive_message_first_unicast_address
+0x0955 mem_mesh_receive_message_second_unicast_address
+0x0957 mem_mesh_receive_message_third_unicast_address
+0x0959 mem_mesh_receive_message_fourth_unicast_address
+0x095b mem_mesh_Proxy_Nonce
+0x095b mem_mesh_Proxy_Nonce_Nonce_Type
+0x095c mem_mesh_Proxy_Nonce_Pad
+0x095d mem_mesh_Proxy_Nonce_SEQ
+0x0960 mem_mesh_Proxy_Nonce_SRC
+0x0962 mem_mesh_Proxy_Nonce_Pad2
+0x0964 mem_mesh_Proxy_Nonce_IV_Index
+0x0968 mem_mesh_white_list
+0x0978 mem_mesh_white_list_num
+0x097a mem_mesh_addressed_filter_type
+0x097b mem_mesh_upper_transport_layer_payload_ptr
+0x097d mem_mesh_segmented_upper_transport_layer_payload_len
+0x097e mem_mesh_segmented_lower_transport_layer_SegZero
+0x0980 mem_mesh_segmented_lower_transport_layer_SegO
+0x0981 mem_mesh_segmented_lower_transport_layer_SegN
+0x0982 mem_mesh_segmented_last_packet_upper_teansport_payload_len
+0x0983 mem_mesh_upper_tran_layer_queue_temp
+0x0983 mem_mesh_upper_tran_layer_temp_packet_flag
+0x0984 mem_mesh_upper_tran_layer_temp_packet_transmit_delay
+0x0986 mem_mesh_upper_tran_layer_temp_packet_TID
+0x0987 mem_mesh_upper_tran_layer_temp_packet_header_IVI_NID
+0x0988 mem_mesh_upper_tran_layer_temp_packet_header_CTL_TTL
+0x0989 mem_mesh_upper_tran_layer_temp_packet_header_SEQ
+0x098c mem_mesh_upper_tran_layer_temp_packet_header_SRC
+0x098e mem_mesh_upper_tran_layer_temp_packet_header_DST
+0x0990 mem_mesh_upper_tran_layer_temp_packet_length
+0x0991 mem_mesh_upper_tran_layer_temp_packet_payload
+0x09fd mem_mesh_network_dup_cache
+0x0a3d mem_mesh_network_msg_cache
+0x0a8d mem_mesh_network_relay_gatt_queue_each_size
+0x0a8e mem_mesh_network_relay_gatt_queue_length
+0x0a8f mem_mesh_network_relay_gatt_queue_current_num
+0x0a90 mem_mesh_network_relay_gatt_queue_read_ptr
+0x0a91 mem_mesh_network_relay_gatt_queue_write_ptr
+0x0a92 mem_mesh_network_relay_gatt_queue_ele
+0x0709 mem_hci_opcode_ocf
+0x070b mem_hci_opcode_ogf
+0x070c mem_hci_event_head_type
+0x070d mem_hci_event_head_event_code
+0x070e mem_hci_event_para_total_length
+0x070f mem_hci_command_complete_num_hci_command_packet
+0x0710 mem_hci_command_complete_command_opcode
+0x0710 mem_hci_opcode
+0x0712 mem_hci_command_complete_return_parameter
+0x0712 mem_hci_command_complete_return_parameter_status
+0x0713 mem_hci_command_complete_return_parameter_chip_id
+0x0709 mem_module_le_rx_data_len
+0x070b mem_module_le_rx_data_address
+0x070d mem_module_le_rx_data_handle
+0x0709 mem_init_cnt
+0x070b mem_data_pre
+0x070d mem_data_current
+0x070f mem_data_sum
+0x0712 mem_data_value
+0x0709 mem_le_test_sync
+0x070b mem_le_test_pcnt
+0x070d mem_tst_pktcnt_crc
+0x070f mem_tst_pktcnt_dmh
+0x0711 mem_tmp_buffer_head
+0x0714 mem_tmp_buffer
+0x0709 mem_usb_status
+0x070b mem_usb_fifo_empty
+0x070c mem_usb_read_len
+0x070e mem_usb_txbuf
+0x074f mem_usb_txbuf1
+0x0759 mem_usb_txbuf2
+0x0763 mem_usb_rxbuf
+0x07a3 mem_usb_rxbuf_end
+0x07a4 mem_bufptr
+0x07a6 mem_remain
+0x07a7 mem_hidreportdesc_kb
+0x07a9 mem_hidreportdesc_m
+0x07ab mem_devicedesc
+0x07be mem_confdesc
+0x07fa mem_string0
+0x07ff mem_string1
+0x081d mem_string2
+0x083b mem_string3
+0x0859 mem_cb_usb_config
+0x085b mem_usb_tx_interval
+0x085c mem_usb_vid_pid
+0x0865 mem_usb_zero_packet
+0x0867 mem_usb_ones_packet
+0x0869 mem_usb_two_packet
+0x086b mem_usb0_state
+0x086c mem_usb_offline_check_gpio
+0x086d mem_usb_clear_mem_start
+0x086d mem_usb_setup
+0x086d mem_usb_setup_bmRequestType
+0x086e mem_usb_setup_bRequest
+0x086f mem_usb_setup_bValue
+0x0870 mem_usb_setup_bValueH
+0x0871 mem_usb_setup_wIndex
+0x0873 mem_usb_setup_bLength
+0x0874 mem_usb_setup_bLengthH
+0x0875 mem_usb0_set_report_data
+0x08b5 mem_usb0_get_report_data
+0x08f5 mem_usb_setup_bValue_temp
+0x08f7 mem_usb0_get_set_report
+0x08f8 mem_usb0_data_ready_report
+0x08f9 mem_usb_tx_win_enable
+0x08fa mem_usb_tx_mac_enable
+0x08fb mem_usb_idle_flag
+0x08fc mem_usb_idle_rate
+0x08fd mem_usb_get_protocol_flag
+0x08fe mem_usb_set_protocol_status
+0x08ff mem_usb_set_protocol_value
+0x0900 mem_usb_state
+0x0901 mem_usb_remote_wakeup
+0x0902 mem_usb_clear_remote_wakeup
+0x0903 mem_sdsystem_wakeup_flag
+0x0904 mem_usb_ep0_stall_status
+0x0905 mem_usb_ep1_stall_status
+0x0906 mem_usb_ep2_stall_status
+0x0907 mem_usb_ep3_stall_status
+0x0908 mem_dsc_info_data_pointer
+0x090a mem_dsc_info_len
+0x090b mem_usb_ep1_data
+0x090c mem_usb_ep2_data
+0x090d mem_usb_tx_enable
+0x090e mem_usb_device_enumeration_endflag
+0x090f mem_usb_wakestate_onetime_flag
+0x0910 mem_usb_mac_wakeup_trig
+0x0911 mem_usb_set_high_addr_flag
+0x0912 mem_usb_clear_halt
+0x0913 mem_usb_mouse_data
+0x0923 mem_usb_kb_data
+0x0933 mem_usb_kb_multikey
+0x0943 mem_usb_kb_system
+0x0953 mem_usb_test_cnt
+0x0955 mem_usb_test_kb
+0x095f mem_usb_clear_mem_end
+0x095f mem_usb_ccid_buf
+0x099f mem_dg_rssi_noise_buffer
+0x0a9f mem_dg_rssi_noise_dg_buffer
+0x0b9f mem_dg_rssi_noise_ms_buffer
+0x0c9f mem_dg_rssi_noise_kb_buffer
+
+0x019f mem_le_new_param
+0x019f mem_le_new_transmitwindowsize
+0x01a0 mem_le_new_transmitwindowoffset
+0x01a2 mem_le_new_conninterval
+0x01a4 mem_le_new_connslavelatency
+0x01a6 mem_le_new_connsupervisiontimeout
+0x019f mem_le_new_map
+0x019f mem_le_new_m2s_phy
+0x01a0 mem_le_new_s2m_phy
+0x004c mem_le_rxbuf_data_header
+0x004d mem_le_rxbuf_data_length
+0x004e mem_le_rxbuf_data_payload
+0x004c mem_le_rxbuf_data_ll_header
+0x004d mem_le_rxbuf_data_ll_length
+0x004e mem_le_rxbuf_data_ll_opcode
+0x004f mem_le_rxbuf_data_ll_control_data
+0x004c mem_le_rxbuf_adv_header
+0x004d mem_le_rxbuf_adv_length
+0x004e mem_le_rxbuf_adv_payload
+0x004c mem_le_rxbuf_adv_scan_req_header
+0x004d mem_le_rxbuf_adv_scan_req_length
+0x004e mem_le_rxbuf_adv_scan_req_scan_address
+0x0054 mem_le_rxbuf_adv_scan_req_adv_address
+0x004c mem_le_rxbuf_adv_connect_ind_header
+0x004d mem_le_rxbuf_adv_connect_ind_length
+0x004e mem_le_rxbuf_adv_connect_ind_init_address
+0x0054 mem_le_rxbuf_adv_connect_ind_adv_address
+0x005a mem_le_rxbuf_adv_connect_ind_access_address
+0x005e mem_le_rxbuf_adv_connect_ind_crc_init
+0x0061 mem_le_rxbuf_adv_connect_ind_win_size
+0x0062 mem_le_rxbuf_adv_connect_ind_win_offset
+0x0064 mem_le_rxbuf_adv_connect_ind_interval
+0x0066 mem_le_rxbuf_adv_connect_ind_latency
+0x0068 mem_le_rxbuf_adv_connect_ind_timeout
+0x006a mem_le_rxbuf_adv_connect_ind_channel_map
+0x006f mem_le_rxbuf_adv_connect_ind_hop_and_sca
+0x06b1 mem_le_search_handle_start
+0x06b3 mem_le_search_handle_end
+0x06b5 mem_le_att_offset
+0x06b5 mem_le_search_att_type_length
+0x06b6 mem_le_search_att_type
+0x06c6 mem_le_curr_att_len
+0x06c7 mem_le_cur_attlist_start_ptr
+0x06c9 mem_le_cur_handle_start
+0x06cb mem_le_cur_handle_end
+0x06cd mem_le_cur_uuid_length
+0x06ce mem_le_cur_uuid
+0x06de mem_le_cur_handle
+0x004c mem_le_rxbuf_data_att_header
+0x004d mem_le_rxbuf_data_att_length
+0x004e mem_le_rxbuf_data_att_l2cap_length
+0x0050 mem_le_rxbuf_data_att_cid
+0x0052 mem_le_rxbuf_data_att_opcode
+0x0053 mem_le_rxbuf_data_att_payload
+0x004c mem_le_rxbuf_data_continue_header
+0x004d mem_le_rxbuf_data_continue_length
+0x004e mem_le_rxbuf_data_continue_payload
+0x004c mem_le_rxbuf_data_att_write_header
+0x004d mem_le_rxbuf_data_att_write_length
+0x004e mem_le_rxbuf_data_att_write_l2cap_length
+0x0050 mem_le_rxbuf_data_att_write_cid
+0x0052 mem_le_rxbuf_data_att_write_opcode
+0x0053 mem_le_rxbuf_data_att_write_handle
+0x0055 mem_le_rxbuf_data_att_write_payload
+0x004c mem_le_rxbuf_data_prepare_att_write_header
+0x004d mem_le_rxbuf_data_prepare_att_write_length
+0x004e mem_le_rxbuf_data_prepare_att_write_l2cap_length
+0x0050 mem_le_rxbuf_data_prepare_att_write_cid
+0x0052 mem_le_rxbuf_data_prepare_att_write_opcode
+0x0053 mem_le_rxbuf_data_prepare_att_write_handle
+0x0055 mem_le_rxbuf_data_prepare_att_write_offset
+0x0057 mem_le_rxbuf_data_prepare_att_write_payload
+0x070b mem_mesh_NETKeyindex_and_APPKeyindex
+0x070e mem_mesh_receive_application_key
+0x070b mem_mesh_vendor_message_cid
+0x070d mem_mesh_vendor_message_tid
+0x070e mem_mesh_vendor_message_attr_type
+0x070b mem_mesh_vendor_message_header
+0x0710 mem_mesh_vendor_attr_parameter
+0x070b mem_mesh_vendor_message_delay_close_time_header
+0x0710 mem_mesh_vendor_delay_close_time
+0x070b mem_mesh_vendor_message_night_light_onoff_header
+0x0710 mem_mesh_vendor_night_light_onoff
+0x070b mem_mesh_vendor_message_color_header
+0x0710 mem_mesh_vendor_color_lightness
+0x0712 mem_mesh_vendor_color_hue
+0x0714 mem_mesh_vendor_color_saturation
+0x070b mem_mesh_vendor_message_back_light_onoff_header
+0x0710 mem_mesh_vendor_back_light_onoff
+0x070b mem_mesh_vendor_message_main_light_onoff_header
+0x0710 mem_mesh_vendor_main_light_onoff
+0x070b mem_mesh_vendor_message_standby_brightness_header
+0x0710 mem_mesh_vendor_standby_brightness
+0x070b mem_mesh_vendor_message_current_time_header
+0x0710 mem_mesh_vendor_message_current_time
+0x0723 mem_mesh_access_layer_payload_vendor_command
+0x0724 mem_mesh_access_layer_payload_vendor_CID
+0x0726 mem_mesh_access_layer_payload_vendor_tid
+0x0727 mem_mesh_access_layer_payload_vendor_attr_type
+0x0729 mem_mesh_access_layer_payload_vendor_attr_parameter
+0x06a1 mem_mesh_subscription_eep_temp
+0x0787 mem_mesh_gatt_package_receive_msg_buffer_ptr
+0x0789 mem_mesh_gatt_package_receive_msg_buffer_temp
+0x0789 mem_mesh_gatt_package_receive_msg_id
+0x078b mem_mesh_gatt_package_receive_MAC
+0x078b mem_mesh_gatt_package_receive_msg_num
+0x078c mem_mesh_gatt_package_receive_msg_total_length
+0x078d mem_mesh_gatt_package_receive_msg_payload
+0x08ff mem_mesh_receive_service_uuid_company_id
+0x0901 mem_mesh_receive_service_uuid_vid
+0x0902 mem_mesh_receive_service_uuid_provisioning_type
+0x0903 mem_mesh_receive_service_uuid_mac
+0x0905 mem_mesh_receive_service_uuid_msg_id
+0x0906 mem_mesh_receive_service_uuid_package_num
+0x0907 mem_mesh_receive_service_uuid_length
+0x0908 mem_mesh_receive_service_uuid_payload_data
+0x07aa mem_mesh_fast_pair_packet_type
+0x070b mem_mesh_configuration_health_message_opcode
+0x070b mem_mesh_configuration_health_message_opcode_config_model_subscription
+0x070c mem_mesh_subscription_element_address
+0x070e mem_mesh_subscription_value_address
+0x0710 mem_mesh_subscription_model_identifier
+0x070b mem_mesh_configuration_health_message_opcode_config_model_subscription_ow//overwrite
+0x070c mem_mesh_subscription_element_address_ow
+0x070e mem_mesh_subscription_list_num_ow
+0x070f mem_mesh_subscription_value_address_start_ow
+0x07d1 mem_chip_clear_paired_info
+0x070b mem_mesh_module_message_opcode
+0x070b mem_mesh_module_message_opcode_onoff_set
+0x070c mem_mesh_generic_onoff_set_payload_OnOff
+0x070d mem_mesh_generic_onoff_set_payload_TID
+0x070e mem_mesh_generic_onoff_set_payload_Transition_Time
+0x070f mem_mesh_generic_onoff_set_payload_Delay
+0x070b mem_mesh_module_message_opcode_scene_recall
+0x070c mem_mesh_scene_recall_payload_scene_number
+0x070e mem_mesh_scene_recall_payload_TID
+0x070f mem_mesh_scene_recall_payload_Transition_Time
+0x0710 mem_mesh_scene_recall_payload_Delay
+0x070b mem_mesh_module_message_opcode_set_light_lightness
+0x070c mem_mesh_light_lightness_set_payload_lightness
+0x070e mem_mesh_light_lightness_set_payload_TID
+0x070f mem_mesh_light_lightness_set_payload_Transition_Time
+0x0710 mem_mesh_light_lightness_set_payload_Delay
+0x0711 mem_mesh_light_lightness_calc_lightness
+0x070b mem_mesh_module_message_opcode_set_light_ctl
+0x070c mem_mesh_CTL_Lightness
+0x070e mem_mesh_CTL_Temperature
+0x0710 mem_mesh_CTL_Delta_UV
+0x0712 mem_mesh_CTL_lightness_TID
+0x0713 mem_mesh_CTL_lightness_Transition_Time
+0x0714 mem_mesh_CTL_lightness_Delay
+0x0715 mem_mesh_CTL_calc_lightness
+0x0716 mem_mesh_CTL_calc_temperature
+0x093f mem_mesh_Network_Nonce
+0x093f mem_mesh_Network_Nonce_nonce_type
+0x0940 mem_mesh_Network_Nonce_CTL_and_TTL
+0x0941 mem_mesh_Network_Nonce_SEQ
+0x0944 mem_mesh_Network_Nonce_SRC
+0x0946 mem_mesh_Network_Nonce_Pad//0x0000
+0x0948 mem_mesh_Network_Nonce_IV_Index
+0x07aa mem_mesh_network_packet_type_temp
+0x07ab mem_mesh_message_NID_temp
+0x07ac mem_mesh_message_TTL_temp
+0x07ad mem_mesh_message_SEQ_temp
+0x07b0 mem_mesh_message_SRC_temp
+0x07b2 mem_mesh_message_DST_temp
+0x07b4 mem_mesh_message_Transport_PDU_temp
+0x093f mem_mesh_Application_Nonce
+0x093f mem_mesh_Application_Nonce_Nonce_Type
+0x0940 mem_mesh_Application_Nonce_ASZMIC_and_Pad//
+0x0941 mem_mesh_Application_Nonce_SEQ
+0x0944 mem_mesh_Application_Nonce_SRC
+0x0946 mem_mesh_Application_Nonce_DST
+0x0948 mem_mesh_Application_Nonce_IV_Index
+0x093f mem_mesh_Device_Nonce
+0x093f mem_mesh_Device_Nonce_Nonce_Type
+0x0940 mem_mesh_Device_Nonce_ASZMIC_and_Pad//
+0x0941 mem_mesh_Device_Nonce_SEQ
+0x0944 mem_mesh_Device_Nonce_SRC
+0x0946 mem_mesh_Device_Nonce_DST
+0x0948 mem_mesh_Device_Nonce_IV_Index
+0x0722 mem_mesh_upper_transport_layer_payload_len
+0x0991 mem_mesh_upper_tran_layer_temp_pakcet_AKF_AID
+0x0991 mem_mesh_upper_tran_layer_temp_unsegmented_pakcet_AKF_AID
+0x0992 mem_mesh_upper_tran_layer_temp_unsegmented_packet_fill
+0x0996 mem_mesh_upper_tran_layer_temp_pakcet_upper_tran_access_pdu
+0x0996 mem_mesh_upper_tran_layer_temp_unsegmented_pakcet_upper_tran_access_pdu
+0x0991 mem_mesh_upper_tran_layer_temp_segmented_pakcet_AKF_AID
+0x0992 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SeqZero
+0x0994 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SegO
+0x0995 mem_mesh_upper_tran_layer_temp_segmented_pakcet_SegN
+0x0996 mem_mesh_upper_tran_layer_temp_segmented_pakcet_upper_tran_access_pdu
+0x01fd mem_otp_adc
+0x0205 mem_otp_temp0
+0x020d mem_otp_core_ldo
+0x020e mem_otp_verf_bg
+0x020f mem_otp_charge_pump
+0x0210 mem_otp_dpll_ibais
+0x0211 mem_otp_temp1
+0x0219 mem_otp_hv_sel
+0x021a mem_otp_ldo_vsel
+0x021b mem_otp_load_delay
+0x021c mem_otp_load_check_sum
+0x4000 mem_patch00
+0x4001 mem_patch01
+0x4002 mem_patch02
+0x4003 mem_patch03
+0x4004 mem_patch04
+0x4005 mem_patch05
+0x4006 mem_patch06
+0x4007 mem_patch07
+0x4008 mem_patch08
+0x4009 mem_patch09
+0x400a mem_patch0a
+0x400b mem_patch0b
+0x400c mem_patch0c
+0x400d mem_patch0d
+0x400e mem_patch0e
+0x400f mem_patch0f
+0x4010 mem_patch10
+0x4011 mem_patch11
+0x4012 mem_patch12
+0x4013 mem_patch13
+0x4014 mem_patch14
+0x4015 mem_patch15
+0x4016 mem_patch16
+0x4017 mem_patch17
+0x4018 mem_patch18
+0x4019 mem_patch19
+0x401a mem_patch1a
+0x401b mem_patch1b
+0x401c mem_patch1c
+0x401d mem_patch1d
+0x401e mem_patch1e
+0x401f mem_patch1f
+0x4020 mem_patch20
+0x4021 mem_patch21
+0x4022 mem_patch22
+0x4023 mem_patch23
+0x4024 mem_patch24
+0x4025 mem_patch25
+0x4026 mem_patch26
+0x4027 mem_patch27
+0x4028 mem_patch28
+0x4029 mem_patch29
+0x402a mem_patch2a
+0x402b mem_patch2b
+0x402c mem_patch2c
+0x402d mem_patch2d
+0x402e mem_patch2e
+0x402f mem_patch2f
+0x4030 mem_patch30
+0x4031 mem_patch31
+0x4032 mem_patch32
+0x4033 mem_patch33
+0x4034 mem_patch34
+0x4035 mem_patch35
+0x4036 mem_patch36
+0x4037 mem_patch37
+0x4038 mem_patch38
+0x4039 mem_patch39
+0x403a mem_patch3a
+0x403b mem_patch3b
+0x403c mem_patch3c
+0x403d mem_patch3d
+0x403e mem_patch3e
+0x403f mem_patch3f
+0x4040 mem_context
+0x4093 mem_current_amaddr
+0x4094 mem_lpm_mode
+0x4095 mem_last_clkn
+0x4099 mem_fcomp_div
+0x409a mem_rx_window_sniff
+0x409c mem_rf_init_ptr
+0x409e mem_rf_rccal
+0x409f mem_handle_num
+0x40a0 mem_chip_functions
+0x40a2 mem_lpm_wake_lock
+0x40a4 mem_lpm_interval
+0x40a6 mem_lpm_overhead
+0x40a7 mem_lpm_hibernate_switch
+0x40a8 mem_sniff_unint_lost
+0x40a9 mem_sleep_counter
+0x40ad mem_sleep_counter_all
+0x40b1 mem_sleep_clkn
+0x40b7 mem_sniff_rcv
+0x40ba mem_sniff_lost
+0x40bd mem_clks_per_lpo
+0x40c0 mem_lpm_mult
+0x40c1 mem_lpm_mult_timeout
+0x40c2 mem_lpm_mult_cnt
+0x40c3 mem_lpm_xtalcnt
+0x40c4 mem_lpm_buckcnt
+0x40c5 mem_lpm_ldocnt
+0x40c6 mem_lpm_isogate
+0x40c7 mem_lpm_isogate_stage2
+0x40c8 mem_lpm_isogate_final
+0x40c9 mem_lpm_ldo_sel
+0x40ca mem_lpm_sysctl
+0x40cb mem_lpm_hv_sel
+0x40cc mem_saved_gpio
+0x40e4 mem_saved_gsel
+0x40e7 mem_saved_mark
+0x40ef mem_saved_spidctrl
+0x40f0 mem_patch_ptr
+0x40f2 mem_patch_len
+0x40f4 mem_timers
+0x4114 mem_hci_cmd
+0x4115 mem_hci_conn_handle
+0x4116 mem_hci_plap
+0x4119 mem_hci_puap
+0x411a mem_hci_pnap
+0x411c mem_xtal_c_sel
+0x411d mem_ghpc_table
+0x4135 mem_aac_res_table
+0x4141 mem_tx_power
+0x4142 mem_modem_rssi
+0x4143 mem_gain_fix
+0x4144 mem_gain_table
+0x4147 mem_gain_second_agc_en
+0x4148 mem_system_clk
+0x4149 mem_rf_init_data
+0x415b mem_otp_charge_pump_x
+0x415c mem_otp_dpll_ibais_x
+0x415d mem_xtal_freq
+0x415e mem_version
+0x415f mem_company_id
+0x4161 mem_sub_version
+0x4163 mem_le_dsniff
+0x4165 mem_le_conn_interval
+0x4167 mem_le_tx_ifs_defference
+0x4168 mem_le_tx2m_delay
+0x4169 mem_le_txheader
+0x416a mem_le_txlen
+0x416b mem_le_txpayload
+0x426b mem_le_name_len
+0x426c mem_le_name
+0x428a mem_le_ltk
+0x429a mem_ltk_exists
+0x429b mem_le_rconfirm
+0x42ab mem_le_srand
+0x42bb mem_le_iat
+0x42bc mem_le_rat
+0x42bd mem_le_preq
+0x42be mem_le_preq_iocap
+0x42bf mem_le_preq_oob
+0x42c0 mem_le_preq_auth
+0x42c1 mem_le_preq_max_keysize
+0x42c2 mem_le_preq_init_key_distribution
+0x42c3 mem_le_preq_resp_key_distribution
+0x42c4 mem_le_pres
+0x42c5 mem_le_pres_iocap
+0x42c6 mem_le_pres_oob
+0x42c7 mem_le_pres_auth
+0x42c8 mem_le_pres_max_keysize
+0x42c9 mem_le_pres_init_key_distribution
+0x42ca mem_le_pres_resp_key_distribution
+0x42cb mem_le_conn_param
+0x42cb mem_le_conn_peer_addr_type
+0x42cc mem_le_conn_peer_addr
+0x42d2 mem_le_conn_own_addr_type
+0x42d3 mem_le_interval_min
+0x42d5 mem_le_interval_max
+0x42d7 mem_le_latency
+0x42d9 mem_le_timeout
+0x42db mem_le_lap
+0x42de mem_le_uap
+0x42df mem_le_nap
+0x42e1 mem_le_local_mtu
+0x42e3 mem_le_remote_mtu
+0x42e5 mem_le_skdm
+0x42ed mem_le_skds
+0x42f5 mem_le_init_superto
+0x42f7 mem_ui_le_uuid_table
+0x42f9 mem_le_secure_connect_flag
+0x42fa mem_le_secure_connect_state
+0x42fb mem_le_sc_confirm_gkey_flag
+0x42fc mem_le_pairing_state
+0x42fd mem_le_enc_state
+0x42fe mem_le_pairing_mode
+0x42ff mem_le_tk
+0x4303 mem_le_ediv
+0x4305 mem_le_rand
+0x430d mem_le_irk
+0x431d mem_le_transmit_window
+0x4321 mem_le_configuration
+0x4322 mem_le_fixed_ltk
+0x4332 mem_le_pairing_handle
+0x4334 mem_le_packet_llid
+0x4335 mem_le_l2cap_size
+0x4337 mem_le_packet_len_recved
+0x4339 mem_le_payload_ptr
+0x433b mem_le_signaling_identifier
+0x433c mem_le_l2cap_signaling_conn_param_update_rsp_result
+0x433e mem_le_md_count
+0x433f mem_ble_l2cap_tx_buff0_ptr
+0x4341 mem_ble_l2cap_tx_buff_size_ptr
+0x4343 mem_le_scan_enable
+0x4344 mem_le_scan_interval
+0x4346 mem_le_scan_window
+0x4348 mem_le_adv_data_len
+0x4349 mem_le_adv_data
+0x4368 mem_le_scan_data_len
+0x4369 mem_le_scan_data
+0x4388 mem_le_adv_enable
+0x4389 mem_le_adv_param
+0x4389 mem_le_adv_interval
+0x438b mem_le_adv_type
+0x438c mem_le_adv_own_addr_type
+0x438d mem_le_adv_direct_addr
+0x4393 mem_le_adv_channel_map
+0x4394 mem_le_scan_params
+0x4394 mem_le_scan_type
+0x4395 mem_le_scan_own_addr_type
+0x4396 mem_le_l2cap_att_states
+0x4397 mem_le_att_opcode
+0x4398 mem_le_att_handle
+0x439a mem_le_search_res
+0x439b mem_le_notify_handle
+0x439d mem_le_search_uuid_length
+0x439e mem_le_search_uuid
+0x43ae mem_le_local_feature
+0x43b6 mem_le_tx_phys
+0x43b7 mem_le_rx_phys
+0x43b8 mem_remote_rx_max_octets
+0x43ba mem_remote_rx_max_time
+0x43bc mem_remote_tx_max_octets
+0x43be mem_remote_tx_max_time
+0x43c0 mem_local_rx_max_octets
+0x43c2 mem_local_rx_max_time
+0x43c4 mem_local_tx_max_octets
+0x43c6 mem_local_tx_max_time
+0x43c8 mem_ucode_ptr
+0x43ca mem_ucode_flag
+0x43cb mem_device_option
+0x43cc mem_peripheral_lock_flag
+0x43cd mem_bistfix_val
+0x43d3 mem_cb_check_wakelock
+0x43d5 mem_cb_before_hibernate
+0x43d7 mem_cb_before_lpm
+0x43d9 mem_cb_le_process
+0x43db mem_cb_idle_process
+0x43dd mem_cb_bb_event_process
+0x43df mem_cb_att_write
+0x43e1 mem_cb_ble_transmit
+0x43e3 mem_cb_event_timer
+0x43e5 mem_cb_bt_set_mult
+0x43e7 mem_cb_spi_flash_write_complate
+0x43e9 mem_cb_before_lpm_sleep
+0x43eb mem_eeprom_base
+0x43ed mem_wake_up_delay_timer
+0x43ee mem_app_connection_options
+0x43ef mem_app_disconn_reason
+0x43f1 mem_app_disconn_reason_flag
+0x43f3 mem_xrecord_mode
+0x43f4 mem_eeprom_block_size
+0x43f5 mem_spi_init_clk
+0x43f6 mem_spi_init_delay_time
+0x43f7 mem_spi_ncs_gpio
+0x43f8 mem_nv_data_ptr
+0x43fa mem_nv_data_number
+0x43fb mem_queue_ptr
+0x43fd mem_reference_inter1p8v_2v_adc_io_data
+0x43fd mem_inter1v_adc_ft_data
+0x43fd mem_3v_adc_io_data
+0x43ff mem_reference_inter1p8v_2p6v_adc_vdcdc_data
+0x43ff mem_inter1p2v_adc_ft_data
+0x43ff mem_2v_adc_hvin_data
+0x4401 mem_reference_inter1p8v_1v_adc_io_data
+0x4401 mem_io1v_adc_ft_data
+0x4401 mem_1v_adc_io_data
+0x4403 mem_reference_inter1p8v_4p6v_adc_vdcdc_data
+0x4403 mem_io2v_adc_ft_data
+0x4403 mem_3v_adc_hvin_data
+0x4405 mem_adc_ratio
+0x4405 mem_reference_voltage
+0x4407 mem_adc_config_flag
+0x4408 mem_adc_channel
+0x4409 mem_adc_clkdiv
+0x440a mem_adc_current_value
+0x440c mem_adc_power_flag//bit0:low power falg ; bit1:no power flag
+0x440d mem_adc_saddr_ptr
+0x440f mem_adc_eaddr_ptr
+0x4411 mem_adc_dma_enable
+0x4412 mem_adc_cal_c0
+0x4413 mem_adc_cal_c1
+0x4414 mem_adc_cal_c2
+0x4415 mem_adc_cal_c3
+0x4416 mem_adc_cal_c4
+0x4417 mem_adc_cal_c5
+0x4418 mem_adc_cal_c6
+0x4419 mem_spi_write_addr
+0x441c mem_spi_write_ptr
+0x441e mem_spi_write_len
+0x4420 mem_spi_write_flash_sm
+0x4421 mem_spi_cs_gpio
+0x4422 mem_spi_si_gpio
+0x4423 mem_spi_so_gpio
+0x4424 mem_spi_sclk_gpio
+0x4425 mem_spi_wp_gpio
+0x4426 mem_spi_hold_gpio
+0x4427 mem_eeprom_wp_gpio
+0x4428 mem_eeprom_scl_gpio
+0x4429 mem_eeprom_sda_gpio
+0x442a mem_kscan_ptr
+0x442c mem_key_num_ptr
+0x442c mem_keyscan_ptr
+0x442e mem_key_value_retention
+0x4430 mem_power_param_ptr
+0x4432 mem_seqi
+0x4433 mem_adc_cal_c7
+0x4433 mem_set_cdb_on
+0x4434 mem_syn_cal_ctrl
+0x4435 mem_nec_decode_error_value
+0x4436 mem_wdt_always_work
+0x4437 mem_power_ctrl_disable
+0x4438 mem_ring_ibias_trim
+0x4439 mem_ring_ibias_vtune_low
+0x443b mem_ring_ibias_vtune_high
+0x443d mem_ring_ibias_calc_adc_gpio
+0x443e mem_ring_ibias_calc_adc_channel
+0x443f mem_rf_debug_rx_gpio
+0x4440 mem_rf_debug_tx_gpio
+0x4441 mem_l2cap_xmem_start
+0x4441 mem_used_map
+0x4442 mem_tx_fifo0
+0x4442 mem_tx_fifo0_map
+0x4443 mem_tx_fifo0_ptr
+0x4445 mem_tx_fifo1
+0x4445 mem_tx_fifo1_map
+0x4446 mem_tx_fifo1_ptr
+0x4448 mem_tx_fifo2
+0x4448 mem_tx_fifo2_map
+0x4449 mem_tx_fifo2_ptr
+0x444b mem_tx_fifo3
+0x444b mem_tx_fifo3_map
+0x444c mem_tx_fifo3_ptr
+0x444e mem_tx_fifo_end
+0x444e mem_l2cap_lpm_txbuf_ptr
+0x4450 mem_l2cap_xmem_end
+0x4450 mem_ccm_pcnt_tx
+0x4455 mem_ccm_pcnt_rx
+0x445a mem_ccm_last_mic
+0x445e mem_ccm_iv
+0x445e mem_ccm_ivm
+0x4462 mem_ccm_ivs
+0x4466 mem_ccm_len
+0x4468 mem_ccm_rx_ptr
+0x446a mem_sc_only_mode
+0x446b mem_sp_debug_mode
+0x446c mem_secure_connections_enable
+0x446d mem_sc_calc
+0x446e mem_sc_local_key_invalid
+0x446f mem_sc_private_key_256
+0x448f mem_sc_pubkey_local_x_256
+0x44af mem_sc_pubkey_local_y_256
+0x44cf mem_sp_state_xmem
+0x44cf mem_authentication_passkey_times
+0x44d0 mem_passkey_1bit
+0x44d1 mem_sp_state_xmem_end
+0x44d1 mem_ipc_lock_bt
+0x44d2 mem_ipc_lock_c51
+0x44d3 mem_ipc_fifo_bt2c51
+0x44db mem_ipc_fifo_c512bt
+0x44e3 mem_ui_button_timer
+0x44e4 mem_ui_button_last_state
+0x44e5 mem_ui_timer_last_btclk
+0x44e9 mem_ui_state_map
+0x44eb mem_ui_button_timeout
+0x44ec mem_ui_button_gpio
+0x44ed mem_ui_led_init_state_set
+0x44ee mem_ui_led_struct_num
+0x44ef mem_ui_led_struct_ptr
+0x44f1 mem_mesh_vendor_mesh_receive_tid
+0x44f2 mem_mesh_vendor_mesh_send_tid
+0x44f3 mem_mesh_vendor_timer_current_time
+0x44f7 mem_system_time
+0x44fb mem_mesh_vendor_timer_timing_delete_index1
+0x44fb mem_mesh_vendor_timer_timing_index1
+0x44fc mem_mesh_vendor_timer_timing_delete_index2
+0x44fc mem_mesh_vendor_timer_timing_time1
+0x4500 mem_mesh_vendor_timer_timing_attr_type1
+0x4502 mem_mesh_vendor_timer_timing_attr_para1
+0x4503 mem_mesh_vendor_timer_timing_buffer
+0x45ed mem_mesh_vendor_timer_timing_palyload
+0x45ff mem_mesh_vendor_timer_timing_temp
+0x4601 mem_mesh_vendor_timer_timing_time_cyclic_temp
+0x4602 mem_mesh_vendor_timer_check_loop
+0x4603 mem_tmall_revd_device_power_on_msge_flag
+0x4604 mem_tmall_send_power_on_msge_timeout
+0x4606 mem_mesh_vendor_timer_timing_temp1
+0x4608 mem_mesh_timer_index_buffer_len
+0x4609 mem_mesh_timer_index_buffer
+0x4629 mem_mesh_timer_index_count
+0x462a mem_mesh_adv_data_len
+0x462b mem_mesh_adv_data
+0x464a mem_mesh_adv_scan_channel
+0x464b mem_mesh_advertising_unprovisioned_device_beacon_switch
+0x464c mem_mesh_advertising_unprovisioned_device_beacon_timer
+0x464e mem_mesh_advertising_unprovisioned_device_beacon_duration
+0x464f mem_mesh_advertising_unprovisioned_device_beacon_interval
+0x4650 mem_mesh_calc_ConfirmationCloud_data
+0x4650 mem_mesh_ConfirmationCloud_RandomB
+0x4658 mem_mesh_ConfirmationCloud_RandomA
+0x4660 mem_mesh_AuthValueProv
+0x4670 mem_mesh_ConfirmationCloud
+0x4680 mem_mesh_ConfirmationDevice
+0x4680 mem_mesh_calc_ConfirmationDevice_data
+0x4680 mem_mesh_provisioning_random_A
+0x4688 mem_mesh_provisioning_random_B
+0x4690 mem_mesh_AuthValueDevice
+0x46a0 mem_mesh_Device_Key
+0x46b0 mem_mesh_Confirmationkey
+0x46c0 mem_mesh_sha256_ConfirmationKey_ascii
+0x46cf mem_mesh_sha256_SessionKey_ascii
+0x46d9 mem_mesh_sha256_DeviceKey_ascii
+0x46e2 mem_mesh_sha256_load_first_data_flag
+0x46e3 mem_mesh_sha256_data_len_byte
+0x46eb mem_mesh_sha256_data_len_bit
+0x46f3 mem_mesh_sha256_data_end_addr
+0x46f5 mem_mesh_sha256_data_len_addr
+0x46f7 mem_mesh_sha256_chunk_count
+0x46f8 mem_mesh_sha256_chunk_data_ptr
+0x46fa mem_mesh_sha256_chunk_ptr
+0x46fc mem_k2_P_len
+0x46fd mem_k2_P
+0x470d mem_k2_N
+0x471d mem_k2_SALT
+0x472d mem_k2_T
+0x473d mem_k2_T0
+0x473d mem_k2_T1
+0x474d mem_k2_NID
+0x474e mem_k2_T3
+0x475e mem_k2_T2
+0x476e mem_k4_SALT
+0x477e mem_k4_T
+0x478e mem_k4_id6_01
+0x479e mem_k4_k4N
+0x47ae mem_mesh_transport_AID
+0x47af mem_k3_SALT
+0x47bf mem_k3_T
+0x47cf mem_k3_id64_01
+0x47d4 mem_k3_k4N
+0x47dc mem_mesh_network_id
+0x47e4 mem_mesh_provisioned_flag
+0x47e5 mem_mesh_Provisioning_State_Flag
+0x47e6 mem_mesh_Device_PID
+0x47e7 mem_mesh_UUID_FeatureFlag
+0x47e8 mem_mesh_UUID_FeatureFlag1
+0x47e9 mem_mesh_PDU_RFU
+0x47ea mem_mesh_OOB_information
+0x47ec mem_mesh_Encrypt_Provisioning_Data
+0x47ec mem_mesh_provisioning_data_Mac_addr
+0x47ee mem_mesh_KeyFresh_and_Update_flag
+0x47ef mem_mesh_Network_Key
+0x47ff mem_mesh_last_IV_Index_byte
+0x4800 mem_mesh_Unicast_Address
+0x4802 mem_mesh_recv_cfg_appkey_add_timer
+0x4803 mem_mesh_report_power_on_timer
+0x4804 mem_mesh_report_full_attribute_timer
+0x4805 mem_mesh_health_node_reset_timer
+0x4806 mem_mesh_send_packet_timeout
+0x4808 mem_mesh_gatt_package_send_msg_id
+0x4809 mem_mesh_gatt_receive_msg_timer
+0x480a mem_mesh_three_tuple_ProductID
+0x480e mem_mesh_three_tuple_MAC
+0x4814 mem_mesh_three_tuple_secret
+0x4824 mem_mesh_cb_receive_advertising
+0x4826 mem_mesh_cb_receive_access_message
+0x4828 mem_mesh_cb_receive_config_appkey_add
+0x482a mem_mesh_cb_pairing_fail
+0x482c mem_mesh_cb_recv_vendor
+0x482e mem_mesh_scan_selete_next_ch
+0x4830 mem_mesh_cb_generic_onoff_get
+0x4832 mem_mesh_cb_generic_onoff_set
+0x4834 mem_mesh_cb_scene_recall
+0x4836 mem_mesh_cb_light_lightness_set
+0x4838 mem_mesh_cb_light_lightness_get
+0x483a mem_mesh_cb_light_ctl_set
+0x483c mem_mesh_cb_main_light_onoff_set
+0x483e mem_mesh_cb_background_onoff_set
+0x4840 mem_mesh_cb_color_set
+0x4842 mem_mesh_cb_network_relay
+0x4844 mem_mesh_cb_receive_node_reset
+0x4846 mem_mesh_cb_seq_changed
+0x4848 mem_mesh_cb_subscriptuion_list_changed
+0x484a mem_mesh_cb_vendor_timing_changed
+0x484c mem_mesh_core_feature
+0x484e mem_mesh_element_number
+0x484f mem_mesh_element_device_ptr
+0x4851 mem_mesh_element_device_length
+0x4853 mem_mesh_clear_provisioning_data
+0x4855 mem_mesh_app_deport_device_state
+0x4857 mem_mesh_chip_select
+0x4858 mem_mesh_segmented_access_message_SZMIC
+0x4859 mem_mesh_segmented_access_message_SeqZero
+0x485b mem_mesh_segmented_access_message_SegO
+0x485c mem_mesh_segmented_access_message_SegN
+0x485d mem_mesh_segmented_access_message_BlockAck
+0x4861 mem_mesh_segmented_access_message_receive_finish
+0x4862 mem_mesh_segmented_access_message_current_length
+0x4863 mem_mesh_segmented_access_message_SegN_upper_limit
+0x4864 mem_mesh_segmented_access_message_Segment_ptr
+0x4866 mem_mesh_last_CTL_Temperature
+0x4868 mem_mesh_receive_group_address
+0x4869 mem_mesh_receive_element_number
+0x486a mem_mesh_network_dup_cache_next
+0x486b mem_mesh_network_msg_cache_next
+0x486c mem_mesh_network_proxy_unicast_address
+0x486e mem_mesh_IV_Index
+0x4872 mem_mesh_TMALL_cache_start
+0x4872 mem_mesh_TMALL_SRC1
+0x4874 mem_mesh_TMALL_SEQ1
+0x4877 mem_mesh_TMALL_cache
+0x48a4 mem_mesh_TMALL_cache_end
+0x48a4 mem_mesh_transport_message_mic_cache
+0x48a4 mem_mesh_transport_message_mic_cache_buff1
+0x48a8 mem_mesh_transport_message_mic_cache_buff2_10
+0x48cc mem_mesh_network_relay_queue
+0x48cc mem_mesh_network_relay_queue_each_size
+0x48cd mem_mesh_network_relay_queue_length
+0x48ce mem_mesh_network_relay_queue_current_num
+0x48cf mem_mesh_network_relay_queue_read_ptr
+0x48d0 mem_mesh_network_relay_queue_write_ptr
+0x48d1 mem_mesh_network_relay_queue_ele
+0x4959 mem_mesh_application_key
+0x4969 mem_mesh_ASZMIC
+0x496a mem_mesh_access_message_mic_cache
+0x496a mem_mesh_access_message_mic_cache_buff1
+0x496e mem_mesh_access_message_mic_cache_buff2_10
+0x4992 mem_mesh_send_message_SEQ
+0x4995 mem_mesh_send_message_SRC
+0x4997 mem_mesh_send_message_TTL
+0x4998 mem_mesh_send_upper_layer_IVI_and_NID
+0x4999 mem_mesh_send_upper_layer_CTL_and_TTL
+0x499a mem_mesh_send_upper_layer_SEQ
+0x499d mem_mesh_send_upper_layer_SRC
+0x499f mem_mesh_send_upper_layer_DST
+0x49a1 mem_mesh_send_access_lower_transport_layer
+0x49b1 mem_mesh_send_network_layer_NetMIC
+0x49b5 mem_mesh_upper_tran_layer_packet_advertising
+0x49b6 mem_mesh_upper_tran_layer_packet_tid
+0x49b7 mem_mesh_upper_tran_layer_packet_type
+0x49b8 mem_mesh_upper_receive_new_message_timer
+0x49b9 mem_mesh_upper_tran_layer_queue_each_size
+0x49ba mem_mesh_upper_tran_layer_queue_length
+0x49bb mem_mesh_upper_tran_layer_queue_current_num
+0x49bc mem_mesh_upper_tran_layer_queue_read_ptr
+0x49bd mem_mesh_upper_tran_layer_queue_write_ptr
+0x49be mem_mesh_upper_tran_layer_queue_element_1
+0x49e6 mem_mesh_upper_tran_layer_queue_element_2
+0x4a0e mem_mesh_upper_tran_layer_queue_element_3
+0x4a36 mem_mesh_upper_tran_layer_queue_element_4
+0x4a5e mem_mesh_queue_each_size
+0x4a5f mem_mesh_queue_length
+0x4a60 mem_mesh_queue_current_num
+0x4a61 mem_mesh_queue_read_ptr
+0x4a62 mem_mesh_queue_write_ptr
+0x4a63 mem_mesh_queue_ele
+0x4aeb mem_mesh_element_device
+0x4aeb mem_mesh_element_device_group_addr
+0x4aed mem_mesh_element_device_queue_buffer_ptr
+0x4aef mem_mesh_element_device_timing_ptr
+0x4af1 mem_mesh_element_device_element_subscription_label
+0x4b01 mem_mesh_element_upper_adv_flag
+0x4b02 mem_mesh_element_upper_queue_buffer_ptr
+0x4b04 mem_mesh_element_tran_package_tid
+0x4b05 mem_mesh_element_tran_package_type
+0x4b06 mem_mesh_element_device1
+0x4b21 mem_mesh_element_device2
+0x4b3c mem_mesh_segmented_access_message_Segment
+0x4b60 mem_mesh_le_att_list
+0x4c24 mem_mesh_send_message_SEQ_temp
+0x4c27 mem_mesh_element_timing
+0x4d67 mem_mesh_element_timing1
+0x4ea7 mem_mesh_element_timing2
+0x44f1 mem_24g_lap
+0x44f7 mem_24g_rxbuf
+0x4519 mem_24g_txbuf
+0x4539 mem_24g_txpayload
+0x455d mem_24g_rxpayload
+0x457d mem_24g_rxdata_length
+0x457e mem_24g_pid
+0x457f mem_24g_no_ack
+0x4580 mem_24g_sta_crc
+0x4583 mem_24g_last_crc
+0x4586 mem_24g_sta_pid
+0x4587 mem_24g_last_pid
+0x4588 mem_24g_datalen
+0x4589 mem_24g_data_type
+0x458a mem_24g_txlen
+0x458b mem_24g_rx_window
+0x458d mem_24g_ch
+0x458e mem_24g_current_ch_number
+0x458f mem_24g_addr
+0x4593 mem_24g_ch_map1
+0x4597 mem_24g_ch_map2
+0x459b mem_24g_ch_map3
+0x459f mem_24g_ch_map4
+0x45a3 mem_24g_tx_btclk
+0x45a7 mem_24g_interval
+0x45a8 mem_24g_interval_min
+0x45a9 mem_24g_interval_max
+0x45aa mem_24g_syncword
+0x45ac mem_24g_syncword_crc8
+0x45ad mem_24g_get_syncword_crc8
+0x45ae mem_24g_pair_switch
+0x45af mem_24g_enter_hibernate
+0x45b7 mem_24g_rx_phy
+0x45b8 mem_24g_tx_phy
+0x45b9 mem_24g_ch_map_update
+0x45ba mem_24g_ch_update_map1
+0x45be mem_24g_ch_update_map2
+0x45c2 mem_24g_ch_update_map3
+0x45c6 mem_24g_ch_update_map4
+0x45ca mem_24g_disable_fec1
+0x45cb mem_24g_off_type
+0x45cc mem_24g_pair_addr
+0x45d0 mem_24g_pair_ch
+0x45d1 mem_24g_pair_tx_power
+0x45d2 mem_rssi_buff_index
+0x45d3 mem_24g_device1_bind_step
+0x45d4 mem_24g_device2_bind_step
+0x45d5 mem_24g_bind_device_status
+0x45d6 mem_24g_bind_payload
+0x45de mem_24g_device1_bind_disable
+0x45df mem_24g_device2_bind_disable
+0x45e0 mem_cb_24g_receive_process
+0x45e2 mem_cb_24g_ackpayload
+0x45e4 mem_cb_24g_data_device1
+0x45e6 mem_cb_24g_data_device2
+0x45e8 mem_24g_rxdata_temp
+0x460a mem_24g_abort_packet
+0x460b mem_24g_hop_btclk
+0x460f mem_24g_hop_interval
+0x4610 mem_24g_pair_mode
+0x4611 mem_24g_ackpayload_enable
+0x4612 mem_24g_hop_packet
+0x4613 mem_24g_mode_switch
+0x4614 mem_24g_nodata_timer_enable
+0x4615 mem_24g_mode_init
+0x4616 mem_24g_work_mode
+0x4617 mem_24g_time_slice
+0x4618 mem_24g_self_last_ch
+0x4619 mem_24g_self_ch_number
+0x461a mem_24g_self_config_ch_once
+0x461b mem_24g_device1_last_ch
+0x461c mem_24g_device1_ch_number
+0x461d mem_24g_device1_config_ch_once
+0x461e mem_24g_device2_last_ch
+0x461f mem_24g_device2_ch_number
+0x4620 mem_24g_device2_config_ch_once
+0x4621 mem_24g_led_status
+0x4622 mem_24g_bind_mode_continue
+0x4623 mem_tx_power_temp
+0x4624 mem_24g_mode_B_S_switch
+0x4625 mem_24g_mode_B_S_switch_init
+0x4626 mem_24g_mode_B_S_switch_cnt
+0x4628 mem_24g_mode_B_S_switch_exit
+0x4629 mem_24g_B_S_time_slice
+0x462a mem_24g_B_S_mode_switch_disable
+0x462b mem_24g_bind_device_living
+0x462c mem_24g_transmitter_addr
+0x4630 mem_24g_device1_addr
+0x4634 mem_24g_device2_addr
+0x4638 mem_rssi_noise_avg
+0x4639 mem_rssi_noise_index
+0x463a mem_rssi_noise_self_avg
+0x463b mem_rssi_noise_device1_avg
+0x463c mem_rssi_noise_device2_avg
+0x463d mem_rssi_noise_self_index
+0x463e mem_rssi_noise_device1_index
+0x463f mem_rssi_noise_device2_index
+0x4640 mem_rssi_noise_buffer_ptr
+0x4642 mem_rssi_noise_self_buffer_ptr
+0x4644 mem_rssi_noise_device1_buffer_ptr
+0x4646 mem_rssi_noise_device2_buffer_ptr
+0x4648 mem_car_hard_soft_switch
+0x4649 mem_car_queue_each_size
+0x464a mem_car__queue_length
+0x464b mem_car_queue_curr_num
+0x464c mem_car_queue_read_ptr
+0x464d mem_car_queue_write_ptr
+0x464e mem_car_queue_ele
+0x46c6 mem_car_pop_queue_buff
+0x46da mem_car_led_num
+0x46db mem_car_led_map
+0x46e5 mem_car_style1_led_type
+0x46e6 mem_car_style1_blink_count
+0x46e7 mem_car_style1_struct_led_gpio
+0x46e8 mem_car_style1_on_time
+0x46ea mem_car_style1_off_time
+0x46ec mem_car_style1_cb_ledon
+0x46ee mem_car_style1_cb_ledoff
+0x46f0 mem_car_style2_led_type
+0x46f1 mem_car_style2_blink_count
+0x46f2 mem_car_style2_struct_led_gpio
+0x46f3 mem_car_style2_on_time
+0x46f5 mem_car_style2_off_time
+0x46f7 mem_car_style2_cb_ledon
+0x46f9 mem_car_style2_cb_ledoff
+0x46fb mem_le_receive_data
+0x46fb mem_le_receive_packet_head
+0x46fd mem_le_receive_cmd
+0x46fe mem_le_receive_length
+0x4700 mem_le_receive_payload
+0x470a mem_le_receive_checksum
+0x470b mem_motor1_status
+0x470c mem_motor1_speed
+0x470d mem_motor2_status
+0x470e mem_motor2_speed
+0x470f mem_motor3_status
+0x4710 mem_motor3_speed
+0x4711 mem_motor1_pwm_set
+0x4711 mem_motor1_pwm_pin1_set
+0x4712 mem_motor1_pwm_pin2_set
+0x4713 mem_motor1_pwm_pin_set
+0x4714 mem_motor1_pwm_channel_set
+0x4715 mem_motor1_pwm_freq_set
+0x4718 mem_motor1_pwm_dute_set
+0x4719 mem_motor2_pwm_set
+0x4719 mem_motor2_pwm_pin1_set
+0x471a mem_motor2_pwm_pin2_set
+0x471b mem_motor2_pwm_pin_set
+0x471c mem_motor2_pwm_channel_set
+0x471d mem_motor2_pwm_freq_set
+0x4720 mem_motor2_pwm_dute_set
+0x4721 mem_motor3_pwm_set
+0x4721 mem_motor3_pwm_pin1_set
+0x4722 mem_motor3_pwm_pin2_set
+0x4723 mem_motor3_pwm_pin_set
+0x4724 mem_motor3_pwm_channel_set
+0x4725 mem_motor3_pwm_freq_set
+0x4728 mem_motor3_pwm_dute_set
+0x4729 mem_motor_select_p_n
+0x472a mem_car_motor_status
+0x472b mem_car_motor_speed
+0x472c mem_motor_pwm_set
+0x472c mem_motor_pwm_pin1_set
+0x472d mem_motor_pwm_pin2_set
+0x472e mem_motor_pwm_pin_set
+0x472f mem_motor_pwm_channel_set
+0x4730 mem_motor_pwm_freq_set
+0x4733 mem_motor_pwm_dute_set
+0x4734 mem_ir_rx_gpio
+0x4735 mem_ir_data
+0x4737 mem_ir_rx_buf
+0x4739 mem_ir_receive_clkn
+0x473d mem_ir_notify_data
+0x4740 mem_ir_notify_data_head
+0x4745 mem_ir_notify_data_payload
+0x4747 mem_ir_notify_data_check_sum
+0x4748 mem_car_ir_breakdown_check_timer
+0x4749 mem_car_ir_breakdown_flag
+0x474a mem_car_led_control
+0x474a mem_car_led1_status
+0x474b mem_car_led2_status
+0x474c mem_car_led3_status
+0x474d mem_car_led4_status
+0x474e mem_car_led5_status
+0x474f mem_car_led6_status
+0x4750 mem_car_led7_status
+0x4751 mem_car_led8_status
+0x4752 mem_car_led_control_timer
+0x4753 mem_car_led_blink_status
+0x4754 mem_car_led_no
+0x4755 mem_car_info_request
+0x4758 mem_car_info_request_head
+0x475d mem_car_info_request_payload
+0x4765 mem_car_info_request_checksum
+0x4766 mem_car_config_param
+0x4766 mem_car_config_setting_flag
+0x4767 mem_car_config_device_select
+0x4768 mem_car_config_motor_layout
+0x4769 mem_car_config_ir_enable
+0x476a mem_car_config_ir_rx_gpio
+0x476b mem_car_config_pairing_led_conn_status
+0x476c mem_car_config_pairing_led_gpio
+0x476d mem_car_config_led_num
+0x476e mem_car_config_blood_led_gpio
+0x476e mem_car_config_blood_led1_gpio
+0x476f mem_car_config_blood_led2_gpio
+0x4770 mem_car_config_blood_led3_gpio
+0x4771 mem_car_config_blood_led4_gpio
+0x4772 mem_car_config_blood_led5_gpio
+0x4773 mem_car_config_blood_led6_gpio
+0x4774 mem_car_config_blood_led7_gpio
+0x4775 mem_car_config_blood_led8_gpio
+0x4776 mem_car_config_bat_notify_enable
+0x4777 mem_car_config_low_voltage_led_gpio
+0x4778 mem_car_config_low_voltage_percent
+0x4779 mem_car_config_soft_switch_enable
+0x477a mem_car_config_soft_switch_gpio
+0x477b mem_car_notify_vdd_count
+0x477c mem_car_notify_vdd_timer
+0x477d mem_car_notify_vdd_value_last
+0x477e mem_car_notify_vdd_percent
+0x477f mem_car_working_flag
+0x4780 mem_low_bat_flag
+0x4781 mem_notify_bat_packet
+0x4784 mem_notify_bat_head
+0x4789 mem_notify_bat_payload
+0x478a mem_notify_bat_check_sum
+0x478b mem_vdd_notify_flag
+0x478c mem_car_current_vdd_value_temp
+0x478e mem_car_last_vdd_value
+0x4790 mem_vdd_calculate_set
+0x4790 mem_vdd_full_vol
+0x4792 mem_vdd_empty_vol
+0x4794 mem_vdd_low_vol
+0x4796 mem_vdd_now_vol
+0x4798 mem_car_24g_status
+0x4799 mem_car_24g_no_data_timeout_count
+0x479b mem_car_24g_no_data_timeout_timer
+0x479d mem_car_24g_ir_receive_attack_count
+0x479e mem_car_24g_go_die_flag
+0x479f mem_car_attack_shake_timer
+0x47a0 mem_car_attack_shake_flag
+0x47a1 mem_car_soft_power
+0x47a1 mem_car_power_state
+0x47a2 mem_car_power_timer
+0x47a3 mem_car_power_off_timeout
+0x47a4 mem_car_power_starting_timeout
+0x47a5 mem_car_power_off_cb
+0x47a7 mem_car_power_starting_cb
+0x47a9 mem_car_power_standby_cb
+0x47ab mem_car_ui_button_up_cb
+0x47ad mem_car_le_att_list
+0x49a1 mem_car_moto1_blank_timer
+0x49a2 mem_car_moto2_blank_timer
+0x49a3 mem_car_moto3_blank_timer
+0x49a4 mem_car_motor_gpio_num
+0x49a5 mem_car_motor_gpio_map
+0x49a5 mem_car_motor_left_gpio
+0x49a6 mem_car_motor_right_gpio
+0x49a7 mem_car_motor_front_gpio
+0x49a8 mem_car_motor_back_gpio
+0x49a9 mem_car_gpio
+0x49aa mem_car_app_send_speed
+0x49ab mem_rssi_sum
+0x49ad mem_check_rssi_high_count
+0x49af mem_rssi_data
+0x49b7 mem_car_24g_received_pac
+0x49b8 mem_car_24g_bind_enable_delay_count
+0x49b9 mem_car_keyscan
+0x49b9 mem_car_key_num
+0x49ba mem_cb_car_keyscan
+0x49bc mem_car_enter_lpm_timer_count
+0x49be mem_car_enter_lpm_timer
+0x49c0 mem_car_enter_lpm_flag
+0x49c1 mem_car_24g_ch_polling
+0x49c2 mem_car_rssi_noise_buffer
+0x49ca mem_car_rssi_noise_car_buffer
+0x49d2 mem_car_rssi_noise_remote_buffer
+0x49da mem_car_24g_commom_addr
+0x49de mem_car_24g_commom_addr_temp
+0x49e2 mem_car_24g_commom_addr_read
+0x49e6 mem_car_save_addr_flag
+0x49e7 mem_ble_att_list
+0x4b77 mem_ad_indexTable
+0x4b87 mem_ad_stepsizeTable
+0x4ceb mem_ad_state_valpred
+0x4cef mem_ad_state_index
+0x4cf3 mem_ad_in_numSamples
+0x4cf4 mem_ad_in_ptr
+0x4cf6 mem_ad_out_ptr
+0x4cf8 mem_ad_sign
+0x4cf9 mem_ad_delta
+0x4cfa mem_ad_step
+0x4cfe mem_ad_valpred
+0x4d02 mem_ad_index
+0x4d06 mem_ad_vpdiff
+0x4d0a mem_ad_inputbuffer
+0x4d0e mem_ad_bufferstep
+0x4648 mem_dg_kb_bind_flag
+0x4649 mem_dg_kb_data_sta_data
+0x4651 mem_dg_kb_data_last_data
+0x4659 mem_dg_kb_multikey_sta_data
+0x465c mem_dg_kb_multikey_last_data
+0x465f mem_dg_kb_system_sta_data
+0x4662 mem_dg_kb_system_last_data
+0x4665 mem_dg_kb_blank_data_enable
+0x4666 mem_dg_kb_mul_blank_data_enable
+0x4667 mem_dg_kb_system_crtl_blank_data_enable
+0x4668 mem_dg_ms_blank_data_enable
+0x4669 mem_dg_sys_config
+0x466a mem_dg_usb_vid_pid
+0x4673 mem_dg_usb_tx_interval
+0x4674 mem_dg_usb_device_name
+0x4692 mem_dg_kb_bind_success
+0x4693 mem_dg_pc_sleep_flag
+0x4694 mem_dg_24g_tx_power_default
+0x45d3 mem_rssi_hex_received
+0x45d4 mem_24g_pair_sm
+0x45d5 mem_24g_pair_no_ack
+0x45d6 mem_24g_pair_timeout_init
+0x45d8 mem_24g_pair_timeout
+0x45da mem_24g_pair_count
+0x45dc mem_24g_reconn_timeout_init
+0x45de mem_24g_reconn_timeout
+0x45e0 mem_24g_reconn_count
+0x45e2 mem_24g_reconn_type
+0x45e3 mem_24g_fast_conn_enable
+0x45e4 mem_24g_fast_conn_addr
+0x45e8 mem_24g_receiver_addr
+0x45ec mem_24g_fast_conn_temp_ch
+0x45ed mem_24g_receiver_temp_ch
+0x45ee mem_24g_device_temp_ch
+0x45ef mem_rssi_signal_index
+0x45f0 mem_rssi_signal_buf_ptr
+0x45f2 mem_cb_24g_transmit_data
+0x45f4 mem_cb_24g_search_receiver
+0x45f6 mem_cb_24g_lpm_before
+0x45f8 mem_cb_24g_transmit_short_sleep
+0x45fa mem_cb_24g_transmit_long_sleep
+0x45fc mem_24g_conn_sm
+0x45fd mem_24g_ensure
+0x45fe mem_24g_txfail_cnt
+0x4600 mem_24g_attempt_fail_flag
+0x4601 mem_24g_retry
+0x4602 mem_24g_abort_pac
+0x4603 mem_24g_max_retry
+0x4604 mem_24g_device_addr
+0x4608 mem_24g_short_sleep_set
+0x460b mem_24g_long_sleep_set
+0x4613 mem_24g_long_sleep_set1
+0x4617 mem_24g_pac_index
+0x4618 mem_24g_transmit_by_interrupt
+0x4619 mem_24g_transmit_by_interrupt_exit_count
+0x461b mem_24g_transmit_by_interrupt_exit_count_init
+0x461d mem_24g_long_sleep_param_update_timer_init
+0x461f mem_24g_long_sleep_param_update_timer
+0x4621 mem_24g_fast_hop_count
+0x4622 mem_24g_retransmit
+0x4624 mem_rssi_avg_received
+0x4625 mem_power_ctrl_level
+0x4626 mem_power_ctrl_pac_succ_cnt
+0x4627 mem_power_ctrl_pac_succ_cnt_init
+0x4628 mem_rssi_dis_min_24g
+0x4629 mem_rssi_dis_max_24g
+0x462a mem_rssi_hex_received_max_value
+0x462b mem_rssi_dis_min_ble
+0x462c mem_rssi_dis_max_ble
+0x462d mem_mouse_vdd_calculate_set
+0x462d mem_mouse_vdd_full_vol
+0x462f mem_mouse_vdd_empty_vol
+0x4631 mem_mouse_vdd_low_vol
+0x4633 mem_mouse_vdd_now_vol
+0x4635 mem_adc_channel_gpio
+0x4636 mem_adc_mux_status
+0x4637 mem_mouse_adc_last_low_voltage_flag
+0x4638 mem_mouse_discovery_timeout
+0x463a mem_mouse_24g_pair_timeout_init
+0x463c mem_mouse_direct_timeout
+0x463d mem_mouse_24g_reconn_timeout_init
+0x463e mem_mouse_24g_pair_tx_power
+0x463f mem_rssi_dis_min_24g_init
+0x4640 mem_rssi_dis_max_24g_init
+0x4641 mem_rssi_hex_received_max_value_init
+0x4642 mem_rssi_dis_min_ble_init
+0x4643 mem_rssi_dis_max_ble_init
+0x4644 mem_mouse_param_config
+0x4644 mem_lbutton_gpio
+0x4645 mem_mbutton_gpio
+0x4646 mem_rbutton_gpio
+0x4647 mem_bk_button_gpio
+0x4648 mem_fw_button_gpio
+0x4649 mem_dpi_button_gpio
+0x464a mem_whee_a_data_gpio
+0x464b mem_whee_b_data_gpio
+0x464c mem_mouse_sensor_sclk_gpio
+0x464d mem_mouse_sensor_sdio_gpio
+0x464e mem_select_sensor_angle_gpio
+0x464f mem_sensor_angle_default
+0x4650 mem_sensor_angle_switch
+0x4651 mem_config_sensor_dpi
+0x4652 mem_whee_ta_data_gpio
+0x4653 mem_whee_tb_data_gpio
+0x4654 mem_matrix_public_gpio
+0x4655 mem_config_select_device_button_gpio
+0x4656 mem_customer_key_gpio
+0x4657 mem_firebutton_gpio
+0x4658 mem_dpi_another_button_gpio
+0x4659 mem_sensor_motion_gpio
+0x465a mem_device_switch_gpio
+0x465b mem_mouse_reuse_2ice_gpio
+0x465c mem_mouse_logo_led_gpio
+0x465d mem_mouse_1io2led_multi_24gled
+0x465e mem_mouse_1io2led_multi_bt1led
+0x465f mem_mouse_1io2led_multi_bt2led
+0x4660 mem_mouse_low_voltage_alarm_gpio
+0x4661 mem_mouse_dpi_gpio
+0x4662 mem_mouse_param_config_end
+0x4662 mem_wire_usb_interval
+0x4663 mem_usb_addr
+0x4664 mem_mouse_usb_vdd_status
+0x4665 mem_mouse_usb_keyboard_flag
+0x4666 mem_mouse_information_start
+0x4666 mem_device_flag
+0x4667 mem_device1_type
+0x4668 mem_device1_addr
+0x466e mem_device1_locall_addr
+0x4674 mem_device2_type
+0x4675 mem_device2_addr
+0x467b mem_device2_locall_addr
+0x4681 mem_device3_type
+0x4682 mem_device3_addr
+0x4688 mem_device3_locall_addr
+0x468e mem_store_flag
+0x4690 mem_mouse_dpi
+0x4691 mem_mouse_24g_addr
+0x4695 mem_random_addr_increase_count
+0x4697 mem_mouse_retention
+0x46e6 mem_mouse_information_end
+0x46e6 mem_mouse_compare_addr
+0x46ec mem_flash_base
+0x46ef mem_write_flash_head_temp
+0x46f3 mem_store_information_delay_timer
+0x46f4 mem_store_information_delay_timer_init
+0x46f5 mem_mouse_search_dongle_interval
+0x46f6 mem_mouse_search_dongle_ch
+0x46f7 mem_mouse_search_dongle_count
+0x46f8 mem_mouse_search_dongle_action
+0x46f9 mem_24g_enter_lpm_timer
+0x46fa mem_mouse_24g_enter_lpm_enable
+0x46fb mem_mouse_multi_led_blink_enable
+0x46fc mem_mouse_multi_led_type
+0x46fd mem_mouse_multi_led_state
+0x46fe mem_mouse_multi_led_blink_type//00:rtn	01:24g blink	02:le blink		03:reconn blink 	04:low blink	05:dpi blink
+0x46ff mem_mouse_le_reconn_blink_limit
+0x4700 mem_mouse_multi_led_powon_timer_init//power on time
+0x4701 mem_mouse_multi_led_powon_timer
+0x4702 mem_mouse_multi_24gled_blink_timer_init//24gled blink time
+0x4703 mem_mouse_multi_le_discovery_blink_timer_init//le discovery blink time
+0x4704 mem_mouse_multi_le_reconn_blink_timer_init//le reconn blink time
+0x4705 mem_mouse_dpi_led_blink_timer_init//dpi blink time
+0x4706 mem_mouse_multi_led_blink_timer
+0x4707 mem_mouse_low_led_blink_timer//low blink time
+0x4708 mem_mouse_low_led_blink_half_timer
+0x4709 mem_adc_low_volatage_led_timer_count
+0x470a mem_mouse_multi_24gled_blink_count_init//24g count
+0x470b mem_mouse_multi_le_reconn_blink_count_init//le reconn count
+0x470c mem_mouse_multi_led_blink_count
+0x470d mem_mouse_multi_lowled_blink_count_init//low count
+0x470e mem_mouse_multi_low_led_blink_count
+0x470f mem_mouse_logo_led_on_time_init
+0x4711 mem_mouse_dpi_led_delay_count
+0x4712 mem_mouse_dpi_led_delay_count_init
+0x4713 mem_mouse_flag
+0x471b mem_device_number
+0x471c mem_mouse_page_to
+0x471e mem_mouse_fast_direct_timeout
+0x471f mem_mouse_fast_page_to
+0x4721 mem_mouse_24g_power_on_fast_conn_timer
+0x4723 mem_mouse_24g_search_dongle_time_init
+0x4725 mem_mouse_no_data_timeout
+0x4727 mem_mouse_commbination_key_bt
+0x4728 mem_mouse_commbination_key_24g
+0x4729 mem_mouse_customer_function
+0x472a mem_customer_key_press
+0x4733 mem_customer_key_release
+0x473c mem_mouse_set_high_impedance_bit_set
+0x473f mem_sensor_shutdown_flag
+0x4740 mem_24g_long_sleep_set_level
+0x4741 mem_tx_power_factory_param
+0x4743 mem_mouse_24g_short_sleep_set_4ms
+0x4746 mem_mouse_24g_long_sleep_set_4ms
+0x4749 mem_mouse_24g_fast_hop_count_4ms
+0x474a mem_mouse_24g_short_sleep_set_8ms
+0x474d mem_mouse_24g_long_sleep_set_8ms
+0x4750 mem_mouse_24g_fast_hop_count_8ms
+0x4751 mem_mouse_24g_tsniff
+0x4755 mem_mouse_24g_tsniff_4ms
+0x4759 mem_mouse_24g_tsniff_8ms
+0x475d mem_mouse_24g_short_sleep_set_init
+0x4760 mem_mouse_24g_tx_count
+0x4761 mem_mouse_24g_tx_time_last
+0x4767 mem_mouse_24g_tx_time_last_delt
+0x476b mem_mouse_24g_tx_time_sum
+0x4770 mem_mouse_24g_tx_time_sum_count
+0x4771 mem_mouse_24g_tx_time_offset
+0x4772 mem_mouse_24g_sleep_miss
+0x4773 mem_mouse_24g_sleep_time_temp
+0x4777 mem_mouse_24g_sleep_miss_temp
+0x477b mem_mouse_sleep_deal_type
+0x477c mem_mouse_24g_long_sleep_flag
+0x477d mem_mouse_long_mult_flag
+0x477e mem_mouse_current_mult_timer
+0x477f mem_reconn_times
+0x4780 mem_reconn_times_init
+0x4781 mem_mouse_no_data_timer
+0x4783 mem_mouse_rssi_signal_buf
+0x478b mem_btclk_sensor
+0x478f mem_mouse_bluetooth_fast_conn_flag
+0x4790 mem_mouse_discovery_timer
+0x4792 mem_mouse_bluetooth_reconnect_timeout
+0x4793 mem_mouse_need_soft_reset
+0x4794 mem_mouse_le_bb_connected_flag
+0x4795 mem_mouse_le_reconnect_flag
+0x4796 mem_mouse_send_secutiry_request_timer
+0x4797 mem_mouse_le_lap_temp
+0x479a mem_le_adv_ind
+0x479d mem_le_adv_direct_ind
+0x47a0 mem_le_adv_swift_pair
+0x47b4 mem_le_data_len
+0x47b5 mem_le_keyboard_handle
+0x47b7 mem_le_multimedia_handle
+0x47b9 mem_le_systemctrl_handle
+0x47bb mem_le_battery_level_handle
+0x47bd mem_le_battery_level_percentage
+0x47be mem_le_battery_level_updata_timer_init
+0x47c0 mem_le_battery_level_updata_timer
+0x47c2 mem_mouse_le_conn_param_reject
+0x47c3 mem_le_tx_buffer0_omemalloc
+0x47e3 mem_le_tx_buffer1_omemalloc
+0x4803 mem_le_tx_buffer2_omemalloc
+0x4823 mem_le_tx_buffer3_omemalloc
+0x4843 mem_le_connect_status_flag
+0x4844 mem_le_start_encrypt_timer
+0x4845 mem_mouse_direct_timer
+0x4846 mem_power_on_flag
+0x4847 mem_mouse_factory_addr
+0x484d mem_keyboard_flag
+0x4855 mem_keyboard_tx_data
+0x485f mem_keyboard_data_send_flag
+0x4860 mem_keyboard_le_send_conn_param_update
+0x4861 mem_keyboard_le_send_conn_param_update_timer
+0x4862 mem_le_start_auto_reco_timer
+0x4863 mem_mcu_stb_gpio
+0x4864 mem_mcu_clk_gpio
+0x4865 mem_mcu_rstb_gpio
+0x4866 mem_keyboard_caps_led_gpio
+0x4867 mem_keyboard_num_led_gpio
+0x4868 mem_keyboard_power_led_gpio
+0x4869 mem_keyboard_caps_led_on_timer
+0x486b mem_keyboard_led_r_gpio
+0x486c mem_keyboard_led_g_gpio
+0x486d mem_keyboard_led_b_gpio
+0x486e mem_key_row_gpio
+0x4876 mem_key_col_gpio
+0x488a mem_key_excol_gpio
+0x4896 mem_kb_row_ptr
+0x4898 mem_kb_col_ptr
+0x489a mem_kb_excol_ptr
+0x489c mem_keyscan_value_current
+0x48b0 mem_keyscan_value_check
+0x48c4 mem_keyscan_value_old
+0x48d8 mem_keyscan_exmcu_value
+0x48e3 mem_keyscan_value_ptr
+0x48e5 mem_keyscan_exmcu_value_ptr
+0x48e7 mem_keyscan_value_temp
+0x48e8 mem_keyscan_col_loop_count
+0x48e9 mem_keyscan_exmcu_wait_wake_count
+0x48eb mem_same_keyvalue_timerout_flag
+0x48ec mem_same_keyvalue_timer_init
+0x48ee mem_same_keyvalue_timer
+0x48f0 mem_keyboard_current_col_press_key_count
+0x48f1 mem_keyboard_all_press_key_count
+0x48f2 mem_keyboard_same_row_press_key_count
+0x48f3 mem_keyboard_ghost_flag
+0x48f4 mem_keyboard_data_change_flag
+0x48f5 mem_keyboard_keyvalue_temp
+0x48f6 mem_keyboard_press_flag_temp
+0x48f7 mem_keyboard_keyvalue_bit_loop_count
+0x48f8 mem_keyboard_keyvalue_buffer
+0x4901 mem_keyboard_keyvalue_map
+0x49a1 mem_keyboard_fn_flag
+0x49a2 mem_keyboard_control_key_flag
+0x49a3 mem_keyboard_bt_button_flag
+0x49a4 mem_keyboard_pairing_type
+0x49a5 mem_keyboard_commbination_key_bt
+0x49a7 mem_keyboard_commbination_key_24g
+0x49a9 mem_24g_repeat_send_flag
+0x49aa mem_keyboard_led_status
+0x49ab mem_keyboard_led_status_get
+0x49ac mem_keyboard_led_status_get_timer
+0x49ad mem_keyboard_led_status_get_timer_last
+0x49ae mem_keyboard_fn_esc_f1_f12
+0x49ae mem_keyboard_fn_first
+0x49af mem_keyboard_fn_esc
+0x49b0 mem_keyboard_fn_f1
+0x49b1 mem_keyboard_fn_f2
+0x49b2 mem_keyboard_fn_f3
+0x49b3 mem_keyboard_fn_f4
+0x49b4 mem_keyboard_fn_f5
+0x49b5 mem_keyboard_fn_f6
+0x49b6 mem_keyboard_fn_f7
+0x49b7 mem_keyboard_fn_f8
+0x49b8 mem_keyboard_fn_f9
+0x49b9 mem_keyboard_fn_f10
+0x49ba mem_keyboard_fn_f11
+0x49bb mem_keyboard_fn_f12
+0x49bc mem_keyboard_fn_del
+0x49bd mem_keyboard_fn_arrow_enable_flag
+0x49be mem_keyboard_fn_left_ctrl_enable_flag
+0x49bf mem_keyboard_fn_space_enable_flag
+0x49c0 mem_keyboard_fn_system_switch_enable_flag
+0x49c1 mem_keyboard_commbination_key_step
+0x49c2 mem_keyboard_commbination_control_key_value
+0x49c3 mem_keyboard_commbination_standard_key_value
+0x49c4 mem_keyboard_commbination_control_key_delay_release_timer
+0x49c5 mem_keyboard_consumer_key_status
+0x49c6 mem_kb_computer_system
+0x49c7 mem_otp_read_retention_memory
+0x49df mem_otp_read_retention_offset
+0x49e1 mem_le_search_service_uuid
+0x49f1 mem_le_connect_ios_mac_flag
+0x49f2 mem_le_search_mac_uuid
+0x49f4 mem_le_search_mac_manu_name
+0x49fd mem_keybord_appearance
+0x49ff mem_keyboard_commbination_fast_conn_bt
+0x4a01 mem_keyboard_factory_addr
+0x4a07 mem_keyboard_device_poweron_timer_count_init
+0x4a08 mem_keyboard_device_poweron_timer_count
+0x4a09 mem_keyboard_disconvey_led_blink_time
+0x4a0b mem_keyboard_led_type
+0x4a0c mem_keyboard_blink_count
+0x4a0d mem_keyboard_struct_led_gpio
+0x4a0e mem_keyboard_on_time
+0x4a10 mem_keyboard_off_time
+0x4a12 mem_keyboard_cb_ledon
+0x4a14 mem_keyboard_cb_ledoff
+0x4a16 mem_keyboard_keyvalue_map_new
+0x4ab6 mem_keyboard_customer_key
+0x4ab7 mem_keyboard_customer_data_trigger
+0x4ab8 mem_keyboard_customer_data_trigger_last
+0x4ab9 mem_keyscan_exmcu_reset_count
+0x4aba mem_power_on_flag_new
+0x4abb mem_keyboard_le_map_len
+0x4abd mem_keyboard_le_hid_map
+0x4b99 mem_keyboard_change_vid_pid_flag
+0x4b9a mem_keybaord_pnp_vid_source
+0x4b9b mem_keyboard_vid
+0x4b9d mem_keyboard_pid
+0x4b9f mem_keyboard_product_version
+0x4ba1 mem_keyboard_switch_device_flag
+0x4ba2 mem_keyboard_usb_enable
+0x4ba3 mem_keyboard_switch_g24_enable
+0x4ba4 mem_keyboard_switch_g24_press_timer
+0x4ba5 mem_keyboard_switch_bt_enable
+0x4ba6 mem_keyboard_switch_bt_press_timer
+0x4ba7 mem_keyboard_switch_usb_enable
+0x4ba8 mem_keyboard_switch_device_to_g24
+0x4bab mem_keyboard_switch_device_to_bt1
+0x4bae mem_keyboard_switch_device_to_bt2
+0x4bb1 mem_keyboard_switch_device_to_bt3
+0x4bb4 mem_keyboard_switch_device_to_usb
+0x4bb7 mem_keyboard_24g_led_gpio
+0x4bb8 mem_keyboard_bt1_led_gpio
+0x4bb9 mem_keyboard_bt2_led_gpio
+0x4bba mem_keyboard_bt3_led_gpio
+0x4bbb mem_keyboard_scroll_led_gpio
+0x4bbc mem_keyboard_low_voltage_alarm_gpio
+0x4bbd mem_usb_level_check_gpio
+0x4bbe mem_mouse_usb_vdd_status_current
+0x4bbf mem_mouse_usb_vdd_status_last
+0x4bc0 mem_mouse_usb_wait_updata_timer
+0x4bc1 mem_usb_vid_pid_new
+0x4bca mem_keyboard_mode_led_on_timer
+0x4bcb mem_rgb_pwm_conf
+0x4bd1 mem_rgb_pwm_breathe_flag
+0x4bd2 mem_rgb_on_color_temp
+0x4bd3 mem_rgb_on_color
+0x4bda mem_pwm_lpm_mode_flag
+0x4bdb mem_ui_check_timer_setup
+0x4bdf mem_customize_timer_setup
+0x4be1 mem_backlight_on_flag
+0x4be2 mem_backlight_on_type
+0x4be3 mem_backlight_breathe_type
+0x4be4 mem_keyboard_led_on_time_init
+0x4be6 mem_device_flag_temp_new
+0x4be7 mem_otp_store_device_info_flag
+0x4be8 mem_otp_store_system_flag
+0x4be9 mem_adc_reference3v_ft_data
+0x4be9 mem_adc_reference3v_gpio1v_ft_data
+0x4beb mem_adc_reference3v_gpio2v_ft_data
+0x4bed mem_adc_reference3v_vdcdc3p6v_ft_data
+0x4bef mem_adc_reference3v_vdcdc4p6v_ft_data
+0x4bf1 mem_adc_reference3v_inter1v_ft_data
+0x4bf3 mem_adc_reference3v_inter1v_now_data
+0x4bf5 mem_adc_reference_mode
+0x4bf6 mem_le_conn_rcv_new
+0x4bf7 mem_le_conn_first_rcv
+0x4bf8 mem_le_check_retransmit_flag
+0x4bf9 mem_le_retransmit_cnt
+0x4bfa mem_le_check_retransmit_discon_flag
+0x4bfb mem_le_tx_buffer0_omemalloc_new
+0x4c3b mem_le_tx_buffer1_omemalloc_new
+0x4c7b mem_le_tx_buffer2_omemalloc_new
+0x4cbb mem_le_tx_buffer3_omemalloc_new
+0x4cfb mem_keyscan_exmcu_value_new
+0x4d07 mem_keyboard_pair_led_flag
+0x4d08 mem_keyboard_adc_low_volatage_led_timer_count
+0x4d09 mem_adc_low_volatage_led_blink_timer
+0x4d0b mem_keyboard_low_volatage_led_flag
+0x4d0c mem_keyboard_low_volatage_led_blink_new_data_enable
+0x4d0d mem_qdec_set_flag
+0x4d0e mem_otp_read_retention_max_size
+0x4d10 mem_keyboard_reuse_led_bit
+0x4d11 mem_keyboard_delay_lpm_flag
+0x4d12 mem_keyboard_evt_btclk
+0x4d16 mem_keyboard_evt_timer_count
+0x4846 mem_mouse_key
+0x4847 mem_mouse_x
+0x4849 mem_mouse_y
+0x484b mem_mouse_z
+0x484c mem_mouse_tz
+0x484d mem_mouse_xy_h
+0x484e mem_mouse_key_last
+0x484f mem_wheel_tb_old_pinlevel
+0x4850 mem_wheel_tb_new_pinlevel
+0x4851 mem_wheel_tog
+0x4852 mem_mouse_tz_data
+0x4853 mem_mwheel_b_old_pinlevel
+0x4854 mem_mwheel_b_new_pinlevel
+0x4855 mem_mwheel_tog
+0x4856 mem_mouse_z_data
+0x4857 mem_mouse_wheel_trigger
+0x4858 mem_mouse_wheel_trigger_timer
+0x4859 mem_sensor_id1
+0x485a mem_sensor_id2
+0x485b mem_sensor_shutter_hi
+0x485c mem_sensor_shutter_lo
+0x485d mem_sensor_smart_flag
+0x485e mem_sensor_squal_reg
+0x485f mem_sensor_iqc
+0x4860 mem_mouse_move_flag
+0x4861 mem_mouse_asm_flag
+0x4862 mem_mouse_x_pre
+0x4864 mem_mouse_y_pre
+0x4866 mem_mouse_data_xtemp
+0x4867 mem_mouse_data_ytemp
+0x4868 mem_mouse_dpi_seting
+0x4868 mem_320x_dpi_0
+0x4869 mem_320x_dpi_1
+0x486a mem_320x_dpi_2
+0x486b mem_320x_dpi_3
+0x486c mem_3212_dpi_0
+0x486d mem_3212_dpi_1
+0x486e mem_3212_dpi_2
+0x486f mem_3212_dpi_3
+0x4870 mem_ka8g2_dpi_0
+0x4871 mem_ka8g2_dpi_1
+0x4872 mem_ka8g2_dpi_2
+0x4873 mem_ka8g2_dpi_3
+0x4874 mem_sensor_s201_dpi
+0x4874 mem_sensor_s201_dpi_0
+0x4875 mem_sensor_s201_dpi_1
+0x4876 mem_sensor_s201_dpi_2
+0x4877 mem_sensor_s201_dpi_3
+0x4878 mem_sensor_s201_dpi_4
+0x4879 mem_mouse_cpi_count
+0x487a mem_mouse_dpi_button_state
+0x487b mem_mouse_dpi_long_press_flag
+0x487c mem_sensor_3212_init
+0x4886 mem_sensor_3204_init
+0x4890 mem_sensor_3205_init
+0x489a mem_sensor_32xx_init
+0x48b4 mem_sensor_32xx_init_1
+0x48d6 mem_sensor_8650_init
+0x48fc mem_sensor_ka8ul_init
+0x491a mem_sensor_8009_init
+0x492a mem_sensor_ka8g2_init
+0x493a mem_sensor_p6520_init
+0x4946 mem_sensor_poweron_init
+0x494e mem_sensor_ka8g2_poweron_init
+0x4956 mem_mouse_clear_sensor_data_flag
+0x4957 mem_config_sensor_type
+0x4958 mem_config_sensor_angle
+0x4959 mem_bluetooth_125hz_cnt
+0x495a mem_device_addr_temp
+0x4961 mem_mouse_bt_boot_mode
+0x4962 mem_mouse_bt_boot_data
+0x4967 mem_bt_send_max_slot_req_accept_after_switch
+0x4968 mem_mouse_bt_send_first_package_timer
+0x4969 mem_mouse_bt_send_first_package_flag
+0x496a mem_lmi_opcode_temp
+0x496b mem_lpm_mult_init
+0x496c mem_customer_key
+0x496d mem_customer_data_trigger
+0x496e mem_customer_data_trigger_last
+0x496f mem_mouse_lkey_press_status
+0x4970 mem_mouse_rkey_press_status
+0x4971 mem_mouse_mkey_press_status
+0x4972 mem_mouse_bkkey_press_status
+0x4973 mem_mouse_fwkey_press_status
+0x4974 mem_mouse_dpikey_press_status
+0x4975 mem_mouse_pbkey_press_status
+0x4976 mem_mouse_customerkey_press_status
+0x4977 mem_mouse_key_temp
+0x4978 mem_mouse_key_status
+0x4979 mem_mouse_matrix_key_cow_count
+0x497a mem_mouse_matrix_key_row_count
+0x497b mem_mouse_ghost_flag
+0x497c mem_bt_discovery_count
+0x497d mem_select_device_count
+0x497e mem_mouse_commbination_key
+0x497f mem_select_device_button_statue
+0x4980 mem_commbination_key_statue
+0x4981 mem_combination_ui_button_count
+0x4982 mem_fire_key_status
+0x4983 mem_fire_key_delay
+0x4987 mem_fire_key_flag
+0x4988 mem_dpi_another_press_status
+0x4989 mem_dpi_another_button_state
+0x498a mem_dpi_another_button_down_enable
+0x498b mem_mouse_key_temp_patch
+0x498c mem_le_name_patch_len
+0x498d mem_le_name_patch
+0x49a0 mem_device_flag_last
+0x49a1 mem_device_flag_temp
+0x49a2 mem_device_flag_value
+0x49a3 mem_mouse_le_addr1_last
+0x49a9 mem_mouse_le_addr1_temp
+0x49af mem_mouse_le_locall_addr1_last
+0x49b5 mem_mouse_le_locall_addr1_temp
+0x49bb mem_mouse_le_addr2_last
+0x49c1 mem_mouse_le_addr2_temp
+0x49c7 mem_mouse_le_locall_addr2_last
+0x49cd mem_mouse_le_locall_addr2_temp
+0x49d3 mem_mouse_dpi_last
+0x49d4 mem_mouse_dpi_temp
+0x49d5 mem_mouse_otp_dpi_value
+0x49d6 mem_mouse_24g_addr_last
+0x49da mem_mouse_24g_addr_temp
+0x49de mem_random_addr_increase_count_last
+0x49e0 mem_random_addr_increase_count_temp
+0x49e2 mem_otp_offset_device_flag
+0x49e4 mem_otp_offset_device_flag_end
+0x49e6 mem_otp_offset_24g_addr
+0x49e8 mem_otp_offset_24g_addr_end
+0x49ea mem_otp_offset_le_addr1
+0x49ec mem_otp_offset_le_addr1_end
+0x49ee mem_otp_offset_le_locall_addr1
+0x49f0 mem_otp_offset_le_locall_addr1_end
+0x49f2 mem_otp_offset_le_addr2
+0x49f4 mem_otp_offset_le_addr2_end
+0x49f6 mem_otp_offset_le_locall_addr2
+0x49f8 mem_otp_offset_le_locall_addr2_end
+0x49fa mem_otp_offset_dpi
+0x49fc mem_otp_offset_dpi_end
+0x49fe mem_otp_offset_le_addr_increase_count
+0x4a00 mem_otp_offset_le_addr_increase_count_end
+0x4a02 mem_otp_offset_app_initflag
+0x4a04 mem_24g_txpayload_buf
+0x4a14 mem_release_data_from_receiver_enable
+0x4a15 mem_release_data_from_transmiter_enable
+0x4a16 mem_flippen_key0_gpio
+0x4a17 mem_flippen_key1_gpio
+0x4a18 mem_flippen_key2_gpio
+0x4a19 mem_flippen_key3_gpio
+0x4a1a mem_flippen_key4_gpio
+0x4a1b mem_flippen_key5_gpio
+0x4a1c mem_flippen_key6_gpio
+0x4a1d mem_flippen_key7_gpio
+0x4a1e mem_flippen_key0_press_status
+0x4a1f mem_flippen_key1_press_status
+0x4a20 mem_flippen_key2_press_status
+0x4a21 mem_flippen_key3_press_status
+0x4a22 mem_flippen_key4_press_status
+0x4a23 mem_flippen_key5_press_status
+0x4a24 mem_flippen_key6_press_status
+0x4a25 mem_flippen_key7_press_status
+0x4a26 mem_key_press_data
+0x4a26 mem_key_pageup_data
+0x4a2f mem_key_pagedown_data
+0x4a38 mem_key_shift_f5_data
+0x4a41 mem_key_esc_data
+0x4a4a mem_key_b_data
+0x4a53 mem_key_tab
+0x4a5c mem_key_enter
+0x4a65 mem_key_alt_tab
+0x4a6e mem_key_alt_f4
+0x4a77 mem_key_play_pause
+0x4a80 mem_key_vol_up
+0x4a89 mem_key_vol_down
+0x4a92 mem_standard_key_release
+0x4a9b mem_system_ctrl_key_release
+0x4aa4 mem_media_key_release
+0x4aad mem_key0_long_press_flag
+0x4aae mem_key1_long_press_flag
+0x4aaf mem_key2_long_press_flag
+0x4ab0 mem_key3_long_press_flag
+0x4ab1 mem_key4_long_press_flag
+0x4ab2 mem_key0_long_press_event
+0x4ab3 mem_key1_long_press_event
+0x4ab4 mem_key2_long_press_event
+0x4ab5 mem_key3_long_press_event
+0x4ab6 mem_key4_long_press_event
+0x4ab7 mem_key0_short_press_flag
+0x4ab8 mem_key1_short_press_flag
+0x4ab9 mem_key2_short_press_flag
+0x4aba mem_key3_short_press_flag
+0x4abb mem_key4_short_press_flag
+0x4abc mem_key0_press_timer_count
+0x4abd mem_key1_press_timer_count
+0x4abe mem_key2_press_timer_count
+0x4abf mem_key3_press_timer_count
+0x4ac0 mem_key4_press_timer_count
+0x4ac1 mem_combination_key_down_flag
+0x4ac2 mem_combination_key_longpress_flag
+0x4ac3 mem_key_disable_timer
+0x4ac4 mem_24g_calculate_package_id_disable
+0x4ac5 mem_24g_package_id_abandon_flag
+0x4ac6 mem_24g_package_id
+0x4ac7 mem_key_state
+0x4ac8 mem_key_press_state
+0x4ac9 mem_poweron_first_blank_data_enable
+0x4aca mem_flippen_no_data_timeout
+0x4acc mem_flippen_start_pair_no_data_timeout
+0x4ace mem_key_longpress_timer_init
+0x4ad0 mem_key_longpress_timer
+0x4ad2 mem_low_voltage_led_blink_flag
+0x4ad3 mem_low_voltage_led_blink_start_timer
+0x4ad4 mem_poweron_led_blink_flag
+0x4ad5 mem_24g_pair_enable_flag
+0x4ad6 mem_24g_ch_work
+0x4ad7 mem_24g_pair_key_down_flag
+0x4ad8 mem_24g_pairing_stop_flag
+0x4ad9 mem_longpress_24g_enter_hibernate_flag
+0x4ada mem_g24_connected_state
+0x4adb mem_g24_pairing_stop_flag
+0x4adc mem_send_package_before_check
+0x462d mem_remote_car_hard_soft_switch
+0x462e mem_remote_car_queue_each_size
+0x462f mem_remote_car_queue_length
+0x4630 mem_remote_car_queue_curr_num
+0x4631 mem_remote_car_queue_read_ptr
+0x4632 mem_remote_car_queue_write_ptr
+0x4633 mem_remote_car_queue_ele
+0x468d mem_remote_style_led_type
+0x468e mem_remote_style_blink_count
+0x468f mem_remote_style_struct_led_gpio
+0x4690 mem_remote_style_on_time
+0x4692 mem_remote_style_off_time
+0x4694 mem_remote_style_cb_ledon
+0x4696 mem_remote_style_cb_ledoff
+0x4698 mem_remote_car_led_num
+0x4699 mem_remote_car_led_map
+0x46a1 mem_remote_car_keyscan
+0x46a1 mem_remote_car_key_num
+0x46a2 mem_cb_remote_car_keyscan
+0x46a4 mem_remote_car_key_conf0
+0x46a4 mem_remote_car_key_conf0_pin
+0x46a5 mem_remote_car_key_conf1
+0x46a5 mem_remote_car_key_conf1_pin
+0x46a6 mem_remote_car_key_conf2
+0x46a6 mem_remote_car_key_conf2_pin
+0x46a7 mem_remote_car_key_conf3
+0x46a7 mem_remote_car_key_conf3_pin
+0x46a8 mem_remote_car_key_conf4
+0x46a8 mem_remote_car_key_conf4_pin
+0x46a9 mem_remote_car_key_conf5
+0x46a9 mem_remote_car_key_conf5_pin
+0x46aa mem_remote_car_key_conf6
+0x46aa mem_remote_car_key_conf6_pin
+0x46ab mem_rocker_negative_flag
+0x46ac mem_rocker_work_status
+0x46ad mem_current_vdd_value_default_mid_x
+0x46af mem_current_vdd_value_default_mid_y
+0x46b1 mem_current_vdd_value_default_mid_temp
+0x46b3 mem_current_vdd_default_range
+0x46b5 mem_rocker_last_status
+0x46b7 mem_rocker_status
+0x46b7 mem_rocker_x_status
+0x46b8 mem_rocker_y_status
+0x46b9 mem_remote_car_config_param
+0x46b9 mem_remote_car_config_setting_flag
+0x46ba mem_remote_car_config_key_map
+0x46bb mem_remote_car_config_layout
+0x46bc mem_remote_car_config_connect_led_gpio
+0x46bd mem_remote_car_config_check_way
+0x46be mem_remote_car_config_soft_switch_enable
+0x46bf mem_remote_car_config_soft_switch_gpio
+0x46c0 mem_remote_car_config_timeout_shutdown_enable
+0x46c1 mem_remote_car_24g_motor_packet
+0x46c1 mem_remote_car_24g_motor_packet_lenght
+0x46c2 mem_remote_car_24g_motor_send_packet_head
+0x46c4 mem_remote_car_24g_motor_send_cmd
+0x46c5 mem_remote_car_24g_motor_send_length
+0x46c7 mem_remote_car_24g_motor_send_payload
+0x46c7 mem_remote_car_24g_motor1_payload
+0x46c9 mem_remote_car_24g_motor2_payload
+0x46cb mem_remote_car_24g_motor3_payload
+0x46cd mem_remote_car_24g_motor_send_checksum
+0x46ce mem_remote_car_24g_fire_packet
+0x46ce mem_remote_car_24g_fire_packet_lenght
+0x46cf mem_remote_car_24g_fire_send_packet_head
+0x46d1 mem_remote_car_24g_fire_send_cmd
+0x46d2 mem_remote_car_24g_fire_send_length
+0x46d4 mem_remote_car_24g_fire_send_payload
+0x46d6 mem_remote_car_24g_fire_send_checksum
+0x46d7 mem_remote_car_24g_tx_temp
+0x46e6 mem_remote_car_no_data_timeout
+0x46e8 mem_remote_car_no_data_timer
+0x46ea mem_remote_car_soft_power
+0x46ea mem_remote_car_power_state
+0x46eb mem_remote_car_power_timer
+0x46ec mem_remote_car_power_off_timeout
+0x46ed mem_remote_car_power_starting_timeout
+0x46ee mem_remote_car_power_off_cb
+0x46f0 mem_remote_car_power_starting_cb
+0x46f2 mem_remote_car_power_standby_cb
+0x46f4 mem_remote_key_status
+0x46f5 mem_remote_car_24g_status
+0x46f6 mem_remote_car_24g_auto_work_step
+0x46f7 mem_remote_car_24g_pair_success_flag
+0x46f8 mem_remote_car_empty_packet
+0x46f9 mem_remote_car_motor1_key0_press_state
+0x46fa mem_remote_car_motor1_key1_press_state
+0x46fb mem_remote_car_motor2_key2_press_state
+0x46fc mem_remote_car_motor2_key3_press_state
+0x46fd mem_remote_car_motor1_rel_state
+0x46fe mem_remote_car_motor2_rel_state
+0x46ff mem_remote_car_no_data_check
+0x4700 mem_remote_24g_commom_addr
+0x4704 mem_remote_24g_commom_addr_temp
+0x4708 mem_remote_24g_commom_addr_read
+0x470c mem_remote_save_addr_flag
+0x44f1 mem_hci_uart_tx_gpio
+0x44f2 mem_hci_uart_rx_gpio
+0x44f3 mem_hci_uart_rts_gpio
+0x44f4 mem_hci_uart_cts_gpio
+0x44f5 mem_hci_pwm_12mhz_gpio
+0x44f1 mem_soft_version_num
+0x44f3 mem_module_wake_up_gpio
+0x44f4 mem_module_state_gpio
+0x44f5 mem_module_connect_state_gpio
+0x44f6 mem_current_packet_length
+0x44f8 mem_module_state
+0x44f9 mem_module_mcu_wake_pin
+0x44fa mem_module_mcu_wake_delay_us
+0x44fe mem_module_le_lpm_mult
+0x44ff mem_module_bluetooth_stauts_by_command
+0x4500 mem_module_uart_rx_buffer
+0x4502 mem_module_uart_rx_buffer_end
+0x4504 mem_module_uart_tx_buffer
+0x4506 mem_module_uart_tx_buffer_end
+0x4508 mem_module_uarta_baud_rate
+0x450a mem_module_read_vdd_flag
+0x450b mem_module_read_vdd_count
+0x450c mem_module_vdd_quotient
+0x450d mem_module_vdd_remainder
+0x450e mem_module_ble_data_uart_max_length
+0x450f mem_module_flag
+0x4511 mem_module_hci_notify_len
+0x4512 mem_module_hci_notify_handle
+0x4514 mem_module_hci_nofiy_addr
+0x4516 mem_module_hci_notify_type
+0x4517 mem_le_conn_flag
+0x4518 mem_module_le_att_list
+0x4770 mem_module_le_att_list_end
+0x4770 mem_module_nv_data
+0x4770 mem_module_nv_data0
+0x4792 mem_module_nv_data1
+0x47b4 mem_module_nv_data2
+0x47d6 mem_module_nv_data3
+0x47f8 mem_module_nv_data4
+0x481a mem_module_nv_data_end
+0x44f1 mem_ble_shutter_enable_notify
+0x44f2 mem_ble_shutter_reconn_adv_interval
+0x44f4 mem_ble_shutter_discovery_adv_interval
+0x44f6 mem_ble_shutter_reconn_timeout
+0x44f8 mem_ble_shutter_reconn_timer
+0x44fa mem_ble_shutter_reconn_blink_on_time
+0x44fc mem_ble_shutter_reconn_blink_off_time
+0x44fe mem_ble_shutter_discovery_blink_on_time
+0x4500 mem_ble_shutter_discovery_blink_off_time
+0x4502 mem_ble_shutter_interval_min
+0x4504 mem_ble_shutter_interval_max
+0x4506 mem_ble_shutter_latency
+0x4508 mem_ble_shutter_timeout
+0x450a mem_ble_shutter_interval_min_new
+0x450c mem_ble_shutter_interval_max_new
+0x450e mem_ble_shutter_latency_new
+0x4510 mem_ble_shutter_timeout_new
+0x4512 mem_ble_shutter_discovery_timeout
+0x4514 mem_ble_shutter_connect_timeout
+0x4516 mem_shutter_sleep_timeout
+0x4518 mem_shutter_sleep_timer
+0x451a mem_shutter_hard_soft_switch_case
+0x451b mem_shutter_soft_switch_button_gpio
+0x451c mem_shutter_soft_switch_power_state
+0x451d mem_shutter_soft_switch_poweron_time
+0x451e mem_shutter_soft_switch_poweroff_time
+0x451f mem_shutter_soft_switch_poweron_callback_function
+0x4521 mem_shutter_soft_switch_poweroff_callback_function
+0x4523 mem_shutter_keyscan
+0x4523 mem_shutter_key_num
+0x4524 mem_cb_shutter_keycan
+0x4526 mem_shutter_key_conf0
+0x4527 mem_shutter_key_conf1
+0x4528 mem_shutter_key_conf2
+0x4529 mem_shutter_key_conf3
+0x452a mem_shutter_key_conf4
+0x452b mem_shutter_key_conf5
+0x452c mem_shutter_key_conf6
+0x452d mem_shutter_key_conf7
+0x452e mem_key0_press
+0x4533 mem_key1_press
+0x4538 mem_key2_press
+0x453d mem_key3_press
+0x4542 mem_key4_press
+0x4547 mem_key5_press
+0x454c mem_key6_press
+0x4551 mem_key7_press
+0x4556 mem_key0_release
+0x455b mem_key1_release
+0x4560 mem_key2_release
+0x4565 mem_key3_release
+0x456a mem_key4_release
+0x456f mem_key5_release
+0x4574 mem_key6_release
+0x4579 mem_key7_release
+0x457e mem_ble_data_buffer1
+0x4583 mem_ble_data_buffer2
+0x4588 mem_ble_data_buffer3
+0x458d mem_ble_data_buffer4
+0x4592 mem_ble_data_buffer5
+0x4597 mem_ble_data_buffer6
+0x459c mem_ble_data_buffer7
+0x45a1 mem_ble_data_buffer8
+0x45a6 mem_ble_data_buffer9_58
+0x45d8 mem_queue_each_size
+0x45d9 mem_queue_length
+0x45da mem_queue_curr_num
+0x45db mem_queue_read_ptr
+0x45dc mem_queue_write_ptr
+0x45dd mem_queue_ele
+0x45fd mem_shutter_nv_data
+0x46a7 mem_shutter_led_struct_app_led
+0x46a7 mem_shutter_led_struct_app_led_type
+0x46a8 mem_shutter_led_struct_app_led_blink_count
+0x46a9 mem_shutter_led_struct_app_led_gpio
+0x46aa mem_shutter_led_struct_app_led_on_time
+0x46ac mem_shutter_led_struct_app_led_off_time
+0x46ae mem_shutter_led_struct_app_led_on_callback
+0x46b0 mem_shutter_led_struct_app_led_off_callback
+0x46b2 mem_shutter_power_off_led_style
+0x46b2 mem_shutter_power_off_led_style_type
+0x46b3 mem_shutter_power_off_led_style_blink_count
+0x46b4 mem_shutter_power_off_led_style_gpio
+0x46b5 mem_shutter_power_off_led_style_on_time
+0x46b7 mem_shutter_power_off_led_style_off_time
+0x46b9 mem_shutter_power_off_led_style_on_callback
+0x46bb mem_shutter_power_off_led_style_off_callback
+0x46bd mem_shutter_soft_swtich_botton_down
+0x46be mem_shutter_soft_swtich_led_struct_temp
+0x46c9 mem_shutter_power_off_timeout
+0x46ca mem_shutter_power_off_timer
+0x46cb mem_shutter_key_conf0_temp
+0x46cd mem_shutter_led_struct_app_led_gpio_temp
+0x46ce mem_shutter_hard_soft_switch_case_temp
+0x46cf mem_shutter_soft_switch_button_gpio_temp
+0x46d0 mem_shutter_soft_switch_first_power_on
+0x46d1 mem_shutter_dy_conf
+0x46d2 mem_shutter_le_uuid_sup
+0x4876 mem_shutter_key_value_list
+0x489e mem_shutter_discovery_time_conf
+0x48a6 mem_shutter_reconn_or_discovery_blink_time_conf
+0x48ae mem_shutter_1s_timer
+0x48af mem_shutter_timer_625us
+0x48b1 mem_rf_init_data_new
+0x48bc mem_key_value_xmem
+0x48be mem_shutter_le_hid_map
+0x49e0 mem_shutter_le_map_len_android
+0x49e2 mem_shutter_le_map_len_ios
+0x49e4 mem_dy_le_search_service_uuid
+0x49f4 mem_iphone_flag
+0x49f5 mem_send_data_delay
+0x49f6 mem_key_send_clk
+0x49fa mem_shutter_key_state0
+0x4a04 mem_shutter_key_state1
+0x4a0e mem_shutter_key_state2
+0x4a18 mem_shutter_key_state3
+0x4a22 mem_shutter_key_state4
+0x4a2c mem_shutter_key_state5
+0x4a36 mem_shutter_key_state6
+0x4a40 mem_key0_release_new
+0x4a4f mem_key1_release_new
+0x4a5e mem_key2_release_new
+0x4a6d mem_key3_release_new
+0x4a7c mem_key4_release_new
+0x4a8b mem_key5_release_new
+0x4a9a mem_key6_release_new
+0x4aa9 mem_key0_long_press
+0x4aac mem_key1_long_press
+0x4aaf mem_key2_long_press
+0x4ab2 mem_key3_long_press
+0x4ab5 mem_key4_long_press
+0x4ab8 mem_key5_long_press
+0x4abb mem_key6_long_press
+0x4abe mem_key0_long_release
+0x4ac1 mem_key1_long_release
+0x4ac4 mem_key2_long_release
+0x4ac7 mem_key3_long_release
+0x4aca mem_key4_long_release
+0x4acd mem_key5_long_release
+0x4ad0 mem_key6_long_release
+0x4ad3 mem_combine_key0
+0x4ad5 mem_combine_key1
+0x4ad7 mem_combine_key2
+0x4ad9 mem_combine_key3
+0x4adb mem_combine_key4
+0x4add mem_combine_key5
+0x4adf mem_combine_key_state0
+0x4ae1 mem_combine_key0_press
+0x4aeb mem_combine_key1_press
+0x4af5 mem_combine_key2_press
+0x4aff mem_combine_key3_press
+0x4b09 mem_combine_key4_press
+0x4b13 mem_combine_key5_press
+0x4b1d mem_combine_key_release
+0x4b27 mem_shutter_move_data
+0x4b2b mem_key0_press_i
+0x4b35 mem_key1_press_i
+0x4b3f mem_key2_press_i
+0x4b49 mem_key3_press_i
+0x4b53 mem_key4_press_i
+0x4b5d mem_key5_press_i
+0x4b67 mem_key0_release_new_i
+0x4b76 mem_key1_release_new_i
+0x4b85 mem_key2_release_new_i
+0x4b94 mem_key3_release_new_i
+0x4ba3 mem_key4_release_new_i
+0x4bb2 mem_key5_release_new_i
+0x4bc1 mem_key6_release_new_i
+0x4bd0 mem_key0_long_press_i
+0x4bd3 mem_key1_long_press_i
+0x4bd6 mem_key2_long_press_i
+0x4bd9 mem_key3_long_press_i
+0x4bdc mem_key4_long_press_i
+0x4bdf mem_key5_long_press_i
+0x4be2 mem_key6_long_press_i
+0x4be5 mem_key0_long_release_i
+0x4be8 mem_key1_long_release_i
+0x4beb mem_key2_long_release_i
+0x4bee mem_key3_long_release_i
+0x4bf1 mem_key4_long_release_i
+0x4bf4 mem_key5_long_release_i
+0x4bf7 mem_key6_long_release_i
+0x4bfa mem_key3_release_new_t
+0x4c04 mem_key3_release_new_i_t
+0x4c0e mem_key3_press_count
+0x4c0f mem_shutter_like_timeout
+0x4c10 mem_shutter_key_pressed
+0x4c11 mem_shutter_combine_key_release
+0x4c12 mem_shutter_mousekey_value_list
+0x4eba mem_shutter_back_count
+0x4ebb mem_shutter_le_conned
+0x4ebc mem_move_config
+0x4ebc mem_shutter_iphone_beyond_x_count
+0x4ebd mem_shutter_iphone_beyond_y_count
+0x4ebe mem_shutter_move_data_x
+0x4ec0 mem_shutter_move_data_y
+0x4ec2 mem_last_shutter_le_iphone_flag
+0x4ec3 mem_move_config_end
+0x4ec3 mem_shutter_back_count_cache
+0x4ec4 mem_shutter_iphone_beyond_x_cache
+0x4ec5 mem_shutter_iphone_beyond_y_cache
+0x4ec6 mem_shutter_iphone_move_mid
+0x4ed0 mem_shutter_long_key_released_flag
+0x4ed1 mem_shutter_move_mid_timer
+0x4ed2 mem_shutter_pairing_success
+0x4ed3 mem_combine_key_release_value
+0x4ed5 mem_last_press_key_value
+0x4ed6 mem_shutter_first_move
+0x4ed7 mem_move_mode_set
+0x4ed8 mem_move_mode_key_index
+0x4ed9 mem_move_mode_trigger_enable
+0x4eda mem_shutter_android_move_mid
+0x4edf mem_shutter_iphone_up_mid
+0x4ee9 mem_shutter_iphone_like_mid
+0x4ef3 mem_shutter_key_num_conf
+0x4ef4 mem_shutter_dy_key_conf
+0x4efb mem_le_dy_adv_data
+0x4f06 mem_le_dy_scan_data
+0x4f12 mem_ble_shutter_dy_interval_min_new
+0x4f1a mem_shutter_ble_discovery_time_conf
+0x4f22 mem_queue_dy_each_size
+0x4f24 mem_dy_key0_press
+0x4f2e mem_dy_key1_press
+0x4f38 mem_dy_key2_press
+0x4f42 mem_dy_key3_press
+0x4f4c mem_dy_key4_press
+0x4f56 mem_dy_key5_press
+0x4f60 mem_dy_key6_press
+0x4f6a mem_shutter_led_on_light_dark_led_conf
+0x4f71 mem_shutter_led_off_light_dark_led_conf
+0x4f78 mem_shutter_reconn_blink_on_time_conf
+0x4f7c mem_shutter_discovery_blink_on_time_conf
+0x4f80 mem_shutter_efuse_start_offset
+0x4f82 mem_shutter_efuse_end_offset
+0x4f84 mem_initial_move_conf
+0x4f84 mem_android_initial_move_x
+0x4f86 mem_android_initial_move_y
+0x4f88 mem_iphone_initial_move_x
+0x4f8a mem_iphone_initial_move_y
+0x4f8c mem_otp_move_config
+0x4f8c mem_otp_shutter_move_data_x
+0x4f8e mem_otp_shutter_move_data_y
+0x4f90 mem_otp_last_shutter_le_iphone_flag
+0x4f91 mem_otp_move_config_end
+0x4f91 mem_otp_write_offset_addr
+0x4f93 mem_otp_read_offset_addr
+0x4f95 mem_otp_read_ios_android_addr
+0x4f97 mem_shutter_le_pairing_handle
+0x4f99 mem_shutter_temp_count
+0x4f9b mem_shutter_first_read_flag
+0x4f9c mem_shutter_valid_data_flag
+0x4f9d mem_shutter_volume_timer
+0x4f9e mem_shutter_link_timer
+0x4f9f mem_shutter_link_data
+0x4fa7 mem_shutter_link_data_i
+0x4faf mem_shutter_link_loop_flag
+0x4fb0 mem_shutter_end
+
+0x45ed mem_mesh_vendor_timer_timing_index_cyclic
+0x45ee mem_mesh_vendor_timer_timing_time_cyclic
+0x45f0 mem_mesh_vendor_timer_timing_zone_cyclic
+0x45f2 mem_mesh_vendor_timer_timing_weekdays_cyclic
+0x45f3 mem_mesh_vendor_timer_timing_attr_type_cyclic
+0x45f5 mem_mesh_vendor_timer_timing_attr_para_len_cyclic
+0x45f6 mem_mesh_vendor_timer_timing_attr_para_cyclic
+0x45fe mem_mesh_vendor_timer_timing_cyclic_flag
+0x45ed mem_mesh_vendor_timer_timing_index
+0x45ee mem_mesh_vendor_timer_timing_time
+0x45f2 mem_mesh_vendor_timer_timing_attr_type
+0x45f4 mem_mesh_vendor_timer_timing_attr_para_len
+0x45f5 mem_mesh_vendor_timer_timing_attr_para
+0x45fd mem_mesh_vendor_timer_timing_flag
+0x4806 mem_mesh_fast_pairing_timer
+0x49a1 mem_mesh_filter_status_message_opcode
+0x49a2 mem_mesh_filter_status_message_FilterType
+0x49a3 mem_mesh_filter_status_message_ListSize
+0x49a5 mem_mesh_filter_status_message_MIC
+0x49a1 mem_mesh_unsegmented_access_lower_transport_layer_head
+0x49a2 mem_mesh_unsegmented_access_lower_transport_layer_parameters
+0x49ad mem_mesh_unsegmented_access_lower_transport_layer_mic
+0x49a1 mem_mesh_segmented_access_lower_transport_layer_head
+0x49a2 mem_mesh_segmented_access_lower_transport_layer_SZMIC_SeqZero_SegO_SegN
+0x49a5 mem_mesh_segmented_access_lower_transport_layer_parameters
+0x49ad mem_mesh_segmented_access_lower_transport_layer_mic
+0x475e mem_k2_EncryptionKey
+0x474e mem_k2_PrivacyKey
Index: output/program.lis
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/program.lis	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/program.lis	(working copy)
@@ -0,0 +1,2123 @@
+              include "bt_format "
+              org 0x0000
+0000 c2840030 bbit1 8 ,pf_patch_ext 
+0001 c0000035 beq patch00_0 ,p_soft_reset 
+0002 c0010066 beq patch00_2 ,p_main_loop 
+0003 c008006f beq patch02_0 ,p_shutdown_radio 
+0004 c0088071 beq patch02_1 ,p_set_sync_on 
+0005 c00a0154 beq patch02_4 ,p_set_lemode 
+0006 c00a80f2 beq patch02_5 ,p_rf_rx_enable 
+0007 c00c00ff beq patch03_0 ,p_txon 
+0008 c00c8106 beq patch03_1 ,p_set_tx_power 
+0009 c00d007f beq patch03_2 ,p_initialize_radio_cont 
+000a c0128515 beq patch04_5 ,p_lpm_sleep 
+000b c0140507 beq patch05_0 ,p_lpm_dispatch 
+000c c0210173 beq patch08_2 ,p_keyboard_load_otp_info_check 
+000d c02201f0 beq patch08_4 ,p_keyboard_store_device_info 
+000e c0228490 beq patch08_5 ,p_keyboard_cb_fuction 
+000f c02301f3 beq patch08_6 ,p_keyboard_priority_bb_event 
+0010 c023820a beq patch08_7 ,p_keyboard_bb_event_timer 
+0011 c025830f beq patch09_3 ,p_keyboard_idle 
+0012 c026032f beq patch09_4 ,p_keyboard_start_work 
+0013 c027034c beq patch09_6 ,p_keyboard_keyscan 
+0014 c02803b5 beq patch0a_0 ,p_keyboard_key_process 
+0015 c0290438 beq patch0a_2 ,p_keyboard_keyvalue_fn_replace 
+0016 c02a8447 beq patch0a_5 ,p_keyboard_special_key_check 
+0017 c02b8471 beq patch0a_7 ,p_keyboard_motion 
+0018 c02c8481 beq patch0b_1 ,p_keyboard_device_data_tpye_check 
+0019 c02d04e2 beq patch0b_2 ,p_keyboard_before_hibernate 
+001a c02d84eb beq patch0b_3 ,p_keyboard_app_enter_hibernate 
+001b c02e04e6 beq patch0b_4 ,p_keyboard_device_led_all_off 
+001c c02e84ed beq patch0b_5 ,p_keyboard_setgpio_hibernate 
+001d c02f05d0 beq patch0b_6 ,p_keyboard_g24_transmit_process 
+001e c02f85fe beq patch0b_7 ,p_keyboard_g24_short_sleep 
+001f c03884eb beq patch0e_1 ,p_keyboard_app_enter_hibernate 
+0020 c03b0047 beq patch0e_6 ,p_keyboard_adc_read 
+0021 c03b8224 beq patch0e_7 ,p_keyboard_adc_read_start 
+0022 c040013c beq patch10_0 ,p_mouse_init_sunt 
+0023 c04204eb beq patch10_4 ,p_keyboard_app_enter_hibernate 
+0024 c04d02f4 beq patch13_2 ,p_keyboard_discover_setting_led_gpio 
+0025 c0588534 beq patch16_1 ,p_keyboard_init 
+0026 c0628170 beq patch18_5 ,p_otp_read_data 
+0027 c06a84d1 beq patch1a_5 ,p_gpio_set_wake_by_current_state 
+0028 c06b04ca beq patch1a_6 ,p_gpio_set_wake 
+0029 c06d013d beq patch1b_2 ,p_sadc_calibration 
+002a c06d8603 beq patch1b_3 ,p_adc_init_data 
+002b c06e0640 beq patch1b_4 ,p_enable_adc 
+002c c06e8621 beq patch1b_5 ,p_vdd_calculate_by_mode 
+002d c07b0594 beq patch1e_6 ,p_ui_ipc_send_event 
+002e c07d059c beq patch1f_2 ,p_check_51cmd_once_continue 
+002f 2020235a branch assert 
+
+pf_patch_ext:
+0030 c03f85a3 beq patch2f_7 ,p_g24_pair_dispatch 
+0031 c04805a5 beq patch32_0 ,p_keyboard_g24_reconn_dispatch 
+0032 c04a85b2 beq patch32_5 ,p_keyboard_g24_transmit_no_interrupt 
+0033 c17f8000 rtneq patch3f_7 
+0034 2020235a branch assert 
+
+p_soft_reset:
+0035 24358038 nbranch p_soft_reset_next ,wake 
+0036 37d98200 until null ,lpo_edge 
+0037 37d98200 until null ,lpo_edge 
+
+p_soft_reset_next:
+0038 204054ac call mouse_wakeup_from_power_check 
+0039 24342002 nbranch soft_reset + 1 ,user 
+003a 6fe0caba fetch 1 ,mem_power_on_flag_new 
+003b 203a2002 branch soft_reset + 1 ,blank 
+003c 704aba00 jam 0 ,mem_power_on_flag_new 
+003d 6fe0c655 fetch 1 ,mem_config_select_device_button_gpio 
+003e c07fa002 beq ui_button_gpio_disable ,soft_reset + 1 
+003f 1fe20e00 copy pdata ,queue 
+0040 6fe2069d fetch 4 ,mem_saved_gpio_in 
+0041 afec0000 qisolate0 pdata 
+0042 2040ce45 call keyboard_pb_set ,true 
+0043 20202002 branch soft_reset + 1 
+
+p_keyboard_keyvalue_commbination_replace:
+0044 6fe0c8f5 fetch 1 ,mem_keyboard_keyvalue_temp 
+0045 c05683fb beq hid_key_search ,p_keyboard_commbination_search 
+0046 20204d3c branch keyboard_keyvalue_commbination_replace + 2 
+
+p_keyboard_adc_read:
+0047 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0048 c40a8000 rtnbit0 mouse_enable_adc 
+0049 2040004b call p_keyboard_adc_gpio_set 
+004a 20205541 branch mouse_adc_read + 4 
+
+p_keyboard_adc_gpio_set:
+004b 6fe0c407 fetch 1 ,mem_adc_config_flag 
+004c c1810000 rtnne adc_config_gpio 
+004d 6fe0c408 fetch 1 ,mem_adc_channel 
+004e 20400054 call p_adc_channel_set_gpio 
+004f 18427e00 copy temp ,pdata 
+0050 67e0c635 store 1 ,mem_adc_channel_gpio 
+0051 79207e07 set1 gpio_active_bit ,pdata 
+0052 d8400000 arg gpcfg_input ,temp 
+0053 20206f20 branch gpio_config_function 
+
+p_adc_channel_set_gpio:
+0054 d8400012 arg 18 ,temp 
+0055 c1030000 rtneq 0x6 
+0056 d840000a arg 10 ,temp 
+0057 c1038000 rtneq 0x7 
+0058 d8400009 arg 9 ,temp 
+0059 c1040000 rtneq 0x8 
+005a d840000c arg 12 ,temp 
+005b c1048000 rtneq 0x9 
+005c d8400006 arg 6 ,temp 
+005d c1050000 rtneq 0xa 
+005e d8400014 arg 20 ,temp 
+005f c1058000 rtneq 0xb 
+0060 d8400015 arg 21 ,temp 
+0061 c1060000 rtneq 0xc 
+0062 d8400016 arg 22 ,temp 
+0063 c1068000 rtneq 0xd 
+0064 d840000d arg 13 ,temp 
+0065 20600000 rtn 
+
+p_main_loop:
+0066 20407552 call sp_calc_sequence_256 
+0067 20407448 call sp_calc_sequence_256_check 
+0068 20402a45 call le_advertising_dispatch 
+0069 2040202a call idle_dispatch 
+006a 204042ad call app_process_idle 
+006b 20402018 call connection_dispatch 
+006c 2040310f call g24_dispatch 
+006d 2040248c call lpm_dispatch 
+006e 20200066 branch p_main_loop 
+
+p_shutdown_radio:
+006f 70890000 jam 0 ,0x8900 
+0070 20202153 branch shutdown_radio + 1 
+
+p_set_sync_on:
+0071 708a0f60 jam 0x60 ,0x8a0f 
+0072 708a10aa jam 0xaa ,0x8a10 
+0073 708a127a jam 0x7a ,0x8a12 
+0074 708a2500 jam 0x00 ,0x8a25 
+0075 708a2600 jam 0x00 ,0x8a26 
+0076 2000003c nop 60 
+0077 708a2020 jam 0x20 ,0x8a20 
+0078 708a23f5 jam 0xf5 ,0x8a23 
+0079 708a2412 jam 0x12 ,0x8a24 
+007a 708a2410 jam 0x10 ,0x8a24 
+007b 2000003c nop 60 
+007c 708a1260 jam 0x60 ,0x8a12 
+007d 708a23dd jam 0xdd ,0x8a23 
+007e 20600000 rtn 
+
+p_initialize_radio_cont:
+007f 7001bb00 jam 0 ,mem_le_testtype 
+0080 7001bc00 jam 0 ,mem_cmd_le_create_conn 
+0081 37d98200 until null ,lpo_edge 
+0082 7089460d jam 0x0d ,0x8946 
+0083 70896f10 jam 0x10 ,0x896f 
+0084 708a13cd jam 0xcd ,0x8a13 
+0085 708a0610 jam 0x10 ,0x8a06 
+0086 708a844a jam 0x4a ,0x8a84 
+0087 708a8540 jam 0x40 ,0x8a85 
+0088 708a16fe jam 0xfe ,0x8a16 
+0089 204000c6 call p_set_otp_config 
+008a 204070d7 call wdt_set_disable 
+008b 37d98200 until null ,lpo_edge 
+008c 70813b5f jam 0x5f ,0x813b 
+008d 37d98200 until null ,lpo_edge 
+008e 70813c88 jam 0x88 ,0x813c 
+008f 37d98200 until null ,lpo_edge 
+0090 6fe0c099 fetch 1 ,mem_fcomp_div 
+0091 c00800bb beq xtal_16m ,p_initialize_radio_16m 
+0092 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+0093 1fe1fe04 or_into 0x04 ,pdata 
+0094 67f08a02 store 1 ,0x8a02 
+0095 70890f01 jam 0x01 ,0x890f 
+0096 708a8024 jam 0x24 ,0x8a80 
+0097 708a8162 jam 0x62 ,0x8a81 
+0098 58e61212 setarg 0xe61212 
+0099 67f18a73 store 3 ,0x8a73 
+
+p_initialize_radio2:
+009a 708a8660 jam 0x60 ,0x8a86 
+009b 708a8b3b jam 0x3b ,0x8a8b 
+009c 204000ad call p_dpll_on 
+009d 70804300 jam 0 ,core_config 
+009e 70804205 jam clksel_dpll ,core_clksel 
+009f 58557474 setarg 0x557474 
+00a0 67f18968 store 3 ,0x8968 
+00a1 7089606e jam 0x6e ,0x8960 
+00a2 2040010e call p_rx_dcoc 
+00a3 20400139 call p_rfpll_aac_ghpc 
+00a4 204000a7 call p_set_xtal_cap 
+00a5 7041480c jam system_clk_12m ,mem_system_clk 
+00a6 20206f4e branch sadc_calibration 
+
+p_set_xtal_cap:
+00a7 20758000 rtn wake 
+00a8 37d98200 until null ,lpo_edge 
+00a9 6fe0c11c fetch 1 ,mem_xtal_c_sel 
+00aa 67f0813a store 1 ,core_xtal_cap 
+00ab 37d98200 until null ,lpo_edge 
+00ac 20600000 rtn 
+
+p_dpll_on:
+00ad 6fe0c099 fetch 1 ,mem_fcomp_div 
+00ae c00c00b3 beq xtal_24m ,p_dpll_on_24m 
+00af 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00b0 1fe1fe06 or_into 0x06 ,pdata 
+00b1 67f08a02 store 1 ,0x8a02 
+00b2 708a05e0 jam 0xe0 ,0x8a05 
+
+p_dpll_on_24m:
+00b3 708a00d8 jam 0xd8 ,0x8a00 
+00b4 2000003c nop 60 
+00b5 708a01a0 jam 0xa0 ,0x8a01 
+00b6 708a00df jam 0xdf ,0x8a00 
+00b7 708a01fa jam 0xfa ,0x8a01 
+00b8 20000014 nop 20 
+00b9 708a009f jam 0x9f ,0x8a00 
+00ba 20600000 rtn 
+
+p_initialize_radio_16m:
+00bb 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00bc 1fe1fe06 or_into 0x06 ,pdata 
+00bd 67f08a02 store 1 ,0x8a02 
+00be 70890f00 jam 0x00 ,0x890f 
+00bf 708a8023 jam 0x23 ,0x8a80 
+00c0 708a81b0 jam 0xb0 ,0x8a81 
+00c1 58e40909 setarg 0xe40909 
+00c2 67f18a73 store 3 ,0x8a73 
+00c3 708a762a jam 0x2a ,0x8a76 
+00c4 70890204 jam 0x04 ,0x8902 
+00c5 2020009a branch p_initialize_radio2 
+
+p_set_otp_config:
+00c6 203580ee branch p_set_otp_config_wake ,wake 
+00c7 6fe2020d fetch 4 ,mem_otp_core_ldo 
+00c8 207a0000 rtn blank 
+00c9 37d98200 until null ,lpo_edge 
+00ca 6ff08136 fetch 1 ,0x8136 
+00cb 1fe17ef0 and pdata ,0xf0 ,pdata 
+00cc 6848820d fetcht 1 ,mem_otp_core_ldo 
+00cd 9841fe00 ior temp ,pdata 
+00ce 1fe0fffd increase -3 ,pdata 
+00cf 67f08136 store 1 ,0x8136 
+00d0 37d98200 until null ,lpo_edge 
+00d1 6ff08138 fetch 1 ,0x8138 
+00d2 1fe17e07 and pdata ,0x7 ,pdata 
+00d3 6848820e fetcht 1 ,mem_otp_verf_bg 
+00d4 18498400 lshift3 temp ,temp 
+00d5 9841fe00 ior temp ,pdata 
+00d6 67f08138 store 1 ,0x8138 
+00d7 37d98200 until null ,lpo_edge 
+
+p_set_otp_config2:
+00d8 6ff08acb fetch 1 ,0x8acb 
+00d9 1fe17ef0 and pdata ,0xf0 ,pdata 
+00da 6848820f fetcht 1 ,mem_otp_charge_pump 
+00db 6048c15b storet 1 ,mem_otp_charge_pump_x 
+00dc 9841fe00 ior temp ,pdata 
+00dd 67f08acb store 1 ,0x8acb 
+00de 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00df 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
+00e0 2feffe03 isolate1 3 ,pdata 
+00e1 6ff08a06 fetch 1 ,0x8a06 
+00e2 7920fe07 setflag true ,7 ,pdata 
+00e3 67f08a06 store 1 ,0x8a06 
+00e4 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00e5 1fe10407 and pdata ,7 ,temp 
+00e6 18520400 lshift4 temp ,temp 
+00e7 18438400 lshift temp ,temp 
+00e8 6048c438 storet 1 ,mem_ring_ibias_trim 
+00e9 6ff08a02 fetch 1 ,0x8a02 
+00ea 1fe17e1f and pdata ,0x1f ,pdata 
+00eb 9841fe00 ior temp ,pdata 
+00ec 67f08a02 store 1 ,0x8a02 
+00ed 20600000 rtn 
+
+p_set_otp_config_wake:
+00ee 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
+00ef 207a0000 rtn blank 
+00f0 67e1020f store 2 ,mem_otp_charge_pump 
+00f1 202000d8 branch p_set_otp_config2 
+
+p_rf_rx_enable:
+00f2 204021ba call rf_rx_agc_set 
+00f3 18002a08 force 8 ,radio_ctrl 
+00f4 18002a00 force 0 ,radio_ctrl 
+00f5 580aaada setarg 0x0aaada 
+00f6 67f18a0f store 3 ,0x8a0f 
+00f7 708a2540 jam 0x40 ,0x8a25 
+00f8 708a2610 jam 0x10 ,0x8a26 
+00f9 2000003c nop 60 
+00fa 708a01fb jam 0xfb ,0x8a01 
+00fb 708a25ff jam 0xff ,0x8a25 
+00fc 708a2630 jam 0x30 ,0x8a26 
+00fd 708a16fe jam 0xfe ,0x8a16 
+00fe 202021b4 branch rf_rx_enable + 14 
+
+p_txon:
+00ff 580aaa7e setarg 0x0aaa7e 
+0100 67f18a0f store 3 ,0x8a0f 
+0101 2000003c nop 60 
+0102 708a2500 jam 0x00 ,0x8a25 
+0103 708a260d jam 0x0d ,0x8a26 
+0104 708a16f6 jam 0xf6 ,0x8a16 
+0105 20202203 branch txon + 7 
+
+p_set_tx_power:
+0106 6fe0c141 fetch 1 ,mem_tx_power 
+0107 c0050109 beq tx_power_10db ,p_set_tx_power_10db 
+0108 2020220e branch set_tx_power + 2 
+
+p_set_tx_power_10db:
+0109 708a1425 jam 0x25 ,0x8a14 
+010a 58a93f3f setarg 0xa93f3f 
+010b 67f18a60 store 3 ,0x8a60 
+010c 708a631f jam 0x1f ,0x8a63 
+010d 20600000 rtn 
+
+p_rx_dcoc:
+010e 20758000 rtn wake 
+010f 20402160 call set_sync_on 
+0110 d8400027 arg 39 ,temp 
+0111 2040216f call set_freq_rx 
+0112 204021a6 call rf_rx_enable 
+0113 708a257f jam 0x7f ,0x8a25 
+0114 708a301a jam 0x1a ,0x8a30 
+0115 708a3178 jam 0x78 ,0x8a31 
+0116 708a8fb2 jam 0xb2 ,0x8a8f 
+0117 708ac200 jam 0 ,0x8ac2 
+0118 708ac300 jam 0 ,0x8ac3 
+0119 d8e00006 arg 6 ,queue 
+011a 2040012b call p_rx_dcoc_avg 
+011b 2a2ffe0d isolate1 13 ,rega 
+011c 2040211d call qset_start 
+011d 2a4ffe0d isolate1 13 ,regb 
+011e 2040211e call qset_p 
+011f d8e00005 arg 5 ,queue 
+
+p_rx_dcoc_loop2:
+0120 2040211c call qset1_p 
+0121 2040211e call qset_p 
+0122 2040012b call p_rx_dcoc_avg 
+0123 d8a08ac2 arg 0x8ac2 ,contw 
+0124 1a31fe00 rshift4 rega ,pdata 
+0125 20402117 call qsetxor 
+0126 1a51fe00 rshift4 regb ,pdata 
+0127 20402117 call qsetxor 
+0128 18e08fff increase -1 ,queue 
+0129 20210120 branch p_rx_dcoc_loop2 ,positive 
+012a 2020214f branch rx_dcoc_loop2 + 10 
+
+p_rx_dcoc_avg:
+012b 2000003c nop 60 
+012c 58000f00 setarg mem_dcoc_buf 
+012d 67f10982 store 2 ,0x8982 
+012e 58000ff0 setarg mem_dcoc_buf_end 
+012f 67f10984 store 2 ,0x8984 
+0130 70898109 jam 0x9 ,0x8981 
+0131 70898103 jam 0x3 ,0x8981 
+0132 70898006 jam 0x6 ,0x8980 
+0133 2000003c nop 60 
+0134 da200000 arg 0 ,rega 
+0135 da400000 arg 0 ,regb 
+0136 df200010 arg 16 ,loopcnt 
+0137 d8c00f00 arg mem_dcoc_buf ,contr 
+0138 2020212d branch rx_dcoc_loop 
+
+p_rfpll_aac_ghpc:
+0139 20758000 rtn wake 
+013a 20202272 branch rfpll_aac_ghpc + 1 
+
+p_keyboard_clear_pdata:
+013b 58000000 setarg 0 
+
+p_mouse_init_sunt:
+
+p_dpll_ring_ibias_calc:
+013c 20600000 rtn 
+
+p_sadc_calibration:
+013d 20758000 rtn wake 
+013e 708a0777 jam 0x77 ,core_gpadc_ctrl 
+013f 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+0140 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+0141 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0142 67f080cd store 1 ,core_sadc_clkdiv 
+0143 20000bb8 nop 3000 
+0144 2040014d call p_sadc_read 
+0145 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+0146 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+0147 df200008 arg 8 ,loopcnt 
+0148 20406f58 call sadc_cal_read + 1 
+0149 6fe0c419 fetch 1 ,mem_spi_write_addr 
+014a 67e0c433 store 1 ,mem_adc_cal_c7 
+014b 6240c419 storer regb ,1 ,mem_spi_write_addr 
+014c 20600000 rtn 
+
+p_sadc_read:
+014d 7080cc03 jam 0x03 ,core_sadc_ctrl 
+
+p_sadc_read_wait:
+014e 6ff08129 fetch 1 ,core_perf_status 
+014f c302814e bbit0 saradc_done ,p_sadc_read_wait 
+0150 68590164 fetcht 2 ,core_sadc_data 
+0151 6049440a storet 2 ,mem_adc_current_value 
+0152 7080cc00 jam 0x00 ,core_sadc_ctrl 
+0153 20600000 rtn 
+
+p_set_lemode:
+0154 708a8211 jam 0x11 ,0x8a82 
+0155 708a8d12 jam 0x12 ,0x8a8d 
+0156 708a8e0a jam 0x0a ,0x8a8e 
+0157 6fe0c099 fetch 1 ,mem_fcomp_div 
+0158 c008016d beq xtal_16m ,p_set_lemode_2m_16m 
+0159 58005762 setarg 0x5762 
+015a 67f10907 store 2 ,0x8907 
+
+p_set_lemode_2m:
+015b 70890103 jam 3 ,0x8901 
+015c 70893003 jam 3 ,0x8930 
+015d c6168000 rtnmark1 mark_ble_2m 
+015e 70890101 jam 1 ,0x8901 
+015f 708a8207 jam 0x07 ,0x8a82 
+0160 708a8d44 jam 0x44 ,0x8a8d 
+0161 708a8e0a jam 0x0a ,0x8a8e 
+0162 6fe0c099 fetch 1 ,mem_fcomp_div 
+0163 c008016a beq xtal_16m ,p_set_lemode_1m_16m 
+0164 58002bb1 setarg 0x2bb1 
+0165 67f10907 store 2 ,0x8907 
+
+p_set_lemode_1m:
+0166 c6978000 rtnmark0 mark_ble_lr 
+0167 70893024 jam 0x24 ,0x8930 
+0168 70890105 jam 5 ,0x8901 
+0169 20600000 rtn 
+
+p_set_lemode_1m_16m:
+016a 58004189 setarg 0x4189 
+016b 67f10907 store 2 ,0x8907 
+016c 20200166 branch p_set_lemode_1m 
+
+p_set_lemode_2m_16m:
+016d 58008312 setarg 0x8312 
+016e 67f10907 store 2 ,0x8907 
+016f 2020015b branch p_set_lemode_2m 
+
+p_otp_read_data:
+0170 20406b3a call enable_otp_read 
+0171 20406b75 call otp_read_data + 1 
+0172 20206b38 branch otp_disable_chgpump 
+
+p_keyboard_load_otp_info_check:
+0173 6fe0c666 fetch 1 ,mem_device_flag 
+0174 c0000177 beq mode_24g_device ,p_keyboard_load_otp_device_info_g24_init 
+0175 c0008181 beq mode_bt_device1 ,p_keyboard_load_otp_device_info_ble_init 
+0176 20600000 rtn 
+
+p_keyboard_load_otp_device_info_g24_init:
+0177 db000008 arg 8 ,regd 
+0178 6fe14d0e fetch 2 ,mem_otp_read_retention_max_size 
+0179 9b06fc00 idiv regd 
+017a 20407d62 call wait_div_end 
+017b 1807fe00 quotient pdata 
+017c 67e10670 store 2 ,mem_pdatatemp 
+017d dfe01fbc arg 0x1fbc ,pdata 
+017e d8400004 arg 4 ,temp 
+017f dd600004 arg 4 ,rege 
+0180 2020018b branch p_keyboard_load_otp_device_info 
+
+p_keyboard_load_otp_device_info_ble_init:
+0181 db000020 arg 32 ,regd 
+0182 6fe14d0e fetch 2 ,mem_otp_read_retention_max_size 
+0183 9b06fc00 idiv regd 
+0184 20407d62 call wait_div_end 
+0185 1807fe00 quotient pdata 
+0186 67e10670 store 2 ,mem_pdatatemp 
+0187 dfe01fb0 arg 0x1fb0 ,pdata 
+0188 d8400010 arg 16 ,temp 
+0189 dd600010 arg 16 ,rege 
+018a 2020018b branch p_keyboard_load_otp_device_info 
+
+p_keyboard_load_otp_device_info:
+018b 67e10672 store 2 ,mem_pdatatemp + 2 
+018c 60488678 storet 1 ,mem_temp 
+018d da2049c7 arg mem_otp_read_retention_memory ,rega 
+018e da600000 arg 0 ,regc 
+
+p_keyboard_load_otp_info_check_page_loop:
+018f 6fe10672 fetch 2 ,mem_pdatatemp + 2 
+0190 1fe22400 copy pdata ,regb 
+0191 6f208678 fetchr loopcnt ,1 ,mem_temp 
+0192 da2049c7 arg mem_otp_read_retention_memory ,rega 
+0193 20406b74 call otp_read_data 
+0194 6fe449c7 fetch 8 ,mem_otp_read_retention_memory 
+0195 684c49cf fetcht 8 ,mem_otp_read_retention_memory + 8 
+0196 9841fe00 ior temp ,pdata 
+0197 684c49d7 fetcht 8 ,mem_otp_read_retention_memory + 16 
+0198 9841fe00 ior temp ,pdata 
+0199 203a01a1 branch p_keyboard_load_otp_info_check_first_time ,blank 
+019a 1a60a601 increase 1 ,regc 
+019b 6fe10670 fetch 2 ,mem_pdatatemp 
+019c 9a667c00 isub regc ,null 
+019d 6fe10672 fetch 2 ,mem_pdatatemp + 2 
+019e 9b067e00 isub regd ,pdata 
+019f 67e10672 store 2 ,mem_pdatatemp + 2 
+01a0 2020018f branch p_keyboard_load_otp_info_check_page_loop 
+
+p_keyboard_load_otp_info_check_first_time:
+01a1 1a667c00 sub regc ,0 ,null 
+01a2 2022ca38 branch keyboard_load_otp_info_check_first_time_process ,zero 
+
+p_keyboard_load_otp_info_check_first_time_loop_init:
+01a3 6fe10672 fetch 2 ,mem_pdatatemp + 2 
+01a4 9b00fe00 iadd regd ,pdata 
+
+p_keyboard_load_otp_info_check_first_time_loop:
+01a5 9d667e00 isub rege ,pdata 
+01a6 67e10672 store 2 ,mem_pdatatemp + 2 
+01a7 6fe10672 fetch 2 ,mem_pdatatemp + 2 
+01a8 1fe22400 copy pdata ,regb 
+01a9 6f208678 fetchr loopcnt ,1 ,mem_temp 
+01aa da2049c7 arg mem_otp_read_retention_memory ,rega 
+01ab 20406b74 call otp_read_data 
+01ac 6fe449c7 fetch 8 ,mem_otp_read_retention_memory 
+01ad 684c49cf fetcht 8 ,mem_otp_read_retention_memory + 8 
+01ae 9841fe00 ior temp ,pdata 
+01af 684c49d7 fetcht 8 ,mem_otp_read_retention_memory + 16 
+01b0 9841fe00 ior temp ,pdata 
+01b1 203a01b4 branch p_keyboard_load_otp_info_check_offset_process ,blank 
+01b2 6fe10672 fetch 2 ,mem_pdatatemp + 2 
+01b3 202001a5 branch p_keyboard_load_otp_info_check_first_time_loop 
+
+p_keyboard_load_otp_info_check_offset_process:
+01b4 58001fc0 setarg 0x1fc0 
+01b5 68490672 fetcht 2 ,mem_pdatatemp + 2 
+01b6 98467e00 isub temp ,pdata 
+01b7 67e149df store 2 ,mem_otp_read_retention_offset 
+01b8 18427e00 copy temp ,pdata 
+01b9 9d60a400 iadd rege ,regb 
+01ba 6f208678 fetchr loopcnt ,1 ,mem_temp 
+01bb da2049c7 arg mem_otp_read_retention_memory ,rega 
+01bc 20406b74 call otp_read_data 
+01bd 6fe0c666 fetch 1 ,mem_device_flag 
+01be c0004a47 beq mode_24g_device ,keyboard_load_otp_info_check_offset_process_g24 
+01bf c00081c1 beq mode_bt_device1 ,p_keyboard_load_otp_info_check_offset_process_ble 
+01c0 20600000 rtn 
+
+p_keyboard_load_otp_info_check_offset_process_ble:
+01c1 6fe0c9c7 fetch 1 ,mem_otp_read_retention_memory 
+01c2 1fe67c03 sub pdata ,system_os_mac ,null 
+01c3 24417dca ncall set_pdata_0 ,positive 
+01c4 67e0c9c6 store 1 ,mem_kb_computer_system 
+01c5 6fe0c9c8 fetch 1 ,mem_otp_read_retention_memory + 1 
+01c6 67e0c667 store 1 ,mem_device1_type 
+01c7 6fe349c9 fetch 6 ,mem_otp_read_retention_memory + 2 
+01c8 67e34668 store 6 ,mem_device1_addr 
+01c9 6fe349cf fetch 6 ,mem_otp_read_retention_memory + 8 
+01ca 67e3466e store 6 ,mem_device1_locall_addr 
+01cb 684949d5 fetcht 2 ,mem_otp_read_retention_memory + 14 
+01cc 180a7e00 random pdata 
+01cd 9840fe00 iadd temp ,pdata 
+01ce 67e14695 store 2 ,mem_random_addr_increase_count 
+01cf 20200552 branch p_keyboard_select_reconn_device 
+
+p_keyboard_store_otp_device_info:
+01d0 6fe0c666 fetch 1 ,mem_device_flag 
+01d1 c00001d4 beq mode_24g_device ,p_keyboard_store_otp_device_info_g24 
+01d2 c00081d7 beq mode_bt_device1 ,p_keyboard_store_otp_device_info_ble 
+01d3 20600000 rtn 
+
+p_keyboard_store_otp_device_info_g24:
+01d4 684949df fetcht 2 ,mem_otp_read_retention_offset 
+01d5 58001fc0 setarg 0x1fc0 
+01d6 20204a63 branch keyboard_store_otp_device_info_g24 + 2 
+
+p_keyboard_store_otp_device_info_ble:
+01d7 704be701 jam 1 ,mem_otp_store_device_info_flag 
+01d8 6fe0cbe8 fetch 1 ,mem_otp_store_system_flag 
+01d9 207a0000 rtn blank 
+
+p_keyboard_wirte_otp_ble:
+01da 684949df fetcht 2 ,mem_otp_read_retention_offset 
+01db 58001fc0 setarg 0x1fc0 
+01dc 98467e00 isub temp ,pdata 
+01dd 67e10670 store 2 ,mem_pdatatemp 
+01de 1fe22400 copy pdata ,regb 
+01df da2049c6 arg mem_kb_computer_system ,rega 
+01e0 df200001 arg 1 ,loopcnt 
+01e1 20406b45 call otp_write 
+01e2 6fe10670 fetch 2 ,mem_pdatatemp 
+01e3 1fe0a401 add pdata ,1 ,regb 
+01e4 da204667 arg mem_device1_type ,rega 
+01e5 df20000d arg 13 ,loopcnt 
+01e6 20406b45 call otp_write 
+01e7 6fe10670 fetch 2 ,mem_pdatatemp 
+01e8 1fe0a40e add pdata ,14 ,regb 
+01e9 da204695 arg mem_random_addr_increase_count ,rega 
+01ea df200002 arg 2 ,loopcnt 
+01eb 20406b45 call otp_write 
+01ec 684949df fetcht 2 ,mem_otp_read_retention_offset 
+01ed 18408410 increase 16 ,temp 
+01ee 604949df storet 2 ,mem_otp_read_retention_offset 
+01ef 20600000 rtn 
+
+p_keyboard_store_device_info:
+01f0 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+01f1 c28a01d0 bbit1 mouse_enable_otp ,p_keyboard_store_otp_device_info 
+01f2 20204a58 branch keyboard_store_device_info + 2 
+
+p_keyboard_priority_bb_event:
+01f3 1a627e00 copy regc ,pdata 
+01f4 c01d01f6 beq bt_evt_24g_attempt_fail ,p_keyboard_24g_attempt_fail 
+01f5 20204a9c branch keyboard_priority_bb_event + 2 
+
+p_keyboard_24g_attempt_fail:
+01f6 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
+01f7 243a01fb nbranch p_keyboard_24g_hibernate_set ,blank 
+01f8 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+01f9 c0010203 beq fast_conn_and_3_0_addr ,p_keyboard_24g_fast_conn_attempt_fail 
+01fa 20204b02 branch keyboard_24g_attempt_fail + 4 
+
+p_keyboard_24g_hibernate_set:
+01fb 70460000 jam 0 ,mem_24g_attempt_fail_flag 
+01fc 20403647 call g24_transmit_next_packet 
+01fd 5fffffff setarg -1 
+01fe 67e445af store 8 ,mem_24g_enter_hibernate 
+01ff 58000000 setarg 0 
+0200 67e3c846 store 7 ,mem_mouse_key 
+0201 70473f01 jam 1 ,mem_sensor_shutdown_flag 
+0202 202005c9 branch p_keyboard_g24_long_sleep 
+
+p_keyboard_24g_fast_conn_attempt_fail:
+0203 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0204 c29f6034 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_24g_start_auto_pair 
+0205 c2986034 bbit1 mouse_enable_auto_24g_paring ,mouse_24g_start_auto_pair 
+0206 c31d6067 bbit0 mouse_enable_24g_auto_pair_nerver_been_paired ,mouse_24g_reconn_dongle_start 
+0207 6fe24691 fetch 4 ,mem_mouse_24g_addr 
+0208 203a030b branch p_keyboard_24g_start_pair_mode ,blank 
+0209 20206067 branch mouse_24g_reconn_dongle_start 
+
+p_keyboard_bb_event_timer:
+020a 2040553d call mouse_adc_read 
+020b 204002c7 call p_keyboard_low_voltage_led_timer 
+020c 2040328e call g24_pair_timeout_timer 
+020d 20403531 call g24_reconn_timeout_timer 
+020e 20405fdd call mouse_24g_long_sleep_param_update_timer 
+020f 20400241 call p_keyboard_24g_repeat_send_data 
+0210 20404b68 call keyboard_24g_led_status_get_timer 
+0211 20400244 call p_keyboard_num_capslock_led_on_timer 
+0212 20400291 call p_keyboard_device_poweron_timer 
+0213 204002bb call p_keyboard_device_pair_discovery_led_timer 
+0214 204002b3 call p_keyboard_mode_led_timer 
+0215 20404b43 call keyboard_check_discovery_timeout_timer 
+0216 20404b58 call keyboard_check_direct_timeout_timer 
+0217 20405be1 call mouse_le_enable_att_list_timer 
+0218 20404b5c call keyboard_le_battery_updata_timer 
+0219 20405be4 call mouse_le_send_smp_security_request_timer 
+021a 20404b5f call keyboard_le_send_conn_param_update_timer 
+021b 20404b55 call keyboard_le_auto_recognize_timer 
+021c 20400300 call p_keyboard_key_press_timer 
+021d 20404b32 call keyboard_commbination_key_process 
+021e 20405bfe call mouse_current_mult_update_timer 
+021f 20404b48 call keyboard_store_information_delay_timer 
+0220 204002f5 call p_keyboard_long_press_timer 
+0221 20404b87 call keyboard_commbination_delay_release_timer 
+0222 202002fa branch p_keyboard_check_no_data_timeout_timer 
+0223 20600000 rtn 
+
+p_keyboard_adc_read_start:
+0224 20400235 call p_keyboard_low_voltage_param_set 
+0225 20406f82 call enable_adc 
+0226 20406fb0 call vdd_calculate_by_mode 
+0227 1fe6fc0a div pdata ,10 
+0228 20407d5f call get_div_result 
+0229 67e14633 store 2 ,mem_mouse_vdd_now_vol 
+022a da20462d arg mem_mouse_vdd_calculate_set ,rega 
+022b 20405563 call mouse_adc_bat_percent_lowpower_out 
+022c 6fe0c40c fetch 1 ,mem_adc_power_flag 
+022d c280cf6b bbit1 1 ,keyboard_power_down 
+022e c3000231 bbit0 0 ,p_keyboard_adc_no_low_voltage 
+022f 70463701 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+0230 2020555a branch mouse_adc_low_voltage 
+
+p_keyboard_adc_no_low_voltage:
+0231 d8e00004 arg mouse_low_voltage_flag ,queue 
+0232 20405f04 call mouse_disable_function_flag 
+0233 704d0809 jam 9 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0234 2020555f branch mouse_adc_no_low_voltage + 3 
+
+p_keyboard_low_voltage_param_set:
+0235 204054f2 call mouse_adc_gpio_set_before_hibernate 
+0236 58520090 setarg 0x520090 
+0237 67e1c62d store 3 ,mem_mouse_vdd_full_vol 
+0238 58006d00 setarg 0x006d00 
+0239 e7e18005 istore 3 ,contw 
+023a 6fe0c637 fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+023b 203a023e branch p_keyboard_low_voltage_param_set_backligh_off_1v0 ,blank 
+023c 70463170 jam 0x70 ,mem_mouse_vdd_low_vol 
+023d 20600000 rtn 
+
+p_keyboard_low_voltage_param_set_backligh_off_1v0:
+023e 7046316d jam 0x6d ,mem_mouse_vdd_low_vol 
+023f 20600000 rtn 
+0240 20600000 rtn 
+
+p_keyboard_24g_repeat_send_data:
+0241 6fe0c8eb fetch 1 ,mem_same_keyvalue_timerout_flag 
+0242 247a0000 nrtn blank 
+0243 20204b62 branch keyboard_24g_repeat_send_data 
+
+p_keyboard_num_capslock_led_on_timer:
+0244 6fe14781 fetch 2 ,mem_mouse_no_data_timer 
+0245 207a0000 rtn blank 
+0246 6fe0c73f fetch 1 ,mem_sensor_shutdown_flag 
+0247 247a0000 nrtn blank 
+0248 6fe14725 fetch 2 ,mem_mouse_no_data_timeout 
+0249 68494781 fetcht 2 ,mem_mouse_no_data_timer 
+024a 98460400 isub temp ,temp 
+024b 6fe14869 fetch 2 ,mem_keyboard_caps_led_on_timer 
+024c 98467e00 isub temp ,pdata 
+024d 20210264 branch p_keyboard_num_cap_led_on ,positive 
+024e 20400273 call p_keyboard_numlock_led_off 
+024f 2040027a call p_keyboard_scrolllock_led_off 
+0250 20200251 branch p_keyboard_capslock_led_off 
+
+p_keyboard_capslock_led_off:
+0251 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+0252 c2808255 bbit1 keyboard_reuse_capsled_bit ,p_keyboard_lowpower_capslock_led_off 
+0253 6848c866 fetcht 1 ,mem_keyboard_caps_led_gpio 
+0254 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_lowpower_capslock_led_off:
+0255 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0256 c3820000 rtnbit1 mouse_low_voltage_flag 
+0257 20200253 branch p_keyboard_capslock_led_off + 2 
+
+p_keyboard_capslock_led_check_on:
+0258 6fe0c9aa fetch 1 ,mem_keyboard_led_status 
+0259 c3008251 bbit0 kb_pc_keysel_capslock ,p_keyboard_capslock_led_off 
+025a 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+025b c280825e bbit1 keyboard_reuse_capsled_bit ,p_keyboard_lowpower_capslock_led_on 
+025c 6848c866 fetcht 1 ,mem_keyboard_caps_led_gpio 
+025d 20206ef7 branch gpio_out_active 
+
+p_keyboard_lowpower_capslock_led_on:
+025e 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+025f c302025c bbit0 mouse_low_voltage_flag ,p_keyboard_capslock_led_check_on + 4 
+0260 6fe0cd08 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0261 1fe67c0b sub pdata ,11 ,null 
+0262 2421025c nbranch p_keyboard_capslock_led_check_on + 4 ,positive 
+0263 20600000 rtn 
+
+p_keyboard_num_cap_led_on:
+0264 20400267 call p_keyboard_numlock_led_check_on 
+0265 20400280 call p_keyboard_scrolllock_led_check_on 
+0266 20200258 branch p_keyboard_capslock_led_check_on 
+
+p_keyboard_numlock_led_check_on:
+0267 6fe0c9aa fetch 1 ,mem_keyboard_led_status 
+0268 c3000273 bbit0 kb_pc_keysel_numlock ,p_keyboard_numlock_led_off 
+0269 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+026a c280026d bbit1 keyboard_reuse_numled_bit ,p_keyboard_lowpower_numlock_led_on 
+026b 6848c867 fetcht 1 ,mem_keyboard_num_led_gpio 
+026c 20206ef7 branch gpio_out_active 
+
+p_keyboard_lowpower_numlock_led_on:
+026d 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+026e c302026b bbit0 mouse_low_voltage_flag ,p_keyboard_numlock_led_check_on + 4 
+026f 6fe0cd08 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+0270 1fe67c0b sub pdata ,11 ,null 
+0271 2421026b nbranch p_keyboard_numlock_led_check_on + 4 ,positive 
+0272 20600000 rtn 
+
+p_keyboard_numlock_led_off:
+0273 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+0274 c2800277 bbit1 keyboard_reuse_numled_bit ,p_keyboard_lowpower_numlock_led_off 
+0275 6848c867 fetcht 1 ,mem_keyboard_num_led_gpio 
+0276 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_lowpower_numlock_led_off:
+0277 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0278 c3820000 rtnbit1 mouse_low_voltage_flag 
+0279 20200275 branch p_keyboard_numlock_led_off + 2 
+
+p_keyboard_scrolllock_led_off:
+027a 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+027b c281028e bbit1 keyboard_reuse_scrollled_bit ,p_keyboard_lowpower_scrolllock_led_off 
+027c 6fe0ca08 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+027d 247a0000 nrtn blank 
+027e 6848cbbb fetcht 1 ,mem_keyboard_scroll_led_gpio 
+027f 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_scrolllock_led_check_on:
+0280 6fe0ca08 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+0281 247a0000 nrtn blank 
+0282 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+0283 c2810288 bbit1 keyboard_reuse_scrollled_bit ,p_keyboard_lowpower_scroll_led_on 
+0284 6fe0c9aa fetch 1 ,mem_keyboard_led_status 
+0285 c301027a bbit0 kb_pc_keysel_scrolllock ,p_keyboard_scrolllock_led_off 
+0286 6848cbbb fetcht 1 ,mem_keyboard_scroll_led_gpio 
+0287 20206ef7 branch gpio_out_active 
+
+p_keyboard_lowpower_scroll_led_on:
+0288 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0289 c3020284 bbit0 mouse_low_voltage_flag ,p_keyboard_scrolllock_led_check_on + 4 
+028a 6fe0cd08 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+028b 1fe67c0b sub pdata ,11 ,null 
+028c 24210284 nbranch p_keyboard_scrolllock_led_check_on + 4 ,positive 
+028d 20600000 rtn 
+
+p_keyboard_lowpower_scrolllock_led_off:
+028e 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+028f c3820000 rtnbit1 mouse_low_voltage_flag 
+0290 2020027c branch p_keyboard_scrolllock_led_off + 2 
+
+p_keyboard_device_poweron_timer:
+0291 6fe0ca08 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+0292 207a0000 rtn blank 
+0293 1fe0ffff increase -1 ,pdata 
+0294 67e0ca08 store 1 ,mem_keyboard_device_poweron_timer_count 
+0295 203a0297 branch p_keyboard_device_led_off ,blank 
+0296 2020029d branch p_keyboard_device_led_on 
+
+p_keyboard_device_led_off:
+0297 6fe0c666 fetch 1 ,mem_device_flag 
+0298 c00002a3 beq mode_24g_device ,p_keyboard_device_24g_led_off 
+0299 c00082a5 beq mode_bt_device1 ,p_keyboard_device_bt1_led_off 
+029a c00102a7 beq mode_bt_device2 ,p_keyboard_device_bt2_led_off 
+029b c00182a9 beq mode_bt_device3 ,p_keyboard_device_bt3_led_off 
+029c 20600000 rtn 
+
+p_keyboard_device_led_on:
+029d 6fe0c666 fetch 1 ,mem_device_flag 
+029e c00002ab beq mode_24g_device ,p_keyboard_device_24g_led_on 
+029f c00082ad beq mode_bt_device1 ,p_keyboard_device_bt1_led_on 
+02a0 c00102af beq mode_bt_device2 ,p_keyboard_device_bt2_led_on 
+02a1 c00182b1 beq mode_bt_device3 ,p_keyboard_device_bt3_led_on 
+02a2 20600000 rtn 
+
+p_keyboard_device_24g_led_off:
+02a3 6848cbb7 fetcht 1 ,mem_keyboard_24g_led_gpio 
+02a4 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_device_bt1_led_off:
+02a5 6848cbb8 fetcht 1 ,mem_keyboard_bt1_led_gpio 
+02a6 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_device_bt2_led_off:
+02a7 6848cbb9 fetcht 1 ,mem_keyboard_bt2_led_gpio 
+02a8 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_device_bt3_led_off:
+02a9 6848cbba fetcht 1 ,mem_keyboard_bt3_led_gpio 
+02aa 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_device_24g_led_on:
+02ab 6848cbb7 fetcht 1 ,mem_keyboard_24g_led_gpio 
+02ac 20206ef7 branch gpio_out_active 
+
+p_keyboard_device_bt1_led_on:
+02ad 6848cbb8 fetcht 1 ,mem_keyboard_bt1_led_gpio 
+02ae 20206ef7 branch gpio_out_active 
+
+p_keyboard_device_bt2_led_on:
+02af 6848cbb9 fetcht 1 ,mem_keyboard_bt2_led_gpio 
+02b0 20206ef7 branch gpio_out_active 
+
+p_keyboard_device_bt3_led_on:
+02b1 6848cbba fetcht 1 ,mem_keyboard_bt3_led_gpio 
+02b2 20206ef7 branch gpio_out_active 
+
+p_keyboard_mode_led_timer:
+02b3 6fe14781 fetch 2 ,mem_mouse_no_data_timer 
+02b4 207a0000 rtn blank 
+02b5 6fe0cbca fetch 1 ,mem_keyboard_mode_led_on_timer 
+02b6 207a0000 rtn blank 
+02b7 1fe0ffff increase -1 ,pdata 
+02b8 67e0cbca store 1 ,mem_keyboard_mode_led_on_timer 
+02b9 c280029d bbit1 0 ,p_keyboard_device_led_on 
+02ba 20200297 branch p_keyboard_device_led_off 
+
+p_keyboard_device_pair_discovery_led_timer:
+02bb 6fe0c666 fetch 1 ,mem_device_flag 
+02bc c00002c0 beq mode_24g_device ,p_keyboard_device_pair_led 
+02bd 6fe14790 fetch 2 ,mem_mouse_discovery_timer 
+02be 207a0000 rtn blank 
+02bf 202002c2 branch p_keyboard_device_pair_led + 2 
+
+p_keyboard_device_pair_led:
+02c0 6fe145d8 fetch 2 ,mem_24g_pair_timeout 
+02c1 207a0000 rtn blank 
+02c2 6fe0cd07 fetch 1 ,mem_keyboard_pair_led_flag 
+02c3 1fe0fe01 increase 1 ,pdata 
+02c4 67e0cd07 store 1 ,mem_keyboard_pair_led_flag 
+02c5 c281029d bbit1 2 ,p_keyboard_device_led_on 
+02c6 20200297 branch p_keyboard_device_led_off 
+
+p_keyboard_low_voltage_led_timer:
+02c7 704d0c00 jam 0 ,mem_keyboard_low_volatage_led_blink_new_data_enable 
+02c8 6fe14790 fetch 2 ,mem_mouse_discovery_timer 
+02c9 247a0000 nrtn blank 
+02ca 6fe145d8 fetch 2 ,mem_24g_pair_timeout 
+02cb 247a0000 nrtn blank 
+02cc 6fe145de fetch 2 ,mem_24g_reconn_timeout 
+02cd 247a0000 nrtn blank 
+02ce 6fe0ca08 fetch 1 ,mem_keyboard_device_poweron_timer_count 
+02cf 247a0000 nrtn blank 
+02d0 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02d1 c4118000 rtnbit0 mouse_enable_low_led 
+02d2 c4020000 rtnbit0 mouse_low_voltage_flag 
+02d3 c29382e5 bbit1 mouse_enable_low_voltage_led_blink_n_second ,p_keyboard_low_voltage_led_blink_new_data 
+02d4 6fe0cd08 fetch 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+02d5 1fe0fe01 increase 1 ,pdata 
+02d6 67e0cd08 store 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+02d7 1fe67c14 sub pdata ,20 ,null 
+02d8 244102de ncall p_keyboard_adc_low_volatage_led_timer_count_clean ,positive 
+02d9 c00102e1 beq 2 ,p_keyboard_low_voltage_led_on 
+02da c00202e3 beq 4 ,p_keyboard_low_voltage_led_off 
+02db c00302e1 beq 6 ,p_keyboard_low_voltage_led_on 
+02dc c00402e3 beq 8 ,p_keyboard_low_voltage_led_off 
+02dd 20600000 rtn 
+
+p_keyboard_adc_low_volatage_led_timer_count_clean:
+02de 704d0801 jam 1 ,mem_keyboard_adc_low_volatage_led_timer_count 
+02df 704d0b00 jam 0 ,mem_keyboard_low_volatage_led_flag 
+02e0 202002e3 branch p_keyboard_low_voltage_led_off 
+
+p_keyboard_low_voltage_led_on:
+02e1 6848cbbc fetcht 1 ,mem_keyboard_low_voltage_alarm_gpio 
+02e2 20206ef7 branch gpio_out_active 
+
+p_keyboard_low_voltage_led_off:
+02e3 6848cbbc fetcht 1 ,mem_keyboard_low_voltage_alarm_gpio 
+02e4 20206ef3 branch gpio_out_inactive 
+
+p_keyboard_low_voltage_led_blink_new_data:
+02e5 6fe14725 fetch 2 ,mem_mouse_no_data_timeout 
+02e6 68494781 fetcht 2 ,mem_mouse_no_data_timer 
+02e7 98460400 isub temp ,temp 
+02e8 6fe14d09 fetch 2 ,mem_adc_low_volatage_led_blink_timer 
+02e9 98467c00 isub temp ,null 
+02ea 242102e3 nbranch p_keyboard_low_voltage_led_off ,positive 
+02eb 704d0c01 jam 1 ,mem_keyboard_low_volatage_led_blink_new_data_enable 
+02ec 6fe0cd0b fetch 1 ,mem_keyboard_low_volatage_led_flag 
+02ed 1fe0fe01 increase 1 ,pdata 
+02ee 67e0cd0b store 1 ,mem_keyboard_low_volatage_led_flag 
+02ef c00082e1 beq 1 ,p_keyboard_low_voltage_led_on 
+02f0 c00302e3 beq 6 ,p_keyboard_low_voltage_led_off 
+02f1 1fe67c09 sub pdata ,9 ,null 
+02f2 244102de ncall p_keyboard_adc_low_volatage_led_timer_count_clean ,positive 
+02f3 20600000 rtn 
+
+p_keyboard_discover_setting_led_gpio:
+02f4 20600000 rtn 
+
+p_keyboard_long_press_timer:
+02f5 da6048ee arg mem_same_keyvalue_timer ,regc 
+02f6 da4002f8 arg p_keyboard_long_press_timerout ,regb 
+02f7 202042e7 branch timer_single_step_2b 
+
+p_keyboard_long_press_timerout:
+02f8 7048eb01 jam 1 ,mem_same_keyvalue_timerout_flag 
+02f9 20204f6c branch keyboard_app_enter_hibernate 
+
+p_keyboard_check_no_data_timeout_timer:
+02fa da604781 arg mem_mouse_no_data_timer ,regc 
+02fb da4002fd arg p_keyboard_check_no_data_timeout ,regb 
+02fc 202042e7 branch timer_single_step_2b 
+
+p_keyboard_check_no_data_timeout:
+02fd 6fe0c666 fetch 1 ,mem_device_flag 
+02fe c00001fb beq mode_24g_device ,p_keyboard_24g_hibernate_set 
+02ff 20205aad branch mouse_disconnect 
+
+p_keyboard_key_press_timer:
+0300 6fe0cba1 fetch 1 ,mem_keyboard_switch_device_flag 
+0301 c2800304 bbit1 keyboard_flag_g24_device_button ,p_keyboard_device_select_g24_press_timer 
+0302 2040030d call p_keyboard_device_select_g24_nopress_timer 
+0303 20600000 rtn 
+
+p_keyboard_device_select_g24_press_timer:
+0304 6fe0cba4 fetch 1 ,mem_keyboard_switch_g24_press_timer 
+0305 1fe67c64 sub pdata ,100 ,null 
+0306 24610000 nrtn positive 
+0307 1fe0fe01 increase 1 ,pdata 
+0308 67e0cba4 store 1 ,mem_keyboard_switch_g24_press_timer 
+0309 c18c8000 rtnne 25 
+030a 704ba300 jam 0 ,mem_keyboard_switch_g24_enable 
+
+p_keyboard_24g_start_pair_mode:
+030b 204004e6 call p_keyboard_device_led_all_off 
+030c 20204e39 branch keyboard_24g_start_pair_mode 
+
+p_keyboard_device_select_g24_nopress_timer:
+030d 704ba400 jam 0 ,mem_keyboard_switch_g24_press_timer 
+030e 20600000 rtn 
+
+p_keyboard_idle:
+030f 20404bfb call kscan_dispatch 
+0310 20200311 branch p_keyboard_evt_ui_timer_check 
+
+p_keyboard_evt_ui_timer_check:
+0311 da200000 arg 0 ,rega 
+0312 684a4d12 fetcht 4 ,mem_keyboard_evt_btclk 
+0313 1c422400 copy clkn_bt ,regb 
+0314 1a427e00 copy regb ,pdata 
+0315 98467c00 isub temp ,null 
+0316 24417806 ncall ui_timer_timeout ,positive 
+
+p_keyboard_evt_ui_timer_check_loop:
+0317 1a427e00 copy regb ,pdata 
+0318 18408428 increase 40 ,temp 
+0319 98467c00 isub temp ,null 
+031a 24210323 nbranch p_keyboard_evt_ui_timer_check_end ,positive 
+031b 1a20a201 increase 1 ,rega 
+031c 1a217e0f and rega ,0x0f ,pdata 
+031d 243a0317 nbranch p_keyboard_evt_ui_timer_check_loop ,blank 
+031e da200000 arg 0 ,rega 
+031f 20400328 call p_keyboard_evt_ui_timer_check_send_evt 
+
+p_keyboard_evt_ui_timer_init:
+0320 1c427e00 copy clkn_bt ,pdata 
+0321 67e24d12 store 4 ,mem_keyboard_evt_btclk 
+0322 20600000 rtn 
+
+p_keyboard_evt_ui_timer_check_end:
+0323 1a227e00 copy rega ,pdata 
+0324 207a0000 rtn blank 
+0325 184085d8 increase -40 ,temp 
+0326 793f841c set0 28 ,temp 
+0327 604a4d12 storet 4 ,mem_keyboard_evt_btclk 
+
+p_keyboard_evt_ui_timer_check_send_evt:
+0328 67e0cd16 store 1 ,mem_keyboard_evt_timer_count 
+
+p_keyboard_evt_50ms_loop:
+0329 6fe0cd16 fetch 1 ,mem_keyboard_evt_timer_count 
+032a 207a0000 rtn blank 
+032b 1fe0ffff increase -1 ,pdata 
+032c 67e0cd16 store 1 ,mem_keyboard_evt_timer_count 
+032d 204003ad call p_keyboard_delay_lpm_timer 
+032e 20200329 branch p_keyboard_evt_50ms_loop 
+
+p_keyboard_start_work:
+
+p_keyboard_start_work_adc_check:
+032f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0330 c30a8342 bbit0 mouse_enable_adc ,p_keyboard_start_work_next 
+0331 2040004b call p_keyboard_adc_gpio_set 
+0332 20400235 call p_keyboard_low_voltage_param_set 
+0333 20406f82 call enable_adc 
+0334 20406fb0 call vdd_calculate_by_mode 
+0335 1fe6fc0a div pdata ,10 
+0336 20407d5f call get_div_result 
+0337 67e14633 store 2 ,mem_mouse_vdd_now_vol 
+0338 6fe1462f fetch 2 ,mem_mouse_vdd_empty_vol 
+0339 1fe6fc02 div pdata ,2 
+033a 20407d5f call get_div_result 
+033b 68494633 fetcht 2 ,mem_mouse_vdd_now_vol 
+033c 98467c00 isub temp ,null 
+033d 2021032f branch p_keyboard_start_work_adc_check ,positive 
+033e da20462d arg mem_mouse_vdd_calculate_set ,rega 
+033f 20405563 call mouse_adc_bat_percent_lowpower_out 
+0340 6fe0c40c fetch 1 ,mem_adc_power_flag 
+0341 c280cf6b bbit1 1 ,keyboard_power_down 
+
+p_keyboard_start_work_next:
+0342 6fe0c9a4 fetch 1 ,mem_keyboard_pairing_type 
+0343 205a4e24 call keyboard_enable_bt_button_pairing ,blank 
+0344 6fe0c9a3 fetch 1 ,mem_keyboard_bt_button_flag 
+0345 247a0000 nrtn blank 
+0346 6fe0c666 fetch 1 ,mem_device_flag 
+0347 c000602f beq mode_24g_device ,mouse_24g_reconn_general_dongle 
+0348 20405aa8 call mouse_bluetooth_fast_conn_disable 
+
+p_keyboard_start_ble1_reconnect:
+0349 6fe34668 fetch 6 ,mem_device1_addr 
+
+p_keyboard_start_ble_reconnect:
+034a 203a5a94 branch mouse_bluetooth_fast_conn_init ,blank 
+034b 202054a0 branch mouse_start_reconnect_device 
+
+p_keyboard_keyscan:
+034c 20400578 call p_keyboard_gpio_init 
+034d 58000000 setarg 0 
+034e 67e148e9 store 2 ,mem_keyscan_exmcu_wait_wake_count 
+034f d8c0489c arg mem_keyscan_value_current ,contr 
+0350 d8a048b0 arg mem_keyscan_value_check ,contw 
+0351 df200014 arg 20 ,loopcnt 
+0352 20407cda call memcpy 
+0353 20404c85 call keyboard_stb_state_low 
+0354 5800489c setarg mem_keyscan_value_current 
+0355 67e148e3 store 2 ,mem_keyscan_value_ptr 
+0356 58004cfb setarg mem_keyscan_exmcu_value_new 
+0357 67e148e5 store 2 ,mem_keyscan_exmcu_value_ptr 
+0358 20404c83 call keyboard_stb_state_high 
+0359 20404c81 call keyboard_clk_input 
+
+p_keyboard_keyscan_exmcu_start_check:
+035a 6fe148e9 fetch 2 ,mem_keyscan_exmcu_wait_wake_count 
+035b 1fe0fe01 increase 1 ,pdata 
+035c 67e148e9 store 2 ,mem_keyscan_exmcu_wait_wake_count 
+035d c2848393 bbit1 9 ,p_keyboard_keyscan_reset_exmcu 
+035e 6848c864 fetcht 1 ,mem_mcu_clk_gpio 
+035f 20406ee6 call gpio_get_bit 
+0360 2420835a nbranch p_keyboard_keyscan_exmcu_start_check ,true 
+0361 20404c85 call keyboard_stb_state_low 
+
+p_keyboard_keyscan_wait_wake_next:
+0362 6848c864 fetcht 1 ,mem_mcu_clk_gpio 
+0363 20406ee6 call gpio_get_bit 
+0364 20208362 branch p_keyboard_keyscan_wait_wake_next ,true 
+0365 2040038a call p_keyboard_keyscan_get_exmcu_value 
+0366 2040039a call p_keyboard_keyscan_get_mcu_value 
+0367 20404c81 call keyboard_clk_input 
+0368 20404c83 call keyboard_stb_state_high 
+
+p_keyboard_keyscan_copy_value:
+0369 6fe1489a fetch 2 ,mem_kb_excol_ptr 
+036a 1fe22400 copy pdata ,regb 
+036b 7048e800 jam 0 ,mem_keyscan_col_loop_count 
+
+p_keyboard_compare_col_excol_gpio_loop:
+036c e8408012 ifetcht 1 ,regb 
+036d 6fe14898 fetch 2 ,mem_kb_col_ptr 
+036e 1fe22200 copy pdata ,rega 
+036f 1a222600 copy rega ,regc 
+0370 df200014 arg 20 ,loopcnt 
+
+p_keyboard_compare_col_gpio_loop:
+0371 efe08011 ifetch 1 ,rega 
+0372 98467c00 isub temp ,null 
+0373 2022837e branch p_keyboard_copy_value_exmcu_to_mcu ,zero 
+0374 1a20a201 increase 1 ,rega 
+0375 c2000371 loop p_keyboard_compare_col_gpio_loop 
+
+p_keyboard_compare_col_excol_gpio_loop_next:
+0376 1a40a401 increase 1 ,regb 
+0377 6fe0c8e8 fetch 1 ,mem_keyscan_col_loop_count 
+0378 1fe0fe01 increase 1 ,pdata 
+0379 67e0c8e8 store 1 ,mem_keyscan_col_loop_count 
+037a 1fe67c0b sub pdata ,11 ,null 
+037b 2021036c branch p_keyboard_compare_col_excol_gpio_loop ,positive 
+037c 204004f0 call p_keyboard_gpio_pu_idle 
+037d 20200587 branch p_keyboard_key_row_init 
+
+p_keyboard_copy_value_exmcu_to_mcu:
+037e 6fe148e3 fetch 2 ,mem_keyscan_value_ptr 
+037f 1fe20a00 copy pdata ,contw 
+0380 1a227e00 copy rega ,pdata 
+0381 9a667e00 isub regc ,pdata 
+0382 98a08a00 iadd contw ,contw 
+0383 6fe148e5 fetch 2 ,mem_keyscan_exmcu_value_ptr 
+0384 1fe22600 copy pdata ,regc 
+0385 6fe0c8e8 fetch 1 ,mem_keyscan_col_loop_count 
+0386 9a60a600 iadd regc ,regc 
+0387 efe08013 ifetch 1 ,regc 
+0388 e7e08005 istore 1 ,contw 
+0389 20200376 branch p_keyboard_compare_col_excol_gpio_loop_next 
+
+p_keyboard_keyscan_get_exmcu_value:
+038a 704ab900 jam 0 ,mem_keyscan_exmcu_reset_count 
+038b 7048e800 jam 0 ,mem_keyscan_col_loop_count 
+
+p_keyboard_keyscan_exmcu_start_loop:
+038c 20404c7b call keyboard_clk_state_low 
+038d 20400394 call p_keyboard_keyscan_exmcu_get_col_value 
+038e 20404c79 call keyboard_clk_state_high 
+038f 20400394 call p_keyboard_keyscan_exmcu_get_col_value 
+0390 1fe67c0b sub pdata ,11 ,null 
+0391 2021038c branch p_keyboard_keyscan_exmcu_start_loop ,positive 
+0392 20204c7b branch keyboard_clk_state_low 
+
+p_keyboard_keyscan_reset_exmcu:
+0393 2020034c branch p_keyboard_keyscan 
+
+p_keyboard_keyscan_exmcu_get_col_value:
+0394 7048e700 jam 0 ,mem_keyscan_value_temp 
+0395 20400398 call p_keyboard_keyscan_get_col_value 
+0396 6fe148e5 fetch 2 ,mem_keyscan_exmcu_value_ptr 
+0397 20204c4a branch keyboard_keyscan_value_store 
+
+p_keyboard_keyscan_get_col_value:
+0398 20000078 nop 120 
+0399 20204c65 branch keyboard_keyscan_get_col_value 
+
+p_keyboard_keyscan_get_mcu_value:
+039a 6fe14898 fetch 2 ,mem_kb_col_ptr 
+039b 1fe22400 copy pdata ,regb 
+039c 7048e800 jam 0 ,mem_keyscan_col_loop_count 
+
+p_keyboard_keyscan_mcu_start:
+039d 7048e700 jam 0 ,mem_keyscan_value_temp 
+039e e8408012 ifetcht 1 ,regb 
+039f 284ffe07 isolate1 7 ,temp 
+03a0 202083a7 branch p_keyboard_keyscan_mcu_start_loop ,true 
+03a1 20406ef7 call gpio_out_active 
+03a2 20400398 call p_keyboard_keyscan_get_col_value 
+03a3 e8408012 ifetcht 1 ,regb 
+03a4 20406ef3 call gpio_out_inactive 
+03a5 e8408012 ifetcht 1 ,regb 
+03a6 20404c7d call keyboard_gpio_config_input_pu 
+
+p_keyboard_keyscan_mcu_start_loop:
+03a7 1a40a401 increase 1 ,regb 
+03a8 6fe148e3 fetch 2 ,mem_keyscan_value_ptr 
+03a9 20404c4a call keyboard_keyscan_value_store 
+03aa 1fe67c13 sub pdata ,19 ,null 
+03ab 2021039d branch p_keyboard_keyscan_mcu_start ,positive 
+03ac 20600000 rtn 
+
+p_keyboard_delay_lpm_timer:
+03ad 6fe0cd11 fetch 1 ,mem_keyboard_delay_lpm_flag 
+03ae 207a0000 rtn blank 
+03af 70409401 jam 1 ,mem_lpm_mode 
+03b0 704d1100 jam 0 ,mem_keyboard_delay_lpm_flag 
+03b1 20600000 rtn 
+
+p_keyboard_press_change_or_no_key:
+03b2 70409400 jam 0 ,mem_lpm_mode 
+03b3 704d1101 jam 1 ,mem_keyboard_delay_lpm_flag 
+03b4 20204c87 branch keyboard_press_change_or_no_key 
+
+p_keyboard_key_process:
+03b5 da20489c arg mem_keyscan_value_current ,rega 
+03b6 da4048b0 arg mem_keyscan_value_check ,regb 
+03b7 df200014 arg 20 ,loopcnt 
+03b8 20407d64 call string_compare 
+03b9 242283b2 nbranch p_keyboard_press_change_or_no_key ,zero 
+03ba 204003ef call p_keyboard_keyscan_value_current_zero_check 
+03bb 205a4c87 call keyboard_press_change_or_no_key ,blank 
+03bc 20404ccd call keyboard_ghost_key_check 
+03bd 6fe0c97b fetch 1 ,mem_mouse_ghost_flag 
+03be 247a0000 nrtn blank 
+03bf 6fe0c9c1 fetch 1 ,mem_keyboard_commbination_key_step 
+03c0 c1008000 rtneq cammbination_key_press 
+03c1 c1010000 rtneq cammbination_key_hold 
+03c2 c1020000 rtneq cammbination_key_wait_release 
+03c3 7048e800 jam 0 ,mem_keyscan_col_loop_count 
+03c4 da20489c arg mem_keyscan_value_current ,rega 
+03c5 da4048c4 arg mem_keyscan_value_old ,regb 
+
+p_keyboard_keyvalue_process:
+03c6 e8408011 ifetcht 1 ,rega 
+03c7 efe08012 ifetch 1 ,regb 
+03c8 9842fe00 ixor temp ,pdata 
+03c9 203a03e7 branch p_keyboard_keyvalue_process_loop ,blank 
+03ca 67e0c8e7 store 1 ,mem_keyscan_value_temp 
+03cb 6048c8f6 storet 1 ,mem_keyboard_press_flag_temp 
+03cc e0408012 istoret 1 ,regb 
+03cd 7048f401 jam 1 ,mem_keyboard_data_change_flag 
+03ce 7048f700 jam 0 ,mem_keyboard_keyvalue_bit_loop_count 
+
+p_keyboard_keyvalue_change:
+03cf 6fe0c8e7 fetch 1 ,mem_keyscan_value_temp 
+03d0 c30003dc bbit0 0 ,p_keyboard_keyvalue_change_loop 
+03d1 6fe0c8e8 fetch 1 ,mem_keyscan_col_loop_count 
+03d2 1feffe08 mul32 pdata ,8 ,pdata 
+03d3 6848c8f7 fetcht 1 ,mem_keyboard_keyvalue_bit_loop_count 
+03d4 9840fe00 iadd temp ,pdata 
+03d5 d8c04a16 arg mem_keyboard_keyvalue_map_new ,contr 
+03d6 98c08c00 iadd contr ,contr 
+03d7 efe08006 ifetch 1 ,contr 
+03d8 67e0c8f5 store 1 ,mem_keyboard_keyvalue_temp 
+03d9 20404cfc call keyboard_keyvalue_fn_replace 
+03da 20400044 call p_keyboard_keyvalue_commbination_replace 
+03db 20400402 call p_keyboard_keyvalue_in_out 
+
+p_keyboard_keyvalue_change_loop:
+03dc 6fe0c8e7 fetch 1 ,mem_keyscan_value_temp 
+03dd 1fe37e00 rshift pdata ,pdata 
+03de 67e0c8e7 store 1 ,mem_keyscan_value_temp 
+03df 6fe0c8f6 fetch 1 ,mem_keyboard_press_flag_temp 
+03e0 1fe37e00 rshift pdata ,pdata 
+03e1 67e0c8f6 store 1 ,mem_keyboard_press_flag_temp 
+03e2 6fe0c8f7 fetch 1 ,mem_keyboard_keyvalue_bit_loop_count 
+03e3 1fe0fe01 increase 1 ,pdata 
+03e4 67e0c8f7 store 1 ,mem_keyboard_keyvalue_bit_loop_count 
+03e5 1fe67c07 sub pdata ,7 ,null 
+03e6 202103cf branch p_keyboard_keyvalue_change ,positive 
+
+p_keyboard_keyvalue_process_loop:
+03e7 1a20a201 increase 1 ,rega 
+03e8 1a40a401 increase 1 ,regb 
+03e9 6fe0c8e8 fetch 1 ,mem_keyscan_col_loop_count 
+03ea 1fe0fe01 increase 1 ,pdata 
+03eb 67e0c8e8 store 1 ,mem_keyscan_col_loop_count 
+03ec 1fe67c13 sub pdata ,19 ,null 
+03ed 202103c6 branch p_keyboard_keyvalue_process ,positive 
+03ee 20600000 rtn 
+
+p_keyboard_keyscan_value_current_zero_check:
+03ef 6fe4489c fetch 8 ,mem_keyscan_value_current 
+03f0 247a0000 nrtn blank 
+03f1 6fe448a4 fetch 8 ,mem_keyscan_value_current + 8 
+03f2 247a0000 nrtn blank 
+03f3 6fe248ac fetch 4 ,mem_keyscan_value_current + 16 
+03f4 247a0000 nrtn blank 
+03f5 6fe0c9c4 fetch 1 ,mem_keyboard_commbination_control_key_delay_release_timer 
+03f6 247a0000 nrtn blank 
+03f7 6fe0c9c1 fetch 1 ,mem_keyboard_commbination_key_step 
+03f8 c1030000 rtneq cammbination_key_null 
+03f9 7049c100 jam cammbination_key_free ,mem_keyboard_commbination_key_step 
+03fa 20600000 rtn 
+
+p_keyboard_commbination_search:
+03fb 6fe0c9c6 fetch 1 ,mem_kb_computer_system 
+03fc c00183ff beq system_os_mac ,p_keyboard_commbination_mac_search 
+03fd 580000fa setarg hid_key_ac_search 
+03fe 20204d38 branch keyboard_keyvalue_store_temp 
+
+p_keyboard_commbination_mac_search:
+03ff 7049c208 jam left_gui ,mem_keyboard_commbination_control_key_value 
+0400 7049c32c jam hid_key_space ,mem_keyboard_commbination_standard_key_value 
+0401 20204d95 branch keyboard_commbination_keypress 
+
+p_keyboard_keyvalue_in_out:
+0402 6fe0c8f5 fetch 1 ,mem_keyboard_keyvalue_temp 
+0403 d84000e0 arg hid_key_left_ctrl ,temp 
+0404 98467c00 isub temp ,null 
+0405 24210414 nbranch p_keyboard_keyvalue_standard ,positive 
+0406 1fe67ce7 sub pdata ,hid_key_right_gui ,null 
+0407 24210431 nbranch p_keyboard_keyvalue_consumer ,positive 
+0408 1fe17e07 and_into 0x07 ,pdata 
+0409 1fe20e00 copy pdata ,queue 
+040a 6fe0c8f6 fetch 1 ,mem_keyboard_press_flag_temp 
+040b c2800410 bbit1 0 ,p_keyboard_keyvalue_control_key_in 
+
+p_keyboard_keyvalue_control_key_out:
+040c 6fe0c8f8 fetch 1 ,mem_keyboard_keyvalue_buffer 
+040d f93ffe00 qset0 pdata 
+040e 67e0c8f8 store 1 ,mem_keyboard_keyvalue_buffer 
+040f 20600000 rtn 
+
+p_keyboard_keyvalue_control_key_in:
+0410 6fe0c8f8 fetch 1 ,mem_keyboard_keyvalue_buffer 
+0411 f9207e00 qset1 pdata 
+0412 67e0c8f8 store 1 ,mem_keyboard_keyvalue_buffer 
+0413 20600000 rtn 
+
+p_keyboard_keyvalue_standard:
+0414 70490000 jam 0 ,mem_keyboard_keyvalue_buffer + 8 
+0415 6fe0c8f6 fetch 1 ,mem_keyboard_press_flag_temp 
+0416 c2800425 bbit1 0 ,p_keyboard_keyvalue_standard_in 
+
+p_keyboard_keyvalue_standard_out:
+0417 6848c8f5 fetcht 1 ,mem_keyboard_keyvalue_temp 
+0418 df200006 arg 6 ,loopcnt 
+0419 d8c048fa arg mem_keyboard_keyvalue_buffer + 2 ,contr 
+
+p_keyboard_keyvalue_standard_out_loop:
+041a efe08006 ifetch 1 ,contr 
+041b 98467c00 isub temp ,null 
+041c 24228423 nbranch p_keyboard_keyvalue_standard_out_next ,zero 
+041d efe08006 ifetch 1 ,contr 
+041e 18c08dfe increase -2 ,contr 
+041f e7e08006 istore 1 ,contr 
+0420 207a0000 rtn blank 
+0421 18c08c01 increase 1 ,contr 
+0422 e0408006 istoret 1 ,contr 
+
+p_keyboard_keyvalue_standard_out_next:
+0423 c200041a loop p_keyboard_keyvalue_standard_out_loop 
+0424 20600000 rtn 
+
+p_keyboard_keyvalue_standard_in:
+0425 6848c8f5 fetcht 1 ,mem_keyboard_keyvalue_temp 
+0426 df200006 arg 6 ,loopcnt 
+0427 d8c048fa arg mem_keyboard_keyvalue_buffer + 2 ,contr 
+
+p_keyboard_keyvalue_standard_in_loop:
+0428 efe08006 ifetch 1 ,contr 
+0429 203a042e branch p_keyboard_keyvalue_standard_in_data ,blank 
+042a 98467c00 isub temp ,null 
+042b 20628000 rtn zero 
+042c c2000428 loop p_keyboard_keyvalue_standard_in_loop 
+042d 20600000 rtn 
+
+p_keyboard_keyvalue_standard_in_data:
+042e 18c08dff increase -1 ,contr 
+042f e0408006 istoret 1 ,contr 
+0430 20600000 rtn 
+
+p_keyboard_keyvalue_consumer:
+0431 7049c501 jam keyboard_consumer_key_press ,mem_keyboard_consumer_key_status 
+0432 6fe0c8f6 fetch 1 ,mem_keyboard_press_flag_temp 
+0433 2fec0000 isolate0 0 ,pdata 
+0434 20408436 call p_keyboard_consumer_key_release ,true 
+0435 20200414 branch p_keyboard_keyvalue_standard 
+
+p_keyboard_consumer_key_release:
+0436 7049c502 jam keyboard_consumer_key_release ,mem_keyboard_consumer_key_status 
+0437 20600000 rtn 
+
+p_keyboard_keyvalue_fn_replace:
+0438 6fe0c8f6 fetch 1 ,mem_keyboard_press_flag_temp 
+0439 2feffe00 isolate1 0 ,pdata 
+043a 2040cd4e call keyboard_commbination_delay_release_clear ,true 
+043b 6fe0c9a1 fetch 1 ,mem_keyboard_fn_flag 
+043c 245a0445 ncall p_keyboard_keyvalue_fn_replace_press ,blank 
+043d 6fe0c8f5 fetch 1 ,mem_keyboard_keyvalue_temp 
+043e c0380440 beq hid_key_copilot ,p_keyboard_value_copilot 
+043f 20204d01 branch keyboard_keyvalue_fn_replace + 5 
+
+p_keyboard_value_copilot:
+0440 6fe0c9c6 fetch 1 ,mem_kb_computer_system 
+0441 c1800000 rtnne system_os_windows 
+0442 7049c20a jam left_shift_gui ,mem_keyboard_commbination_control_key_value 
+0443 7049c372 jam hid_key_f23 ,mem_keyboard_commbination_standard_key_value 
+0444 20204d95 branch keyboard_commbination_keypress 
+
+p_keyboard_keyvalue_fn_replace_press:
+0445 6fe0c8f5 fetch 1 ,mem_keyboard_keyvalue_temp 
+0446 20204d12 branch keyboard_keyvalue_fn_replace_press + 1 
+
+p_keyboard_special_key_check:
+0447 20400457 call p_keyboard_device_select 
+0448 20404e14 call keyboard_pairing_button_check 
+0449 7049a100 jam 0 ,mem_keyboard_fn_flag 
+044a 7049a200 jam 0 ,mem_keyboard_control_key_flag 
+044b 7049a300 jam 0 ,mem_keyboard_bt_button_flag 
+044c 6fe0c8f8 fetch 1 ,mem_keyboard_keyvalue_buffer 
+044d 245a4e41 ncall keyborad_control_key_set ,blank 
+044e d8c048fa arg mem_keyboard_keyvalue_buffer + 2 ,contr 
+044f df200006 arg 6 ,loopcnt 
+
+p_keyboard_special_key_check_loop:
+0450 efe08006 ifetch 1 ,contr 
+0451 1fe67c7f sub pdata ,hid_key_fn ,null 
+0452 2042ce43 call keyboard_fn_set ,zero 
+0453 1fe67cde sub pdata ,hid_key_pb ,null 
+0454 2042ce45 call keyboard_pb_set ,zero 
+0455 c2000450 loop p_keyboard_special_key_check_loop 
+0456 20600000 rtn 
+
+p_keyboard_device_select:
+0457 20407dbc call disable_user 
+0458 20400461 call p_keyboard_device_select_g24 
+0459 2034045f branch p_keyboard_clear_change_flag ,user 
+045a 6fe0cba1 fetch 1 ,mem_keyboard_switch_device_flag 
+045b 793ffe00 set0 keyboard_flag_g24_device_button ,pdata 
+045c 793ffe01 set0 keyboard_flag_bt_device_button ,pdata 
+045d 67e0cba1 store 1 ,mem_keyboard_switch_device_flag 
+045e 20600000 rtn 
+
+p_keyboard_clear_change_flag:
+045f 7048f400 jam 0 ,mem_keyboard_data_change_flag 
+0460 20600000 rtn 
+
+p_keyboard_device_select_g24:
+0461 6fe148fa fetch 2 ,mem_keyboard_keyvalue_buffer + 2 
+0462 684949a7 fetcht 2 ,mem_keyboard_commbination_key_24g 
+0463 98467c00 isub temp ,null 
+0464 20228469 branch p_keyboard_device_select_g24_press ,zero 
+0465 18508400 byteswap temp ,temp 
+0466 98467c00 isub temp ,null 
+0467 20228469 branch p_keyboard_device_select_g24_press ,zero 
+0468 20600000 rtn 
+
+p_keyboard_device_select_g24_press:
+0469 6fe248fc fetch 4 ,mem_keyboard_keyvalue_buffer + 4 
+046a 247a0000 nrtn blank 
+046b 20407dba call enable_user 
+046c 6fe0cba1 fetch 1 ,mem_keyboard_switch_device_flag 
+046d 79207e00 set1 keyboard_flag_g24_device_button ,pdata 
+046e 793ffe01 set0 keyboard_flag_bt_device_button ,pdata 
+046f 67e0cba1 store 1 ,mem_keyboard_switch_device_flag 
+0470 20600000 rtn 
+
+p_keyboard_motion:
+0471 78547c00 disable user 
+0472 70496c00 jam 0 ,mem_customer_key 
+0473 70496d00 jam 0 ,mem_customer_data_trigger 
+0474 70496e00 jam 0 ,mem_customer_data_trigger_last 
+0475 6fe0c9c1 fetch 1 ,mem_keyboard_commbination_key_step 
+0476 c000cda5 beq cammbination_key_press ,keyboard_commbination_key_press_process 
+0477 c0014daa beq cammbination_key_hold ,keyboard_commbination_key_hold_process 
+0478 c001cdaa beq cammbination_key_complete ,keyboard_commbination_key_hold_process 
+0479 c0024dae beq cammbination_key_wait_release ,keyboard_commbination_key_wait_release_process 
+047a c0034db7 beq cammbination_key_null ,keyboard_commbination_key_null_process 
+047b 6fe0c8f4 fetch 1 ,mem_keyboard_data_change_flag 
+047c 203a047e branch p_keyboard_no_key_press ,blank 
+047d 20204e54 branch keyboard_motion + 13 
+
+p_keyboard_no_key_press:
+047e 6fe0c666 fetch 1 ,mem_device_flag 
+047f c1800000 rtnne mode_24g_device 
+0480 20204e66 branch keyboard_no_key_press + 2 
+
+p_keyboard_device_data_tpye_check:
+0481 6fe0c666 fetch 1 ,mem_device_flag 
+0482 c0800488 bne mode_24g_device ,p_keyboard_device_data_tpye_check_next 
+0483 7049a900 jam 0 ,mem_24g_repeat_send_flag 
+0484 6fe14855 fetch 2 ,mem_keyboard_tx_data 
+0485 245a4afc ncall keyboard_set_repeat_send_flag ,blank 
+0486 6fe34858 fetch 6 ,mem_keyboard_tx_data + 3 
+0487 245a4afc ncall keyboard_set_repeat_send_flag ,blank 
+
+p_keyboard_device_data_tpye_check_next:
+0488 6fe0c855 fetch 1 ,mem_keyboard_tx_data 
+0489 c000048b beq hid_reportid_key_standard ,p_keyboard_standard_data_send 
+048a 20204f19 branch keyboard_device_data_tpye_check_next + 1 
+
+p_keyboard_standard_data_send:
+048b 70485f02 jam device_data_tpye_standard_keyboard ,mem_keyboard_data_send_flag 
+048c 20404f3e call keyboard_clear_key_data 
+048d 6fe0c666 fetch 1 ,mem_device_flag 
+048e c0804f2a bne mode_24g_device ,keyboard_standard_data_send_end 
+048f 20204f27 branch keyboard_standard_data_send + 4 
+
+p_keyboard_cb_fuction:
+0490 580004ab setarg p_keyboard_24g_before_lpm_sleep 
+0491 67e143e9 store 2 ,mem_cb_before_lpm_sleep 
+0492 58004fe5 setarg keyboard_24g_package_data 
+0493 67e145f2 store 2 ,mem_cb_24g_transmit_data 
+0494 58004ff8 setarg keyboard_24g_search_dongle 
+0495 67e145f4 store 2 ,mem_cb_24g_search_receiver 
+0496 580004ae setarg p_keyboard_lpm_before_common 
+0497 67e145f6 store 2 ,mem_cb_24g_lpm_before 
+0498 580004e0 setarg p_keyboard_process_lpm_before 
+0499 67e143d7 store 2 ,mem_cb_before_lpm 
+049a 58004a9a setarg keyboard_priority_bb_event 
+049b 67e143dd store 2 ,mem_cb_bb_event_process 
+049c 58004bcc setarg keyboard_idle 
+049d 67e143db store 2 ,mem_cb_idle_process 
+049e 58004f62 setarg keyboard_before_hibernate 
+049f 67e143d5 store 2 ,mem_cb_before_hibernate 
+04a0 58005b08 setarg mouse_le_bb_event_connect_complete 
+04a1 67e143df store 2 ,mem_cb_att_write 
+04a2 58004b19 setarg keyboard_bb_event_timer 
+04a3 67e143e3 store 2 ,mem_cb_event_timer 
+04a4 580055fa setarg mouse_spi_write_flash_cb 
+04a5 67e143e7 store 2 ,mem_cb_spi_flash_write_complate 
+04a6 58006221 setarg mouse_le_transmit 
+04a7 67e143e1 store 2 ,mem_cb_ble_transmit 
+04a8 58006228 setarg mouse_set_lpm_mult 
+04a9 67e143e5 store 2 ,mem_cb_bt_set_mult 
+04aa 20600000 rtn 
+
+p_keyboard_24g_before_lpm_sleep:
+04ab 6fe0c666 fetch 1 ,mem_device_flag 
+04ac c1800000 rtnne mode_24g_device 
+04ad 2020610b branch mouse_24g_before_lpm_sleep + 2 
+
+p_keyboard_lpm_before_common:
+04ae 204004da call p_clear_wake 
+04af 6848c655 fetcht 1 ,mem_config_select_device_button_gpio 
+04b0 20406eb6 call gpio_set_wake 
+04b1 6848cbbd fetcht 1 ,mem_usb_level_check_gpio 
+04b2 79200407 set1 7 ,temp 
+04b3 20406eb6 call gpio_set_wake 
+04b4 6fe14898 fetch 2 ,mem_kb_col_ptr 
+04b5 1fe22400 copy pdata ,regb 
+04b6 df200014 arg 20 ,loopcnt 
+
+p_keyboard_key_col_wake_init:
+04b7 e8408012 ifetcht 1 ,regb 
+04b8 284ffe07 isolate1 7 ,temp 
+04b9 2440eef7 ncall gpio_out_active ,true 
+04ba 1a40a401 increase 1 ,regb 
+04bb c20004b7 loop p_keyboard_key_col_wake_init 
+04bc 704d0d00 jam 0 ,mem_qdec_set_flag 
+04bd 6fe14896 fetch 2 ,mem_kb_row_ptr 
+04be 1fe22400 copy pdata ,regb 
+04bf df200008 arg 8 ,loopcnt 
+
+p_keyboard_key_row_wake_init:
+04c0 e8408012 ifetcht 1 ,regb 
+04c1 18467cff sub temp ,ui_button_gpio_disable ,null 
+04c2 2442cf5a ncall keyboard_key_row_wake_set ,zero 
+04c3 1a40a401 increase 1 ,regb 
+04c4 c20004c0 loop p_keyboard_key_row_wake_init 
+04c5 204004fe call p_keyboard_puchk_set_check 
+04c6 6848c65b fetcht 1 ,mem_mouse_reuse_2ice_gpio 
+04c7 204055b5 call mouse_gpio_config_input_pu 
+04c8 204055b9 call mouse_gpio_set_high_impedance 
+04c9 202054f2 branch mouse_adc_gpio_set_before_hibernate 
+
+p_gpio_set_wake:
+04ca 18467cff sub temp ,ui_button_gpio_disable ,null 
+04cb 20628000 rtn zero 
+04cc d9000004 arg 4 ,debug 
+04cd 284ffe07 isolate1 gpio_active_bit ,temp 
+04ce 2020eebd branch gpio_set_wake_high ,true 
+04cf d9000003 arg 3 ,debug 
+04d0 20206ebd branch gpio_set_wake_high 
+
+p_gpio_set_wake_by_current_state:
+04d1 18467cff sub temp ,gpio_disable ,null 
+04d2 20628000 rtn zero 
+04d3 20406ee6 call gpio_get_bit 
+04d4 202084d7 branch p_gpio_set_qdec_mode ,true 
+
+p_gpio_set_low_wake:
+04d5 d9000003 arg 3 ,debug 
+04d6 20206ebd branch gpio_set_wake_high 
+
+p_gpio_set_qdec_mode:
+04d7 704d0d01 jam 1 ,mem_qdec_set_flag 
+04d8 d9000006 arg 6 ,debug 
+04d9 20206ebd branch gpio_set_wake_high 
+
+p_clear_wake:
+04da 58000000 setarg 0 
+04db 79207e15 set1 21 ,pdata 
+04dc 67e40016 store 8 ,mem_gpio_wakeup_cfg 
+04dd 58000000 setarg 0 
+04de e7e20005 istore 4 ,contw 
+04df 20600000 rtn 
+
+p_keyboard_process_lpm_before:
+04e0 c6130000 rtnmark1 mark_24g 
+04e1 202004ae branch p_keyboard_lpm_before_common 
+
+p_keyboard_before_hibernate:
+04e2 704659ff jam 0xff ,mem_sensor_motion_gpio 
+04e3 2040739a call disable_authrom 
+04e4 20404f70 call keyboard_device_led_all_off 
+04e5 202004ed branch p_keyboard_setgpio_hibernate 
+
+p_keyboard_device_led_all_off:
+04e6 20404b6f call keyboard_power_led_off 
+04e7 20400297 call p_keyboard_device_led_off 
+04e8 20400275 call p_keyboard_numlock_led_off + 2 
+04e9 2040027c call p_keyboard_scrolllock_led_off + 2 
+04ea 20200253 branch p_keyboard_capslock_led_off + 2 
+
+p_keyboard_app_enter_hibernate:
+04eb 204004ed call p_keyboard_setgpio_hibernate 
+04ec 20204327 branch app_enter_hibernate 
+
+p_keyboard_setgpio_hibernate:
+04ed 204004da call p_clear_wake 
+04ee 20404f70 call keyboard_device_led_all_off 
+04ef 202004ae branch p_keyboard_lpm_before_common 
+
+p_keyboard_gpio_pu_idle:
+04f0 d8c08070 arg core_gpio_conf ,contr 
+04f1 df200010 arg gpio_number ,loopcnt 
+
+p_keyboard_gpio_pu_idle_loop:
+04f2 efe08006 ifetch 1 ,contr 
+04f3 243a04f7 nbranch p_keyboard_gpio_pu_idle_configured ,blank 
+04f4 58000040 setarg gpcfg_pullup 
+04f5 18c08bff add contr ,-1 ,contw 
+04f6 e7e08005 istore 1 ,contw 
+
+p_keyboard_gpio_pu_idle_configured:
+04f7 c20004f2 loop p_keyboard_gpio_pu_idle_loop 
+04f8 dfe080dc arg core_gpio_conf_hi + gpio_number_ext ,pdata 
+04f9 98c67c00 isub contr ,null 
+04fa 20628000 rtn zero 
+04fb df200008 arg gpio_number_ext ,loopcnt 
+04fc d8c080d4 arg core_gpio_conf_hi ,contr 
+04fd 202004f2 branch p_keyboard_gpio_pu_idle_loop 
+
+p_keyboard_puchk_set_check:
+04fe 6fe0cd0d fetch 1 ,mem_qdec_set_flag 
+04ff 203a0501 branch p_keyboard_puchk_disable ,blank 
+0500 20200505 branch p_keyboard_puchk_enable 
+
+p_keyboard_puchk_disable:
+0501 58000010 setarg 0x10 
+
+p_keyboard_puchk_set:
+0502 67f08141 store 1 ,core_puwakeup 
+0503 37d98200 until null ,lpo_edge 
+0504 20600000 rtn 
+
+p_keyboard_puchk_enable:
+0505 58000080 setarg 0x80 
+0506 20200502 branch p_keyboard_puchk_set 
+
+p_lpm_dispatch:
+0507 20402408 call lpo_calibration 
+0508 6fe1c0bd fetch 3 ,mem_clks_per_lpo 
+0509 207a0000 rtn blank 
+050a 6fe0c9a1 fetch 1 ,mem_keyboard_fn_flag 
+050b 247a0000 nrtn blank 
+050c 6fe0c9a2 fetch 1 ,mem_keyboard_control_key_flag 
+050d 247a0000 nrtn blank 
+050e 6fe0c845 fetch 1 ,mem_mouse_direct_timer 
+050f 247a0000 nrtn blank 
+0510 6fe14790 fetch 2 ,mem_mouse_discovery_timer 
+0511 247a0000 nrtn blank 
+0512 6fe0c9c4 fetch 1 ,mem_keyboard_commbination_control_key_delay_release_timer 
+0513 247a0000 nrtn blank 
+0514 20202490 branch lpm_dispatch + 4 
+
+p_lpm_sleep:
+0515 6fe143e9 fetch 2 ,mem_cb_before_lpm_sleep 
+0516 20407d79 call callback_func 
+
+p_lpm_sleep_skip_cb_function:
+0517 6fe240ad fetch 4 ,mem_sleep_counter_all 
+0518 9840fe00 iadd temp ,pdata 
+0519 67e240ad store 4 ,mem_sleep_counter_all 
+051a 2040051c call p_lpm_save_context 
+051b 20202425 branch lpm_sleep_skip_cb_function + 4 
+
+p_lpm_save_context:
+051c 600440e7 storer mark ,8 ,mem_saved_mark 
+051d d8c08070 arg core_gpio_conf ,contr 
+051e d8a040cc arg mem_saved_gpio ,contw 
+051f 20407c8f call memcpy16 
+0520 d8c080d4 arg core_gpio_conf_hi ,contr 
+0521 20407c89 call memcpy8 
+0522 6ff08080 fetch 1 ,core_spid_ctrl 
+0523 67e0c0ef store 1 ,mem_saved_spidctrl 
+0524 18422400 copy temp ,regb 
+
+p_lpm_write_gpio_wakeup:
+0525 df20000c arg 12 ,loopcnt 
+0526 da200016 arg mem_gpio_wakeup_cfg ,rega 
+0527 da60814d arg core_gpio_wakeup_cfg ,regc 
+0528 37d98200 until null ,lpo_edge 
+
+p_lpm_write_gpio_loop:
+0529 efe08011 ifetch 1 ,rega 
+052a e8408013 ifetcht 1 ,regc 
+052b 98467c00 isub temp ,null 
+052c 2022852f branch p_lpm_write_gpio_loop_next ,zero 
+052d e7e08013 istore 1 ,regc 
+052e 37d98200 until null ,lpo_edge 
+
+p_lpm_write_gpio_loop_next:
+052f 1a20a201 increase 1 ,rega 
+0530 1a60a601 increase 1 ,regc 
+0531 c2000529 loop p_lpm_write_gpio_loop 
+0532 1a420400 copy regb ,temp 
+0533 20600000 rtn 
+
+p_app_init:
+
+p_keyboard_init:
+0534 20407396 call enable_authrom 
+0535 2040053f call p_keyboard_setting_config 
+0536 20400578 call p_keyboard_gpio_init 
+0537 20400590 call p_keyboard_low_vol_mult_set 
+0538 20758000 rtn wake 
+0539 204004e6 call p_keyboard_device_led_all_off 
+053a 2040055c call p_keyboard_led_reuse_judge 
+053b 6fe0ca07 fetch 1 ,mem_keyboard_device_poweron_timer_count_init 
+053c 67e0ca08 store 1 ,mem_keyboard_device_poweron_timer_count 
+053d 20404a7a call keyboard_cb_fuction 
+053e 20204962 branch keyboard_init_wireless 
+
+p_keyboard_setting_config:
+053f 204042a3 call app_param_init 
+0540 20400501 call p_keyboard_puchk_disable 
+0541 20758000 rtn wake 
+0542 204035f0 call g24_transmit_init 
+0543 2040325b call g24_chmap_param_init 
+0544 6fe0c666 fetch 1 ,mem_device_flag 
+0545 67e0cbe6 store 1 ,mem_device_flag_temp_new 
+0546 6fe1c2de fetch 3 ,mem_le_lap + 3 
+0547 67e1c797 store 3 ,mem_mouse_le_lap_temp 
+0548 204049af call keyboard_param_init 
+0549 58004bfb setarg mem_le_tx_buffer0_omemalloc_new 
+054a 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
+054b 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
+054c 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
+054d 20402a41 call le_set_fixed_ltk_justwork 
+054e 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+054f c28a49fd bbit1 mouse_enable_otp ,keyboard_load_otp_info_check 
+0550 c2895d6e bbit1 mouse_enable_flash ,mouse_load_flash_info_check 
+0551 20600000 rtn 
+
+p_keyboard_select_reconn_device:
+0552 da204667 arg mem_device1_type ,rega 
+0553 6fe0c666 fetch 1 ,mem_device_flag 
+0554 c1000000 rtneq mode_24g_device 
+0555 1fe0ffff increase -1 ,pdata 
+0556 1feffe0d mul32 pdata ,13 ,pdata 
+0557 9a20a200 iadd rega ,rega 
+0558 efe08011 ifetch 1 ,rega 
+0559 67e0c3f3 store 1 ,mem_xrecord_mode 
+055a c01a0575 beq rec_4_mode ,p_keyboard_load_le_device 
+055b 20600000 rtn 
+
+p_keyboard_led_reuse_judge:
+055c 6fe0cbbc fetch 1 ,mem_keyboard_low_voltage_alarm_gpio 
+055d 6848c866 fetcht 1 ,mem_keyboard_caps_led_gpio 
+055e 98467c00 isub temp ,null 
+055f 20428569 call p_keyboard_caps_led_reuse ,zero 
+0560 6fe0cbbc fetch 1 ,mem_keyboard_low_voltage_alarm_gpio 
+0561 6848c867 fetcht 1 ,mem_keyboard_num_led_gpio 
+0562 98467c00 isub temp ,null 
+0563 2042856d call p_keyboard_num_led_reuse ,zero 
+0564 6fe0cbbc fetch 1 ,mem_keyboard_low_voltage_alarm_gpio 
+0565 6848cbbb fetcht 1 ,mem_keyboard_scroll_led_gpio 
+0566 98467c00 isub temp ,null 
+0567 20228571 branch p_keyboard_scroll_led_reuse ,zero 
+0568 20600000 rtn 
+
+p_keyboard_caps_led_reuse:
+0569 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+056a 79207e01 set1 keyboard_reuse_capsled_bit ,pdata 
+056b 67e0cd10 store 1 ,mem_keyboard_reuse_led_bit 
+056c 20600000 rtn 
+
+p_keyboard_num_led_reuse:
+056d 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+056e 79207e00 set1 keyboard_reuse_numled_bit ,pdata 
+056f 67e0cd10 store 1 ,mem_keyboard_reuse_led_bit 
+0570 20600000 rtn 
+
+p_keyboard_scroll_led_reuse:
+0571 6fe0cd10 fetch 1 ,mem_keyboard_reuse_led_bit 
+0572 79207e02 set1 keyboard_reuse_scrollled_bit ,pdata 
+0573 67e0cd10 store 1 ,mem_keyboard_reuse_led_bit 
+0574 20600000 rtn 
+
+p_keyboard_load_le_device:
+0575 efe30006 ifetch 6 ,contr 
+0576 67e34116 store 6 ,mem_hci_plap 
+0577 20205c7d branch mouse_load_le_device_end + 3 
+
+p_keyboard_gpio_init:
+0578 204004da call p_clear_wake 
+0579 6848c655 fetcht 1 ,mem_config_select_device_button_gpio 
+057a 6048c659 storet 1 ,mem_sensor_motion_gpio 
+057b 20404c7d call keyboard_gpio_config_input_pu 
+057c 5800486e setarg mem_key_row_gpio 
+057d 67e14896 store 2 ,mem_kb_row_ptr 
+057e 58004876 setarg mem_key_col_gpio 
+057f 67e14898 store 2 ,mem_kb_col_ptr 
+0580 5800488a setarg mem_key_excol_gpio 
+0581 67e1489a store 2 ,mem_kb_excol_ptr 
+0582 20400587 call p_keyboard_key_row_init 
+0583 6fe14898 fetch 2 ,mem_kb_col_ptr 
+0584 1fe22400 copy pdata ,regb 
+0585 df200014 arg 20 ,loopcnt 
+0586 202049e1 branch keyboard_key_cow_init 
+
+p_keyboard_key_row_init:
+0587 6fe14896 fetch 2 ,mem_kb_row_ptr 
+0588 1fe22400 copy pdata ,regb 
+0589 df200008 arg 8 ,loopcnt 
+
+p_keyboard_key_row_init_loop:
+058a e8408012 ifetcht 1 ,regb 
+058b 18467cff sub temp ,ui_button_gpio_disable ,null 
+058c 2442c9e7 ncall keboard_gpio_set_high_impedance ,zero 
+058d 1a40a401 increase 1 ,regb 
+058e c200058a loop p_keyboard_key_row_init_loop 
+058f 20200525 branch p_lpm_write_gpio_wakeup 
+
+p_keyboard_low_vol_mult_set:
+0590 6fe0c666 fetch 1 ,mem_device_flag 
+0591 c08049f2 bne mode_24g_device ,keyboard_low_vol_mult_ble_set + 1 
+0592 204035fb call g24_interval_param_8ms 
+0593 202049ec branch keyboard_low_vol_mult_set + 2 
+
+p_ui_ipc_send_event:
+0594 6fe0866f fetch 1 ,mem_fifo_temp 
+0595 df200008 arg 8 ,loopcnt 
+0596 d8c044d3 arg mem_ipc_fifo_bt2c51 ,contr 
+
+p_ui_ipc_fifo_check:
+0597 e8408006 ifetcht 1 ,contr 
+0598 98467c00 isub temp ,null 
+0599 20628000 rtn zero 
+059a c2000597 loop p_ui_ipc_fifo_check 
+059b 2020782c branch ui_ipc_send_event + 1 
+
+p_check_51cmd_once_continue:
+059c 6fe0866f fetch 1 ,mem_fifo_temp 
+059d c00f859f beq bt_cmd_store_reconn_info_le ,p_eeprom_store_le_reconn_info 
+059e 20207864 branch check_51cmd_once_continue + 4 
+
+p_eeprom_store_le_reconn_info:
+059f 70003234 jam rec_4_mode ,mem_record_bt_mode 
+
+p_eeprom_store_reconn_info:
+05a0 6fe0c3cb fetch 1 ,mem_device_option 
+05a1 c007cbc5 beq dvc_op_keyboard ,keyboard_store_remote_bdaddr 
+05a2 20206ea6 branch eeprom_store_reconn_info + 1 
+
+p_g24_pair_dispatch:
+05a3 7045e200 jam default_24g_device ,mem_24g_reconn_type 
+05a4 202032ab branch g24_pair_dispatch + 8 
+
+p_keyboard_g24_reconn_dispatch:
+05a5 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+05a6 1fe17ee0 and_into 0xe0 ,pdata 
+05a7 203a05ac branch p_keyboard_g24_reconn_dispatch_next ,blank 
+05a8 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+05a9 1fe0fe01 increase 1 ,pdata 
+05aa 67e145e0 store 2 ,mem_24g_reconn_count 
+05ab 20600000 rtn 
+
+p_keyboard_g24_reconn_dispatch_next:
+05ac 2040357f call g24_reconn_data_prep 
+05ad 20403651 call g24_transmit_receive_ack 
+05ae 242c3586 nbranch g24_reconn_device_fail ,sync 
+05af 2437b586 nbranch g24_reconn_device_fail ,user3 
+05b0 204005f6 call p_keyboard_g24_ackpayload_parse 
+05b1 2020356a branch g24_reconn_dispatch_next + 5 
+
+p_keyboard_g24_transmit_no_interrupt:
+05b2 20403625 call g24_txdata_prep 
+05b3 243405c2 nbranch p_keyboard_g24_nodata_transmit ,user 
+
+p_keyboard_g24_transmit_start:
+05b4 204005b8 call p_keyboard_24g_fast_conn_mode_check 
+05b5 204005d0 call p_keyboard_g24_transmit_process 
+05b6 20404fd5 call keyboard_power_ctrl_start 
+05b7 20204fdb branch keyboard_g24_transmit_start_next 
+
+p_keyboard_24g_fast_conn_mode_check:
+05b8 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
+05b9 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+05ba 98467c00 isub temp ,null 
+05bb 202285bd branch p_keyboard_soft_agc_enable ,zero 
+05bc 202005c0 branch p_keyboard_soft_agc_disable 
+
+p_keyboard_soft_agc_enable:
+05bd 70414300 jam 0 ,mem_gain_fix 
+05be 704141aa jam tx_power_factory ,mem_tx_power 
+05bf 20600000 rtn 
+
+p_keyboard_soft_agc_disable:
+05c0 704143ff jam 0xff ,mem_gain_fix 
+05c1 20600000 rtn 
+
+p_keyboard_g24_nodata_transmit:
+05c2 6fe4489c fetch 8 ,mem_keyscan_value_current 
+05c3 243a4fdb nbranch keyboard_g24_transmit_start_next ,blank 
+05c4 6fe448a4 fetch 8 ,mem_keyscan_value_current + 8 
+05c5 243a4fdb nbranch keyboard_g24_transmit_start_next ,blank 
+05c6 6fe248ac fetch 4 ,mem_keyscan_value_current + 16 
+05c7 243a4fdb nbranch keyboard_g24_transmit_start_next ,blank 
+05c8 2040369d call g24_search_receiver 
+
+p_keyboard_g24_long_sleep:
+05c9 20404fc8 call keyboard_g24_lpm_wait 
+05ca 24740000 nrtn user 
+05cb 204036be call g24_setgpio_lpm_before 
+05cc 6fe0c73f fetch 1 ,mem_sensor_shutdown_flag 
+05cd 245a4f75 ncall keyboard_setgpio_hibernate ,blank 
+05ce 6fe445af fetch 8 ,mem_24g_enter_hibernate 
+05cf 20203622 branch g24_long_seep2 
+
+p_keyboard_g24_transmit_process:
+05d0 70460100 jam 0 ,mem_24g_retry 
+
+p_keyboard_g24_transmit_loop:
+05d1 69610040 fetchr timeup ,2 ,mem_param_rx_setup 
+05d2 34730200 until clkn_rt ,meet 
+05d3 20404df5 call keyboard_special_key_check 
+05d4 6fe145d8 fetch 2 ,mem_24g_pair_timeout 
+05d5 243a3646 nbranch g24_transmit_no_ack ,blank 
+05d6 20403651 call g24_transmit_receive_ack 
+05d7 6fe0c57f fetch 1 ,mem_24g_no_ack 
+05d8 c000b646 beq no_ack_24g ,g24_transmit_no_ack 
+05d9 242c05de nbranch p_keyboard_g24_retransmit ,sync 
+05da 243785de nbranch p_keyboard_g24_retransmit ,user3 
+05db 204005f6 call p_keyboard_g24_ackpayload_parse 
+05dc 70473f00 jam 0 ,mem_sensor_shutdown_flag 
+05dd 20203646 branch g24_transmit_no_ack 
+
+p_keyboard_g24_retransmit:
+05de 6fe0c602 fetch 1 ,mem_24g_abort_pac 
+05df 247a0000 nrtn blank 
+05e0 6fe145fe fetch 2 ,mem_24g_txfail_cnt 
+05e1 1fe0fe01 increase 1 ,pdata 
+05e2 67e145fe store 2 ,mem_24g_txfail_cnt 
+05e3 6fe0c5fe fetch 1 ,mem_24g_txfail_cnt 
+05e4 c07fb676 beq 0xff ,g24_tx_attempt_fail 
+05e5 6fe0c601 fetch 1 ,mem_24g_retry 
+05e6 1fe0fe01 increase 1 ,pdata 
+05e7 67e0c601 store 1 ,mem_24g_retry 
+05e8 1fe17e03 and_into 0x03 ,pdata 
+05e9 203a05eb branch p_keyboard_g24_transmit_hop_process ,blank 
+05ea 202005d1 branch p_keyboard_g24_transmit_loop 
+
+p_keyboard_g24_transmit_hop_process:
+05eb 20404bfb call kscan_dispatch 
+05ec 20400457 call p_keyboard_device_select 
+05ed 6fe0cba1 fetch 1 ,mem_keyboard_switch_device_flag 
+05ee 243a3646 nbranch g24_transmit_no_ack ,blank 
+05ef 204005f1 call p_g24_tx_fast_hop 
+05f0 202005d1 branch p_keyboard_g24_transmit_loop 
+
+p_g24_tx_fast_hop:
+05f1 6fe2458f fetch 4 ,mem_24g_addr 
+05f2 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+05f3 98467c00 isub temp ,null 
+05f4 2022b222 branch g24_ch ,zero 
+05f5 2020369a branch g24_tx_fast_hop 
+
+p_keyboard_g24_ackpayload_parse:
+05f6 2040366e call g24_ackpayload_parse 
+05f7 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
+05f8 2fe1f008 compare 0x08 ,pdata ,0xf8 
+05f9 24608000 nrtn true 
+05fa 6fe0c4f9 fetch 1 ,mem_24g_rxbuf + 2 
+05fb c07f81fb beq 0xff ,p_keyboard_24g_hibernate_set 
+05fc 67e0c9aa store 1 ,mem_keyboard_led_status 
+05fd 20600000 rtn 
+
+p_keyboard_g24_short_sleep:
+05fe 204036b4 call g24_lpm_wait 
+05ff 24740000 nrtn user 
+0600 204004da call p_clear_wake 
+0601 6fe1c608 fetch 3 ,mem_24g_short_sleep_set 
+0602 20203622 branch g24_long_seep2 
+
+p_adc_init_data:
+0603 6fe401fd fetch 8 ,mem_otp_adc 
+0604 203a6f79 branch adc_init_cal_data_default ,blank 
+0605 67e443fd store 8 ,mem_reference_inter1p8v_2v_adc_io_data 
+0606 20406b3a call enable_otp_read 
+0607 20406aad call loadcode_check_otp_lock 
+0608 dfe00fc0 arg otp_offset_adc_param_l_c0 ,pdata 
+0609 9a40a400 iadd regb ,regb 
+060a df20000a arg 10 ,loopcnt 
+060b da2001fd arg mem_otp_temp ,rega 
+060c 20406b74 call otp_read_data 
+060d 20406b37 call disable_otp 
+060e 6fe401fd fetch 8 ,mem_otp_temp 
+060f 207a0000 rtn blank 
+0610 67e44be9 store 8 ,mem_adc_reference3v_gpio1v_ft_data 
+0611 efe10006 ifetch 2 ,contr 
+0612 e7e10005 istore 2 ,contw 
+0613 20600000 rtn 
+
+p_sadc_cal_write:
+0614 6ff080cc fetch 1 ,core_sadc_ctrl 
+0615 79207e01 set1 1 ,pdata 
+0616 67f080cc store 1 ,core_sadc_ctrl 
+0617 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+0618 6fe0c433 fetch 1 ,mem_adc_cal_c7 
+0619 67e0c419 store 1 ,mem_spi_write_addr 
+061a df200008 arg 8 ,loopcnt 
+061b 20406f67 call sadc_cal_write + 4 
+061c 6240c419 storer regb ,1 ,mem_spi_write_addr 
+061d 6ff08a0a fetch 1 ,core_gpadc_cfg2 
+061e 793ffe04 set0 4 ,pdata 
+061f 67f08a0a store 1 ,core_gpadc_cfg2 
+0620 20600000 rtn 
+
+p_vdd_calculate_by_mode:
+
+p_vdd_reference_inter3v_calculate:
+0621 6fe0c407 fetch 1 ,mem_adc_config_flag 
+0622 c0008625 beq adc_config_hvin ,p_vdd_reference_inter3v_calculate_by_mode_vdcdc 
+0623 c001062c beq adc_config_gpio ,p_vdd_reference_inter3v_calculate_by_mode_gpio 
+0624 20600000 rtn 
+
+p_vdd_reference_inter3v_calculate_by_mode_vdcdc:
+0625 580003e8 setarg 1000 
+0626 67e14405 store 2 ,mem_reference_voltage 
+0627 68494bed fetcht 2 ,mem_adc_reference3v_vdcdc3p6v_ft_data 
+0628 6fe14bef fetch 2 ,mem_adc_reference3v_vdcdc4p6v_ft_data 
+0629 da600e10 arg 3600 ,regc 
+062a 20406fc0 call vdd_calculate 
+062b 20200632 branch p_mul1v_div1v_to_cal 
+
+p_vdd_reference_inter3v_calculate_by_mode_gpio:
+062c 580003e8 setarg 1000 
+062d 67e14405 store 2 ,mem_reference_voltage 
+062e 68494be9 fetcht 2 ,mem_adc_reference3v_gpio1v_ft_data 
+062f 6fe14beb fetch 2 ,mem_adc_reference3v_gpio2v_ft_data 
+0630 da6003e8 arg 1000 ,regc 
+0631 20406fc0 call vdd_calculate 
+
+p_mul1v_div1v_to_cal:
+0632 68494bf1 fetcht 2 ,mem_adc_reference3v_inter1v_ft_data 
+0633 984ffe00 imul32 temp ,pdata 
+0634 68494bf3 fetcht 2 ,mem_adc_reference3v_inter1v_now_data 
+0635 9846fc00 idiv temp 
+0636 20207d5f branch get_div_result 
+
+p_enable_adc_init_config:
+0637 20400614 call p_sadc_cal_write 
+0638 6ff08a09 fetch 1 ,core_gpadc_cfg1 
+0639 793ffe07 set0 7 ,pdata 
+063a 67f08a09 store 1 ,core_gpadc_cfg1 
+063b 708a0777 jam 0x77 ,core_gpadc_ctrl 
+063c 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+063d 708a0d61 jam 0x61 ,core_vtest_ctrl0 
+063e 708a0b00 jam 0x00 ,core_gpadc_cfg3 
+063f 20600000 rtn 
+
+p_enable_adc:
+
+p_enable_adc_reference_source_inter3v:
+0640 20400637 call p_enable_adc_init_config 
+0641 20406f90 call sadc_channel 
+0642 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0643 67f080cd store 1 ,core_sadc_clkdiv 
+0644 20406f97 call sadc_read 
+0645 708a0d60 jam 0x60 ,core_vtest_ctrl0 
+0646 7080cd00 jam 0x00 ,core_sadc_clkdiv 
+
+p_read_adc_inter1v:
+0647 20400637 call p_enable_adc_init_config 
+0648 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0649 67f080cd store 1 ,core_sadc_clkdiv 
+064a 708a0b50 jam 0x50 ,core_gpadc_cfg3 
+064b 708a0ec0 jam 0xc0 ,core_vtest_ctrl1 
+064c df00000b arg 0xb ,regext_index 
+064d 6de1440a fetchr regext ,2 ,mem_adc_current_value 
+064e 7080cc03 jam 0x03 ,core_sadc_ctrl 
+064f 20400659 call p_sar_adc_read_wait 
+0650 68590164 fetcht 2 ,core_sadc_data 
+0651 60494bf3 storet 2 ,mem_adc_reference3v_inter1v_now_data 
+0652 20406f9c call sadc_read_wait + 4 
+0653 df00000b arg 0xb ,regext_index 
+0654 65e1440a storer regext ,2 ,mem_adc_current_value 
+0655 708a0d60 jam 0x60 ,core_vtest_ctrl0 
+0656 7080cd00 jam 0x00 ,core_sadc_clkdiv 
+0657 7080cc00 jam 0x00 ,core_sadc_ctrl 
+0658 20600000 rtn 
+
+p_sar_adc_read_wait:
+0659 6ff08129 fetch 1 ,core_perf_status 
+065a c3028659 bbit0 saradc_done ,p_sar_adc_read_wait 
+065b 20600000 rtn 
+
Index: output/ramcode.rom
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/ramcode.rom	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/ramcode.rom	(working copy)
@@ -0,0 +1,1628 @@
+c2840030
+c0000035
+c0010066
+c008006f
+c0088071
+c00a0154
+c00a80f2
+c00c00ff
+c00c8106
+c00d007f
+c0128515
+c0140507
+c0210173
+c02201f0
+c0228490
+c02301f3
+c023820a
+c025830f
+c026032f
+c027034c
+c02803b5
+c0290438
+c02a8447
+c02b8471
+c02c8481
+c02d04e2
+c02d84eb
+c02e04e6
+c02e84ed
+c02f05d0
+c02f85fe
+c03884eb
+c03b0047
+c03b8224
+c040013c
+c04204eb
+c04d02f4
+c0588534
+c0628170
+c06a84d1
+c06b04ca
+c06d013d
+c06d8603
+c06e0640
+c06e8621
+c07b0594
+c07d059c
+2020235a
+c03f85a3
+c04805a5
+c04a85b2
+c17f8000
+2020235a
+24358038
+37d98200
+37d98200
+204054ac
+24342002
+6fe0caba
+203a2002
+704aba00
+6fe0c655
+c07fa002
+1fe20e00
+6fe2069d
+afec0000
+2040ce45
+20202002
+6fe0c8f5
+c05683fb
+20204d3c
+6fe44713
+c40a8000
+2040004b
+20205541
+6fe0c407
+c1810000
+6fe0c408
+20400054
+18427e00
+67e0c635
+79207e07
+d8400000
+20206f20
+d8400012
+c1030000
+d840000a
+c1038000
+d8400009
+c1040000
+d840000c
+c1048000
+d8400006
+c1050000
+d8400014
+c1058000
+d8400015
+c1060000
+d8400016
+c1068000
+d840000d
+20600000
+20407552
+20407448
+20402a45
+2040202a
+204042ad
+20402018
+2040310f
+2040248c
+20200066
+70890000
+20202153
+708a0f60
+708a10aa
+708a127a
+708a2500
+708a2600
+2000003c
+708a2020
+708a23f5
+708a2412
+708a2410
+2000003c
+708a1260
+708a23dd
+20600000
+7001bb00
+7001bc00
+37d98200
+7089460d
+70896f10
+708a13cd
+708a0610
+708a844a
+708a8540
+708a16fe
+204000c6
+204070d7
+37d98200
+70813b5f
+37d98200
+70813c88
+37d98200
+6fe0c099
+c00800bb
+6fe0c438
+1fe1fe04
+67f08a02
+70890f01
+708a8024
+708a8162
+58e61212
+67f18a73
+708a8660
+708a8b3b
+204000ad
+70804300
+70804205
+58557474
+67f18968
+7089606e
+2040010e
+20400139
+204000a7
+7041480c
+20206f4e
+20758000
+37d98200
+6fe0c11c
+67f0813a
+37d98200
+20600000
+6fe0c099
+c00c00b3
+6fe0c438
+1fe1fe06
+67f08a02
+708a05e0
+708a00d8
+2000003c
+708a01a0
+708a00df
+708a01fa
+20000014
+708a009f
+20600000
+6fe0c438
+1fe1fe06
+67f08a02
+70890f00
+708a8023
+708a81b0
+58e40909
+67f18a73
+708a762a
+70890204
+2020009a
+203580ee
+6fe2020d
+207a0000
+37d98200
+6ff08136
+1fe17ef0
+6848820d
+9841fe00
+1fe0fffd
+67f08136
+37d98200
+6ff08138
+1fe17e07
+6848820e
+18498400
+9841fe00
+67f08138
+37d98200
+6ff08acb
+1fe17ef0
+6848820f
+6048c15b
+9841fe00
+67f08acb
+6fe08210
+67e0c15c
+2feffe03
+6ff08a06
+7920fe07
+67f08a06
+6fe08210
+1fe10407
+18520400
+18438400
+6048c438
+6ff08a02
+1fe17e1f
+9841fe00
+67f08a02
+20600000
+6fe1415b
+207a0000
+67e1020f
+202000d8
+204021ba
+18002a08
+18002a00
+580aaada
+67f18a0f
+708a2540
+708a2610
+2000003c
+708a01fb
+708a25ff
+708a2630
+708a16fe
+202021b4
+580aaa7e
+67f18a0f
+2000003c
+708a2500
+708a260d
+708a16f6
+20202203
+6fe0c141
+c0050109
+2020220e
+708a1425
+58a93f3f
+67f18a60
+708a631f
+20600000
+20758000
+20402160
+d8400027
+2040216f
+204021a6
+708a257f
+708a301a
+708a3178
+708a8fb2
+708ac200
+708ac300
+d8e00006
+2040012b
+2a2ffe0d
+2040211d
+2a4ffe0d
+2040211e
+d8e00005
+2040211c
+2040211e
+2040012b
+d8a08ac2
+1a31fe00
+20402117
+1a51fe00
+20402117
+18e08fff
+20210120
+2020214f
+2000003c
+58000f00
+67f10982
+58000ff0
+67f10984
+70898109
+70898103
+70898006
+2000003c
+da200000
+da400000
+df200010
+d8c00f00
+2020212d
+20758000
+20202272
+58000000
+20600000
+20758000
+708a0777
+708a08c9
+708a0b01
+6fe0c409
+67f080cd
+20000bb8
+2040014d
+708a08c1
+6a40c419
+df200008
+20406f58
+6fe0c419
+67e0c433
+6240c419
+20600000
+7080cc03
+6ff08129
+c302814e
+68590164
+6049440a
+7080cc00
+20600000
+708a8211
+708a8d12
+708a8e0a
+6fe0c099
+c008016d
+58005762
+67f10907
+70890103
+70893003
+c6168000
+70890101
+708a8207
+708a8d44
+708a8e0a
+6fe0c099
+c008016a
+58002bb1
+67f10907
+c6978000
+70893024
+70890105
+20600000
+58004189
+67f10907
+20200166
+58008312
+67f10907
+2020015b
+20406b3a
+20406b75
+20206b38
+6fe0c666
+c0000177
+c0008181
+20600000
+db000008
+6fe14d0e
+9b06fc00
+20407d62
+1807fe00
+67e10670
+dfe01fbc
+d8400004
+dd600004
+2020018b
+db000020
+6fe14d0e
+9b06fc00
+20407d62
+1807fe00
+67e10670
+dfe01fb0
+d8400010
+dd600010
+2020018b
+67e10672
+60488678
+da2049c7
+da600000
+6fe10672
+1fe22400
+6f208678
+da2049c7
+20406b74
+6fe449c7
+684c49cf
+9841fe00
+684c49d7
+9841fe00
+203a01a1
+1a60a601
+6fe10670
+9a667c00
+6fe10672
+9b067e00
+67e10672
+2020018f
+1a667c00
+2022ca38
+6fe10672
+9b00fe00
+9d667e00
+67e10672
+6fe10672
+1fe22400
+6f208678
+da2049c7
+20406b74
+6fe449c7
+684c49cf
+9841fe00
+684c49d7
+9841fe00
+203a01b4
+6fe10672
+202001a5
+58001fc0
+68490672
+98467e00
+67e149df
+18427e00
+9d60a400
+6f208678
+da2049c7
+20406b74
+6fe0c666
+c0004a47
+c00081c1
+20600000
+6fe0c9c7
+1fe67c03
+24417dca
+67e0c9c6
+6fe0c9c8
+67e0c667
+6fe349c9
+67e34668
+6fe349cf
+67e3466e
+684949d5
+180a7e00
+9840fe00
+67e14695
+20200552
+6fe0c666
+c00001d4
+c00081d7
+20600000
+684949df
+58001fc0
+20204a63
+704be701
+6fe0cbe8
+207a0000
+684949df
+58001fc0
+98467e00
+67e10670
+1fe22400
+da2049c6
+df200001
+20406b45
+6fe10670
+1fe0a401
+da204667
+df20000d
+20406b45
+6fe10670
+1fe0a40e
+da204695
+df200002
+20406b45
+684949df
+18408410
+604949df
+20600000
+6fe44713
+c28a01d0
+20204a58
+1a627e00
+c01d01f6
+20204a9c
+6fe0c600
+243a01fb
+6fe0c5e2
+c0010203
+20204b02
+70460000
+20403647
+5fffffff
+67e445af
+58000000
+67e3c846
+70473f01
+202005c9
+6fe44713
+c29f6034
+c2986034
+c31d6067
+6fe24691
+203a030b
+20206067
+2040553d
+204002c7
+2040328e
+20403531
+20405fdd
+20400241
+20404b68
+20400244
+20400291
+204002bb
+204002b3
+20404b43
+20404b58
+20405be1
+20404b5c
+20405be4
+20404b5f
+20404b55
+20400300
+20404b32
+20405bfe
+20404b48
+204002f5
+20404b87
+202002fa
+20600000
+20400235
+20406f82
+20406fb0
+1fe6fc0a
+20407d5f
+67e14633
+da20462d
+20405563
+6fe0c40c
+c280cf6b
+c3000231
+70463701
+2020555a
+d8e00004
+20405f04
+704d0809
+2020555f
+204054f2
+58520090
+67e1c62d
+58006d00
+e7e18005
+6fe0c637
+203a023e
+70463170
+20600000
+7046316d
+20600000
+20600000
+6fe0c8eb
+247a0000
+20204b62
+6fe14781
+207a0000
+6fe0c73f
+247a0000
+6fe14725
+68494781
+98460400
+6fe14869
+98467e00
+20210264
+20400273
+2040027a
+20200251
+6fe0cd10
+c2808255
+6848c866
+20206ef3
+6fe44713
+c3820000
+20200253
+6fe0c9aa
+c3008251
+6fe0cd10
+c280825e
+6848c866
+20206ef7
+6fe44713
+c302025c
+6fe0cd08
+1fe67c0b
+2421025c
+20600000
+20400267
+20400280
+20200258
+6fe0c9aa
+c3000273
+6fe0cd10
+c280026d
+6848c867
+20206ef7
+6fe44713
+c302026b
+6fe0cd08
+1fe67c0b
+2421026b
+20600000
+6fe0cd10
+c2800277
+6848c867
+20206ef3
+6fe44713
+c3820000
+20200275
+6fe0cd10
+c281028e
+6fe0ca08
+247a0000
+6848cbbb
+20206ef3
+6fe0ca08
+247a0000
+6fe0cd10
+c2810288
+6fe0c9aa
+c301027a
+6848cbbb
+20206ef7
+6fe44713
+c3020284
+6fe0cd08
+1fe67c0b
+24210284
+20600000
+6fe44713
+c3820000
+2020027c
+6fe0ca08
+207a0000
+1fe0ffff
+67e0ca08
+203a0297
+2020029d
+6fe0c666
+c00002a3
+c00082a5
+c00102a7
+c00182a9
+20600000
+6fe0c666
+c00002ab
+c00082ad
+c00102af
+c00182b1
+20600000
+6848cbb7
+20206ef3
+6848cbb8
+20206ef3
+6848cbb9
+20206ef3
+6848cbba
+20206ef3
+6848cbb7
+20206ef7
+6848cbb8
+20206ef7
+6848cbb9
+20206ef7
+6848cbba
+20206ef7
+6fe14781
+207a0000
+6fe0cbca
+207a0000
+1fe0ffff
+67e0cbca
+c280029d
+20200297
+6fe0c666
+c00002c0
+6fe14790
+207a0000
+202002c2
+6fe145d8
+207a0000
+6fe0cd07
+1fe0fe01
+67e0cd07
+c281029d
+20200297
+704d0c00
+6fe14790
+247a0000
+6fe145d8
+247a0000
+6fe145de
+247a0000
+6fe0ca08
+247a0000
+6fe44713
+c4118000
+c4020000
+c29382e5
+6fe0cd08
+1fe0fe01
+67e0cd08
+1fe67c14
+244102de
+c00102e1
+c00202e3
+c00302e1
+c00402e3
+20600000
+704d0801
+704d0b00
+202002e3
+6848cbbc
+20206ef7
+6848cbbc
+20206ef3
+6fe14725
+68494781
+98460400
+6fe14d09
+98467c00
+242102e3
+704d0c01
+6fe0cd0b
+1fe0fe01
+67e0cd0b
+c00082e1
+c00302e3
+1fe67c09
+244102de
+20600000
+20600000
+da6048ee
+da4002f8
+202042e7
+7048eb01
+20204f6c
+da604781
+da4002fd
+202042e7
+6fe0c666
+c00001fb
+20205aad
+6fe0cba1
+c2800304
+2040030d
+20600000
+6fe0cba4
+1fe67c64
+24610000
+1fe0fe01
+67e0cba4
+c18c8000
+704ba300
+204004e6
+20204e39
+704ba400
+20600000
+20404bfb
+20200311
+da200000
+684a4d12
+1c422400
+1a427e00
+98467c00
+24417806
+1a427e00
+18408428
+98467c00
+24210323
+1a20a201
+1a217e0f
+243a0317
+da200000
+20400328
+1c427e00
+67e24d12
+20600000
+1a227e00
+207a0000
+184085d8
+793f841c
+604a4d12
+67e0cd16
+6fe0cd16
+207a0000
+1fe0ffff
+67e0cd16
+204003ad
+20200329
+6fe44713
+c30a8342
+2040004b
+20400235
+20406f82
+20406fb0
+1fe6fc0a
+20407d5f
+67e14633
+6fe1462f
+1fe6fc02
+20407d5f
+68494633
+98467c00
+2021032f
+da20462d
+20405563
+6fe0c40c
+c280cf6b
+6fe0c9a4
+205a4e24
+6fe0c9a3
+247a0000
+6fe0c666
+c000602f
+20405aa8
+6fe34668
+203a5a94
+202054a0
+20400578
+58000000
+67e148e9
+d8c0489c
+d8a048b0
+df200014
+20407cda
+20404c85
+5800489c
+67e148e3
+58004cfb
+67e148e5
+20404c83
+20404c81
+6fe148e9
+1fe0fe01
+67e148e9
+c2848393
+6848c864
+20406ee6
+2420835a
+20404c85
+6848c864
+20406ee6
+20208362
+2040038a
+2040039a
+20404c81
+20404c83
+6fe1489a
+1fe22400
+7048e800
+e8408012
+6fe14898
+1fe22200
+1a222600
+df200014
+efe08011
+98467c00
+2022837e
+1a20a201
+c2000371
+1a40a401
+6fe0c8e8
+1fe0fe01
+67e0c8e8
+1fe67c0b
+2021036c
+204004f0
+20200587
+6fe148e3
+1fe20a00
+1a227e00
+9a667e00
+98a08a00
+6fe148e5
+1fe22600
+6fe0c8e8
+9a60a600
+efe08013
+e7e08005
+20200376
+704ab900
+7048e800
+20404c7b
+20400394
+20404c79
+20400394
+1fe67c0b
+2021038c
+20204c7b
+2020034c
+7048e700
+20400398
+6fe148e5
+20204c4a
+20000078
+20204c65
+6fe14898
+1fe22400
+7048e800
+7048e700
+e8408012
+284ffe07
+202083a7
+20406ef7
+20400398
+e8408012
+20406ef3
+e8408012
+20404c7d
+1a40a401
+6fe148e3
+20404c4a
+1fe67c13
+2021039d
+20600000
+6fe0cd11
+207a0000
+70409401
+704d1100
+20600000
+70409400
+704d1101
+20204c87
+da20489c
+da4048b0
+df200014
+20407d64
+242283b2
+204003ef
+205a4c87
+20404ccd
+6fe0c97b
+247a0000
+6fe0c9c1
+c1008000
+c1010000
+c1020000
+7048e800
+da20489c
+da4048c4
+e8408011
+efe08012
+9842fe00
+203a03e7
+67e0c8e7
+6048c8f6
+e0408012
+7048f401
+7048f700
+6fe0c8e7
+c30003dc
+6fe0c8e8
+1feffe08
+6848c8f7
+9840fe00
+d8c04a16
+98c08c00
+efe08006
+67e0c8f5
+20404cfc
+20400044
+20400402
+6fe0c8e7
+1fe37e00
+67e0c8e7
+6fe0c8f6
+1fe37e00
+67e0c8f6
+6fe0c8f7
+1fe0fe01
+67e0c8f7
+1fe67c07
+202103cf
+1a20a201
+1a40a401
+6fe0c8e8
+1fe0fe01
+67e0c8e8
+1fe67c13
+202103c6
+20600000
+6fe4489c
+247a0000
+6fe448a4
+247a0000
+6fe248ac
+247a0000
+6fe0c9c4
+247a0000
+6fe0c9c1
+c1030000
+7049c100
+20600000
+6fe0c9c6
+c00183ff
+580000fa
+20204d38
+7049c208
+7049c32c
+20204d95
+6fe0c8f5
+d84000e0
+98467c00
+24210414
+1fe67ce7
+24210431
+1fe17e07
+1fe20e00
+6fe0c8f6
+c2800410
+6fe0c8f8
+f93ffe00
+67e0c8f8
+20600000
+6fe0c8f8
+f9207e00
+67e0c8f8
+20600000
+70490000
+6fe0c8f6
+c2800425
+6848c8f5
+df200006
+d8c048fa
+efe08006
+98467c00
+24228423
+efe08006
+18c08dfe
+e7e08006
+207a0000
+18c08c01
+e0408006
+c200041a
+20600000
+6848c8f5
+df200006
+d8c048fa
+efe08006
+203a042e
+98467c00
+20628000
+c2000428
+20600000
+18c08dff
+e0408006
+20600000
+7049c501
+6fe0c8f6
+2fec0000
+20408436
+20200414
+7049c502
+20600000
+6fe0c8f6
+2feffe00
+2040cd4e
+6fe0c9a1
+245a0445
+6fe0c8f5
+c0380440
+20204d01
+6fe0c9c6
+c1800000
+7049c20a
+7049c372
+20204d95
+6fe0c8f5
+20204d12
+20400457
+20404e14
+7049a100
+7049a200
+7049a300
+6fe0c8f8
+245a4e41
+d8c048fa
+df200006
+efe08006
+1fe67c7f
+2042ce43
+1fe67cde
+2042ce45
+c2000450
+20600000
+20407dbc
+20400461
+2034045f
+6fe0cba1
+793ffe00
+793ffe01
+67e0cba1
+20600000
+7048f400
+20600000
+6fe148fa
+684949a7
+98467c00
+20228469
+18508400
+98467c00
+20228469
+20600000
+6fe248fc
+247a0000
+20407dba
+6fe0cba1
+79207e00
+793ffe01
+67e0cba1
+20600000
+78547c00
+70496c00
+70496d00
+70496e00
+6fe0c9c1
+c000cda5
+c0014daa
+c001cdaa
+c0024dae
+c0034db7
+6fe0c8f4
+203a047e
+20204e54
+6fe0c666
+c1800000
+20204e66
+6fe0c666
+c0800488
+7049a900
+6fe14855
+245a4afc
+6fe34858
+245a4afc
+6fe0c855
+c000048b
+20204f19
+70485f02
+20404f3e
+6fe0c666
+c0804f2a
+20204f27
+580004ab
+67e143e9
+58004fe5
+67e145f2
+58004ff8
+67e145f4
+580004ae
+67e145f6
+580004e0
+67e143d7
+58004a9a
+67e143dd
+58004bcc
+67e143db
+58004f62
+67e143d5
+58005b08
+67e143df
+58004b19
+67e143e3
+580055fa
+67e143e7
+58006221
+67e143e1
+58006228
+67e143e5
+20600000
+6fe0c666
+c1800000
+2020610b
+204004da
+6848c655
+20406eb6
+6848cbbd
+79200407
+20406eb6
+6fe14898
+1fe22400
+df200014
+e8408012
+284ffe07
+2440eef7
+1a40a401
+c20004b7
+704d0d00
+6fe14896
+1fe22400
+df200008
+e8408012
+18467cff
+2442cf5a
+1a40a401
+c20004c0
+204004fe
+6848c65b
+204055b5
+204055b9
+202054f2
+18467cff
+20628000
+d9000004
+284ffe07
+2020eebd
+d9000003
+20206ebd
+18467cff
+20628000
+20406ee6
+202084d7
+d9000003
+20206ebd
+704d0d01
+d9000006
+20206ebd
+58000000
+79207e15
+67e40016
+58000000
+e7e20005
+20600000
+c6130000
+202004ae
+704659ff
+2040739a
+20404f70
+202004ed
+20404b6f
+20400297
+20400275
+2040027c
+20200253
+204004ed
+20204327
+204004da
+20404f70
+202004ae
+d8c08070
+df200010
+efe08006
+243a04f7
+58000040
+18c08bff
+e7e08005
+c20004f2
+dfe080dc
+98c67c00
+20628000
+df200008
+d8c080d4
+202004f2
+6fe0cd0d
+203a0501
+20200505
+58000010
+67f08141
+37d98200
+20600000
+58000080
+20200502
+20402408
+6fe1c0bd
+207a0000
+6fe0c9a1
+247a0000
+6fe0c9a2
+247a0000
+6fe0c845
+247a0000
+6fe14790
+247a0000
+6fe0c9c4
+247a0000
+20202490
+6fe143e9
+20407d79
+6fe240ad
+9840fe00
+67e240ad
+2040051c
+20202425
+600440e7
+d8c08070
+d8a040cc
+20407c8f
+d8c080d4
+20407c89
+6ff08080
+67e0c0ef
+18422400
+df20000c
+da200016
+da60814d
+37d98200
+efe08011
+e8408013
+98467c00
+2022852f
+e7e08013
+37d98200
+1a20a201
+1a60a601
+c2000529
+1a420400
+20600000
+20407396
+2040053f
+20400578
+20400590
+20758000
+204004e6
+2040055c
+6fe0ca07
+67e0ca08
+20404a7a
+20204962
+204042a3
+20400501
+20758000
+204035f0
+2040325b
+6fe0c666
+67e0cbe6
+6fe1c2de
+67e1c797
+204049af
+58004bfb
+67e1433f
+58000020
+67e14341
+20402a41
+6fe44713
+c28a49fd
+c2895d6e
+20600000
+da204667
+6fe0c666
+c1000000
+1fe0ffff
+1feffe0d
+9a20a200
+efe08011
+67e0c3f3
+c01a0575
+20600000
+6fe0cbbc
+6848c866
+98467c00
+20428569
+6fe0cbbc
+6848c867
+98467c00
+2042856d
+6fe0cbbc
+6848cbbb
+98467c00
+20228571
+20600000
+6fe0cd10
+79207e01
+67e0cd10
+20600000
+6fe0cd10
+79207e00
+67e0cd10
+20600000
+6fe0cd10
+79207e02
+67e0cd10
+20600000
+efe30006
+67e34116
+20205c7d
+204004da
+6848c655
+6048c659
+20404c7d
+5800486e
+67e14896
+58004876
+67e14898
+5800488a
+67e1489a
+20400587
+6fe14898
+1fe22400
+df200014
+202049e1
+6fe14896
+1fe22400
+df200008
+e8408012
+18467cff
+2442c9e7
+1a40a401
+c200058a
+20200525
+6fe0c666
+c08049f2
+204035fb
+202049ec
+6fe0866f
+df200008
+d8c044d3
+e8408006
+98467c00
+20628000
+c2000597
+2020782c
+6fe0866f
+c00f859f
+20207864
+70003234
+6fe0c3cb
+c007cbc5
+20206ea6
+7045e200
+202032ab
+6fe145e0
+1fe17ee0
+203a05ac
+6fe145e0
+1fe0fe01
+67e145e0
+20600000
+2040357f
+20403651
+242c3586
+2437b586
+204005f6
+2020356a
+20403625
+243405c2
+204005b8
+204005d0
+20404fd5
+20204fdb
+6fe245e8
+684a45e4
+98467c00
+202285bd
+202005c0
+70414300
+704141aa
+20600000
+704143ff
+20600000
+6fe4489c
+243a4fdb
+6fe448a4
+243a4fdb
+6fe248ac
+243a4fdb
+2040369d
+20404fc8
+24740000
+204036be
+6fe0c73f
+245a4f75
+6fe445af
+20203622
+70460100
+69610040
+34730200
+20404df5
+6fe145d8
+243a3646
+20403651
+6fe0c57f
+c000b646
+242c05de
+243785de
+204005f6
+70473f00
+20203646
+6fe0c602
+247a0000
+6fe145fe
+1fe0fe01
+67e145fe
+6fe0c5fe
+c07fb676
+6fe0c601
+1fe0fe01
+67e0c601
+1fe17e03
+203a05eb
+202005d1
+20404bfb
+20400457
+6fe0cba1
+243a3646
+204005f1
+202005d1
+6fe2458f
+684a45e4
+98467c00
+2022b222
+2020369a
+2040366e
+6fe0c4f8
+2fe1f008
+24608000
+6fe0c4f9
+c07f81fb
+67e0c9aa
+20600000
+204036b4
+24740000
+204004da
+6fe1c608
+20203622
+6fe401fd
+203a6f79
+67e443fd
+20406b3a
+20406aad
+dfe00fc0
+9a40a400
+df20000a
+da2001fd
+20406b74
+20406b37
+6fe401fd
+207a0000
+67e44be9
+efe10006
+e7e10005
+20600000
+6ff080cc
+79207e01
+67f080cc
+6a40c419
+6fe0c433
+67e0c419
+df200008
+20406f67
+6240c419
+6ff08a0a
+793ffe04
+67f08a0a
+20600000
+6fe0c407
+c0008625
+c001062c
+20600000
+580003e8
+67e14405
+68494bed
+6fe14bef
+da600e10
+20406fc0
+20200632
+580003e8
+67e14405
+68494be9
+6fe14beb
+da6003e8
+20406fc0
+68494bf1
+984ffe00
+68494bf3
+9846fc00
+20207d5f
+20400614
+6ff08a09
+793ffe07
+67f08a09
+708a0777
+708a08c1
+708a0d61
+708a0b00
+20600000
+20400637
+20406f90
+6fe0c409
+67f080cd
+20406f97
+708a0d60
+7080cd00
+20400637
+6fe0c409
+67f080cd
+708a0b50
+708a0ec0
+df00000b
+6de1440a
+7080cc03
+20400659
+68590164
+60494bf3
+20406f9c
+df00000b
+65e1440a
+708a0d60
+7080cd00
+7080cc00
+20600000
+6ff08129
+c3028659
+20600000
Index: output/romcode.rom
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/romcode.rom	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/romcode.rom	(working copy)
@@ -0,0 +1,31140 @@
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00000000
+00005627
\ No newline at end of file
Index: output/sched.rom
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/sched.rom	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/sched.rom	(working copy)
@@ -0,0 +1,490 @@
+mem_patch00:
+05   #mem_patch00
+00   #mem_patch01
+33   #mem_patch02
+07   #mem_patch03
+20   #mem_patch04
+01   #mem_patch05
+00   #mem_patch06
+00   #mem_patch07
+f4   #mem_patch08
+58   #mem_patch09
+a5   #mem_patch0a
+fe   #mem_patch0b
+00   #mem_patch0c
+00   #mem_patch0d
+c2   #mem_patch0e
+00   #mem_patch0f
+11   #mem_patch10
+00   #mem_patch11
+00   #mem_patch12
+04   #mem_patch13
+00   #mem_patch14
+00   #mem_patch15
+02   #mem_patch16
+00   #mem_patch17
+20   #mem_patch18
+00   #mem_patch19
+60   #mem_patch1a
+3c   #mem_patch1b
+00   #mem_patch1c
+00   #mem_patch1d
+40   #mem_patch1e
+04   #mem_patch1f
+00   #mem_patch20
+00   #mem_patch21
+00   #mem_patch22
+00   #mem_patch23
+00   #mem_patch24
+00   #mem_patch25
+00   #mem_patch26
+00   #mem_patch27
+00   #mem_patch28
+00   #mem_patch29
+00   #mem_patch2a
+00   #mem_patch2b
+00   #mem_patch2c
+00   #mem_patch2d
+00   #mem_patch2e
+80   #mem_patch2f
+00   #mem_patch30
+00   #mem_patch31
+21   #mem_patch32
+00   #mem_patch33
+00   #mem_patch34
+00   #mem_patch35
+00   #mem_patch36
+00   #mem_patch37
+00   #mem_patch38
+00   #mem_patch39
+00   #mem_patch3a
+00   #mem_patch3b
+00   #mem_patch3c
+00   #mem_patch3d
+00   #mem_patch3e
+00   #mem_patch3f
+
+
+mem_mouse_flag:
+#mouse flag byte1
+#bit0 MOUSE_SELECT_DEVICE_FLAG
+#bit1 MOUSE_24G_PAIRING_FLAG
+#bit2 MOUSE_STORE_EEPROM_FLAG
+#bit3 MOUSE_BT_CANNEL_RECONN_FLAG
+#bit4 MOUSE_LOW_VOLTAGE_FLAG
+#bit5 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+#bit6 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+04
+
+#mouse flag byte2
+#bit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+#bit1 MOUSE_ENABLE_2K_EEPROM
+#bit2 MOUSE_ENABLE_INIT_DELAY
+#bit3 MOUSE_ENABLE_WAKEUP_FROM_POWER
+#bit4 MOUSE_ENABLE_16M
+#bit5 MOUSE_ENABLE_USB
+#bit6 MOUSE_ENABLE_24G_SEARCH_DONGLE
+#bit7 MOUSE_ENABLE_LOAD_AND_STORE_DPI
+09
+
+#mouse flag byte3
+#bit0 MOUSE_ENABLE_SPI2
+#bit1 MOUSE_ENABLE_24G
+#bit2 MOUSE_ENABLE_FLASH
+#bit3 MOUSE_ENABLE_EEPROM
+#bit4 MOUSE_ENABLE_OTP
+#bit5 MOUSE_ENABLE_ADC
+#bit6 MOUSE_ENABLE_KEYBOARD
+#bit7 MOUSE_ENABLE_DOUBLE_DPI_KEY
+#6a	#eeprom
+72	#otp
+
+#mouse flag byte4
+#bit0 MOUSE_ENABLE_24G_250Hz
+#bit1 MOUSE_ENABLE_24G_500Hz
+#bit2 MOUSE_ENABLE_24G_1000
+#bit3 MOUSE_ENABLE_BT_125Hz
+#bit4 MOUSE_ENABLE_DPI_LEVEL_4
+#bit5 MOUSE_ENABLE_USB_250
+#bit6 MOUSE_ENABLE_USB_500
+#bit7 MOUSE_ENABLE_USB_1000
+00
+
+#mouse flag byte5
+#bit0 MOUSE_ENABLE_1IO2LED
+#bit1 MOUSE_ENABLE_BT_RECONN_LED_EFFECT
+#bit2 MOUSE_ENABLE_LOW_LED_BLINK_LIMIT
+#bit3 MOUSE_ENABLE_LOW_LED
+#bit4 MOUSE_ENABLE_LOW_FOR_LED
+#bit5 MOUSE_ENABLE_DPI_FOR_LED
+#bit6 MOUSE_ENABLE_DPI_LOW_FOR_LED
+#bit7 MOUSE_ENABLE_LOW_VOLTAGE_LED_BLINK_N_SECOND
+08
+
+#mouse flag byte6 
+#bit0 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
+#bit1 MOUSE_ENABLE_SELECT_DEVICE_BY_PB_BUTTON
+#bit2 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
+#bit3 MOUSE_ENABLE_CUSTOMER_KEY_CONNECT_VIN_OR_MATRIX
+#bit4 MOUSE_ENABLE_DPI_KEY_CONNECT_GND
+#bit5 MOUSE_ENABLE_PB_BUTTON_CONNECT_GND
+#bit6 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING 
+00
+
+#mouse flag byte7
+#bit0 MOUSE_ENABLE_AUTO_24G_PARING
+#bit1 MOUSE_ENABLE_24G_POWER_ON_PAIRING
+#bit2 MOUSE_ENABLE_COMMBINATION_KEY_BY_24G_PAIRING
+#bit3 MOUSE_ENABLE_BT_RECONNECT_TIMEOUT_ENTER_DISCOVERY
+#bit4 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY
+#bit5 MOUSE_ENABLE_COMMBINATION_KEY_BY_BT_DISCOVERY
+#bit6 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY
+#bit7 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY
+00
+
+#mouse flag byte8
+#bit0 MOUSE_ENABLE_SMOOTHER
+#bit1 MOUSE_ENABLE_XY_OFFSET
+#bit2 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED
+#bit3 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+#bit4 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+#bit5 MOUSE_ENABLE_24G_2M_PHY
+#bit6 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING
+0c
+
+
+mem_device_option:0f
+mem_power_on_flag_new:01
+mem_usb_level_check_gpio:ff
+
+#ui
+mem_ui_button_gpio:ff
+mem_ui_button_timeout:1e
+mem_ui_led_struct_num:01
+mem_ui_led_struct_ptr:mem_keyboard_led_type
+mem_keyboard_struct_led_gpio:ff
+
+#rf
+mem_tx_power:01	#00--0db 01--3db  02--5db  03--f3db  04--f5db
+mem_rssi_buff_index:07
+mem_rssi_signal_buf_ptr:mem_mouse_rssi_signal_buf
+mem_rssi_dis_min_24g_init:85
+mem_rssi_dis_max_24g_init:90
+mem_rssi_dis_min_ble_init:75
+mem_rssi_dis_max_ble_init:80
+mem_rssi_hex_received_max_value_init:63
+mem_power_ctrl_pac_succ_cnt_init:7d
+
+
+#2.4g
+mem_24g_lap: 33 11 3b 55 51 a1
+mem_24g_data_type:02	#01--mouse  02--keyboard
+mem_24g_fast_conn_enable:01
+mem_24g_fast_conn_addr:0f 0f 0f 0f
+mem_24g_ch_map_update:00   #00--disable   01--enable
+mem_24g_long_sleep_set_level:02    #00--30ms   01--50ms  02--80ms  03--100ms
+mem_24g_disable_fec1:00	 #00--default mode  01--new process
+mem_24g_rx_window:c0 12     #400us  ## e0 2e#1ms #transmitter long range min:520us
+mem_mouse_24g_pair_tx_power:94 #-20dBm
+
+mem_24g_enter_hibernate:00 48 60
+mem_24g_long_sleep_param_update_timer_init:0a 00	#1s
+mem_24g_transmit_by_interrupt_exit_count_init:50 00
+mem_mouse_24g_search_dongle_time_init:32 00	#3mins
+mem_store_information_delay_timer_init:02
+mem_local_rx_max_octets:fb 00 48 08 fb 00 48 08  # 1b
+
+#bt
+mem_lpm_mode:01
+mem_lpm_mult:10
+mem_lpm_mult_init:10
+
+
+#ble
+mem_le_lap:73 83 92 a1 b1 c1
+mem_le_adv_channel_map:07
+
+mem_le_battery_level_updata_timer_init:96 00
+mem_le_keyboard_handle:15 00
+mem_le_notify_handle:19 00
+mem_le_multimedia_handle:1d 00
+mem_le_systemctrl_handle:21 00
+mem_le_pairing_handle:28 00
+mem_le_battery_level_handle:30 00
+
+mem_le_adv_data_len:1f
+mem_le_adv_data:
+#flag
+02 01 05 
+#uuid
+03 03 12 18 
+#appearance
+03 19 c1 03
+
+mem_le_adv_swift_pair:
+#microsoft swift pair
+#06 ff 06 00 03 00 80	
+#name
+'\09BT5.2 Keyboard
+
+mem_le_scan_data_len:1f
+mem_le_scan_data:
+#name
+'\09BT5.2 Keyboard
+
+#max 20bytes, att list data rom limits
+mem_le_name_len:
+'BT5.2 Keyboard
+
+mem_le_interval_min:
+07 00 #min interval
+07 00 #max interval
+20 00 #latency
+2c 01 #timeout
+
+mem_le_adv_ind:03 12 18
+mem_le_adv_direct_ind:ff 00 00
+
+mem_le_search_mac_manu_name:
+41 70 70 6c 65 20 49 6e 63
+mem_le_search_mac_uuid:
+0a 18
+mem_le_search_service_uuid:
+D0 00 2D 12 1E 4B 0F A4 99 4E CE B5 31 F4 05 79
+
+mem_keybord_appearance:c1 03
+mem_keyboard_le_map_len:78 00
+
+mem_keyboard_change_vid_pid_flag:
+01			# 00:disable    01:enable
+02
+e8 04		# vid: 04 e8
+21 70		# pid: 70 21
+01 00
+
+#adc
+
+
+# 3.0V/4.2V  mem_adc_config_flag:01   mem_adc_channel:00
+# 1.5V   mem_adc_config_flag:02    mem_adc_channel:select gpio num
+#adc config
+mem_adc_config_flag:02
+#01 ADC_CONFIG_HVIN
+#02 ADC_CONFIG_GPIO
+mem_adc_clkdiv:0a
+mem_adc_channel:0c
+#00 ADC_CH_VBAT
+#01 ADC_CH_VDCDC5V
+#06 ADC_CH_GPIO18
+#07 ADC_CH_GPIO10
+#08 ADC_CH_GPIO9
+#09 ADC_CH_GPIO12
+#0a ADC_CH_GPIO6
+#0b ADC_CH_GPIO20
+#0c ADC_CH_GPIO21
+#0d ADC_CH_GPIO22
+#0e ADC_CH_GPIO13
+
+mem_adc_dma_enable:00
+mem_adc_saddr_ptr:00 07
+mem_adc_eaddr_ptr:ff 07
+
+#led
+mem_keyboard_device_poweron_timer_count_init:1e
+mem_keyboard_disconvey_led_blink_time:e8 03	#500ms on 500ms off
+
+
+#system
+mem_mouse_24g_power_on_fast_conn_timer:02 00	#1s
+mem_mouse_24g_reconn_timeout_init:64 #10s
+mem_mouse_24g_pair_timeout_init:58 02  #1min
+mem_mouse_fast_direct_timeout:64 #10s
+mem_mouse_direct_timeout:64  #10s
+mem_mouse_discovery_timeout:58 02  #1min
+mem_mouse_no_data_timeout:70 17   #10mins
+mem_adc_low_volatage_led_blink_timer:64 00 #10s
+
+mem_same_keyvalue_timer_init:B8 0B		#5min
+mem_keyboard_caps_led_on_timer:58 02	#1min
+
+
+mem_device_flag:00	#00--24g 01--bt/ble
+mem_device1_type:34
+mem_device1_addr:00 00 00 00 00 00
+mem_keyboard_factory_addr:ff ff ff ff ff ff
+
+mem_device_number:01
+
+#rgb
+#mem_rgb_on_color:
+#07		#white
+#01		#blue
+#02		#green
+#04		#red
+#03		#cyan
+#05		#purple
+#06		#orange
+
+#mem_customize_timer_setup: 50 00  	# n*0.3125ms
+#mem_keyboard_led_on_time_init:58 02		#1min
+
+#mem_rgb_pwm_conf:
+#13	#pwm gpio
+#01	#pwm channel
+#a0	#three  byte frequency
+#0f
+#00
+#1e 	#duty cycle (by percent %)
+
+#mem_keyboard_led_r_gpio:ff #13
+#mem_keyboard_led_g_gpio:ff #14
+#mem_keyboard_led_b_gpio:ff #15
+
+##												bt button connct gnd          bt button in matrix        two button commbination
+mem_keyboard_pairing_type:01					#                 00                                    00                                 01
+mem_config_select_device_button_gpio:ff			#              00~16			               ff					ff
+mem_keyboard_commbination_key_bt:7f 06			#		 not care				   not care			     Fn+C
+mem_keyboard_commbination_key_24g:29 14		#		 not care				   not care			     Esc+Q
+mem_eeprom_wp_gpio:ff
+mem_eeprom_scl_gpio:ff
+mem_eeprom_sda_gpio:ff
+mem_eeprom_base:10 00
+mem_otp_read_retention_max_size:40 02		# 16*pair count
+
+mem_keyboard_caps_led_gpio:88
+mem_keyboard_num_led_gpio:8c
+mem_keyboard_power_led_gpio:ff
+mem_keyboard_low_voltage_alarm_gpio:8c
+mem_keyboard_scroll_led_gpio:80
+mem_keyboard_24g_led_gpio:8c
+mem_keyboard_bt1_led_gpio:ff
+mem_keyboard_bt2_led_gpio:ff
+mem_keyboard_bt3_led_gpio:ff
+
+
+
+mem_mcu_stb_gpio:01
+mem_mcu_clk_gpio:02
+mem_mcu_rstb_gpio:ff
+
+mem_sensor_motion_gpio:ff
+mem_mouse_reuse_2ice_gpio:05
+#portA:8x,portB:cx,fixed conf,don't change
+mem_key_excol_gpio:c2 c3 c4 c5 c6 c7 80 81 82 83 84 85
+
+#gpio00~16
+mem_key_row_gpio:
+0d		#r0
+0e 		#r1
+0f		#r2
+10 		#r3
+11 		#r4
+12 		#r5
+13 		#r6
+14		#r7
+
+#gpio00~16   portA:8x,portB:cx
+mem_key_col_gpio:
+85		#c0
+c4		#c1
+c5		#c2
+c6		#c3
+c3		#c4
+c2		#c5
+03		#c6
+04		#c7
+83		#c8
+84		#c9
+82		#c10
+c7		#c11
+80		#c12
+07		#c13
+06		#c14
+81		#c15
+0a		#c16
+0b		#c17
+ff		#c18
+ff		#c19
+
+mem_keyboard_keyvalue_map_new:
+#r0 ~ r7
+48 a1 a0 a0 e4 00 e0 3e 				#c0
+14 2b 04 29 1d 8b 35 1e 				#c1
+1a 39 16 64 1b 8a 3a 1f 					#c2
+08 3c 07 3d 06 88 3b 20 				#c3
+15 17 09 0a 19 05 22 21 				#c4
+18 1c 0d 0b 10 11 23 24					#c5
+0c 30 0e 3f 36 87 2e 25 					#c6
+12 40 0f 00 37 65 41 26 					#c7
+13 2f 33 34 32 38 2d 27 					#c8	
+47 00 7f e2 00 e6 00 46					#c9
+89 2a 31 44 28 45 42 43 				#c10
+5f 5c 59 2c 53 51 4c a1 					#c11
+60 5d 5a 62 54 4f 49 a0 					#c12
+61 5e 5b 63 55 56 4b 4e 				#c13
+57 85 58 52 e9 50 4a 4d					#c14
+00 e1 e5 ed ee ec eb e8 				#c15
+f1 e3 f6 f8 f7 f9 ef fa					#c16
+91 70 70 f0 ea f2 fb 90					#c17
+
+mem_keyboard_fn_first:	00			#fn first  00:press f1~f12=f1~f12      01:press fn+f1~f12=f1~f12
+mem_keyboard_fn_esc:	29			#esc
+mem_keyboard_fn_f1:	e8			#f1
+mem_keyboard_fn_f2:	ed			#f2
+mem_keyboard_fn_f3:	ee			#f3
+mem_keyboard_fn_f4:	ef			#f4
+mem_keyboard_fn_f5:	eb			#f5
+mem_keyboard_fn_f6:	ec			#f6
+mem_keyboard_fn_f7:	e9			#f7
+mem_keyboard_fn_f8:	ea			#f8
+mem_keyboard_fn_f9:	fb			#f9
+mem_keyboard_fn_f10:	f1			#f10
+mem_keyboard_fn_f11:	f0			#f11
+mem_keyboard_fn_f12:	f5			#f12
+mem_keyboard_fn_del:	4c			#delete
+
+# 00: disable           01: enable
+mem_keyboard_fn_arrow_enable_flag:01
+mem_keyboard_fn_left_ctrl_enable_flag:00
+mem_keyboard_fn_space_enable_flag:00
+mem_keyboard_fn_system_switch_enable_flag:00
+
+
+mem_keyboard_commbination_fast_conn_bt:2a 10	# bs+M
+
+
+
+mem_system_clk:0c
+mem_lpm_xtalcnt:35 3f 64
+mem_lpm_isogate:db 7b 3b
+mem_lpm_hibernate_switch:20
+mem_lpm_ldo_sel:00
+mem_lpm_sysctl:08
+mem_lpm_hv_sel:b4
+
+mem_fcomp_div:18
+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
+mem_le_tx2m_delay:20
+
+mem_rx_window_sniff:00 0c
+
+mem_gain_fix:ff	#00:soft agc; ff:hw agc
+mem_gain_table:04 00 00
+mem_gain_second_agc_en:08	#hw agc: 0:second agc disable
+mem_otp_load_check_sum:5a
+
+
+mem_ring_ibias_trim:a0
+mem_ring_ibias_vtune_high:bc 02 #700mv
+mem_ring_ibias_vtune_low:90 01 #400mv
+mem_ring_ibias_calc_adc_gpio:03
+mem_ring_ibias_calc_adc_channel:09
+
+mem_rf_init_data:
+ff
+mem_rf_init_ptr:mem_rf_init_data
+
+
Index: output/test0327_yc1031s_mz108_only_24g_janpanese_otp.dat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/test0327_yc1031s_mz108_only_24g_janpanese_otp.dat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/test0327_yc1031s_mz108_only_24g_janpanese_otp.dat	(working copy)
@@ -0,0 +1,7793 @@
+0b
+00
+02
+00
+00
+00
+00
+00
+00
+00
+00
+8f
+ab
+f1
+00
+3c
+ae
+c6
+03
+78
+5c
+8d
+07
+e0
+71
+35
+1e
+aa
+55
+70
+19
+24
+e6
+00
+31
+6d
+0c
+53
+9d
+49
+7e
+20
+29
+3d
+fc
+1c
+6f
+a9
+8b
+3f
+51
+68
+bd
+31
+de
+fc
+2e
+10
+fb
+17
+75
+69
+d8
+d4
+cd
+56
+97
+4e
+f0
+8f
+bd
+bc
+7c
+1e
+33
+7f
+53
+ad
+cb
+ab
+b6
+cb
+30
+d6
+da
+12
+da
+8b
+35
+f4
+4b
+f0
+e1
+38
+7a
+7c
+7e
+78
+45
+41
+64
+a2
+1e
+f1
+15
+e6
+76
+27
+2e
+97
+06
+5d
+1f
+74
+56
+7c
+4d
+1c
+3b
+b8
+61
+bb
+82
+eb
+0f
+1c
+c1
+52
+e4
+5c
+bf
+e3
+7d
+0c
+9e
+5d
+4e
+da
+5f
+ba
+65
+9b
+58
+e5
+f4
+30
+f9
+15
+d1
+61
+a8
+1c
+e8
+46
+94
+9c
+29
+df
+4d
+f1
+c9
+94
+69
+46
+08
+0c
+34
+4b
+f7
+1a
+fc
+91
+b6
+53
+14
+50
+73
+a7
+ba
+6e
+07
+9e
+12
+f7
+91
+a3
+71
+04
+c7
+98
+37
+4b
+41
+c9
+cc
+e3
+ad
+89
+3d
+1e
+b2
+eb
+99
+ab
+2f
+4a
+99
+f0
+86
+4d
+70
+94
+8d
+56
+6f
+44
+4a
+e3
+7e
+c5
+89
+a4
+a5
+19
+44
+2e
+42
+b9
+b0
+ce
+5f
+26
+66
+37
+24
+a2
+fb
+11
+89
+89
+6f
+4f
+4a
+f4
+6d
+48
+9c
+a2
+23
+64
+f6
+cc
+e5
+a4
+f2
+b3
+4d
+f1
+30
+8f
+e9
+48
+42
+c7
+96
+e3
+10
+8b
+25
+0d
+cc
+ef
+8a
+6e
+aa
+e3
+6f
+cc
+1c
+b0
+3e
+7b
+16
+f4
+6c
+03
+ac
+08
+d6
+2c
+cf
+9b
+d7
+71
+8d
+3f
+b6
+91
+8e
+74
+4d
+9a
+81
+f8
+3a
+57
+3d
+10
+b7
+d7
+8b
+db
+4d
+f5
+d1
+3e
+82
+e2
+20
+db
+de
+00
+0d
+b4
+26
+5a
+d6
+c8
+b0
+be
+47
+cf
+f0
+78
+a3
+5c
+ed
+16
+98
+22
+fe
+83
+0a
+7b
+de
+6d
+a2
+75
+30
+d8
+fd
+af
+10
+da
+f6
+a6
+0e
+75
+b2
+b0
+1c
+1b
+60
+10
+66
+5c
+33
+09
+70
+eb
+76
+2d
+87
+0f
+b7
+b0
+c1
+7c
+29
+71
+00
+6c
+4d
+e7
+e7
+38
+8c
+02
+f1
+5c
+11
+32
+b7
+31
+67
+b5
+a9
+4e
+2d
+40
+d8
+2b
+57
+eb
+07
+cc
+89
+93
+04
+75
+97
+fc
+24
+7b
+45
+df
+98
+ab
+ba
+53
+a6
+44
+75
+ea
+96
+fc
+30
+08
+66
+86
+f8
+16
+53
+76
+e5
+64
+34
+95
+d7
+3f
+4f
+49
+c8
+cc
+f0
+81
+e5
+0f
+a8
+b0
+32
+b3
+2d
+7c
+6c
+a1
+78
+d2
+6d
+02
+56
+21
+67
+9b
+8b
+e6
+d0
+f7
+f5
+80
+2f
+0c
+30
+3f
+72
+9d
+61
+93
+24
+7d
+3d
+8b
+11
+d6
+cb
+bf
+ec
+b4
+66
+a1
+a3
+cb
+34
+43
+13
+96
+ee
+e3
+62
+90
+6c
+31
+2a
+66
+c2
+04
+4d
+4f
+00
+a9
+54
+a5
+cf
+51
+eb
+c8
+c1
+89
+45
+f4
+fd
+16
+39
+b9
+9f
+f9
+97
+a3
+b1
+10
+2f
+88
+e3
+51
+dc
+82
+d8
+0b
+31
+57
+a8
+8d
+95
+af
+1a
+e7
+71
+c2
+5a
+61
+68
+b2
+2b
+82
+5b
+2b
+74
+3c
+45
+27
+21
+6b
+44
+f2
+f3
+d9
+de
+81
+73
+58
+b5
+83
+b7
+19
+b7
+30
+f7
+eb
+c7
+13
+84
+90
+1e
+7f
+9a
+73
+d1
+58
+d5
+07
+1a
+d7
+27
+52
+de
+e4
+df
+8f
+13
+6c
+a5
+4a
+6a
+74
+ee
+b3
+4e
+d7
+7f
+e8
+72
+0c
+86
+de
+2f
+40
+43
+c5
+7b
+7d
+fb
+7e
+ba
+b3
+4c
+bd
+44
+f2
+33
+3d
+bc
+ae
+80
+5c
+4b
+28
+5c
+e4
+b3
+4e
+d3
+ad
+b2
+89
+fa
+2c
+2b
+ef
+5e
+da
+4c
+eb
+4b
+7d
+34
+4b
+52
+17
+85
+66
+6e
+5f
+b1
+58
+9c
+a1
+fb
+04
+78
+aa
+ae
+69
+1f
+44
+df
+a4
+b2
+1d
+07
+ef
+1c
+7a
+b3
+b1
+26
+64
+21
+0b
+a3
+14
+f8
+55
+c5
+9c
+35
+cc
+77
+f9
+62
+13
+4e
+31
+6d
+94
+5c
+f2
+68
+64
+d6
+05
+7a
+90
+44
+81
+9b
+49
+d9
+f4
+26
+14
+42
+d2
+9a
+1e
+51
+05
+ab
+22
+7e
+85
+ca
+3d
+eb
+64
+d9
+62
+1b
+aa
+ab
+de
+b6
+05
+a5
+1e
+c8
+01
+ef
+20
+ec
+59
+fc
+ef
+e1
+c5
+04
+21
+21
+27
+9b
+9e
+74
+51
+47
+b7
+d4
+c5
+c5
+d2
+eb
+5f
+db
+d8
+c4
+84
+81
+bb
+26
+10
+b6
+a6
+b3
+1f
+a2
+f8
+fa
+4e
+1c
+fa
+d9
+6d
+ba
+e1
+62
+9e
+c8
+02
+45
+79
+31
+18
+aa
+65
+55
+d7
+8e
+5c
+ed
+4d
+57
+6e
+ea
+90
+81
+08
+4c
+f7
+3b
+9e
+a8
+88
+18
+ae
+08
+a7
+67
+e2
+34
+5a
+cf
+f3
+91
+ac
+9f
+b0
+8a
+52
+1b
+21
+a5
+ad
+48
+43
+f3
+7a
+c1
+77
+f5
+e5
+a9
+f8
+33
+71
+1b
+8b
+b7
+51
+68
+25
+97
+c3
+c8
+94
+25
+d4
+5a
+99
+ed
+c3
+0d
+84
+67
+0f
+d3
+aa
+bc
+51
+14
+ee
+dd
+a8
+b9
+5e
+89
+28
+a6
+ab
+54
+9e
+c5
+ea
+15
+ac
+24
+3e
+60
+11
+f5
+9c
+60
+fa
+a6
+68
+19
+bc
+1e
+71
+5b
+b7
+b4
+96
+bf
+5b
+4a
+6d
+93
+82
+c3
+c9
+1e
+2f
+37
+0f
+93
+09
+aa
+a5
+e5
+9f
+66
+32
+27
+2e
+ec
+46
+35
+e5
+04
+8a
+6a
+5d
+67
+9d
+ca
+cf
+93
+91
+fe
+9c
+38
+86
+a4
+05
+2a
+52
+da
+29
+52
+a4
+5f
+96
+20
+83
+e3
+af
+d2
+55
+b0
+2a
+04
+59
+f9
+17
+0a
+f7
+7e
+f7
+bb
+97
+b6
+ce
+36
+9c
+d9
+6b
+39
+66
+8a
+fc
+5f
+ca
+7f
+5c
+b7
+ae
+fd
+d3
+f1
+16
+bf
+d3
+a8
+3a
+46
+57
+7c
+c8
+80
+84
+82
+d7
+bb
+bb
+50
+2f
+aa
+df
+eb
+65
+10
+9e
+77
+ed
+f4
+a2
+dd
+b3
+01
+5b
+24
+d3
+55
+53
+e1
+4f
+c3
+8d
+42
+14
+bc
+7a
+9f
+51
+68
+25
+52
+cb
+ca
+15
+54
+86
+cd
+df
+1e
+26
+68
+20
+bc
+a4
+ee
+08
+4e
+af
+1a
+d4
+ba
+f4
+c9
+bf
+1b
+49
+2f
+67
+f4
+65
+e2
+58
+89
+d2
+b3
+88
+70
+86
+98
+d3
+9a
+82
+41
+84
+52
+f7
+89
+57
+16
+98
+8e
+05
+ca
+16
+97
+d0
+58
+04
+f8
+6c
+aa
+9e
+3e
+72
+42
+e7
+27
+3c
+54
+bf
+2d
+64
+f3
+7f
+52
+cb
+4b
+4f
+31
+f8
+b8
+a3
+f9
+9b
+44
+d0
+f0
+04
+fe
+41
+aa
+dd
+a2
+6a
+71
+35
+01
+55
+75
+68
+e5
+bf
+c2
+be
+dc
+8d
+c5
+84
+55
+71
+19
+d3
+a7
+ef
+bc
+07
+03
+ce
+db
+81
+00
+4f
+23
+99
+bb
+1e
+2b
+58
+bb
+ac
+a8
+06
+3c
+e3
+d4
+61
+e5
+17
+71
+4e
+25
+22
+98
+18
+21
+70
+54
+0d
+d9
+28
+84
+ee
+6a
+1a
+42
+e1
+4b
+12
+06
+3b
+b3
+e1
+98
+61
+80
+32
+f9
+e8
+29
+2a
+b7
+0d
+da
+3e
+90
+3f
+f4
+4b
+30
+07
+39
+5b
+2f
+58
+98
+b1
+ef
+c6
+3e
+6f
+d6
+fc
+d5
+f2
+c9
+5a
+8f
+dc
+39
+61
+3a
+76
+91
+2e
+e4
+93
+40
+f6
+30
+e8
+1a
+d0
+73
+8e
+8e
+0e
+ee
+78
+52
+fe
+2a
+82
+8d
+15
+12
+9d
+2f
+22
+01
+63
+c9
+ae
+cb
+a2
+04
+6f
+5c
+27
+53
+80
+85
+45
+d7
+99
+fd
+69
+2f
+29
+23
+ce
+7c
+c9
+a2
+01
+c4
+70
+fb
+c6
+06
+fe
+00
+0f
+ba
+19
+0c
+22
+4c
+8f
+20
+37
+21
+82
+61
+1a
+9e
+d6
+4a
+b2
+3f
+00
+39
+16
+80
+3b
+b6
+ac
+6b
+c9
+6f
+83
+d6
+18
+6f
+8e
+05
+e1
+08
+ca
+67
+1d
+57
+94
+12
+82
+4e
+74
+2d
+3b
+a5
+f3
+87
+89
+07
+c9
+43
+7e
+33
+b0
+12
+44
+99
+5f
+4c
+df
+fb
+81
+d6
+41
+ee
+65
+8b
+c3
+56
+95
+6a
+ef
+93
+38
+57
+67
+a4
+d7
+c2
+5a
+57
+db
+77
+4b
+17
+18
+49
+48
+29
+6d
+99
+2e
+8e
+6d
+b2
+65
+e8
+df
+e6
+50
+ca
+ba
+53
+8a
+7d
+cb
+89
+c7
+a0
+64
+e8
+2d
+e3
+6c
+76
+a0
+07
+7e
+c0
+78
+c9
+94
+30
+53
+54
+da
+32
+89
+7b
+b5
+1d
+3f
+fd
+5e
+f6
+37
+e9
+78
+06
+24
+1a
+4b
+5e
+5b
+b8
+49
+59
+d4
+2f
+e3
+cd
+52
+2b
+14
+0a
+62
+c3
+e5
+81
+97
+d8
+f3
+c6
+5c
+0d
+24
+5d
+ba
+06
+3a
+2f
+21
+12
+b6
+3f
+ea
+bb
+6d
+94
+f2
+3a
+a6
+75
+2b
+0b
+2c
+cb
+a2
+e9
+9c
+c0
+6c
+ec
+5a
+3a
+9b
+28
+cc
+cb
+54
+55
+f2
+05
+23
+dd
+b5
+b3
+50
+37
+11
+7c
+61
+a6
+10
+f3
+c2
+28
+f8
+ff
+29
+21
+a9
+92
+54
+ea
+d1
+22
+d7
+b6
+b3
+5a
+5f
+54
+b0
+27
+7b
+39
+45
+21
+5a
+f1
+bf
+aa
+f9
+54
+0f
+7e
+c6
+ab
+56
+77
+76
+95
+49
+c7
+11
+26
+9b
+fc
+2d
+02
+0b
+2d
+72
+fb
+bf
+2a
+ae
+a1
+f6
+ad
+16
+d1
+7d
+72
+83
+09
+46
+6a
+bc
+d2
+81
+54
+60
+c3
+29
+fe
+22
+20
+cd
+f4
+88
+d1
+b7
+ff
+12
+33
+a7
+0e
+5c
+42
+27
+51
+8a
+35
+48
+41
+9f
+73
+cb
+5d
+2e
+95
+ea
+53
+2e
+48
+48
+f2
+bd
+9d
+a5
+e8
+f4
+db
+fd
+3c
+6b
+5c
+a7
+01
+6f
+b9
+a2
+b2
+39
+94
+ce
+0b
+2c
+39
+87
+cc
+05
+1b
+a7
+50
+4f
+d6
+04
+49
+a8
+40
+41
+80
+cb
+fd
+bd
+c6
+84
+77
+9a
+17
+91
+0d
+7d
+3a
+fe
+46
+b9
+19
+6e
+2e
+9d
+a2
+7e
+36
+5a
+4c
+7d
+44
+da
+a0
+29
+b1
+e1
+4b
+3d
+09
+b9
+35
+e7
+88
+82
+a6
+be
+d2
+f1
+05
+2e
+a9
+c3
+1e
+49
+b5
+b1
+8c
+f3
+76
+35
+56
+4f
+06
+5f
+5b
+f2
+28
+36
+d6
+0f
+55
+fe
+39
+83
+80
+7f
+49
+be
+83
+63
+a0
+fb
+51
+b6
+23
+98
+0a
+4b
+a4
+85
+32
+14
+68
+6e
+1b
+3c
+6b
+f4
+18
+bf
+18
+13
+c1
+c3
+89
+e6
+8d
+28
+60
+d2
+07
+f5
+01
+a7
+10
+bd
+5f
+a3
+2b
+06
+f4
+a5
+34
+7b
+7d
+c0
+bb
+21
+90
+3b
+35
+8a
+32
+9c
+81
+78
+09
+3d
+76
+83
+90
+f6
+53
+6c
+cc
+a9
+9b
+4f
+38
+62
+32
+3e
+e1
+8f
+e6
+a0
+83
+a0
+76
+fe
+1a
+9f
+b1
+91
+07
+34
+60
+c6
+95
+31
+07
+00
+a0
+5d
+85
+aa
+fe
+93
+8a
+e6
+f5
+75
+62
+03
+7b
+b8
+63
+a9
+62
+e0
+93
+9e
+1c
+79
+c0
+9d
+83
+8b
+82
+d0
+57
+67
+df
+20
+7f
+c6
+95
+ec
+b8
+59
+12
+d3
+b3
+27
+9b
+fb
+79
+43
+5d
+4d
+dc
+b8
+f7
+85
+e7
+0d
+6e
+2a
+30
+ff
+1d
+45
+a1
+f6
+f0
+a3
+64
+2a
+f2
+39
+c2
+5f
+dd
+0b
+32
+90
+e2
+a5
+22
+19
+46
+71
+bf
+a8
+47
+d4
+14
+ad
+ca
+af
+31
+9d
+3b
+9c
+7c
+d3
+8c
+a8
+4c
+39
+de
+82
+6f
+20
+92
+ad
+77
+61
+5a
+06
+2f
+6b
+7a
+26
+7d
+09
+73
+20
+f5
+2d
+b2
+51
+9a
+41
+ee
+8d
+02
+4a
+a4
+42
+93
+04
+d3
+49
+21
+76
+cd
+cc
+22
+20
+4c
+62
+55
+b4
+8c
+35
+fe
+03
+ff
+f0
+f2
+d3
+a5
+60
+f6
+b4
+f9
+45
+fa
+1d
+df
+26
+97
+4a
+a5
+66
+1d
+01
+1f
+34
+14
+d2
+6a
+c1
+0e
+61
+cd
+db
+7f
+02
+7a
+29
+71
+cf
+14
+4a
+7f
+d3
+49
+1b
+82
+20
+47
+a8
+8b
+d3
+88
+b0
+0e
+c3
+a4
+61
+df
+6d
+ac
+10
+4b
+a5
+03
+6b
+9c
+fc
+e1
+fe
+2c
+7d
+69
+1f
+a4
+ab
+7a
+22
+73
+4b
+ba
+7a
+d6
+e7
+e7
+ef
+43
+33
+60
+00
+33
+1a
+9d
+b2
+c3
+0f
+87
+81
+eb
+40
+c6
+d3
+ba
+d5
+dc
+d7
+d1
+9a
+5d
+5a
+26
+d5
+00
+35
+6d
+bf
+d4
+2b
+00
+0d
+06
+d6
+6b
+93
+31
+5b
+da
+1c
+be
+cd
+9c
+ed
+c8
+b9
+02
+f1
+d8
+67
+d6
+bf
+e6
+80
+08
+f8
+7c
+61
+43
+0f
+32
+af
+a8
+10
+12
+9f
+d4
+67
+98
+12
+05
+62
+47
+94
+7d
+1a
+6c
+7f
+7b
+39
+41
+14
+e2
+bb
+d4
+6d
+d9
+05
+49
+f1
+3d
+68
+d0
+52
+60
+4e
+3e
+80
+9e
+7d
+d6
+7f
+32
+31
+6e
+06
+a7
+68
+71
+b8
+42
+55
+af
+e2
+cb
+5d
+db
+ff
+b7
+d7
+e1
+13
+89
+b7
+d0
+4c
+cc
+d8
+65
+bc
+bc
+13
+2c
+6d
+83
+cb
+12
+78
+3c
+28
+3c
+05
+49
+74
+c8
+1a
+cb
+77
+4a
+94
+4e
+a4
+13
+5b
+6d
+4d
+52
+25
+01
+50
+9f
+6b
+18
+59
+1d
+76
+eb
+08
+34
+34
+73
+e9
+b6
+e3
+88
+e9
+07
+32
+60
+2d
+17
+57
+df
+72
+53
+b2
+6a
+7c
+8f
+5c
+8b
+de
+b6
+81
+7d
+1e
+09
+89
+8e
+cd
+0c
+8c
+4d
+64
+10
+a3
+6b
+cd
+27
+dd
+6b
+57
+d3
+ae
+b0
+7d
+f0
+72
+01
+65
+b9
+3c
+87
+68
+ed
+f5
+3f
+14
+79
+ce
+31
+f7
+ce
+83
+37
+8e
+27
+00
+75
+39
+2b
+b5
+5d
+9a
+e8
+b7
+2b
+5a
+91
+ec
+60
+a1
+8c
+ee
+ff
+fc
+bf
+8d
+48
+3e
+7c
+12
+9a
+47
+43
+9a
+ee
+b0
+27
+1a
+d9
+46
+32
+da
+20
+32
+32
+e1
+42
+1e
+af
+1e
+ab
+03
+dc
+a3
+9d
+7d
+c9
+24
+10
+10
+6d
+a9
+49
+96
+d3
+bf
+cf
+81
+38
+e2
+5d
+c5
+89
+d4
+fe
+62
+2c
+e1
+2b
+30
+14
+d7
+68
+d2
+e2
+28
+09
+54
+ba
+a3
+38
+d9
+e9
+dd
+6e
+b1
+fa
+68
+2e
+a5
+5a
+d2
+4a
+eb
+20
+c3
+22
+7b
+c7
+ff
+b5
+ca
+d1
+81
+90
+ad
+f0
+a1
+0b
+96
+96
+0d
+1b
+ce
+a4
+87
+4b
+6b
+bb
+46
+6c
+0b
+9d
+08
+51
+58
+ef
+59
+6e
+cb
+52
+61
+a9
+94
+30
+c6
+fb
+d4
+2b
+ba
+0c
+c8
+06
+8b
+24
+d9
+ee
+d4
+af
+74
+26
+98
+9b
+0c
+23
+7d
+70
+87
+71
+a4
+27
+66
+fd
+6a
+80
+bf
+be
+07
+62
+1d
+11
+18
+97
+d4
+89
+aa
+49
+9b
+1e
+8e
+8e
+36
+f3
+49
+ee
+bc
+6b
+98
+28
+0b
+08
+d6
+f2
+42
+a6
+bc
+b7
+11
+7d
+36
+15
+6b
+48
+45
+0c
+1d
+51
+f8
+e4
+ff
+89
+4b
+a5
+95
+d7
+79
+36
+da
+98
+d7
+02
+51
+13
+d7
+aa
+20
+8c
+33
+d1
+92
+8e
+30
+02
+a9
+28
+89
+89
+f1
+42
+d9
+32
+de
+fe
+58
+52
+23
+80
+ba
+cf
+dc
+8e
+46
+2f
+24
+ed
+97
+1f
+aa
+be
+40
+2d
+22
+73
+03
+05
+67
+f9
+49
+eb
+5e
+9e
+c0
+a7
+c4
+6a
+56
+e0
+e5
+62
+8d
+61
+41
+c6
+c2
+ad
+23
+03
+44
+29
+ae
+84
+ea
+e6
+2c
+ab
+41
+c9
+fc
+75
+50
+03
+4c
+54
+6e
+74
+1e
+2f
+3d
+f0
+59
+9f
+5b
+5f
+30
+67
+47
+a1
+e1
+12
+d1
+9d
+7e
+83
+c6
+64
+45
+8c
+48
+5b
+07
+f5
+95
+60
+a3
+d5
+8e
+a5
+2c
+f9
+19
+bc
+d9
+a4
+50
+ec
+96
+49
+db
+bf
+9e
+fa
+66
+2c
+4d
+25
+e9
+23
+64
+e0
+f1
+80
+f5
+bb
+fa
+07
+f4
+9f
+15
+1a
+27
+34
+70
+c8
+26
+d2
+39
+42
+96
+c7
+54
+a1
+87
+0e
+6e
+df
+a8
+88
+7c
+5c
+29
+ba
+81
+87
+75
+b0
+21
+56
+cf
+e1
+2a
+20
+61
+f5
+77
+eb
+80
+2e
+f1
+9d
+41
+ac
+a4
+67
+58
+7e
+a8
+85
+f1
+7a
+97
+84
+5c
+fb
+d1
+94
+1c
+38
+c7
+42
+27
+2f
+5d
+13
+0a
+76
+af
+b5
+5f
+47
+15
+e9
+ef
+1e
+ad
+c6
+da
+06
+5d
+e6
+d9
+55
+22
+84
+fa
+10
+e3
+7b
+9c
+18
+d5
+f8
+e2
+ba
+bc
+8c
+ae
+7d
+87
+a6
+87
+d1
+47
+cf
+72
+c9
+ca
+4a
+e7
+24
+a6
+20
+74
+a5
+77
+a5
+ec
+de
+c8
+18
+5b
+57
+2b
+5a
+e7
+ef
+2e
+97
+25
+06
+41
+7c
+5e
+b3
+ad
+f4
+20
+ec
+ef
+dd
+e8
+75
+dd
+90
+48
+ca
+6a
+57
+14
+91
+fe
+e7
+0d
+23
+b7
+a8
+2d
+c3
+3a
+40
+68
+6a
+9c
+4d
+7e
+41
+b7
+a4
+51
+36
+39
+23
+70
+61
+e2
+a6
+c6
+9d
+0e
+61
+06
+bf
+2c
+fd
+84
+8a
+1a
+75
+9c
+38
+ff
+04
+df
+d4
+84
+22
+fc
+e0
+df
+83
+9e
+79
+6d
+b8
+04
+eb
+fa
+90
+a7
+4c
+74
+1d
+8a
+07
+cd
+1a
+98
+f3
+e3
+1d
+dc
+a0
+e4
+ac
+8b
+30
+32
+fa
+d8
+a0
+8d
+65
+f0
+a7
+86
+36
+b3
+49
+05
+f6
+b1
+97
+b1
+57
+0a
+39
+e9
+7e
+1d
+f2
+fd
+0e
+d9
+bd
+9f
+70
+93
+8e
+2f
+45
+de
+9c
+2e
+6c
+47
+0f
+ce
+1f
+d0
+de
+ea
+74
+25
+69
+15
+28
+6e
+27
+76
+f3
+4f
+00
+e3
+b2
+29
+0f
+08
+2f
+61
+75
+74
+40
+3a
+32
+37
+58
+54
+7e
+8f
+8f
+2b
+d1
+dc
+a2
+d2
+53
+6e
+e0
+e6
+fb
+d1
+44
+e0
+01
+19
+53
+c8
+a1
+0b
+77
+0d
+de
+62
+b9
+ae
+1d
+28
+cd
+9a
+96
+84
+8f
+e8
+f5
+17
+96
+35
+75
+68
+45
+26
+56
+1c
+8b
+0a
+b0
+e6
+69
+1d
+16
+76
+2e
+2f
+5e
+61
+aa
+82
+79
+d7
+db
+5e
+ca
+51
+a8
+fb
+aa
+1c
+90
+19
+07
+7c
+4a
+c1
+8d
+0b
+82
+a8
+76
+cd
+55
+b4
+82
+ae
+54
+07
+b9
+d7
+bc
+f5
+0a
+fe
+34
+85
+68
+80
+fd
+35
+8b
+c2
+cb
+56
+63
+b2
+2f
+a1
+de
+c7
+88
+6a
+3f
+c9
+2c
+ec
+20
+ae
+e0
+cd
+56
+10
+eb
+b1
+aa
+8e
+70
+07
+8b
+f2
+8f
+69
+80
+80
+1d
+6f
+7e
+ee
+77
+72
+e7
+1d
+fd
+aa
+54
+6a
+47
+3c
+8b
+d9
+49
+1e
+43
+82
+67
+dc
+e5
+88
+9c
+d9
+95
+01
+e8
+8f
+e3
+92
+d2
+b9
+f3
+a9
+fe
+64
+a7
+fb
+78
+df
+58
+e3
+82
+96
+5c
+9e
+53
+29
+c7
+1a
+37
+29
+dd
+e1
+e9
+b3
+5f
+55
+42
+eb
+6b
+54
+7f
+21
+2e
+cb
+84
+0d
+b1
+06
+01
+49
+f8
+64
+13
+45
+e6
+23
+7a
+74
+3b
+c5
+5f
+0e
+c0
+02
+25
+86
+f9
+d0
+6f
+20
+de
+b4
+39
+9d
+42
+8b
+2a
+56
+fa
+53
+e3
+03
+59
+93
+e5
+cc
+76
+d1
+30
+49
+ba
+5f
+38
+34
+c6
+a6
+2f
+14
+27
+a7
+2a
+0f
+b9
+8f
+8a
+87
+d3
+36
+0c
+51
+13
+e1
+11
+e3
+f1
+0e
+b4
+02
+14
+52
+ac
+0a
+70
+8d
+71
+dd
+95
+51
+0e
+d7
+a5
+b6
+61
+17
+f2
+af
+a3
+bf
+75
+54
+a3
+ce
+01
+45
+05
+15
+54
+ae
+ac
+f6
+19
+cb
+d8
+f5
+b7
+0a
+cf
+5b
+30
+0a
+44
+d2
+7d
+6b
+ba
+1b
+b9
+e0
+e7
+34
+d3
+70
+9f
+2c
+48
+3b
+53
+f6
+ef
+cc
+e0
+fb
+71
+e7
+ca
+f6
+26
+f7
+4f
+5d
+92
+f6
+b5
+de
+e7
+bb
+27
+a2
+03
+d7
+47
+26
+24
+28
+f8
+15
+55
+d4
+a6
+ad
+9f
+93
+33
+ee
+ba
+70
+06
+32
+85
+e7
+26
+c3
+ed
+4a
+30
+6d
+c1
+89
+c1
+9b
+e0
+4e
+4c
+50
+4e
+e3
+f3
+cc
+1e
+c3
+3e
+b3
+a2
+9b
+81
+95
+dc
+c5
+69
+38
+98
+82
+30
+30
+b2
+eb
+b6
+b5
+50
+1b
+ea
+98
+0d
+6b
+7c
+a1
+d9
+49
+03
+f4
+31
+23
+cb
+bf
+f5
+e7
+94
+0a
+34
+d5
+79
+87
+3a
+d1
+27
+54
+d1
+fd
+a4
+d9
+07
+84
+1a
+ce
+03
+54
+92
+58
+dd
+0f
+ab
+a5
+5a
+02
+59
+d8
+cb
+7f
+3e
+38
+8b
+ac
+31
+fe
+b4
+31
+a3
+75
+e1
+a5
+0d
+2d
+eb
+69
+34
+a3
+b5
+18
+f8
+17
+27
+68
+03
+dc
+eb
+18
+d5
+35
+41
+fa
+96
+c5
+a7
+74
+7f
+9c
+a5
+86
+cd
+b3
+dd
+ad
+09
+db
+f6
+17
+3e
+bb
+59
+cb
+77
+38
+e1
+22
+6c
+1d
+ae
+62
+a3
+33
+fa
+e8
+32
+d3
+88
+54
+82
+69
+38
+c2
+11
+bd
+59
+4f
+c2
+8f
+3f
+38
+49
+03
+98
+b7
+2f
+ca
+bd
+6a
+8e
+9d
+c9
+3e
+8a
+72
+6f
+f3
+da
+aa
+79
+3d
+ec
+fc
+08
+e3
+e9
+c5
+b1
+0a
+ea
+a7
+5b
+e0
+ce
+94
+ea
+de
+da
+db
+32
+61
+cb
+3e
+6f
+1c
+4e
+5f
+6f
+20
+4f
+7f
+d9
+1f
+fb
+5d
+b9
+12
+d0
+6c
+42
+1f
+fb
+7f
+2d
+c8
+c3
+94
+12
+e6
+68
+b7
+48
+0b
+a6
+2d
+09
+40
+20
+bf
+70
+e4
+60
+7d
+4a
+e0
+8b
+3c
+b9
+2c
+68
+22
+cc
+60
+ea
+03
+fa
+f8
+d0
+e9
+d0
+5d
+86
+59
+4c
+94
+8e
+15
+63
+d1
+11
+a4
+74
+cc
+9f
+4e
+9e
+ce
+35
+37
+f6
+91
+c3
+2f
+5a
+23
+65
+67
+c6
+60
+5a
+26
+69
+25
+e5
+f8
+b2
+26
+4a
+6a
+2e
+64
+70
+0e
+c5
+58
+80
+55
+a2
+89
+fb
+b9
+37
+af
+69
+a3
+c2
+f5
+f8
+91
+9b
+8b
+ac
+6e
+17
+7e
+f8
+97
+cf
+76
+3e
+c8
+1a
+6b
+c7
+84
+8e
+6d
+db
+67
+e8
+cd
+61
+61
+be
+02
+4f
+dc
+56
+40
+9c
+8b
+86
+ff
+9d
+48
+32
+e7
+9a
+92
+20
+0c
+e0
+0e
+d1
+34
+50
+fa
+b9
+91
+0a
+e4
+a4
+dc
+65
+79
+0f
+ac
+88
+9e
+f7
+7a
+f7
+21
+69
+60
+63
+b1
+c4
+eb
+2f
+c4
+f8
+85
+eb
+d5
+43
+33
+46
+00
+90
+45
+cc
+ed
+20
+cb
+be
+12
+4c
+a1
+82
+f2
+3d
+53
+16
+bc
+2b
+c9
+70
+bf
+a2
+b3
+4b
+52
+4f
+27
+b0
+f2
+fe
+01
+4a
+ab
+7c
+9b
+21
+fc
+f4
+c1
+07
+ea
+59
+61
+7f
+d7
+6e
+db
+c7
+95
+6e
+5c
+51
+e1
+3b
+03
+bb
+90
+55
+f2
+70
+02
+42
+a0
+2b
+48
+02
+f3
+55
+f1
+af
+d9
+80
+72
+6c
+56
+cd
+9d
+e6
+40
+33
+c3
+42
+f8
+ce
+7a
+0a
+a5
+cd
+d9
+bd
+80
+99
+af
+1a
+bc
+63
+4e
+fe
+e6
+c6
+2d
+c7
+a0
+b5
+47
+71
+95
+90
+38
+7a
+11
+0b
+74
+ad
+ea
+94
+7f
+58
+42
+11
+25
+cc
+85
+73
+45
+bb
+02
+db
+79
+e3
+9d
+45
+84
+55
+db
+3b
+a9
+78
+be
+e1
+87
+d3
+1e
+e0
+4f
+0e
+03
+6b
+78
+7b
+96
+6c
+b4
+8c
+b0
+d9
+4b
+fd
+73
+c9
+f1
+6b
+25
+f8
+82
+d8
+19
+6a
+3e
+0b
+12
+ba
+8a
+d9
+b5
+fb
+e6
+81
+de
+24
+55
+8c
+b1
+63
+db
+86
+dc
+33
+94
+0f
+69
+9c
+ff
+02
+8b
+dc
+eb
+d9
+c0
+4e
+bd
+97
+92
+1e
+ba
+bb
+38
+15
+50
+99
+d0
+20
+a4
+c2
+bf
+95
+8e
+03
+37
+79
+89
+54
+03
+21
+a7
+57
+b2
+67
+6b
+8b
+15
+e1
+16
+3a
+12
+e1
+53
+de
+84
+68
+e3
+2c
+3c
+3c
+99
+7a
+df
+87
+d4
+8c
+09
+a8
+30
+e1
+bb
+59
+ca
+6e
+2c
+33
+55
+84
+10
+99
+ec
+f8
+d8
+1a
+54
+53
+a9
+47
+5d
+c3
+73
+58
+bc
+f7
+de
+ca
+4d
+73
+9f
+8d
+d0
+d7
+9d
+f3
+6a
+a7
+69
+77
+fd
+23
+bc
+93
+0b
+f8
+22
+91
+13
+a6
+7c
+f0
+7e
+a6
+8f
+23
+ca
+ad
+0f
+2d
+fe
+aa
+56
+29
+72
+60
+fb
+a0
+a4
+50
+38
+86
+f9
+f1
+4e
+3a
+49
+52
+9f
+5e
+c7
+a1
+7a
+4f
+f3
+15
+ef
+88
+3a
+51
+d5
+44
+f2
+da
+d6
+28
+f5
+88
+d2
+8f
+c2
+4c
+69
+5e
+3c
+c2
+cf
+80
+a9
+62
+e2
+c3
+21
+e2
+23
+f2
+a3
+6b
+76
+6c
+25
+d5
+7e
+c0
+13
+12
+c6
+4b
+a6
+92
+ec
+7d
+20
+1d
+f4
+5c
+36
+78
+89
+c7
+02
+33
+f0
+74
+2d
+ed
+a8
+f4
+ef
+54
+dc
+13
+dc
+91
+93
+40
+5a
+22
+c8
+ed
+92
+09
+98
+f9
+55
+5f
+8c
+40
+fd
+d3
+5d
+fc
+13
+be
+d3
+d2
+41
+ae
+f5
+40
+53
+74
+2d
+46
+21
+79
+6f
+0a
+bd
+60
+77
+9f
+db
+d7
+53
+1e
+82
+ef
+66
+1a
+bb
+f6
+a2
+98
+cb
+48
+68
+0e
+10
+ef
+6a
+b1
+7f
+f1
+c9
+61
+f7
+bf
+00
+62
+37
+96
+9e
+a1
+29
+c0
+49
+23
+3c
+3a
+ad
+36
+ce
+ab
+7d
+1e
+c5
+9f
+f6
+82
+ef
+9a
+59
+73
+7e
+ee
+06
+49
+58
+56
+90
+5f
+df
+4d
+9d
+1b
+62
+2d
+5f
+fa
+37
+1f
+2e
+65
+8f
+93
+87
+c6
+51
+d3
+2c
+04
+33
+42
+a2
+73
+b9
+6a
+86
+f9
+b8
+87
+1b
+9e
+fb
+fb
+1d
+cc
+98
+bf
+40
+e9
+66
+ba
+5c
+83
+50
+57
+09
+c7
+a7
+a7
+29
+c8
+41
+08
+f3
+ae
+a4
+a9
+ae
+33
+39
+f5
+cf
+a4
+bf
+32
+dc
+6c
+db
+e2
+10
+bb
+d3
+bb
+4d
+93
+7a
+fb
+04
+33
+77
+a4
+b7
+8b
+f9
+67
+0d
+75
+b6
+82
+4d
+a9
+ad
+a2
+b0
+e5
+87
+a4
+01
+1d
+7f
+04
+85
+b2
+6e
+96
+e2
+29
+7e
+6c
+86
+b2
+45
+b5
+96
+48
+2e
+29
+c9
+0e
+1c
+75
+9a
+fc
+d3
+6e
+5a
+fb
+3d
+d2
+ee
+bd
+6a
+aa
+5d
+16
+8b
+63
+1d
+db
+46
+f8
+a6
+ca
+82
+95
+dc
+2d
+37
+1d
+bd
+03
+82
+bb
+9a
+4f
+72
+2e
+3d
+2d
+c1
+72
+1a
+bf
+e8
+fc
+aa
+73
+b6
+60
+01
+3b
+19
+7c
+44
+97
+a9
+a2
+1d
+19
+d1
+56
+e5
+17
+6b
+4a
+70
+0c
+ef
+e9
+b7
+8d
+31
+19
+52
+98
+1a
+e4
+0c
+79
+6a
+bc
+9c
+e2
+7f
+36
+cc
+bb
+dc
+89
+33
+b5
+3e
+19
+8c
+5c
+b1
+77
+14
+f9
+64
+59
+28
+5d
+e5
+89
+57
+cc
+75
+19
+f9
+3c
+d2
+9d
+43
+4c
+c2
+b4
+b0
+00
+23
+64
+69
+50
+82
+ae
+3d
+21
+ad
+9b
+0c
+fb
+26
+79
+9b
+9a
+a1
+f6
+c5
+d5
+41
+0b
+b4
+09
+85
+8e
+86
+b0
+21
+4c
+ea
+71
+ae
+a3
+d5
+e6
+23
+8d
+02
+8e
+1d
+be
+32
+9c
+18
+2d
+79
+11
+a0
+2b
+41
+20
+e7
+1f
+21
+93
+d5
+1a
+7d
+81
+50
+60
+fc
+f7
+53
+58
+da
+ed
+7e
+a1
+4a
+45
+53
+d4
+a8
+42
+1d
+79
+dd
+dd
+a9
+6e
+e0
+3f
+81
+de
+0d
+90
+51
+d9
+8e
+d8
+26
+05
+08
+10
+2f
+b0
+e4
+43
+01
+66
+6f
+d3
+48
+06
+1f
+c0
+e4
+0b
+56
+a5
+6d
+47
+95
+4b
+7f
+45
+00
+f6
+7f
+f5
+f6
+b4
+13
+91
+d7
+86
+e7
+33
+35
+d5
+eb
+c2
+1c
+de
+80
+47
+16
+93
+81
+19
+dc
+39
+2c
+2e
+e8
+85
+86
+20
+0d
+51
+a4
+89
+bd
+a0
+9a
+ce
+bc
+06
+69
+25
+a9
+0a
+13
+a5
+07
+74
+ed
+4e
+cd
+8f
+74
+81
+14
+17
+1a
+a2
+0b
+5a
+9e
+20
+7f
+c2
+aa
+f8
+87
+32
+0d
+17
+23
+0d
+04
+10
+5c
+b2
+13
+0e
+45
+c8
+5e
+00
+4d
+38
+3e
+27
+4f
+9c
+1d
+96
+8c
+31
+aa
+3f
+1c
+67
+b7
+48
+15
+bf
+15
+b9
+4f
+c7
+61
+a5
+c8
+74
+2f
+ce
+2a
+69
+eb
+21
+3d
+56
+53
+25
+1b
+d0
+f8
+9f
+80
+95
+cf
+12
+62
+cf
+fa
+27
+e2
+db
+d9
+6b
+5c
+7e
+d6
+a7
+20
+8d
+6b
+a1
+e5
+e0
+65
+8d
+40
+3e
+91
+50
+69
+63
+6b
+da
+4f
+41
+fd
+a4
+cd
+ef
+7e
+4c
+2b
+32
+3f
+ea
+4f
+f3
+64
+96
+c0
+85
+28
+5d
+67
+b3
+93
+db
+4f
+a8
+ca
+a8
+15
+c4
+18
+a8
+62
+47
+65
+87
+6a
+2a
+b0
+9a
+0a
+8b
+e7
+57
+9b
+1b
+44
+b2
+3e
+b2
+84
+1b
+3b
+f7
+61
+de
+cb
+26
+56
+ff
+39
+47
+00
+7d
+53
+c2
+7a
+12
+38
+2c
+98
+f5
+04
+0d
+14
+35
+69
+2e
+c1
+26
+40
+2d
+35
+2f
+0f
+3e
+5c
+6c
+f8
+32
+5b
+a2
+4c
+2d
+19
+12
+a9
+3d
+f2
+e6
+05
+41
+fc
+87
+48
+2a
+ea
+9f
+58
+48
+05
+1b
+4d
+5e
+d3
+09
+1f
+65
+83
+c0
+66
+2b
+12
+d1
+35
+3f
+ac
+f8
+78
+61
+d9
+8f
+d0
+52
+0d
+26
+9d
+e0
+6f
+fd
+5b
+ca
+ce
+d6
+55
+7d
+c6
+9e
+0a
+e9
+63
+a5
+65
+2c
+45
+e5
+41
+d3
+d1
+3e
+ba
+bd
+8b
+e6
+80
+2c
+3b
+3c
+cf
+a5
+26
+45
+0c
+20
+c9
+e5
+79
+25
+c0
+48
+55
+25
+ff
+2f
+59
+33
+46
+90
+f0
+f3
+7e
+d1
+1c
+73
+08
+20
+48
+15
+34
+ac
+8c
+eb
+53
+0e
+bc
+8b
+31
+5b
+c8
+2f
+71
+bc
+53
+38
+51
+e0
+ad
+af
+58
+0d
+ab
+3f
+41
+4c
+32
+ee
+6c
+99
+2f
+03
+6e
+65
+7d
+2f
+b6
+20
+5a
+91
+76
+40
+aa
+f4
+46
+1f
+28
+eb
+30
+66
+f7
+07
+89
+30
+2f
+aa
+b3
+2e
+2c
+6d
+06
+0d
+16
+9e
+15
+1e
+87
+19
+ed
+fc
+f8
+45
+3e
+24
+50
+0f
+2f
+3f
+e3
+14
+e3
+61
+d8
+bd
+bd
+74
+73
+70
+91
+4d
+69
+12
+1e
+0f
+b3
+e1
+e9
+6d
+05
+25
+80
+03
+7f
+31
+10
+63
+bd
+ea
+1c
+f6
+6b
+d6
+49
+fd
+b6
+ec
+af
+34
+88
+78
+5d
+56
+c7
+03
+32
+37
+4e
+68
+c0
+33
+fa
+5f
+19
+4d
+2c
+3c
+cb
+67
+d0
+88
+64
+24
+dd
+7a
+05
+65
+df
+58
+e3
+83
+95
+73
+bb
+b2
+6a
+3f
+22
+5f
+08
+a4
+85
+ae
+72
+02
+2a
+68
+57
+fb
+8c
+94
+da
+8b
+6e
+bc
+a6
+a7
+23
+3e
+07
+85
+65
+b4
+48
+71
+dc
+bb
+d4
+98
+7d
+c6
+98
+63
+d6
+46
+4c
+57
+30
+2d
+c7
+6e
+01
+79
+ea
+a2
+2c
+54
+7c
+28
+f4
+c6
+53
+f9
+35
+b3
+df
+b2
+62
+07
+25
+ef
+47
+e2
+ae
+db
+7f
+74
+3a
+0c
+d4
+42
+be
+a1
+43
+9b
+df
+f3
+6a
+8f
+9d
+0d
+5e
+f4
+d9
+d0
+56
+6b
+25
+24
+1f
+ec
+ed
+4f
+1f
+b3
+d4
+dc
+e2
+bf
+ae
+7e
+86
+42
+47
+b6
+30
+ff
+be
+7d
+d4
+f1
+ef
+b1
+71
+88
+2f
+fe
+ef
+9f
+f0
+d0
+46
+a5
+26
+96
+67
+71
+89
+ec
+ea
+14
+00
+72
+1a
+12
+81
+d2
+a1
+55
+2f
+ef
+0a
+37
+16
+57
+31
+10
+d2
+3d
+0e
+e5
+36
+bb
+1f
+08
+40
+54
+15
+16
+2f
+24
+7c
+ce
+75
+f8
+89
+f9
+a8
+f6
+8a
+e8
+03
+09
+6b
+a6
+e8
+19
+a9
+c8
+4f
+13
+54
+af
+5b
+5b
+5c
+ef
+b1
+c8
+78
+4c
+1d
+41
+cb
+1e
+7f
+63
+26
+ec
+8d
+b4
+fd
+7e
+27
+74
+02
+f3
+73
+df
+44
+77
+1d
+bd
+6a
+5b
+71
+ef
+01
+72
+bd
+16
+cb
+2f
+4c
+5b
+44
+fc
+20
+7f
+2f
+de
+09
+e6
+e4
+78
+f0
+32
+e3
+71
+01
+90
+56
+48
+27
+f1
+2e
+47
+c0
+93
+a3
+c6
+4c
+d9
+47
+3f
+04
+ac
+d1
+2a
+a6
+fd
+99
+70
+7d
+e8
+d8
+5f
+23
+44
+37
+96
+4f
+5f
+35
+1d
+6d
+d1
+c7
+b0
+9b
+52
+e9
+e9
+f0
+e6
+3c
+2b
+0f
+0d
+16
+86
+4a
+d8
+bc
+a6
+e8
+7d
+16
+e4
+c4
+bd
+69
+04
+84
+0e
+3a
+56
+87
+89
+57
+ec
+1e
+ac
+8d
+4c
+f1
+28
+e7
+0a
+36
+e2
+f4
+80
+b8
+e0
+38
+6d
+a1
+5e
+7a
+22
+b1
+bf
+e6
+28
+7f
+e0
+4c
+0d
+4c
+f9
+af
+fc
+29
+bb
+0f
+1e
+d2
+9c
+87
+f3
+ce
+7d
+ba
+cb
+2b
+dc
+71
+5d
+ed
+a7
+57
+0d
+19
+29
+ac
+22
+0b
+28
+60
+40
+8d
+05
+05
+48
+fa
+29
+5f
+c7
+8e
+52
+2f
+17
+33
+1c
+a8
+bc
+bd
+57
+32
+af
+4b
+fd
+2a
+47
+7d
+06
+98
+9c
+60
+9f
+2b
+f6
+e1
+8c
+de
+ad
+55
+11
+ad
+01
+9a
+b2
+20
+88
+d5
+d4
+f6
+9e
+96
+a0
+5f
+5d
+2b
+30
+26
+34
+7d
+a5
+12
+73
+22
+06
+7d
+f2
+21
+17
+cd
+0c
+7f
+58
+cf
+77
+c9
+cc
+08
+c7
+03
+25
+0b
+39
+0e
+c9
+ab
+6b
+62
+4e
+bd
+55
+aa
+c0
+9b
+00
+d6
+7b
+b9
+03
+f7
+44
+e7
+df
+5d
+95
+1b
+f6
+50
+d2
+e3
+fb
+00
+82
+35
+86
+7e
+ef
+d7
+67
+9b
+c6
+e9
+1e
+87
+7d
+cd
+33
+81
+06
+2d
+6a
+70
+20
+54
+d9
+da
+7d
+dc
+f6
+96
+e0
+d2
+6f
+14
+69
+38
+14
+05
+40
+9f
+c0
+1b
+c4
+91
+f0
+9a
+f3
+84
+c1
+25
+7a
+50
+3f
+53
+04
+26
+69
+31
+26
+a5
+8c
+e3
+8c
+a0
+11
+a5
+08
+50
+7f
+1e
+65
+79
+d5
+00
+cc
+df
+83
+fd
+f1
+c0
+7e
+41
+e7
+09
+1e
+5c
+20
+3f
+de
+9d
+97
+1d
+5b
+9b
+3c
+4a
+8f
+d9
+8e
+c2
+77
+ac
+25
+2d
+57
+f4
+c3
+91
+f3
+81
+8f
+52
+45
+98
+f4
+9c
+ec
+0c
+78
+df
+8d
+f5
+a5
+ff
+a6
+27
+51
+b2
+ac
+fc
+c5
+e1
+9e
+d4
+33
+83
+2d
+80
+14
+c3
+16
+67
+0e
+14
+d6
+d6
+c8
+b5
+76
+c3
+fd
+37
+31
+38
+ae
+04
+52
+8e
+09
+df
+b1
+08
+8c
+f5
+37
+5a
+17
+28
+6f
+ff
+40
+75
+8b
+82
+c3
+f2
+94
+a6
+7d
+46
+c8
+b7
+40
+ea
+60
+6a
+ed
+f1
+6d
+fd
+f1
+53
+46
+e3
+11
+d9
+1b
+67
+a4
+06
+8a
+f5
+d5
+2f
+2f
+fe
+d0
+ab
+bd
+ca
+14
+60
+4c
+3e
+03
+c5
+3e
+23
+a3
+e7
+5f
+f2
+e4
+12
+03
+c4
+85
+14
+a5
+26
+75
+f5
+eb
+0f
+ac
+8a
+12
+83
+24
+b2
+54
+5e
+21
+fe
+97
+7b
+28
+8e
+0d
+07
+69
+95
+66
+a0
+d6
+1f
+47
+22
+cc
+09
+97
+03
+e1
+0c
+37
+a5
+96
+ad
+dc
+18
+93
+d1
+99
+80
+ab
+f3
+4a
+38
+a0
+25
+95
+e0
+cd
+dd
+68
+63
+4e
+47
+a1
+3d
+4c
+3d
+4f
+21
+6a
+93
+53
+51
+7b
+89
+49
+37
+49
+83
+60
+6e
+55
+11
+f1
+58
+d6
+59
+e5
+f4
+ac
+01
+39
+1c
+d0
+72
+69
+27
+06
+03
+a3
+e7
+ba
+4f
+df
+35
+b8
+3b
+fc
+2e
+d6
+68
+4b
+51
+35
+7b
+14
+a9
+8b
+ab
+63
+bf
+23
+4a
+40
+d8
+ba
+a1
+38
+bc
+df
+8f
+0f
+8a
+93
+fe
+97
+8c
+fb
+a2
+fe
+77
+fa
+1e
+42
+34
+c7
+7a
+90
+31
+06
+eb
+39
+92
+42
+53
+77
+8d
+b0
+0e
+6a
+eb
+b3
+40
+87
+c6
+0d
+00
+78
+2c
+c4
+ee
+0f
+a2
+1d
+75
+ce
+65
+ec
+6e
+48
+30
+12
+a0
+d2
+41
+3b
+48
+4c
+9e
+4b
+6e
+ea
+23
+82
+33
+22
+5b
+f0
+1b
+0d
+a6
+74
+ba
+90
+a1
+60
+85
+90
+1d
+d9
+4b
+03
+61
+48
+5b
+22
+da
+78
+65
+05
+07
+c2
+1f
+94
+55
+85
+59
+bc
+9d
+ac
+52
+9d
+7d
+b5
+ff
+75
+be
+1b
+0a
+a9
+61
+eb
+08
+aa
+51
+e2
+a2
+20
+33
+c8
+93
+d0
+32
+ce
+68
+86
+58
+c8
+2a
+70
+03
+f7
+60
+76
+5c
+39
+d3
+2c
+8d
+61
+5c
+ae
+57
+41
+eb
+d8
+87
+f1
+a7
+40
+41
+b8
+ca
+7d
+aa
+35
+b8
+9b
+ba
+7a
+ae
+ac
+e1
+37
+cc
+76
+d6
+87
+7c
+0b
+39
+e3
+d9
+63
+bc
+23
+04
+b9
+2c
+72
+3b
+71
+d2
+6b
+c8
+0c
+6e
+b2
+61
+4c
+33
+c8
+f1
+1c
+19
+22
+aa
+52
+4c
+b8
+51
+38
+ac
+63
+5e
+c1
+b3
+3d
+00
+c9
+58
+69
+b8
+16
+b8
+4f
+41
+14
+46
+3e
+d0
+3f
+7d
+77
+4d
+82
+87
+34
+8a
+6a
+a8
+3d
+26
+55
+1a
+4e
+64
+26
+1e
+04
+72
+34
+1a
+be
+96
+3e
+52
+a7
+16
+df
+1e
+46
+d1
+c9
+43
+67
+42
+20
+d7
+c3
+8f
+75
+a3
+f9
+37
+3d
+62
+26
+e9
+89
+11
+98
+79
+7d
+c4
+49
+a4
+65
+d0
+ec
+0a
+b5
+43
+6c
+a1
+77
+fc
+57
+93
+dc
+fa
+f5
+fd
+da
+b0
+6d
+ef
+32
+ec
+94
+7b
+87
+09
+85
+68
+45
+e7
+c3
+3b
+b5
+23
+06
+b7
+50
+25
+c8
+87
+d8
+1d
+3a
+e7
+0b
+bc
+e4
+cd
+21
+5c
+ca
+5e
+32
+e6
+63
+57
+14
+d0
+8f
+5a
+a2
+fb
+0f
+84
+eb
+00
+71
+3d
+7c
+58
+dd
+58
+cb
+a5
+c9
+6f
+fa
+6f
+d0
+3b
+90
+88
+33
+51
+4f
+66
+87
+14
+33
+5e
+6a
+de
+07
+50
+98
+3f
+1b
+6f
+ea
+b0
+29
+65
+be
+39
+60
+94
+0b
+62
+3b
+b0
+27
+4c
+1b
+d0
+d7
+b4
+55
+15
+8f
+a9
+10
+e7
+18
+f4
+e9
+52
+bb
+65
+95
+83
+e6
+1b
+ee
+bb
+ad
+f2
+76
+cc
+09
+1e
+0d
+c7
+ab
+f2
+62
+ed
+64
+01
+14
+a7
+25
+c3
+db
+aa
+77
+d7
+65
+44
+e1
+90
+2b
+fc
+53
+79
+25
+f9
+a3
+29
+e1
+2b
+ca
+06
+fc
+23
+26
+56
+32
+c1
+0d
+6d
+b2
+48
+e9
+16
+ee
+79
+d8
+54
+26
+cf
+b1
+1d
+0f
+f9
+29
+2d
+8a
+79
+c9
+17
+64
+9c
+7e
+7f
+2b
+fb
+fd
+cc
+70
+ad
+2e
+7f
+4a
+2e
+26
+46
+a9
+b8
+d0
+eb
+06
+20
+12
+e2
+ce
+ac
+14
+91
+49
+46
+c2
+f7
+40
+b4
+a0
+55
+bb
+cd
+6b
+4d
+63
+51
+d6
+f5
+12
+20
+44
+ee
+66
+b8
+65
+31
+fc
+fa
+a1
+21
+e4
+ee
+fa
+be
+f3
+57
+b1
+2c
+85
+06
+53
+6b
+4d
+49
+26
+e3
+71
+73
+a0
+48
+15
+1b
+46
+22
+61
+8f
+f6
+5f
+ae
+ea
+e0
+67
+c5
+9b
+81
+6b
+70
+b0
+be
+5c
+3f
+bb
+b7
+00
+c8
+a2
+35
+7c
+cf
+9d
+ce
+aa
+55
+40
+00
+00
+40
+05
+00
+33
+07
+20
+01
+00
+00
+f4
+58
+a5
+fe
+00
+00
+c2
+00
+11
+00
+00
+04
+00
+00
+02
+00
+20
+00
+60
+3c
+00
+00
+40
+04
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+80
+00
+00
+21
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+08
+00
+13
+47
+04
+09
+72
+00
+08
+00
+00
+0c
+aa
+55
+01
+00
+cb
+43
+0f
+aa
+55
+01
+00
+ba
+4a
+01
+aa
+55
+01
+00
+bd
+4b
+ff
+aa
+55
+01
+00
+ec
+44
+ff
+aa
+55
+01
+00
+eb
+44
+1e
+aa
+55
+03
+00
+ee
+44
+01
+0b
+4a
+aa
+55
+01
+00
+0d
+4a
+ff
+aa
+55
+01
+00
+41
+41
+01
+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
+06
+00
+f1
+44
+33
+11
+3b
+55
+51
+a1
+aa
+55
+01
+00
+89
+45
+02
+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
+02
+00
+8b
+45
+c0
+12
+aa
+55
+01
+00
+3e
+46
+94
+aa
+55
+03
+00
+af
+45
+00
+48
+60
+aa
+55
+02
+00
+1d
+46
+0a
+00
+aa
+55
+02
+00
+1b
+46
+50
+00
+aa
+55
+02
+00
+23
+47
+32
+00
+aa
+55
+01
+00
+f4
+46
+02
+aa
+55
+08
+00
+c0
+43
+fb
+00
+48
+08
+fb
+00
+48
+08
+aa
+55
+01
+00
+94
+40
+01
+aa
+55
+01
+00
+c0
+40
+10
+aa
+55
+01
+00
+6b
+49
+10
+aa
+55
+06
+00
+db
+42
+73
+83
+92
+a1
+b1
+c1
+aa
+55
+01
+00
+93
+43
+07
+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
+28
+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
+c1
+03
+aa
+55
+10
+00
+a0
+47
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+11
+00
+68
+43
+1f
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+0f
+00
+6b
+42
+0e
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+08
+00
+d3
+42
+07
+00
+07
+00
+20
+00
+2c
+01
+aa
+55
+06
+00
+9a
+47
+03
+12
+18
+ff
+00
+00
+aa
+55
+09
+00
+f4
+49
+41
+70
+70
+6c
+65
+20
+49
+6e
+63
+aa
+55
+02
+00
+f2
+49
+0a
+18
+aa
+55
+10
+00
+e1
+49
+d0
+00
+2d
+12
+1e
+4b
+0f
+a4
+99
+4e
+ce
+b5
+31
+f4
+05
+79
+aa
+55
+02
+00
+fd
+49
+c1
+03
+aa
+55
+02
+00
+bb
+4a
+78
+00
+aa
+55
+08
+00
+99
+4b
+01
+02
+e8
+04
+21
+70
+01
+00
+aa
+55
+01
+00
+07
+44
+02
+aa
+55
+01
+00
+09
+44
+0a
+aa
+55
+01
+00
+08
+44
+0c
+aa
+55
+01
+00
+11
+44
+00
+aa
+55
+04
+00
+0d
+44
+00
+07
+ff
+07
+aa
+55
+01
+00
+07
+4a
+1e
+aa
+55
+02
+00
+09
+4a
+e8
+03
+aa
+55
+02
+00
+21
+47
+02
+00
+aa
+55
+01
+00
+3d
+46
+64
+aa
+55
+02
+00
+3a
+46
+58
+02
+aa
+55
+01
+00
+1e
+47
+64
+aa
+55
+01
+00
+3c
+46
+64
+aa
+55
+02
+00
+38
+46
+58
+02
+aa
+55
+02
+00
+25
+47
+70
+17
+aa
+55
+02
+00
+09
+4d
+64
+00
+aa
+55
+02
+00
+ec
+48
+b8
+0b
+aa
+55
+02
+00
+69
+48
+58
+02
+aa
+55
+08
+00
+66
+46
+00
+34
+00
+00
+00
+00
+00
+00
+aa
+55
+06
+00
+01
+4a
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+01
+00
+1b
+47
+01
+aa
+55
+01
+00
+a4
+49
+01
+aa
+55
+01
+00
+55
+46
+ff
+aa
+55
+04
+00
+a5
+49
+7f
+06
+29
+14
+aa
+55
+03
+00
+27
+44
+ff
+ff
+ff
+aa
+55
+02
+00
+eb
+43
+10
+00
+aa
+55
+02
+00
+0e
+4d
+40
+02
+aa
+55
+03
+00
+66
+48
+88
+8c
+ff
+aa
+55
+01
+00
+bc
+4b
+8c
+aa
+55
+01
+00
+bb
+4b
+80
+aa
+55
+04
+00
+b7
+4b
+8c
+ff
+ff
+ff
+aa
+55
+03
+00
+63
+48
+01
+02
+ff
+aa
+55
+01
+00
+59
+46
+ff
+aa
+55
+01
+00
+5b
+46
+05
+aa
+55
+0c
+00
+8a
+48
+c2
+c3
+c4
+c5
+c6
+c7
+80
+81
+82
+83
+84
+85
+aa
+55
+1c
+00
+6e
+48
+0d
+0e
+0f
+10
+11
+12
+13
+14
+85
+c6
+c5
+c4
+c3
+c2
+03
+04
+83
+84
+82
+c7
+80
+07
+06
+81
+0a
+0b
+ff
+ff
+aa
+55
+90
+00
+16
+4a
+48
+a1
+a0
+a0
+e4
+00
+e0
+3e
+14
+2b
+04
+29
+1d
+8b
+35
+1e
+1a
+39
+16
+64
+1b
+8a
+3a
+1f
+08
+3c
+07
+3d
+06
+88
+3b
+20
+15
+17
+09
+0a
+19
+05
+22
+21
+18
+1c
+0d
+0b
+10
+11
+23
+24
+0c
+30
+0e
+3f
+36
+87
+2e
+25
+12
+40
+0f
+00
+37
+65
+41
+26
+13
+2f
+33
+34
+32
+38
+2d
+27
+47
+00
+7f
+e2
+00
+e6
+00
+46
+89
+2a
+31
+44
+28
+45
+42
+43
+5f
+5c
+59
+2c
+53
+51
+4c
+a1
+60
+5d
+5a
+62
+54
+4f
+49
+a0
+61
+5e
+5b
+63
+55
+56
+4b
+4e
+57
+85
+58
+52
+e9
+50
+4a
+4d
+00
+e1
+e5
+ed
+ee
+ec
+eb
+e8
+f1
+e3
+f6
+f8
+f7
+f9
+ef
+fa
+91
+f5
+70
+f0
+ea
+f2
+fb
+90
+aa
+55
+13
+00
+ae
+49
+00
+29
+e8
+ed
+ee
+ef
+eb
+ec
+e9
+ea
+fb
+f1
+f0
+f5
+4c
+01
+00
+00
+00
+aa
+55
+02
+00
+ff
+49
+2a
+10
+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
+84
+69
+6f
+92
Index: output/test0403_yc1031s_mz108_only_24g_janpanese_otp.dat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/test0403_yc1031s_mz108_only_24g_janpanese_otp.dat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/output/test0403_yc1031s_mz108_only_24g_janpanese_otp.dat	(working copy)
@@ -0,0 +1,7809 @@
+0b
+00
+02
+00
+00
+00
+00
+00
+00
+00
+00
+8f
+ab
+f1
+00
+3c
+ae
+c6
+03
+78
+5c
+8d
+07
+e0
+71
+35
+1e
+aa
+55
+80
+19
+24
+e6
+00
+31
+6d
+0c
+53
+9d
+49
+7e
+20
+2c
+3d
+fc
+1c
+6c
+a9
+8b
+3f
+4e
+68
+bd
+31
+db
+fc
+2e
+10
+e6
+17
+75
+69
+db
+d4
+cd
+56
+92
+4e
+f0
+8f
+be
+bc
+7c
+1e
+32
+7f
+53
+ad
+ca
+ab
+b6
+cb
+33
+d6
+da
+12
+c7
+8b
+35
+f4
+54
+f0
+e1
+38
+79
+7c
+7e
+78
+48
+41
+64
+a2
+1d
+f1
+15
+e6
+75
+27
+2e
+97
+03
+5d
+1f
+74
+51
+7c
+4d
+1c
+3d
+b8
+61
+bb
+83
+eb
+0f
+1c
+c0
+52
+e4
+5c
+be
+e3
+7d
+0c
+9d
+5d
+4e
+da
+5e
+ba
+65
+9b
+5b
+e5
+f4
+30
+f8
+15
+d1
+61
+b7
+1c
+e8
+46
+97
+9c
+29
+df
+4c
+f1
+c9
+94
+6a
+46
+08
+0c
+31
+4b
+f7
+1a
+f9
+91
+b6
+53
+15
+50
+73
+a7
+bf
+6e
+07
+9e
+15
+f7
+91
+a3
+6c
+04
+c7
+98
+36
+4b
+41
+c9
+cf
+e3
+ad
+89
+3a
+1e
+b2
+eb
+98
+ab
+2f
+4a
+e6
+f0
+86
+4d
+71
+94
+8d
+56
+68
+44
+4a
+e3
+79
+c5
+89
+a4
+a5
+19
+44
+2e
+43
+b9
+b0
+ce
+5e
+26
+66
+37
+27
+a2
+fb
+11
+89
+89
+6f
+4f
+4a
+f4
+6d
+48
+9c
+a2
+23
+64
+f6
+cc
+e5
+a4
+f2
+b3
+4d
+f1
+30
+8f
+e9
+48
+42
+c7
+96
+e3
+10
+8b
+25
+0d
+cc
+ef
+8a
+6e
+aa
+e3
+6f
+cc
+1c
+b0
+3e
+7b
+16
+f4
+6c
+03
+ac
+08
+d6
+2c
+cf
+9b
+d7
+71
+8d
+3f
+b6
+91
+8e
+74
+4d
+9a
+81
+f8
+3e
+d8
+db
+14
+eb
+d4
+70
+db
+2d
+b8
+a5
+71
+46
+f0
+72
+70
+34
+44
+0a
+55
+e7
+5a
+9d
+87
+70
+2f
+0e
+80
+50
+bc
+f5
+85
+2e
+68
+98
+2a
+fe
+81
+37
+22
+be
+13
+f1
+b5
+32
+a6
+fd
+e8
+d0
+73
+e3
+07
+6e
+0b
+a7
+a9
+5f
+1b
+60
+e8
+06
+33
+19
+10
+33
+6b
+64
+34
+c4
+0f
+be
+a9
+85
+7c
+23
+68
+43
+ec
+41
+fe
+a3
+b8
+85
+1b
+b5
+5c
+17
+2b
+f2
+31
+6b
+ac
+ed
+ce
+39
+59
+9d
+ab
+51
+f2
+42
+cc
+9c
+8a
+42
+75
+83
+e5
+61
+fb
+53
+c6
+de
+2b
+af
+4a
+e0
+44
+78
+12
+b6
+fc
+26
+e9
+20
+73
+aa
+ee
+53
+02
+a0
+64
+14
+bf
+92
+3f
+4f
+1c
+b0
+cc
+f0
+b7
+00
+0f
+a8
+ba
+6f
+b3
+2d
+6d
+49
+a1
+78
+b4
+4c
+02
+36
+01
+1c
+cb
+42
+d7
+df
+f7
+95
+85
+f0
+5c
+9a
+30
+74
+9d
+62
+83
+8e
+2d
+97
+b8
+38
+d6
+cb
+95
+8c
+b4
+66
+97
+09
+9b
+be
+51
+55
+96
+ee
+e6
+42
+90
+6c
+34
+df
+36
+48
+20
+63
+4f
+00
+ad
+64
+f5
+45
+72
+22
+c8
+c1
+bf
+37
+f4
+fd
+11
+f4
+b9
+ff
+f9
+ab
+a3
+3a
+b9
+4f
+88
+68
+ce
+01
+95
+61
+89
+31
+57
+20
+70
+98
+af
+92
+34
+61
+85
+09
+f0
+a5
+b2
+28
+c2
+46
+2b
+77
+d7
+1f
+27
+21
+fd
+c9
+f2
+f3
+c9
+30
+d1
+b9
+dc
+3c
+d3
+7d
+ec
+20
+77
+a4
+7f
+39
+43
+45
+ab
+87
+68
+03
+81
+06
+1f
+8d
+b9
+92
+90
+7f
+eb
+81
+bc
+e6
+cd
+8a
+dc
+2c
+76
+5a
+2c
+d7
+f5
+76
+a7
+7e
+d6
+ef
+ab
+7e
+54
+96
+5f
+2a
+0e
+42
+12
+90
+00
+9a
+a4
+36
+b6
+24
+da
+5c
+20
+af
+b9
+fb
+56
+1c
+28
+5c
+e3
+b1
+66
+bf
+34
+9b
+ce
+4b
+a6
+f2
+ef
+54
+1f
+2c
+eb
+41
+b4
+0a
+33
+47
+63
+5c
+71
+1f
+95
+d9
+58
+95
+83
+90
+7c
+6d
+df
+d1
+2e
+ae
+cc
+81
+f4
+7b
+7d
+cd
+bf
+1d
+33
+b1
+b1
+46
+0a
+56
+0b
+96
+94
+5f
+12
+5d
+56
+39
+83
+b7
+57
+30
+54
+cb
+30
+57
+94
+5c
+f2
+68
+2b
+56
+c4
+66
+98
+54
+c0
+38
+be
+0c
+76
+96
+5b
+c2
+16
+a2
+6e
+50
+3b
+34
+85
+82
+0f
+7b
+22
+81
+a5
+01
+0d
+70
+54
+75
+99
+46
+8f
+9b
+1e
+c8
+05
+af
+20
+ec
+59
+fb
+bf
+6b
+c4
+c2
+71
+ab
+26
+2f
+9e
+74
+51
+07
+e7
+3e
+c4
+3f
+9d
+0b
+9b
+f7
+b7
+af
+7a
+18
+fc
+b6
+9a
+b4
+b9
+da
+d4
+9a
+97
+91
+30
+39
+ed
+a3
+66
+08
+c9
+0f
+98
+c1
+15
+3e
+73
+61
+18
+aa
+92
+cf
+ff
+e3
+57
+e0
+0a
+86
+e4
+0e
+c0
+3e
+fe
+8d
+e8
+50
+9e
+a1
+88
+42
+ae
+92
+b0
+8b
+e0
+da
+5a
+dd
+70
+aa
+93
+04
+ce
+7a
+0d
+8a
+21
+a8
+5a
+f9
+3c
+c5
+7a
+c0
+f6
+f8
+ea
+11
+fb
+08
+de
+83
+f7
+b7
+21
+78
+5b
+52
+bb
+d9
+6b
+14
+8b
+cb
+99
+e3
+b4
+b4
+81
+5f
+88
+73
+2a
+bb
+5e
+ac
+ed
+eb
+87
+29
+58
+89
+df
+17
+df
+9f
+e6
+d4
+15
+dd
+f3
+b5
+3e
+6f
+1e
+4d
+d7
+f0
+7d
+06
+e8
+e9
+b3
+a6
+79
+9f
+b8
+1c
+d5
+f4
+a4
+eb
+52
+cf
+ca
+dc
+bd
+d6
+2f
+27
+07
+85
+17
+6a
+9a
+be
+d7
+79
+46
+22
+2e
+fc
+4e
+23
+83
+c5
+70
+6a
+22
+c5
+13
+cc
+b8
+30
+97
+ee
+e3
+91
+46
+9b
+72
+88
+dc
+d8
+2e
+f0
+5e
+40
+6e
+29
+b9
+db
+a7
+d2
+55
+b0
+15
+85
+27
+e6
+e0
+aa
+48
+25
+b0
+31
+1d
+b4
+89
+b7
+9e
+d6
+24
+f8
+27
+04
+fc
+65
+eb
+c5
+23
+56
+86
+fa
+eb
+d1
+3c
+67
+ab
+e2
+b1
+26
+28
+8d
+68
+87
+ec
+08
+d8
+fb
+93
+d0
+a3
+60
+98
+1a
+ef
+23
+9e
+77
+c9
+4f
+a2
+dd
+b0
+ee
+0b
+ae
+f5
+59
+53
+e1
+58
+c6
+dd
+e8
+10
+f7
+52
+1f
+dd
+26
+32
+29
+57
+3b
+15
+74
+a7
+45
+f7
+9e
+a9
+16
+37
+c7
+08
+ec
+58
+c4
+b9
+d0
+84
+10
+f3
+ca
+a0
+71
+ae
+63
+d7
+7b
+72
+12
+58
+89
+d2
+be
+97
+1a
+53
+fc
+4b
+36
+bc
+77
+c3
+83
+5f
+e7
+57
+16
+ef
+b4
+7d
+03
+29
+a8
+97
+dc
+0e
+98
+3c
+60
+dc
+41
+8a
+62
+e7
+00
+3c
+61
+1e
+42
+64
+f3
+7f
+94
+63
+81
+6a
+69
+a8
+72
+b2
+8c
+cb
+8e
+c0
+2e
+04
+fe
+eb
+67
+dd
+a2
+98
+6b
+35
+01
+a7
+0d
+c0
+8f
+30
+76
+ee
+16
+4e
+ed
+de
+f0
+4c
+14
+2b
+07
+ce
+a7
+0d
+0c
+31
+fd
+8b
+6f
+90
+30
+61
+1b
+3f
+33
+52
+b4
+73
+b9
+06
+3c
+e3
+d4
+99
+45
+16
+5c
+b6
+c5
+89
+46
+22
+50
+af
+4a
+0d
+d9
+08
+b8
+2c
+9b
+6e
+80
+db
+3a
+cd
+11
+03
+13
+4f
+70
+5b
+f0
+cd
+e4
+e8
+49
+2a
+ef
+35
+3a
+b1
+53
+47
+d5
+45
+10
+40
+e8
+73
+e2
+20
+98
+be
+23
+f9
+cf
+69
+52
+eb
+ad
+7a
+42
+72
+06
+52
+ca
+76
+42
+ff
+13
+7e
+6d
+12
+75
+5c
+99
+69
+19
+7a
+ba
+0e
+88
+f1
+ce
+78
+7e
+fc
+ca
+8d
+8d
+ef
+72
+bc
+02
+dd
+54
+e3
+d9
+56
+2b
+8f
+76
+17
+7c
+06
+7e
+80
+90
+c5
+d7
+99
+a8
+cb
+5d
+01
+a9
+c9
+0b
+99
+48
+09
+0d
+20
+04
+4d
+07
+e1
+6a
+cc
+c4
+0e
+76
+aa
+48
+df
+aa
+37
+98
+cd
+c1
+df
+dd
+c1
+30
+3a
+33
+4a
+79
+d9
+21
+c4
+d6
+ad
+2e
+99
+a5
+e4
+4f
+1d
+cf
+8e
+05
+59
+c8
+0e
+5c
+5f
+57
+3f
+53
+cd
+ce
+b0
+34
+2c
+c5
+fb
+b7
+84
+b7
+8c
+73
+9d
+51
+31
+59
+5c
+40
+92
+2b
+d0
+42
+44
+f5
+f2
+6c
+28
+c5
+8b
+6f
+94
+0e
+ff
+50
+fe
+4c
+67
+ae
+96
+d0
+0a
+bd
+55
+7d
+54
+7d
+5a
+c1
+f8
+ab
+e1
+e1
+06
+04
+b4
+da
+6d
+f9
+16
+78
+e0
+4b
+ba
+3d
+a2
+f4
+ac
+e8
+66
+47
+ed
+ef
+2d
+e3
+6c
+74
+a0
+04
+cc
+c4
+ce
+55
+99
+74
+53
+57
+55
+39
+96
+11
+f7
+83
+8f
+7f
+d2
+d5
+1f
+63
+dd
+bd
+2c
+0b
+82
+c0
+5d
+27
+c8
+33
+fc
+a6
+f8
+58
+45
+53
+1c
+08
+84
+34
+65
+81
+bf
+51
+82
+6b
+4b
+75
+2c
+5f
+ba
+46
+3b
+4c
+21
+12
+74
+a4
+ea
+bb
+6d
+94
+f2
+3a
+a6
+4b
+53
+4b
+c4
+e3
+e5
+58
+fe
+b2
+6c
+ec
+30
+59
+d4
+88
+61
+97
+b4
+15
+98
+04
+c3
+fd
+5f
+f5
+1f
+b7
+d7
+1a
+7a
+a6
+11
+8c
+6d
+c9
+34
+70
+92
+47
+55
+92
+af
+aa
+ac
+48
+a0
+50
+00
+54
+a3
+b3
+4a
+57
+84
+99
+27
+ff
+9a
+b6
+41
+ae
+43
+d5
+09
+0a
+39
+6b
+48
+43
+75
+d5
+49
+e3
+a3
+a7
+d6
+f6
+96
+24
+f6
+a6
+89
+bb
+c2
+68
+d9
+47
+45
+a3
+ea
+36
+87
+02
+7c
+a9
+24
+b8
+7c
+95
+7f
+44
+da
+42
+2f
+9e
+dd
+e0
+d3
+cc
+37
+70
+b1
+9d
+af
+1b
+21
+66
+a6
+42
+6f
+1d
+37
+b4
+4e
+33
+90
+da
+4b
+57
+eb
+57
+87
+94
+9b
+08
+ce
+8a
+08
+5c
+ea
+5d
+cb
+79
+b2
+48
+6b
+98
+68
+be
+dd
+d5
+a2
+ba
+81
+95
+5b
+7f
+2b
+91
+87
+dc
+f5
+16
+10
+9f
+f7
+ad
+fb
+d7
+da
+6c
+ae
+56
+3c
+5d
+45
+b6
+3e
+2b
+e7
+b6
+e4
+8c
+dd
+49
+0a
+a1
+c1
+69
+93
+a9
+e7
+d0
+31
+f7
+5d
+b2
+fc
+24
+d8
+a0
+6e
+72
+2d
+01
+72
+c8
+be
+c8
+66
+ee
+00
+a6
+03
+96
+45
+3d
+26
+a9
+c3
+1e
+bd
+54
+49
+fe
+71
+f2
+6f
+56
+47
+c7
+df
+51
+47
+e9
+79
+63
+30
+f7
+b1
+4d
+83
+44
+b0
+f6
+0c
+ef
+63
+a8
+43
+50
+23
+57
+9f
+a2
+4b
+b4
+75
+3f
+a3
+a7
+d6
+60
+c3
+da
+f3
+b5
+f0
+bd
+ab
+a0
+3c
+2b
+9e
+b7
+36
+14
+d5
+af
+f5
+01
+1f
+76
+c2
+fa
+9c
+ca
+50
+eb
+d5
+3f
+03
+0f
+c5
+9d
+fb
+90
+33
+f4
+45
+95
+5e
+e3
+4f
+ce
+80
+56
+4c
+e4
+f6
+93
+2c
+d2
+b3
+bb
+4c
+b8
+82
+72
+d4
+2b
+c0
+66
+66
+e5
+0f
+96
+7d
+9a
+40
+57
+6c
+c5
+30
+41
+bb
+5f
+39
+07
+00
+a1
+2d
+83
+1f
+35
+d0
+2b
+5d
+58
+7d
+61
+83
+74
+b0
+60
+26
+c2
+e8
+90
+11
+b4
+71
+c0
+92
+24
+84
+28
+df
+ea
+10
+36
+17
+b0
+39
+36
+54
+d6
+56
+ba
+dc
+f3
+1f
+b1
+80
+28
+b4
+fd
+75
+ba
+1f
+16
+c2
+a3
+ed
+4e
+ae
+b6
+b0
+9d
+83
+c7
+5e
+b9
+eb
+6f
+b2
+f2
+a7
+d5
+5f
+9d
+41
+51
+88
+e0
+0b
+fc
+2e
+a6
+a5
+97
+a8
+1d
+9e
+77
+b5
+c8
+01
+ef
+aa
+db
+48
+54
+6b
+b0
+d6
+4c
+36
+76
+cd
+c0
+67
+70
+96
+b7
+23
+3c
+31
+e9
+d3
+bb
+20
+0c
+36
+d1
+6f
+b0
+98
+73
+1e
+2c
+81
+2e
+29
+02
+b0
+c4
+6f
+b1
+b4
+12
+4f
+5c
+49
+6d
+03
+66
+95
+8d
+22
+42
+74
+4c
+91
+fd
+f9
+9f
+dd
+22
+63
+64
+66
+84
+8b
+59
+8a
+b1
+af
+b6
+29
+dd
+8d
+c5
+e2
+0f
+41
+16
+16
+8e
+9a
+43
+88
+d1
+16
+69
+18
+7c
+a0
+b9
+61
+63
+cf
+54
+00
+27
+a6
+cf
+22
+91
+22
+d0
+a8
+a8
+d3
+88
+b0
+ca
+b6
+26
+d9
+df
+89
+8b
+10
+45
+ea
+c3
+e4
+e2
+53
+00
+3a
+2c
+79
+73
+55
+5d
+b4
+dc
+e7
+91
+ab
+fb
+4e
+92
+98
+38
+5b
+be
+24
+c2
+45
+9c
+62
+dd
+84
+84
+37
+9b
+b6
+52
+57
+65
+a9
+14
+ad
+fc
+d2
+19
+92
+5a
+d5
+73
+67
+d8
+6a
+58
+5d
+6c
+4e
+fd
+a1
+ff
+f1
+1f
+3e
+4c
+7d
+7f
+fe
+1c
+ae
+a0
+0e
+f5
+b9
+02
+be
+7a
+74
+7a
+bf
+9c
+81
+c7
+f8
+1c
+33
+aa
+0f
+32
+cf
+a4
+10
+12
+c2
+ce
+67
+98
+22
+b5
+62
+47
+ea
+24
+1a
+6c
+22
+e7
+39
+41
+14
+2d
+bb
+d4
+24
+09
+05
+49
+f1
+c9
+68
+d0
+1b
+b2
+4e
+3e
+c9
+7d
+7d
+d6
+26
+60
+31
+6e
+06
+b8
+68
+71
+a8
+fe
+55
+af
+f2
+75
+5d
+db
+ff
+be
+d7
+e1
+4a
+90
+b7
+d0
+4c
+a1
+d8
+65
+ac
+17
+13
+2c
+25
+cb
+cb
+12
+31
+fc
+28
+3c
+15
+30
+74
+a8
+53
+74
+77
+6a
+96
+bb
+a4
+13
+12
+d8
+4d
+32
+48
+79
+50
+bf
+04
+a8
+66
+bb
+88
+d4
+08
+34
+26
+ae
+ae
+17
+ca
+0b
+2c
+c1
+88
+47
+2d
+17
+7f
+e3
+7a
+52
+30
+55
+64
+2f
+d5
+cd
+3d
+f6
+d6
+30
+01
+af
+7a
+83
+2f
+ac
+16
+7c
+7f
+f0
+a1
+5e
+9d
+21
+b5
+6e
+07
+be
+f3
+e3
+85
+30
+27
+5a
+65
+b9
+37
+71
+40
+f2
+fd
+a6
+53
+b8
+5d
+43
+8f
+8e
+ba
+c5
+31
+94
+80
+e0
+31
+2a
+b5
+47
+e2
+d2
+d8
+10
+cd
+36
+5d
+15
+ee
+0c
+28
+c8
+ac
+c3
+be
+1b
+6e
+5a
+23
+ea
+47
+43
+9a
+ee
+af
+81
+e3
+5f
+42
+28
+da
+20
+32
+72
+aa
+20
+1e
+ae
+91
+c1
+07
+dc
+a3
+9d
+32
+09
+a8
+4d
+5b
+f6
+ee
+c8
+d9
+48
+f8
+ea
+86
+91
+62
+e3
+79
+b5
+d0
+fe
+62
+2c
+ee
+67
+c0
+1b
+ee
+e9
+6a
+85
+2e
+68
+1b
+1b
+e9
+21
+61
+ef
+a1
+19
+b1
+fb
+68
+04
+ea
+fa
+1d
+29
+09
+e0
+43
+0a
+33
+af
+35
+82
+85
+11
+22
+73
+00
+94
+64
+4d
+3d
+5c
+c5
+7d
+ce
+a4
+eb
+e8
+6b
+bf
+c8
+d5
+0b
+1f
+8a
+1f
+17
+2f
+96
+2d
+66
+32
+2a
+58
+3f
+78
+8c
+cc
+9b
+eb
+19
+eb
+65
+62
+4e
+69
+72
+a4
+1e
+90
+3b
+e6
+3b
+64
+7c
+21
+46
+68
+60
+52
+a4
+22
+29
+7d
+a7
+88
+80
+18
+79
+0d
+19
+70
+18
+b6
+d4
+c9
+a8
+1c
+d4
+be
+45
+43
+d5
+b3
+49
+1e
+f3
+ab
+57
+60
+a6
+68
+1d
+32
+e9
+ee
+76
+a3
+5e
+bd
+95
+f2
+c6
+2c
+00
+72
+b6
+1b
+32
+eb
+b0
+49
+e8
+5a
+e5
+d5
+42
+2e
+3d
+bb
+d7
+01
+1e
+93
+1a
+a2
+50
+8a
+82
+ca
+74
+2f
+30
+1d
+e1
+00
+41
+ee
+be
+82
+7a
+d1
+73
+9a
+1d
+36
+88
+4a
+72
+a8
+dc
+8e
+2a
+ae
+24
+e9
+1d
+1c
+ab
+bd
+42
+a6
+6d
+b3
+cb
+78
+2c
+63
+84
+fb
+f4
+57
+09
+92
+8b
+aa
+f2
+1b
+ae
+f8
+47
+69
+0d
+f4
+09
+16
+6c
+c3
+e7
+ca
+03
+e5
+22
+6b
+67
+31
+88
+63
+50
+94
+9f
+64
+e6
+9d
+a7
+47
+51
+ef
+9a
+ad
+f5
+7a
+1e
+36
+9b
+2d
+8e
+9b
+ae
+d2
+72
+62
+0e
+81
+fd
+7c
+a2
+af
+48
+5e
+48
+75
+58
+68
+d3
+d7
+b5
+bd
+cb
+5a
+1b
+38
+d9
+e4
+52
+95
+96
+4d
+56
+a4
+7d
+02
+66
+2c
+72
+e5
+14
+a0
+6c
+e0
+f1
+80
+f5
+fb
+f8
+93
+cb
+5f
+e8
+7f
+2f
+34
+7c
+a6
+c6
+e8
+39
+75
+76
+e7
+d4
+9e
+28
+ef
+aa
+1d
+a8
+89
+fc
+59
+c9
+da
+03
+22
+da
+51
+e5
+97
+cf
+e0
+aa
+21
+81
+95
+f5
+41
+2f
+cf
+35
+57
+41
+ad
+24
+62
+b8
+1e
+2a
+28
+59
+33
+5e
+9c
+bc
+da
+3d
+d6
+54
+10
+0c
+fa
+6f
+47
+f8
+57
+42
+1e
+0a
+ff
+17
+2f
+b0
+a2
+a7
+76
+08
+8f
+92
+6e
+f8
+ac
+91
+3d
+87
+c0
+b2
+78
+46
+36
+d4
+70
+70
+b3
+aa
+d2
+19
+cc
+e6
+15
+22
+e8
+cf
+b9
+e2
+80
+3a
+a1
+6f
+07
+af
+4c
+03
+6e
+3b
+64
+5e
+d3
+a4
+ec
+03
+a2
+14
+97
+8e
+67
+a8
+74
+69
+16
+1a
+9c
+be
+83
+56
+b3
+ad
+f4
+c2
+16
+ed
+47
+d7
+b5
+20
+fb
+40
+ca
+67
+fb
+16
+11
+fe
+c7
+42
+e2
+f2
+af
+62
+59
+fc
+26
+88
+4a
+9c
+32
+7e
+41
+b5
+ec
+51
+36
+39
+23
+3f
+a1
+2d
+63
+b6
+9c
+b5
+b8
+41
+25
+e1
+fa
+29
+eb
+d5
+e8
+a3
+f8
+03
+91
+c8
+79
+45
+25
+51
+80
+9a
+8e
+9a
+23
+6f
+2f
+1b
+47
+b3
+48
+ec
+d7
+33
+8d
+c1
+9c
+88
+c4
+d3
+68
+a6
+c5
+97
+3a
+2e
+a4
+c0
+ab
+77
+24
+93
+3e
+ca
+76
+5b
+56
+cc
+3e
+53
+31
+05
+f6
+1c
+e0
+74
+a6
+a1
+c8
+a4
+76
+c6
+10
+03
+0f
+7c
+ce
+d0
+9d
+e3
+88
+9e
+59
+e5
+3d
+d2
+b6
+e0
+ee
+01
+c9
+0f
+3a
+94
+80
+c1
+2b
+15
+28
+6e
+22
+76
+f2
+af
+62
+e1
+51
+99
+41
+02
+cf
+d1
+3c
+7d
+a3
+3a
+72
+35
+b8
+4c
+7b
+4c
+32
+7b
+bc
+b9
+55
+9a
+3b
+a7
+bf
+ae
+93
+74
+0b
+af
+c0
+30
+81
+c8
+a0
+87
+4a
+b5
+b8
+08
+4a
+ae
+1d
+22
+e1
+6a
+99
+bf
+0e
+54
+92
+11
+76
+2a
+d9
+29
+4d
+d1
+f0
+ad
+80
+31
+71
+1a
+8b
+0a
+bb
+b7
+24
+80
+be
+2e
+7f
+5d
+9a
+2b
+3a
+26
+cc
+e0
+aa
+1f
+eb
+9c
+aa
+f9
+64
+7e
+a9
+fe
+0b
+77
+8b
+56
+57
+87
+65
+4e
+a2
+ac
+a1
+07
+f9
+95
+5b
+5f
+22
+5d
+db
+7f
+08
+cd
+69
+cf
+cb
+c7
+ad
+fc
+6b
+5b
+d4
+a1
+de
+ca
+03
+df
+bf
+48
+cb
+f6
+60
+ad
+e5
+cd
+56
+08
+a1
+b1
+aa
+83
+b7
+05
+0b
+f0
+75
+69
+e0
+d9
+ba
+20
+fe
+25
+d6
+df
+87
+d5
+5d
+95
+f2
+15
+2e
+38
+8a
+d9
+49
+6e
+43
+b7
+c2
+a4
+e3
+3f
+5c
+3c
+78
+81
+e8
+e0
+48
+cf
+d3
+fe
+53
+66
+bf
+85
+0b
+35
+41
+df
+58
+e4
+82
+96
+7c
+9a
+b5
+29
+a7
+1f
+f5
+79
+b6
+46
+e7
+49
+1f
+55
+42
+a3
+61
+52
+96
+1d
+4c
+ec
+95
+cd
+d3
+78
+01
+b9
+f4
+55
+01
+7d
+e5
+7f
+7c
+74
+3b
+c5
+5f
+8e
+c6
+fa
+0d
+3a
+fe
+d4
+69
+1e
+bd
+c9
+19
+9f
+22
+ad
+03
+d4
+9d
+51
+ec
+03
+42
+93
+d2
+0c
+76
+73
+31
+73
+db
+22
+12
+0c
+be
+db
+38
+a9
+e5
+ea
+38
+0f
+99
+8c
+a2
+81
+b3
+36
+0c
+16
+8b
+ac
+03
+db
+d1
+8b
+6c
+61
+09
+a8
+b0
+4a
+40
+c0
+63
+a2
+35
+19
+c0
+c1
+7a
+ff
+6b
+57
+c2
+e2
+b1
+c7
+75
+66
+4a
+c6
+01
+45
+05
+15
+6e
+ad
+06
+c9
+d9
+37
+01
+fd
+b3
+80
+ca
+b8
+7a
+8a
+d6
+d2
+1d
+68
+db
+54
+1d
+a5
+c6
+d7
+99
+9c
+5f
+2c
+48
+54
+a8
+c9
+49
+32
+df
+fb
+71
+f5
+17
+b1
+87
+de
+cc
+2d
+95
+4c
+90
+e1
+41
+3a
+7a
+e5
+a2
+ec
+2b
+21
+8c
+28
+e4
+92
+f5
+54
+a4
+ad
+fe
+ed
+40
+5c
+d3
+70
+18
+8a
+83
+ce
+45
+8c
+2c
+8d
+13
+75
+61
+00
+87
+d4
+40
+d2
+8b
+1f
+f4
+69
+db
+61
+7e
+c5
+f6
+f8
+38
+52
+25
+da
+66
+4d
+2b
+97
+78
+2b
+bc
+34
+88
+b1
+1e
+b5
+53
+9b
+e4
+78
+37
+51
+c7
+a1
+b9
+47
+0b
+bb
+92
+60
+d4
+c7
+cf
+bd
+00
+4d
+f5
+c9
+30
+7f
+ba
+9c
+c3
+d4
+71
+b5
+14
+61
+c6
+cc
+e7
+36
+83
+60
+d4
+a0
+3d
+0b
+9e
+22
+7a
+4a
+d1
+9f
+6a
+4b
+07
+40
+cb
+ac
+4f
+c1
+55
+31
+da
+32
+40
+a1
+6d
+55
+ab
+69
+4e
+ab
+b5
+18
+f4
+28
+87
+da
+81
+9b
+4a
+1c
+bd
+98
+24
+31
+ef
+b2
+0f
+42
+1a
+db
+04
+a0
+c2
+55
+79
+ad
+cd
+93
+fe
+93
+df
+f3
+51
+6d
+f5
+3c
+81
+cf
+d0
+1d
+ce
+ad
+79
+7b
+f2
+23
+d1
+d3
+88
+39
+f3
+69
+58
+0d
+f2
+bd
+59
+00
+cb
+c0
+9e
+73
+49
+3c
+3a
+df
+ae
+9a
+b5
+ce
+0d
+1a
+68
+f6
+02
+02
+6c
+9f
+42
+c5
+d3
+f7
+ec
+0e
+6a
+45
+fb
+75
+70
+42
+66
+57
+59
+42
+df
+16
+8e
+84
+da
+24
+30
+e2
+a4
+cb
+af
+3e
+5e
+05
+29
+5f
+21
+45
+bb
+38
+84
+28
+79
+78
+39
+b1
+a2
+e2
+8b
+02
+8d
+a4
+2a
+e4
+14
+52
+8b
+88
+89
+f6
+ce
+6a
+a9
+8c
+27
+80
+b6
+9d
+ed
+32
+8a
+ab
+04
+03
+1b
+22
+98
+18
+ce
+1b
+6d
+f6
+7d
+ce
+33
+6e
+92
+dd
+86
+2c
+8f
+a2
+6b
+90
+e7
+89
+11
+53
+34
+8e
+77
+bb
+1f
+20
+d0
+c7
+f4
+37
+d0
+a7
+5a
+6b
+88
+dd
+86
+c5
+29
+b9
+c3
+1c
+f6
+6f
+1a
+4e
+4f
+6a
+4e
+2b
+7d
+5e
+cf
+e2
+11
+05
+aa
+2d
+82
+b9
+37
+e0
+83
+9c
+64
+8a
+67
+91
+fa
+c4
+5c
+6e
+77
+31
+17
+a8
+09
+09
+7c
+98
+73
+8f
+4b
+84
+ee
+22
+35
+28
+29
+86
+c8
+31
+d6
+a9
+05
+dc
+16
+43
+7c
+c4
+47
+fb
+1d
+07
+f3
+e3
+48
+ad
+c2
+28
+98
+5e
+b9
+90
+35
+e5
+10
+3e
+92
+13
+06
+78
+77
+21
+08
+ba
+8f
+ce
+9f
+1e
+53
+e9
+69
+8e
+86
+b9
+cb
+16
+bd
+0c
+98
+86
+5e
+d5
+43
+33
+42
+c8
+90
+c6
+46
+25
+20
+07
+d1
+28
+4c
+6b
+70
+75
+9c
+9b
+e7
+bc
+2b
+c9
+47
+ba
+04
+6b
+59
+1d
+8f
+6c
+c9
+f2
+de
+4d
+00
+db
+7a
+2a
+23
+fc
+af
+c2
+9a
+ba
+79
+f5
+7e
+c8
+c3
+07
+d6
+95
+74
+5c
+51
+e1
+3b
+03
+ba
+90
+55
+f2
+71
+02
+02
+ec
+ac
+e2
+62
+2f
+c9
+5b
+a2
+80
+31
+8d
+6c
+1a
+5e
+67
+86
+75
+cb
+3d
+20
+33
+d1
+85
+6a
+a6
+35
+d9
+a7
+b1
+7a
+ab
+78
+73
+1c
+01
+5e
+2c
+52
+29
+e7
+ec
+32
+08
+d1
+10
+9c
+96
+9a
+58
+70
+91
+d6
+ea
+94
+d1
+ba
+8b
+d0
+94
+84
+ed
+73
+5e
+9a
+4a
+47
+62
+a1
+d5
+81
+1c
+5d
+b3
+2a
+9c
+b8
+76
+6f
+c5
+d1
+a8
+24
+87
+74
+80
+9e
+f0
+7b
+de
+99
+4c
+86
+86
+2f
+8b
+87
+f0
+3c
+e6
+c3
+19
+1e
+92
+d8
+26
+9c
+b1
+ab
+5a
+4f
+39
+91
+42
+23
+f9
+29
+e1
+cc
+25
+83
+87
+8c
+70
+ce
+17
+18
+63
+af
+5f
+74
+38
+2d
+3f
+c2
+1b
+51
+84
+b9
+ca
+37
+ec
+18
+05
+9b
+ba
+f6
+e8
+19
+10
+dc
+6b
+62
+3c
+6b
+c9
+a3
+fb
+84
+c6
+f4
+87
+3a
+98
+f4
+cc
+23
+2c
+2b
+d9
+04
+16
+3a
+12
+f0
+53
+de
+84
+68
+e3
+2c
+3c
+2d
+99
+7a
+df
+86
+d4
+8f
+89
+a9
+30
+e1
+bb
+58
+ba
+68
+98
+c3
+6a
+45
+ed
+54
+91
+38
+b2
+ec
+51
+f5
+71
+41
+12
+02
+b8
+7f
+b9
+37
+82
+ca
+30
+d3
+f3
+64
+a0
+d1
+29
+08
+55
+66
+94
+b5
+ba
+a3
+74
+7b
+7b
+fa
+16
+1e
+17
+fd
+7f
+36
+31
+22
+c7
+87
+81
+33
+47
+b1
+b5
+32
+1e
+85
+39
+fe
+b3
+04
+ef
+ca
+f1
+42
+b2
+69
+06
+96
+02
+c8
+56
+9f
+69
+42
+b3
+8b
+a7
+26
+2e
+88
+75
+d1
+1c
+85
+5c
+39
+1e
+dd
+45
+97
+90
+73
+22
+14
+6d
+5d
+73
+02
+4b
+7a
+06
+83
+a8
+fa
+b9
+e3
+a7
+08
+db
+4b
+3b
+ae
+75
+bc
+f1
+f0
+13
+12
+c7
+6f
+f6
+fb
+62
+c4
+6f
+dd
+71
+3c
+81
+d8
+40
+e1
+5b
+f5
+8c
+74
+79
+85
+6e
+e9
+80
+fb
+63
+86
+d8
+90
+da
+e4
+2a
+23
+7e
+1f
+55
+ab
+96
+19
+a2
+f9
+38
+b6
+1b
+72
+5d
+f6
+63
+b8
+67
+cd
+9c
+b0
+0f
+77
+2b
+75
+9b
+b9
+1e
+fb
+61
+0a
+bd
+60
+77
+91
+e0
+77
+29
+08
+8a
+ef
+66
+1a
+62
+a9
+5c
+98
+dc
+e1
+a0
+f6
+5f
+6f
+a2
+47
+d2
+91
+05
+bc
+66
+d7
+b6
+97
+8f
+56
+56
+5f
+d1
+60
+01
+d9
+a3
+93
+2d
+30
+39
+0d
+c9
+e8
+23
+3d
+76
+8a
+68
+32
+11
+80
+b9
+0e
+8b
+b1
+67
+76
+58
+a3
+10
+d7
+1d
+1d
+e2
+ab
+af
+fb
+f3
+7d
+2a
+4a
+a2
+73
+03
+da
+69
+73
+a1
+fa
+bc
+ea
+ea
+80
+46
+30
+86
+ff
+78
+87
+df
+65
+f4
+5b
+1d
+cc
+7a
+85
+40
+e7
+de
+9c
+20
+83
+18
+7d
+41
+32
+ba
+87
+2d
+e6
+b9
+a8
+bb
+54
+53
+89
+a3
+ca
+f9
+8f
+4b
+96
+07
+14
+a0
+6c
+8b
+c9
+55
+ba
+7e
+5b
+81
+4b
+75
+77
+04
+33
+4f
+24
+be
+42
+39
+07
+89
+67
+e6
+ab
+88
+ab
+fd
+8b
+75
+e4
+87
+a4
+01
+1d
+7f
+07
+7b
+b2
+6e
+96
+ab
+5b
+31
+ac
+4b
+09
+11
+a6
+57
+0f
+61
+a9
+01
+fb
+b3
+ad
+56
+4a
+dc
+a1
+e9
+fa
+72
+72
+ea
+35
+c4
+ca
+94
+b7
+df
+70
+db
+95
+16
+91
+28
+b9
+cd
+55
+59
+4d
+78
+dd
+38
+e4
+82
+db
+d3
+0b
+72
+2e
+77
+6e
+91
+7b
+f5
+ab
+e8
+fc
+a9
+73
+b6
+60
+00
+3b
+06
+d5
+2f
+6f
+e2
+18
+9b
+a0
+2d
+cc
+e3
+ac
+6c
+aa
+38
+f0
+df
+29
+37
+8d
+c1
+1f
+ae
+e1
+25
+40
+be
+45
+55
+18
+2e
+7f
+40
+92
+7e
+20
+3e
+cb
+f9
+bf
+dc
+79
+88
+0c
+b1
+57
+69
+45
+64
+59
+51
+81
+e5
+fd
+57
+f3
+3a
+cd
+36
+c2
+c4
+42
+76
+ed
+c2
+b4
+b0
+01
+3d
+bb
+5c
+f0
+c5
+2e
+f6
+80
+fd
+b3
+f8
+fb
+76
+51
+6f
+9a
+ee
+77
+8d
+2f
+46
+a3
+b5
+54
+75
+81
+b3
+17
+99
+28
+12
+19
+96
+d1
+d5
+8f
+a3
+9b
+fa
+8e
+a5
+da
+ca
+f4
+18
+6f
+fd
+78
+ef
+a9
+09
+dc
+ac
+87
+69
+6f
+d1
+20
+00
+3b
+1f
+c0
+4a
+ec
+45
+98
+6f
+4c
+7e
+be
+ca
+44
+4d
+0b
+9d
+e2
+5a
+f9
+16
+7c
+f1
+5a
+9c
+3f
+89
+c3
+1d
+90
+51
+d9
+8f
+d8
+26
+05
+0b
+10
+30
+19
+43
+82
+ae
+86
+6b
+b7
+48
+07
+9f
+cf
+e4
+0b
+d6
+a5
+6d
+44
+15
+4f
+7f
+44
+00
+ef
+d0
+16
+73
+f7
+5c
+4b
+1b
+0f
+e7
+29
+7f
+ff
+a4
+02
+94
+ec
+2e
+27
+d0
+f5
+60
+b9
+92
+5f
+63
+ee
+60
+85
+29
+40
+cf
+b0
+14
+40
+10
+28
+85
+66
+5d
+53
+22
+9e
+ab
+a3
+58
+1c
+05
+d0
+a6
+f7
+cf
+2b
+3f
+3b
+96
+be
+b5
+42
+c7
+85
+7e
+00
+34
+50
+fa
+90
+97
+29
+5d
+1f
+33
+31
+4b
+b0
+d5
+ea
+bc
+6e
+cc
+84
+be
+a0
+4d
+35
+46
+07
+04
+11
+22
+77
+cb
+73
+95
+de
+10
+6b
+88
+a9
+1f
+a8
+2a
+58
+45
+cd
+5e
+44
+c2
+78
+10
+2f
+6b
+30
+d4
+c0
+7c
+0e
+6c
+c4
+5a
+f9
+c7
+7e
+c7
+a2
+f0
+f3
+6b
+82
+c5
+c6
+eb
+9c
+e6
+8a
+54
+6f
+e9
+46
+28
+9a
+54
+40
+e9
+59
+5a
+6c
+4c
+89
+ae
+b1
+71
+be
+54
+3b
+57
+96
+c2
+45
+c5
+29
+41
+ad
+23
+c8
+00
+0b
+59
+ea
+5b
+77
+d6
+98
+17
+bc
+46
+75
+ac
+3a
+6e
+68
+f5
+49
+34
+0d
+27
+49
+43
+8a
+22
+06
+29
+cf
+ff
+1a
+cc
+ed
+49
+37
+5d
+7d
+a5
+12
+5f
+b9
+84
+7b
+5e
+25
+29
+d6
+09
+a9
+1e
+f7
+91
+a4
+48
+75
+f6
+c9
+6b
+7a
+f7
+96
+c1
+95
+6e
+bc
+5b
+94
+4f
+00
+b1
+25
+2c
+b5
+f5
+ed
+2b
+2a
+6b
+0c
+78
+34
+9b
+ad
+32
+38
+15
+1d
+b9
+cd
+cc
+e6
+4f
+b7
+24
+c7
+e8
+9d
+58
+d2
+51
+ff
+1a
+b7
+08
+c8
+a3
+0a
+73
+f3
+43
+02
+42
+23
+25
+b1
+b5
+25
+5c
+fe
+84
+8c
+e5
+8b
+63
+f7
+33
+24
+f6
+bb
+b7
+bd
+fb
+74
+2c
+96
+55
+40
+8e
+96
+c8
+4c
+2b
+ad
+f6
+c2
+45
+e5
+41
+df
+d1
+5e
+bb
+f6
+b3
+80
+a8
+21
+03
+18
+33
+5a
+df
+27
+8c
+24
+38
+aa
+87
+26
+c8
+27
+45
+9f
+06
+0f
+b7
+8d
+bf
+b0
+9e
+4d
+46
+b7
+0e
+31
+30
+04
+b4
+ea
+34
+8e
+62
+0d
+53
+6e
+56
+bb
+c8
+7b
+4c
+fb
+88
+9c
+3d
+86
+01
+8d
+ce
+13
+f1
+40
+a6
+38
+b8
+6c
+5c
+55
+14
+b9
+41
+be
+4f
+45
+03
+3a
+a8
+e4
+24
+92
+49
+a4
+aa
+e2
+f9
+fd
+28
+ee
+f7
+e4
+f7
+02
+6f
+43
+2f
+aa
+55
+1d
+28
+c0
+56
+6b
+4b
+cf
+45
+18
+ad
+7c
+ed
+fc
+c4
+af
+3e
+44
+1b
+93
+2f
+5f
+ac
+96
+e3
+61
+91
+46
+bd
+74
+73
+95
+91
+4d
+69
+1e
+1e
+6f
+b3
+cd
+e9
+0d
+03
+9a
+80
+63
+38
+fb
+10
+03
+fa
+14
+1c
+f6
+20
+7c
+49
+9d
+fd
+31
+57
+d4
+0c
+a6
+5a
+b6
+47
+63
+02
+f7
+ce
+7e
+0b
+e9
+7e
+af
+65
+77
+28
+8b
+8b
+a7
+5b
+37
+9b
+04
+d6
+80
+20
+85
+5b
+ac
+fe
+63
+11
+5d
+fc
+94
+96
+e3
+9a
+fb
+f4
+a4
+7a
+ec
+f2
+0a
+2d
+88
+d7
+27
+74
+74
+5e
+ae
+21
+7c
+6f
+58
+6c
+e4
+cf
+88
+65
+ae
+48
+74
+a4
+9b
+d1
+8d
+42
+36
+19
+32
+86
+6f
+4f
+16
+27
+94
+45
+6e
+79
+19
+ea
+22
+54
+74
+79
+a9
+f4
+a6
+72
+f3
+7a
+12
+3b
+07
+2d
+9c
+e5
+52
+08
+78
+67
+7a
+34
+ee
+f3
+ad
+9f
+d8
+77
+03
+08
+01
+16
+51
+21
+15
+55
+48
+15
+6e
+11
+95
+1d
+f0
+62
+b4
+54
+77
+aa
+df
+54
+29
+1d
+18
+a9
+25
+67
+ba
+82
+18
+63
+26
+7f
+3e
+d9
+04
+9b
+50
+d1
+21
+3e
+2a
+12
+2a
+18
+3d
+4e
+7d
+b9
+07
+98
+3b
+20
+d3
+cc
+5a
+ea
+74
+21
+4b
+5a
+36
+e5
+10
+19
+91
+ef
+78
+0a
+57
+d6
+eb
+c9
+f0
+ee
+7e
+f6
+65
+ca
+e0
+e7
+88
+bc
+09
+5a
+a6
+d3
+2d
+74
+de
+35
+97
+f6
+5b
+4c
+19
+4d
+8a
+27
+05
+6e
+a6
+e8
+03
+a9
+88
+ce
+48
+b9
+16
+58
+16
+84
+d6
+b3
+d9
+7f
+ec
+1d
+43
+bb
+18
+83
+70
+9e
+88
+74
+9a
+3a
+bc
+22
+48
+d2
+ca
+71
+cc
+69
+8e
+3d
+bc
+6a
+1b
+75
+ef
+d9
+12
+1e
+3f
+13
+6d
+4d
+72
+7e
+de
+24
+7f
+2f
+fe
+7a
+70
+e4
+78
+86
+9a
+e3
+71
+01
+d8
+56
+48
+27
+06
+2e
+72
+45
+03
+a3
+f3
+c8
+3c
+47
+3f
+05
+11
+9e
+8a
+69
+a6
+91
+70
+7d
+e7
+9f
+ff
+a3
+36
+37
+f6
+4c
+47
+35
+7d
+66
+10
+c7
+b0
+dc
+f1
+e9
+dc
+75
+e7
+3c
+1e
+ba
+fd
+16
+86
+4d
+73
+f3
+06
+1c
+40
+1e
+e4
+c9
+3d
+61
+05
+8d
+36
+32
+56
+82
+c0
+10
+4d
+90
+94
+f5
+0c
+f3
+7c
+d8
+eb
+3e
+26
+cb
+61
+fb
+ff
+07
+8c
+e2
+3f
+3d
+83
+d8
+bf
+a9
+8c
+12
+b2
+e1
+63
+42
+17
+af
+ff
+3d
+28
+ed
+f7
+8f
+f2
+7d
+b3
+88
+1a
+0f
+0b
+ab
+dd
+df
+bd
+2b
+c1
+89
+ed
+e6
+d6
+ac
+2d
+0a
+da
+e5
+8f
+d1
+08
+70
+88
+d8
+38
+d7
+c7
+cd
+b0
+88
+ed
+f5
+9b
+48
+c6
+b8
+22
+7d
+2f
+80
+41
+2d
+ef
+7e
+dc
+68
+92
+d4
+f9
+93
+f2
+18
+e4
+91
+0f
+1b
+c4
+aa
+a9
+99
+69
+d0
+86
+61
+b3
+4e
+9a
+6f
+cc
+10
+ff
+65
+e1
+21
+9c
+7d
+a2
+e2
+7d
+95
+bd
+c5
+96
+d8
+67
+cd
+4e
+fa
+29
+80
+f7
+04
+dc
+1e
+07
+b0
+34
+15
+f9
+bd
+d8
+ec
+eb
+af
+5e
+f2
+d5
+67
+d0
+8d
+c0
+65
+6b
+a7
+c3
+44
+54
+a0
+5f
+90
+85
+54
+76
+9d
+c2
+f5
+3b
+b3
+90
+2b
+46
+cd
+fd
+90
+e7
+56
+d6
+26
+9d
+87
+7b
+45
+33
+c0
+16
+6a
+a9
+6d
+4b
+54
+b9
+82
+d9
+94
+fe
+54
+6f
+da
+6f
+14
+65
+78
+1c
+8f
+64
+e7
+80
+1f
+d7
+ae
+11
+9a
+0b
+bb
+20
+25
+9a
+6f
+de
+53
+ea
+19
+88
+31
+34
+9a
+6d
+e3
+9c
+e7
+b0
+e8
+14
+1f
+de
+53
+7a
+09
+d6
+6c
+54
+1f
+41
+d9
+e5
+3f
+7e
+08
+12
+46
+df
+5d
+57
+4f
+dd
+f1
+01
+dd
+99
+bf
+34
+7d
+ef
+59
+94
+32
+71
+50
+c8
+11
+53
+41
+db
+af
+f1
+ec
+69
+8a
+05
+39
+7c
+7e
+cc
+0c
+d6
+90
+4d
+36
+e6
+50
+c6
+a8
+c5
+52
+6c
+80
+cc
+e1
+fe
+a8
+24
+cc
+ed
+4f
+97
+73
+d6
+e1
+69
+13
+36
+92
+13
+85
+f6
+07
+28
+47
+37
+c4
+a8
+bc
+76
+72
+09
+3d
+d3
+8d
+1a
+17
+17
+27
+ac
+67
+af
+01
+03
+da
+64
+81
+32
+12
+bb
+5b
+86
+16
+e8
+fd
+10
+f5
+80
+9b
+12
+5e
+8a
+f5
+ff
+b3
+61
+46
+72
+89
+7e
+eb
+02
+56
+ef
+25
+7e
+60
+ee
+89
+9b
+db
+bd
+f1
+14
+5f
+97
+45
+48
+8a
+e5
+63
+ef
+97
+5e
+49
+05
+6a
+02
+7f
+64
+53
+24
+63
+95
+f5
+cb
+3a
+d3
+8a
+12
+80
+0a
+b6
+38
+5d
+f6
+fe
+8c
+fb
+28
+8a
+7a
+b7
+1a
+95
+06
+90
+4a
+1f
+27
+21
+83
+0d
+e3
+30
+05
+08
+43
+a5
+e3
+ad
+dc
+18
+e4
+d1
+99
+ca
+ae
+f3
+2a
+38
+ae
+6a
+57
+ea
+fe
+da
+c0
+63
+42
+b7
+ad
+04
+a8
+85
+2b
+d8
+d6
+93
+51
+d1
+79
+d9
+28
+71
+89
+83
+60
+6c
+ff
+41
+d0
+19
+7c
+09
+c4
+b7
+53
+51
+18
+5f
+2f
+3d
+ed
+6f
+9a
+48
+7d
+e0
+fd
+04
+01
+32
+c7
+70
+22
+29
+a9
+23
+93
+56
+42
+30
+cc
+ae
+fc
+af
+19
+c6
+65
+4a
+40
+a1
+ef
+a5
+0c
+f3
+17
+8b
+3b
+bc
+2d
+b1
+37
+7d
+7a
+e9
+44
+ff
+b0
+55
+fc
+3e
+1d
+35
+54
+42
+8b
+bb
+5f
+a5
+60
+4a
+50
+8c
+f0
+53
+78
+e9
+f3
+54
+b4
+89
+f8
+4f
+d9
+24
+e9
+a5
+d4
+d1
+83
+71
+b4
+65
+fb
+21
+e8
+c3
+3c
+0f
+32
+32
+02
+ac
+60
+2d
+d0
+6e
+f1
+a3
+81
+37
+55
+db
+db
+4b
+0a
+9c
+82
+ea
+f7
+a8
+26
+ca
+50
+ed
+9d
+00
+99
+a7
+4a
+10
+b9
+9f
+86
+15
+04
+bc
+3d
+67
+95
+ee
+7a
+51
+bd
+1d
+ac
+fd
+02
+0e
+3d
+50
+ea
+ce
+6c
+7a
+a9
+59
+eb
+70
+aa
+69
+e2
+da
+21
+8b
+ca
+ac
+0b
+49
+27
+68
+9c
+58
+f3
+2a
+10
+4d
+dd
+60
+76
+13
+94
+9c
+8c
+42
+97
+17
+74
+aa
+a6
+ef
+a2
+b4
+47
+a7
+20
+41
+99
+85
+bf
+ea
+6b
+bf
+33
+ba
+11
+5e
+a0
+d8
+d3
+74
+12
+18
+a5
+7c
+09
+bd
+5b
+d9
+03
+bc
+d7
+4b
+19
+de
+e4
+7b
+70
+e6
+9b
+c3
+8d
+1e
+ba
+2a
+cc
+77
+31
+5e
+83
+5c
+23
+0d
+cd
+04
+e9
+16
+b8
+65
+c9
+5e
+e1
+85
+89
+04
+fd
+6e
+dd
+bc
+22
+bc
+96
+0e
+b5
+84
+ec
+9f
+fe
+8d
+5d
+02
+46
+b0
+eb
+c5
+b4
+c6
+b9
+61
+8b
+36
+ca
+23
+82
+36
+c3
+72
+34
+1b
+29
+69
+9e
+37
+ca
+53
+7f
+b5
+86
+94
+a9
+e7
+6d
+47
+20
+d6
+34
+75
+15
+c9
+70
+37
+3d
+62
+65
+a6
+2d
+7b
+52
+36
+e3
+c5
+b4
+e3
+fb
+9b
+05
+82
+b0
+08
+83
+a9
+77
+fc
+54
+54
+5d
+fa
+f0
+b2
+4a
+30
+a1
+f9
+e2
+12
+59
+65
+57
+f7
+48
+65
+f5
+a3
+16
+3e
+15
+23
+2c
+bf
+50
+25
+e2
+3f
+18
+d9
+2b
+18
+6b
+d3
+8b
+8f
+21
+f7
+b4
+53
+82
+a8
+70
+41
+db
+a4
+81
+44
+6d
+8f
+01
+c3
+7b
+8a
+7b
+72
+fc
+9c
+da
+f7
+2b
+e7
+ea
+6f
+fb
+ef
+de
+db
+f1
+8e
+1f
+29
+2f
+65
+6f
+2b
+d2
+19
+87
+d1
+af
+5f
+70
+38
+b3
+6f
+e8
+05
+a8
+20
+41
+c3
+40
+f5
+db
+62
+5b
+d9
+d6
+34
+3b
+d5
+0d
+8b
+b4
+52
+62
+a6
+b8
+e8
+f4
+f3
+41
+52
+b9
+d0
+14
+cb
+e5
+e1
+ce
+d7
+85
+ba
+7f
+e8
+38
+ee
+0b
+72
+5a
+02
+64
+58
+97
+f1
+1b
+10
+d6
+7b
+bd
+2b
+28
+d7
+05
+3f
+ad
+df
+9b
+70
+4e
+6f
+ea
+8d
+ad
+37
+2e
+5f
+c4
+11
+86
+ae
+58
+56
+32
+ce
+bb
+6d
+b2
+4d
+49
+16
+ee
+7f
+b9
+04
+cc
+c4
+b1
+1d
+2f
+ff
+1f
+2d
+8a
+10
+6e
+58
+c4
+37
+e7
+77
+3b
+bf
+39
+8b
+c0
+42
+74
+2f
+80
+4c
+d1
+46
+a3
+78
+b0
+bb
+c6
+eb
+24
+ad
+6e
+6e
+2a
+99
+59
+02
+06
+e0
+3a
+3f
+3d
+55
+bb
+c8
+fb
+e2
+e9
+5f
+1d
+47
+f3
+64
+45
+f3
+07
+30
+6c
+61
+3c
+30
+fa
+69
+fd
+e9
+c7
+b6
+e3
+1d
+26
+6c
+8c
+22
+3c
+94
+0d
+26
+b1
+59
+90
+37
+a1
+5d
+7e
+52
+2c
+22
+6b
+4f
+96
+5f
+ae
+eb
+e0
+37
+25
+57
+81
+24
+e0
+31
+97
+f0
+cd
+bc
+c6
+e3
+aa
+24
+6c
+69
+70
+9d
+ce
+85
+66
+b1
+e4
+52
+fa
+58
+c6
+1a
+26
+fc
+90
+c8
+93
+b0
+19
+aa
+55
+40
+00
+00
+40
+05
+00
+33
+07
+20
+01
+00
+00
+f4
+58
+a5
+fe
+00
+00
+c2
+00
+11
+00
+00
+04
+00
+00
+02
+00
+20
+00
+60
+3c
+00
+00
+40
+04
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+80
+00
+00
+21
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+08
+00
+13
+47
+04
+09
+72
+00
+08
+00
+00
+0c
+aa
+55
+01
+00
+cb
+43
+0f
+aa
+55
+01
+00
+ba
+4a
+01
+aa
+55
+01
+00
+bd
+4b
+ff
+aa
+55
+01
+00
+ec
+44
+ff
+aa
+55
+01
+00
+eb
+44
+1e
+aa
+55
+03
+00
+ee
+44
+01
+0b
+4a
+aa
+55
+01
+00
+0d
+4a
+ff
+aa
+55
+01
+00
+41
+41
+01
+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
+06
+00
+f1
+44
+33
+11
+3b
+55
+51
+a1
+aa
+55
+01
+00
+89
+45
+02
+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
+02
+00
+8b
+45
+c0
+12
+aa
+55
+01
+00
+3e
+46
+94
+aa
+55
+03
+00
+af
+45
+00
+48
+60
+aa
+55
+02
+00
+1d
+46
+0a
+00
+aa
+55
+02
+00
+1b
+46
+50
+00
+aa
+55
+02
+00
+23
+47
+32
+00
+aa
+55
+01
+00
+f4
+46
+02
+aa
+55
+08
+00
+c0
+43
+fb
+00
+48
+08
+fb
+00
+48
+08
+aa
+55
+01
+00
+94
+40
+01
+aa
+55
+01
+00
+c0
+40
+10
+aa
+55
+01
+00
+6b
+49
+10
+aa
+55
+06
+00
+db
+42
+73
+83
+92
+a1
+b1
+c1
+aa
+55
+01
+00
+93
+43
+07
+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
+28
+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
+c1
+03
+aa
+55
+10
+00
+a0
+47
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+11
+00
+68
+43
+1f
+0f
+09
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+0f
+00
+6b
+42
+0e
+42
+54
+35
+2e
+32
+20
+4b
+65
+79
+62
+6f
+61
+72
+64
+aa
+55
+08
+00
+d3
+42
+07
+00
+07
+00
+20
+00
+2c
+01
+aa
+55
+06
+00
+9a
+47
+03
+12
+18
+ff
+00
+00
+aa
+55
+09
+00
+f4
+49
+41
+70
+70
+6c
+65
+20
+49
+6e
+63
+aa
+55
+02
+00
+f2
+49
+0a
+18
+aa
+55
+10
+00
+e1
+49
+d0
+00
+2d
+12
+1e
+4b
+0f
+a4
+99
+4e
+ce
+b5
+31
+f4
+05
+79
+aa
+55
+02
+00
+fd
+49
+c1
+03
+aa
+55
+02
+00
+bb
+4a
+78
+00
+aa
+55
+08
+00
+99
+4b
+01
+02
+e8
+04
+21
+70
+01
+00
+aa
+55
+01
+00
+07
+44
+02
+aa
+55
+01
+00
+09
+44
+0a
+aa
+55
+01
+00
+08
+44
+0c
+aa
+55
+01
+00
+11
+44
+00
+aa
+55
+04
+00
+0d
+44
+00
+07
+ff
+07
+aa
+55
+01
+00
+07
+4a
+1e
+aa
+55
+02
+00
+09
+4a
+e8
+03
+aa
+55
+02
+00
+21
+47
+02
+00
+aa
+55
+01
+00
+3d
+46
+64
+aa
+55
+02
+00
+3a
+46
+58
+02
+aa
+55
+01
+00
+1e
+47
+64
+aa
+55
+01
+00
+3c
+46
+64
+aa
+55
+02
+00
+38
+46
+58
+02
+aa
+55
+02
+00
+25
+47
+70
+17
+aa
+55
+02
+00
+09
+4d
+64
+00
+aa
+55
+02
+00
+ec
+48
+b8
+0b
+aa
+55
+02
+00
+69
+48
+58
+02
+aa
+55
+08
+00
+66
+46
+00
+34
+00
+00
+00
+00
+00
+00
+aa
+55
+06
+00
+01
+4a
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+01
+00
+1b
+47
+01
+aa
+55
+01
+00
+a4
+49
+01
+aa
+55
+01
+00
+55
+46
+ff
+aa
+55
+04
+00
+a5
+49
+7f
+06
+29
+14
+aa
+55
+03
+00
+27
+44
+ff
+ff
+ff
+aa
+55
+02
+00
+eb
+43
+10
+00
+aa
+55
+02
+00
+0e
+4d
+40
+02
+aa
+55
+03
+00
+66
+48
+88
+8c
+ff
+aa
+55
+01
+00
+bc
+4b
+8c
+aa
+55
+01
+00
+bb
+4b
+80
+aa
+55
+04
+00
+b7
+4b
+8c
+ff
+ff
+ff
+aa
+55
+03
+00
+63
+48
+01
+02
+ff
+aa
+55
+01
+00
+59
+46
+ff
+aa
+55
+01
+00
+5b
+46
+05
+aa
+55
+0c
+00
+8a
+48
+c2
+c3
+c4
+c5
+c6
+c7
+80
+81
+82
+83
+84
+85
+aa
+55
+1c
+00
+6e
+48
+0d
+0e
+0f
+10
+11
+12
+13
+14
+85
+c4
+c5
+c6
+c3
+c2
+03
+04
+83
+84
+82
+c7
+80
+07
+06
+81
+0a
+0b
+ff
+ff
+aa
+55
+90
+00
+16
+4a
+48
+a1
+a0
+a0
+e4
+00
+e0
+3e
+14
+2b
+04
+29
+1d
+8b
+35
+1e
+1a
+39
+16
+64
+1b
+8a
+3a
+1f
+08
+3c
+07
+3d
+06
+88
+3b
+20
+15
+17
+09
+0a
+19
+05
+22
+21
+18
+1c
+0d
+0b
+10
+11
+23
+24
+0c
+30
+0e
+3f
+36
+87
+2e
+25
+12
+40
+0f
+00
+37
+65
+41
+26
+13
+2f
+33
+34
+32
+38
+2d
+27
+47
+00
+7f
+e2
+00
+e6
+00
+46
+89
+2a
+31
+44
+28
+45
+42
+43
+5f
+5c
+59
+2c
+53
+51
+4c
+a1
+60
+5d
+5a
+62
+54
+4f
+49
+a0
+61
+5e
+5b
+63
+55
+56
+4b
+4e
+57
+85
+58
+52
+e9
+50
+4a
+4d
+00
+e1
+e5
+ed
+ee
+ec
+eb
+e8
+f1
+e3
+f6
+f8
+f7
+f9
+ef
+fa
+91
+70
+70
+f0
+ea
+f2
+fb
+90
+aa
+55
+13
+00
+ae
+49
+00
+29
+e8
+ed
+ee
+ef
+eb
+ec
+e9
+ea
+fb
+f1
+f0
+f5
+4c
+01
+00
+00
+00
+aa
+55
+02
+00
+ff
+49
+2a
+10
+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
+ff
+68
+91
+c5
Index: program/app_kb.prog
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/app_kb.prog	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/app_kb.prog	(working copy)
@@ -0,0 +1,2593 @@
+define G24
+define BLE
+define COMPILE_MOUSE
+
+keyboard_softreset_process:
+	fetch 1,mem_device_option
+	rtnne DVC_OP_KEYBOARD
+	call mouse_wakeup_from_power_check
+	nbranch soft_reset+1,user
+	fetch 1,mem_power_on_flag
+	branch soft_reset+1,blank
+	fetch 1,mem_config_select_device_button_gpio
+	rtneq UI_BUTTON_GPIO_DISABLE
+	copy pdata,queue
+	fetch 4,mem_saved_gpio_in
+	qisolate0 pdata					// bt button gpio num
+	call keyboard_pb_set,true
+	branch soft_reset+2
+
+ifdef COMPILE_MOUSE
+keyboard_init:
+	call enable_authrom
+	call keyboard_setting_config
+
+	call keyboard_gpio_init
+	call keyboard_low_vol_mult_set
+	rtn wake
+	call keyboard_usb_check_enable
+	call keyboard_cb_fuction
+	fetch 1,mem_usb_addr
+	rtnbit1 7
+keyboard_init_wireless:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,keyboard_start_discovery
+	call mouse_check_select_device_by_switch
+	branch keyboard_start_work
+
+
+keyboard_usb_check_enable:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_USB
+	setarg keyboard_usb_config_param
+	store 2,mem_cb_usb_config
+	jam MOUSE_USB_INTERFACE_REMOVE,mem_mouse_usb_vdd_status
+	branch keyboard_usb_interface_check
+
+keyboard_usb_config_param:
+	call keyboard_usb_config_kb_check
+	call keyboard_usb_config_param_init
+	branch keyboard_usb_config_param_setup
+
+keyboard_usb_config_kb_check:
+	jam DONGLE_KB_BIND_EEPROM_OFFECT,mem_mouse_usb_keyboard_flag
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_KEYBOARD
+	jam DONGLE_KB_BIND_SUCCESS,mem_mouse_usb_keyboard_flag
+	rtn
+
+keyboard_usb_config_param_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_USB_250,keyboard_usb_report_rate_set_250hz
+	bbit1 MOUSE_ENABLE_USB_500,keyboard_usb_report_rate_set_500hz
+	bbit1 MOUSE_ENABLE_USB_1000,keyboard_usb_report_rate_set_1000hz
+	jam 0x19,mem_wire_usb_interval
+	jam 0x08,mem_usb_tx_interval
+	rtn
+keyboard_usb_report_rate_set_250hz:
+	jam 0x0c,mem_wire_usb_interval
+	jam 0x04,mem_usb_tx_interval
+	rtn
+keyboard_usb_report_rate_set_500hz:
+	jam 0x06,mem_wire_usb_interval
+	jam 0x02,mem_usb_tx_interval
+	rtn
+keyboard_usb_report_rate_set_1000hz:
+	jam 0x03,mem_wire_usb_interval
+	jam 0x01,mem_usb_tx_interval
+	rtn
+
+keyboard_usb_config_param_setup:
+	call usb_tx_interval_config
+	call keyboard_usb_vid_pid_config
+	branch keyboard_usb_hid_icon_config
+
+keyboard_usb_vid_pid_config:
+	fetch 1,mem_usb_vid_pid
+	rtn blank
+	fetch 1,mem_mouse_usb_keyboard_flag
+	beq DONGLE_KB_BIND_SUCCESS,dongle_usb_vid_pid_for_suit
+	branch dongle_usb_vid_pid_for_mouse_only_auto_pair
+
+keyboard_usb_hid_icon_config:
+	fetch 1,mem_mouse_usb_keyboard_flag
+	branch dongle_usb_hid_icon_config+1
+
+
+
+keyboard_usb_interface_check:
+	bpatch patch08_1,mem_patch08
+	fetcht 1,mem_usb_offline_check_gpio
+	call gpio_get_bit
+	branch keyboard_usb_gpio_low,true
+	branch keyboard_usb_gpio_high
+
+
+keyboard_usb_gpio_low:
+	fetch 1,mem_mouse_usb_vdd_status
+	rtneq MOUSE_USB_INTERFACE_REMOVE
+	jam MOUSE_USB_INTERFACE_REMOVE,mem_mouse_usb_vdd_status
+	jam 0,mem_usb_device_enumeration_endflag
+	jam 0,mem_usb_status
+	jam 0,mem_usb_state
+	branch keyboard_init_wireless
+
+
+keyboard_usb_gpio_high:
+	fetch 1,mem_mouse_usb_vdd_status
+	rtneq MOUSE_USB_INTERFACE_INSERT
+	jam MOUSE_USB_INTERFACE_INSERT,mem_mouse_usb_vdd_status
+	call mouse_24g_stop
+	call mouse_stop_bluetooth_mode
+	call keyboard_device_led_all_off
+	branch usb_init
+
+
+
+keyboard_setting_config:
+	rtn wake
+
+	call g24_transmit_init
+	call g24_chmap_param_init
+
+	call keyboard_param_init
+	fetcht 1,mem_mcu_rstb_gpio
+	call gpio_out_inactive
+
+	call keyboard_device_led_off
+	call mouse_device_multi_led_parm_init
+	call le_set_fixed_ltk_justwork
+
+ifdef debug_eeprom
+	call iicd_read_init_pin
+endif
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_OTP,keyboard_load_otp_info_check
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_load_eeprom_info_check
+	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_check
+	rtn
+
+
+
+
+keyboard_param_init:
+
+	call mouse_param_common_init
+
+	jam 0,mem_same_keyvalue_timerout_flag
+	setarg 0x230170		// 0x0170--3.7V  0x0123--3.0V  0x0146--3.2V  0x0153--3.3V
+	store 3,mem_mouse_vdd_full_vol
+	setarg 0x015301
+	istore 3,contw
+	arg mem_le_adv_swift_pair,contw
+	arg 20,loopcnt
+	call clear_mem
+
+	fetch 1,mem_le_name_len
+	sub pdata,12,null
+	nbranch ble_name_set_no_swift_pair,positive
+	setarg 0x06ff06
+	store 3,mem_le_adv_swift_pair
+	setarg 0x000300
+	istore 3,contw
+	setarg 0x80
+	istore 1,contw
+ble_store_le_name:
+	fetch 1,mem_le_name_len
+	increase 1,pdata
+	copy pdata,loopcnt
+	arg mem_le_scan_data,contr			// 7byte + mem_le_scan_data
+	branch memcpy
+
+ble_name_set_no_swift_pair:
+	arg mem_le_adv_swift_pair,contw
+	branch ble_store_le_name
+
+/////////////////////////////////////////////////////////------gpio------///////////////////////////////////////////////////////////
+keyboard_gpio_init:
+//	call p_lpm_otp_option_disable_ice_mode
+
+	fetcht 1,mem_mcu_clk_gpio
+	call gpio_set_high_impedance
+	fetcht 1,mem_mcu_stb_gpio
+	call gpio_set_high_impedance
+	fetcht 1,mem_mcu_rstb_gpio
+	call gpio_set_high_impedance
+	//row init
+	setarg mem_key_row_gpio
+	store 2,mem_kb_row_ptr
+	//col init
+	setarg mem_key_col_gpio
+	store 2,mem_kb_col_ptr
+	//portA and B init
+	setarg mem_key_excol_gpio
+	store 2,mem_kb_excol_ptr
+keyboard_keyscan_gpio_init:
+	fetch 2,mem_kb_row_ptr
+	copy pdata,regb
+	arg 8,loopcnt
+
+keyboard_key_row_init:
+	ifetcht 1,regb
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	ncall keboard_gpio_set_high_impedance,zero
+	increase 1,regb
+	loop keyboard_key_row_init
+	call lpm_write_gpio_wakeup
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	copy pdata,regc
+	arg 11,loopcnt
+
+keyboard_key_cow_init:
+	ifetcht 1,regb
+	isolate1 7,temp						// exmcu gpio
+	ncall gpio_set_high_impedance,true
+	increase 1,regb
+	loop keyboard_key_cow_init
+	rtn
+keboard_gpio_set_high_impedance:
+
+	call gpio_set_high_impedance
+	ifetcht 1,regb
+	branch gpio_set_low_pullup
+
+
+
+keyboard_low_vol_mult_set:
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,keyboard_low_vol_mult_ble_set
+	setarg 0x5d4800
+	store 4,mem_24g_long_sleep_set1
+	fetch 1,mem_adc_power_flag
+	rtnbit0 0
+	branch mouse_24g_long_sleep_set
+keyboard_low_vol_mult_ble_set:
+	jam 0x0c,mem_lpm_mult_init
+	fetch 1,mem_adc_power_flag
+	rtnbit0 0
+	jam 0x10,mem_lpm_mult_init
+	fetch 1,mem_mouse_current_mult_timer
+	branch mouse_current_mult_reinit,blank
+	rtn
+///////////////////////////////////////otp/////////////////////////////////////////////////////////////
+
+keyboard_pairing_check_otp_offset:
+	fetch 2,mem_otp_read_retention_offset
+	arg 0x528,temp   //24*55
+	isub temp,null
+	nrtn positive
+	branch assert
+//  otp process
+keyboard_load_otp_info_check:
+	bpatch patch08_2,mem_patch08
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_load_otp_device_info_g24_init
+	beq MODE_BT_DEVICE1,keyboard_load_otp_device_info_ble_init
+	rtn
+
+keyboard_load_otp_device_info_g24_init:
+	arg 80,regd
+	setarg 0x400
+	idiv regd
+	call wait_div_end
+	quotient pdata
+	store 2,mem_pdatatemp
+	arg 0x1fcc,pdata
+	arg 4,temp
+	arg 4,rege
+	branch keyboard_load_otp_device_info
+keyboard_load_otp_device_info_ble_init:
+	arg 280,regd
+	setarg 0x400
+	idiv regd
+	call wait_div_end
+	quotient pdata
+	store 2,mem_pdatatemp
+	arg 0x1fc2,pdata
+	arg 14,temp
+	arg 14,rege
+	branch keyboard_load_otp_device_info
+keyboard_load_otp_device_info:
+	storet 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	arg 0,regc
+keyboard_load_otp_info_check_page_loop:
+	copy pdata,regb
+	fetchr loopcnt, 1,mem_temp
+	call otp_read_data
+	fetch 8,mem_otp_read_retention_memory
+	fetcht 8,mem_otp_read_retention_memory+8
+	ior temp,pdata
+	fetcht 8,mem_otp_read_retention_memory+16
+	ior temp,pdata
+	branch keyboard_load_otp_info_check_first_time,blank
+	increase 1,regc
+	fetch 2,mem_pdatatemp
+	isub regc,null
+//	nbranch p_keyboard_load_otp_info_check_overwise,positive
+	copy regb,pdata
+	isub regd,pdata
+	branch keyboard_load_otp_info_check_page_loop
+keyboard_load_otp_info_check_first_time:
+
+	sub regc,0,null
+	branch keyboard_load_otp_info_check_first_time_process,zero
+keyboard_load_otp_info_check_first_time_loop_init:
+	copy regb,pdata
+	iadd regd,pdata
+keyboard_load_otp_info_check_first_time_loop:
+	isub rege,pdata
+	copy pdata,regb
+	fetchr loopcnt, 1,mem_temp
+	call otp_read_data
+	fetch 8,mem_otp_read_retention_memory
+	fetcht 8,mem_otp_read_retention_memory+8
+	ior temp,pdata
+	fetcht 8,mem_otp_read_retention_memory+16
+	ior temp,pdata
+	branch keyboard_load_otp_info_check_offset_process,blank
+	copy regb,pdata
+	branch keyboard_load_otp_info_check_first_time_loop
+keyboard_load_otp_info_check_first_time_process:
+	storer rege,1,mem_otp_read_retention_offset
+	rtn
+keyboard_load_otp_info_check_offset_process:
+	bpatch patch08_3,mem_patch08
+	setarg 0x1fd0
+	isub regb,pdata
+	store 2,mem_otp_read_retention_offset		//store the next field offset ,convenient for next storage
+	copy regb,pdata
+	iadd rege,regb
+	fetchr loopcnt, 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	call otp_read_data
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_load_otp_info_check_offset_process_g24
+	beq MODE_BT_DEVICE1,keyboard_load_otp_info_check_offset_process_ble
+	rtn
+
+keyboard_load_otp_info_check_offset_process_g24:
+	fetch 6,mem_otp_read_retention_memory
+	store 4,mem_mouse_24g_addr
+	branch keybaord_load_device_info
+
+keyboard_load_otp_info_check_offset_process_ble:
+	fetch 1,mem_otp_read_retention_memory
+	sub pdata,SYSTEM_OS_MAC,null
+	ncall set_pdata_0,positive
+	store 1,mem_kb_computer_system
+	fetch 1,mem_otp_read_retention_memory+1
+	store 1,mem_device1_type
+	fetch 6,mem_otp_read_retention_memory+2
+	store 6,mem_device1_addr
+	fetch 6,mem_otp_read_retention_memory+8
+	store 6,mem_device1_locall_addr
+	branch mouse_select_reconn_device
+
+
+keyboard_load_otp_info_check_overwise:
+	branch assert
+
+
+keyboard_store_device_info:
+	bpatch patch08_4,mem_patch08
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_OTP,keyboard_store_otp_device_info
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eeprom_device_info
+	bbit1 MOUSE_ENABLE_FLASH,mouse_store_flash_device_info
+	rtn
+
+keyboard_store_otp_device_info:
+	rtn
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_store_otp_device_info_g24
+	beq MODE_BT_DEVICE1,keyboard_store_otp_device_info_ble
+	rtn
+
+keyboard_store_otp_device_info_g24:
+	fetcht 2,mem_otp_read_retention_offset
+	setarg 0x1fd0
+	isub temp,regb
+	arg mem_mouse_24g_addr,rega
+	arg 4,loopcnt
+	call otp_write
+	fetcht 2,mem_otp_read_retention_offset
+	increase 4,temp
+	storet 2,mem_otp_read_retention_offset
+	rtn
+
+keyboard_store_otp_device_info_ble:
+	fetcht 2,mem_otp_read_retention_offset
+	setarg 0x1fd0
+	isub temp,regb
+
+
+	add regb,1,regb
+	arg mem_device1_addr,rega
+	arg 6,loopcnt
+	call otp_write
+
+	add regb,7,regb
+	arg mem_device1_locall_addr,rega
+	arg 6,loopcnt
+	branch otp_write
+
+keybaord_load_device_info:
+	fetch 4,mem_mouse_24g_addr
+	store 4,mem_24g_receiver_addr
+	store 4,mem_24g_addr
+	rtn
+
+/////////////////////////////////////cb_function//////////////////////////////////////////////////////
+keyboard_cb_fuction:
+	bpatch patch08_5,mem_patch08
+	setarg mouse_24g_before_lpm_sleep
+	store 2,mem_cb_before_lpm_sleep
+	setarg keyboard_24g_package_data
+	store 2,mem_cb_24g_transmit_data
+	setarg keyboard_24g_search_dongle
+	store 2,mem_cb_24g_search_receiver
+	setarg keyboard_lpm_before_common
+	store 2,mem_cb_24g_lpm_before
+	setarg keyboard_le
+	store 2,mem_cb_le_process
+
+	setarg keyboard_process_lpm_before
+	store 2,mem_cb_before_lpm
+
+	setarg keyboard_priority_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg keyboard_idle
+	store 2,mem_cb_idle_process
+	setarg keyboard_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg mouse_le_bb_event_connect_complete
+	store 2,mem_cb_att_write
+	setarg keyboard_bb_event_timer
+	store 2,mem_cb_event_timer
+	setarg mouse_spi_write_flash_cb
+	store 2,mem_cb_spi_flash_write_complate
+	setarg mouse_lpm_check_wake_lock
+	store 2,mem_cb_check_wakelock
+	setarg mouse_le_transmit
+	store 2,mem_cb_ble_transmit
+	setarg mouse_set_lpm_mult
+	store 2,mem_cb_bt_set_mult
+	rtn
+
+/////////////////////////////////////keyboard event/////////////////////////////////////////////////////////////////////
+
+keyboard_priority_bb_event:
+	bpatch patch08_6,mem_patch08
+	copy regc,pdata
+
+	beq BT_EVT_LE_START_ENC,keyboard_le_ll_start_encryt
+	beq BT_EVT_LE_PARSE_CONN_PARAM_ACCEPTED,keyboard_le_parse_conn_param_accepted
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,keyboard_le_conn_param_update_rsp_recieved
+	beq BT_EVT_LE_DISCONNECTED,keyboard_le_bb_disconnected
+
+	beq BT_EVT_LE_CONNECTED,keyboard_le_bb_event_connected
+	beq BT_EVT_BUTTON_LONG_PRESSED,keyboard_bb_event_discovery_btn
+	beq BT_EVT_LE_PAIRING_SUCCESS,mouse_le_pairing_success
+	beq BT_EVT_LE_ENC_INFO,mouse_le_enc_info
+
+	beq BT_EVT_LE_PAIRING_COMPLETE,app_ble_store_reconn_info
+	beq BT_EVT_LE_PARSE_CONN_PARAM_ACCEPTED,mouse_le_parse_conn_param_accepted
+
+	beq BT_EVT_24G_PAIRING_COMPLETE,keyboard_24g_pairing_complete
+	beq BT_EVT_24G_ATTEMPT_SUCCESS,keyboard_24g_attempt_success
+	beq BT_EVT_24G_ATTEMPT_FAIL,keyboard_24g_attempt_fail
+
+
+	rtn
+
+/***************************le*************************/
+
+
+
+keyboard_le_bb_event_connected:
+	jam 0,mem_mouse_long_mult_flag
+
+	jam 1,mem_mouse_le_bb_connected_flag
+	call mouse_24g_first_store_reconn_info
+	fetch 1,mem_mouse_le_reconnect_flag
+	nbranch keyboard_le_bb_event_connected_next,blank
+	jam 0x14,mem_mouse_send_secutiry_request_timer
+keyboard_le_bb_event_connected_next:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set0 APP_DISC_BY_BUTTON ,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	jam 0,mem_mouse_direct_timer
+	fetch 2,mem_le_battery_level_updata_timer_init
+	store 2,mem_le_battery_level_updata_timer
+	call mouse_no_data_timer_init
+	branch keyboard_stop_discovery
+
+
+keyboard_le_bb_disconnected:
+	setarg 0
+	store 2,mem_le_battery_level_updata_timer
+	store 1,mem_keyboard_le_send_conn_param_update
+	store 1,mem_keyboard_le_send_conn_param_update_timer
+	store 1,mem_mouse_le_bb_connected_flag
+keyboard_le_bb_disconnected_next:
+	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 keyboard_bb_disconnected
+keyboard_bb_disconnected:
+	call mouse_bb_discon_clear_stack
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BLE,keyboard4_0_event_bb_disconn
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	branch keyboard_start_discovery
+keyboard4_0_event_bb_disconn:
+	call mouse_le_clean_connect_flag
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	call ice_break
+	branch keyboard_app_enter_hibernate
+
+
+keyboard_le_ll_start_encryt:
+	fetch 1,mem_mouse_le_reconnect_flag
+	beq 1,keyboard_le_ll_reconn_start_encryt
+	jam 20,mem_le_start_encrypt_timer
+	jam 5,mem_le_start_auto_reco_timer
+	branch mouse_le_ll_enable_start_enc_flag
+keyboard_le_ll_reconn_start_encryt:
+	call mouse_updata_le_param
+	jam 5,mem_le_start_encrypt_timer
+	branch mouse_le_ll_enable_start_enc_flag
+
+keyboard_le_parse_conn_param_accepted:
+	fetch 1,mem_le_new_conninterval
+	sub pdata,LE_INTERVAL_15MS,null
+	nbranch mouse_le_conn_param_lpm_disable,positive
+	fetch 1,mem_le_new_connslavelatency
+	fetcht 1,mem_lpm_mult_init
+	isub temp,null
+	branch mouse_le_lpm_mult_reinit,positive
+	fetch 1,mem_le_new_connslavelatency
+	store 1,mem_lpm_mult
+	branch mouse_le_conn_param_lpm_enable
+
+keyboard_le_conn_param_update_rsp_recieved:
+	fetch 1,mem_keyboard_le_send_conn_param_update
+	nrtn blank
+	jam 1,mem_keyboard_le_send_conn_param_update
+	jam 30,mem_keyboard_le_send_conn_param_update_timer
+	rtn
+
+keyboard_24g_pairing_complete:
+	call keyboard_get_24g_led_enable
+	call mouse_no_data_timer_init
+	branch mouse_24g_pairing_complete_common
+
+keyboard_24g_attempt_success:
+	call keyboard_get_24g_led_enable
+	fetch 4,mem_24g_addr
+	store 4,mem_24g_receiver_addr
+	store 4,mem_mouse_24g_addr		// if need store 24g address to eeprom/flash,need get mem_24g_addr
+	call g24_ch_syncword_crc8_init
+	call mouse_device_poweron_led_config
+	call mouse_no_data_timer_init
+	branch mouse_24g_attempt_success
+
+keyboard_24g_get_led:
+	jam DEVICE_DATA_TPYE_STANDARD_KEYBOARD,mem_keyboard_data_send_flag
+	call keyboard_clear_key_data
+	jam 0x03,mem_customer_key_press+2
+	rtn
+
+keyboard_24g_led_get_status_check:
+	arg 6,loopcnt
+	arg mem_keyboard_tx_data+3,contr
+keyboard_24g_led_data_check:
+	ifetch 1,contr
+	beq HID_KEY_NUM_LOCK,keyboard_get_24g_led_enable
+	beq HID_KEY_CAPS_LOCK,keyboard_get_24g_led_enable
+	beq HID_KEY_SCROLL_LOCK,keyboard_get_24g_led_enable
+	loop keyboard_24g_led_data_check
+	rtn
+
+keyboard_get_24g_led_enable:
+	jam 0x03,mem_keyboard_led_status_get
+	jam 1,mem_keyboard_data_change_flag
+	rtn
+
+keyboard_set_repeat_send_flag:
+	jam 1,mem_24g_repeat_send_flag
+	rtn
+
+
+keyboard_24g_attempt_fail:
+	fetch 1,mem_24g_attempt_fail_flag
+	nbranch keyboard_24g_hibernate_set,blank
+	fetch 1,mem_24g_reconn_type
+	beq FAST_CONN_AND_3_0_ADDR,keyboard_24g_fast_conn_attempt_fail
+	beq RECEIVER_AND_3_0_ADDR,keyboard_24g_attempt_fail_enter_hibernate
+	branch keyboard_24g_attempt_fail_enter_hibernate
+
+keyboard_24g_attempt_fail_enter_hibernate:
+	call mouse_24g_stop
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_app_enter_hibernate
+	rtn
+
+keyboard_24g_fast_conn_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_start_auto_pair
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_start_auto_pair
+	bbit0 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED,mouse_24g_reconn_dongle_start
+	fetch 4,mem_mouse_24g_addr		// auto pair first time
+	branch keyboard_24g_start_pair_mode,blank
+	branch mouse_24g_reconn_dongle_start
+
+keyboard_24g_hibernate_set:
+	jam 0,mem_24g_attempt_fail_flag
+	call g24_transmit_next_packet
+	setarg -1
+	store 8,mem_24g_enter_hibernate
+	setarg 0
+	store 7,mem_mouse_key
+	jam 1,mem_sensor_shutdown_flag
+	branch keyboard_g24_long_sleep
+
+
+/////////////////////////////////////keyboard timer/////////////////////////////////////////////////////////////////////
+
+keyboard_bb_event_timer:
+	bpatch patch08_7,mem_patch08
+	call mouse_adc_read
+	call keyboard_low_voltage_param_set
+	call mouse_low_voltage_led_timer
+
+	call g24_pair_timeout_timer
+	call g24_reconn_timeout_timer
+	call mouse_24g_long_sleep_param_update_timer
+	call keyboard_24g_repeat_send_data
+	call keyboard_24g_led_status_get_timer
+
+	//led
+
+	call keyboard_check_discovery_timeout_timer
+
+	call keyboard_check_direct_timeout_timer
+	call mouse_le_enable_att_list_timer
+	call keyboard_le_battery_updata_timer
+	call mouse_le_send_smp_security_request_timer
+	call keyboard_le_send_conn_param_update_timer
+	call keyboard_le_auto_recognize_timer
+
+	call mouse_current_mult_update_timer
+	call mouse_wheel_trigger_timer
+	call keyboard_store_information_delay_timer
+	call keyboard_capslock_led_on_timer
+	call keyboard_long_press_timer
+	call keyboard_commbination_delay_release_timer
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_check_no_data_timeout_timer
+	branch mouse_check_no_data_timeout_timer
+
+
+keyboard_commbination_key_process:
+	fetch 1,mem_commbination_key_statue
+	rtnne COMMBINATION_KEY_STATE_DOWN
+	arg mem_combination_ui_button_count,regc
+	arg mouse_bluetooth_fast_conn_init,regb
+	branch timer_single_step
+
+keyboard_commbination_fast_conn_bt_check:
+	fetch 2,mem_keyboard_keyvalue_buffer+2
+	fetcht 2,mem_keyboard_commbination_fast_conn_bt
+	isub temp,null
+	branch keyboard_commbination_key_down,zero
+	byteswap temp,temp
+	isub temp,null
+	branch keyboard_commbination_key_down,zero
+	branch mouse_commbination_key_up
+
+keyboard_commbination_key_down:
+	fetch 1,mem_commbination_key_statue
+	rtneq COMMBINATION_KEY_STATE_DOWN
+	jam COMMBINATION_KEY_STATE_DOWN,mem_commbination_key_statue
+	rtn
+
+
+keyboard_check_discovery_timeout_timer:
+	arg mem_mouse_discovery_timer,regc
+	arg keyboard_check_discovery_timeout,regb
+	branch timer_single_step_2B
+
+keyboard_check_discovery_timeout:
+	call keyboard_stop_discovery
+	branch keyboard_app_enter_hibernate
+
+
+
+
+keyboard_store_information_delay_timer:
+	arg mem_store_information_delay_timer,regc
+	arg keyboard_store_device_info_check,regb
+	branch timer_single_step
+
+keyboard_store_device_info_check:
+	call keyboard_store_device_info
+	fetch 1,mem_mouse_need_soft_reset
+	nbranch mouse_soft_reset,blank
+	rtn
+
+keyboard_low_voltage_param_set:
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	branch keyboard_low_voltage_param_set_33V,blank
+	jam 58,mem_mouse_vdd_low_vol
+	rtn
+keyboard_low_voltage_param_set_33V:
+	jam 53,mem_mouse_vdd_low_vol
+	rtn
+
+keyboard_le_auto_recognize_timer:
+
+	arg mem_le_start_auto_reco_timer,regc
+	arg keyboard_le_send_att_find_by_type_value_request_ancs,regb
+	branch timer_single_step
+
+keyboard_check_direct_timeout_timer:
+	arg mem_mouse_direct_timer,regc
+	arg mouse_check_direct_timeout,regb
+	call timer_single_step
+	branch mouse_check_direct_timeout_timer+3
+
+keyboard_le_battery_updata_timer:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+	branch mouse_le_battery_updata_timer
+
+keyboard_le_send_conn_param_update_timer:
+	arg mem_keyboard_le_send_conn_param_update_timer,regc
+	arg mouse_updata_le_param,regb
+	branch timer_single_step
+
+keyboard_24g_repeat_send_data:
+	fetch 1,mem_24g_repeat_send_flag
+	rtn blank
+	jam 0,mem_24g_repeat_send_flag
+	jam 1,mem_keyboard_data_change_flag
+	call g24_txdata_prep
+	branch keyboard_g24_transmit_process
+
+keyboard_24g_led_status_get_timer:
+	arg mem_keyboard_led_status_get_timer,regc
+	arg keyboard_24g_led_status_clear,regb
+	branch timer_single_step
+
+keyboard_24g_led_status_clear:
+	jam 0,mem_keyboard_led_status_get
+	rtn
+
+
+
+
+
+keyboard_device_led_off:
+	call mouse_device_multi_led_off
+	call keyboard_capslock_led_off
+keyboard_power_led_off:
+	fetcht 1,mem_keyboard_power_led_gpio
+	branch gpio_out_inactive
+keyboard_numlock_led_off:
+	rtn
+
+
+keyboard_capslock_led_on_timer:
+	fetch 1,mem_keyboard_caps_led_gpio
+	rtneq GPIO_DISABLE
+	fetch 2,mem_mouse_no_data_timer
+	rtn blank
+	fetch 2,mem_mouse_no_data_timeout
+	fetcht 2,mem_mouse_no_data_timer
+	isub temp,temp
+	fetch 2,mem_keyboard_caps_led_on_timer
+	isub temp,pdata
+	branch keyboard_capslock_led_check_on,positive
+keyboard_capslock_led_off:
+	fetcht 1,mem_keyboard_caps_led_gpio
+	branch gpio_out_inactive
+
+
+
+keyboard_capslock_led_check_on:
+	fetch 1,mem_keyboard_led_status
+	bbit0 KB_PC_KEYSEL_CAPSLOCK,keyboard_capslock_led_off
+	fetcht 1,mem_keyboard_caps_led_gpio
+	branch gpio_out_active
+
+keyboard_long_press_timer:
+	arg mem_same_keyvalue_timer,regc
+	arg keyboard_long_press_timerout,regb
+	branch timer_single_step_2B
+
+keyboard_long_press_timerout:
+	jam 1,mem_same_keyvalue_timerout_flag
+	branch app_enter_hibernate
+
+keyboard_commbination_delay_release_timer:
+	arg mem_keyboard_commbination_control_key_delay_release_timer,regc
+	arg keyboard_commbination_key_null_set,regb
+	branch timer_single_step
+
+
+keyboard_check_no_data_timeout_timer:
+	arg mem_mouse_no_data_timer,regc
+	arg keyboard_check_no_data_timeout,regb
+	branch timer_single_step_2B
+
+keyboard_check_no_data_timeout:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_24g_hibernate_set
+	branch mouse_disconnect
+
+
+keyboard_bb_event_discovery_btn:
+	isolate1 mark_24g,mark
+	call mouse_24g_stop,true
+	call mouse_disconnect
+	call mouse_le_clean_connect_flag
+	branch keyboard_start_discovery
+
+keyboard_start_discovery:
+	bpatch patch09_0,mem_patch09
+	call mouse_device_discovery_led_config
+	fetch 2,mem_ui_state_map
+	isolate1 UI_STATE_BLE_ADV,pdata
+	call mouse_stop_le_adv,true		//reconnect adv
+
+	setarg 0
+	store 2,mem_le_battery_level_updata_timer
+	call keyboard_capslock_led_off
+	jam 0xff,mem_kb_computer_system
+
+	fetch 2,mem_ui_state_map
+	isolate1 UI_STATE_BLE_ADV,pdata
+	call mouse_stop_le_adv,true		//reconnect adv
+	call mouse_bluetooth_fast_conn_disable
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_ADV,keyboard_start_discovery_norandom
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE,keyboard_start_discovery_norandom
+	fetcht 2,mem_random_addr_increase_count
+	increase 1,temp
+	storet 2,mem_random_addr_increase_count
+	storet 2,mem_le_lap+1
+	random pdata					//random ble addr
+	store 1,mem_le_lap
+keyboard_start_discovery_norandom:
+	fetch 3,mem_mouse_le_lap_temp
+	store 3,mem_le_lap+3
+	call app_lpm_mult_disable
+	fetch 2,mem_mouse_discovery_timeout
+	store 2,mem_mouse_discovery_timer
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	store 2,mem_le_battery_level_updata_timer
+	store 1,mem_mouse_direct_timer
+	store 1,mem_mouse_bluetooth_reconnect_timeout
+	store 1,mem_mouse_clear_sensor_data_flag
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_enable_function_flag
+	call mouse_bt_discovery_button_down_disable
+	branch mouse_check_51cmd_adv
+
+
+keyboard_low_voltage_led_blink_disable:
+	jam 0,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_low_voltage_led_off_judge
+
+keyboard_stop_discovery:
+	bpatch patch09_1,mem_patch09
+	setarg 0
+	store 2,mem_mouse_discovery_timer
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	call mouse_disable_function_flag
+	jam 0,mem_mouse_bluetooth_reconnect_timeout
+	call mouse_stop_le_adv
+	branch keyboard_device_led_off
+
+
+keyboard_store_remote_bdaddr:
+	bpatch patch09_2,mem_patch09
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_STORE_EEPROM_FLAG
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_disable_function_flag
+	call mouse_check_device_addr
+	branch mouse_unplug_clean_bdaddr
+
+/////////////////////////////////////keyboard process///////////////////////////////////////////////////////////////////////////////
+keyboard_idle:
+	bpatch patch09_3,mem_patch09
+	call mouse_low_voltage_led_no_enter_lpm
+	branch ui_check_paring_button
+
+
+
+keyboard_start_work:
+	bpatch patch09_4,mem_patch09
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_ADC,keyboard_start_work_next
+	call enable_adc
+	call vdd_calculate_by_mode
+	store 2,mem_mouse_vdd_now_vol
+//	fetcht 2,mem_2v_adc_vinlpm_data
+	fetch 2,mem_adc_current_value
+	isub temp,null
+	branch keyboard_start_work,positive
+	arg mem_mouse_vdd_calculate_set,rega
+	call mouse_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,keyboard_power_down
+keyboard_start_work_next:
+
+	fetch 1,mem_keyboard_pairing_type
+	call keyboard_enable_bt_button_pairing,blank
+	fetch 1,mem_keyboard_bt_button_flag
+	nrtn blank
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_reconn_general_dongle
+	call mouse_bluetooth_fast_conn_disable
+	fetch 6,mem_device1_addr
+	branch mouse_bluetooth_fast_conn_init ,blank
+	branch mouse_start_reconnect_device
+
+
+
+
+
+
+
+
+
+
+/////////////////////////////////////keyboard le///////////////////////////////////////////////////////////////////////////////////////
+keyboard_le:
+	bpatch patch09_5,mem_patch09
+	call le_fifo_check_nearly_full
+	nrtn blank
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,keyboard_le_next
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+keyboard_le_next:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_24G_PAIRING_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,mouse_le_send_empty_packet
+	call keyboard_motion
+	nrtn user
+	call mouse_current_mult_update
+	call mouse_wheel_trigger
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_KEYBOARD,mouse_le_send_mouse_data
+	fetch 1,mem_customer_key
+	branch mouse_le_send_keyboard_package_data
+
+
+
+
+
+/***********************************kscan and value process***********************************************/
+kscan_dispatch:
+	fetch 1,mem_device_option
+	rtnne DVC_OP_KEYBOARD
+	call keyboard_keyscan
+	call keyboard_key_process
+	branch keyboard_special_key_check
+/***********************************kscan and value process***********************************************/
+
+
+
+
+/***********************************kscan process***********************************************/
+keyboard_keyscan:
+	bpatch patch09_6,mem_patch09
+	call keyboard_stb_state_low							// exmcu wake up
+	setarg 0
+	store 2,mem_keyscan_exmcu_wait_wake_count
+	arg mem_keyscan_value_current,contr
+	arg mem_keyscan_value_check,contw
+	arg 20,loopcnt
+	call memcpy
+	setarg mem_keyscan_value_current
+	store 2,mem_keyscan_value_ptr
+	setarg mem_keyscan_exmcu_value
+	store 2,mem_keyscan_exmcu_value_ptr
+	call keyboard_keyscan_get_exmcu_value
+	call keyboard_keyscan_get_mcu_value
+	call keyboard_stb_state_high							// exmcu sleep
+keyboard_keyscan_copy_value:
+	fetch 2,mem_kb_excol_ptr
+	copy pdata,regb
+	jam 0,mem_keyscan_col_loop_count
+keyboard_compare_col_excol_gpio_loop:		// loop 11 times
+	ifetcht 1,regb
+	fetch 2,mem_kb_col_ptr
+	copy pdata,rega
+	copy rega,regc
+	arg 20,loopcnt
+keyboard_compare_col_gpio_loop:
+	ifetch 1,rega
+	isub temp,null
+	branch keyboard_copy_value_exmcu_to_mcu,zero
+	increase 1,rega
+	loop keyboard_compare_col_gpio_loop
+keyboard_compare_col_excol_gpio_loop_next:
+	increase 1,regb
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	sub pdata,10,null
+	branch keyboard_compare_col_excol_gpio_loop,positive
+
+	rtn
+
+keyboard_copy_value_exmcu_to_mcu:
+	fetch 2,mem_keyscan_value_ptr
+	copy pdata,contw
+	copy rega,pdata
+	isub regc,pdata
+	iadd contw,contw							// offset = rega-regc
+	fetch 2,mem_keyscan_exmcu_value_ptr
+	copy pdata,regc
+	fetch 1,mem_keyscan_col_loop_count
+	iadd regc,regc
+	ifetch 1, regc								// offset = mem_keyscan_col_loop_count
+	istore 1,contw
+	branch keyboard_compare_col_excol_gpio_loop_next
+
+keyboard_keyscan_get_exmcu_value:	//	8*11 times
+	bpatch patch09_7,mem_patch09
+	call keyboard_stb_state_high
+	call keyboard_clk_input
+keyboard_keyscan_exmcu_start:
+	fetch 2,mem_keyscan_exmcu_wait_wake_count
+	increase 1,pdata
+	store 2,mem_keyscan_exmcu_wait_wake_count
+	bbit1 9,keyboard_keyscan_reset_exmcu 				// 953us reset exmcu
+	fetcht 1,mem_mcu_clk_gpio							// waiting for exmcu wake done
+	call gpio_get_bit
+	nbranch keyboard_keyscan_exmcu_start,true
+	nop 20
+	call keyboard_clk_state_high
+	call keyboard_stb_state_low
+	jam 0,mem_keyscan_col_loop_count
+keyboard_keyscan_exmcu_start_loop:	// clk:0 1 0 1 0 1 0 1 0 1 0
+	call keyboard_clk_state_low
+	call keyboard_keyscan_exmcu_get_col_value
+	call keyboard_clk_state_high
+	call keyboard_keyscan_exmcu_get_col_value
+	sub pdata,9,null
+	branch keyboard_keyscan_exmcu_start_loop,positive
+	call keyboard_clk_state_low
+	call keyboard_keyscan_exmcu_get_col_value
+	branch keyboard_clk_state_high
+
+keyboard_keyscan_exmcu_get_col_value:
+	jam 0,mem_keyscan_value_temp
+	nop 50
+	call keyboard_keyscan_get_col_value
+	fetch 2,mem_keyscan_exmcu_value_ptr
+keyboard_keyscan_value_store:
+	copy  pdata,contw
+	fetch 1,mem_keyscan_col_loop_count
+	iadd contw,contw
+	fetch 1,mem_keyscan_value_temp
+	istore 1,contw
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	rtn
+
+
+keyboard_keyscan_get_mcu_value: 		// 8*20 = 130us
+	nop 20					// wait exmcu keyscan done
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	jam 0,mem_keyscan_col_loop_count
+keyboard_keyscan_mcu_start:		// loop 20 times
+	jam 0,mem_keyscan_value_temp
+	ifetcht 1,regb
+	isolate1 7,temp								// exmcu gpio
+	branch keyboard_keyscan_mcu_start_loop,true		//???c????0012?? io
+	call gpio_out_active
+	call keyboard_keyscan_get_col_value
+	ifetcht 1,regb
+	call gpio_set_high_impedance
+keyboard_keyscan_mcu_start_loop:
+	increase 1,regb
+	fetch 2,mem_keyscan_value_ptr		//mcu c?????
+	call keyboard_keyscan_value_store
+	sub pdata,19,null						//sub pdata,19,null
+	branch keyboard_keyscan_mcu_start,positive
+	rtn
+
+
+keyboard_keyscan_get_col_value:
+	fetch 2,mem_kb_row_ptr
+	copy pdata,regc
+	arg 8,loopcnt
+
+keyboard_keyscan_get_col_value_loop:		// loop 8 times
+	ifetcht 1,regc
+	call gpio_get_bit
+	fetch 1,mem_keyscan_value_temp
+	rshift pdata,pdata
+	setflag true,7,pdata
+	store 1,mem_keyscan_value_temp
+	increase 1,regc
+	loop keyboard_keyscan_get_col_value_loop
+	rtn
+keyboard_keyscan_reset_exmcu:
+	fetcht 1,mem_mcu_rstb_gpio
+	call gpio_out_active
+	nop 20
+	fetcht 1,mem_mcu_rstb_gpio
+	call gpio_out_inactive
+	nop 6000						// waiting for exmcu reset done 502us > 301.9us
+	rtn
+	branch keyboard_keyscan
+keyboard_clk_state_high:
+	fetcht 1,mem_mcu_clk_gpio
+	branch gpio_out_inactive
+
+keyboard_clk_state_low:
+	fetcht 1,mem_mcu_clk_gpio
+	branch gpio_out_active
+keyboard_gpio_config_input_pu:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	set0 GPIO_ACTIVE_BIT,temp
+	branch gpio_config_input
+keyboard_clk_input:
+	fetcht 1,mem_mcu_clk_gpio
+	branch gpio_config_input
+
+keyboard_stb_state_high:
+	fetcht 1,mem_mcu_stb_gpio
+	branch gpio_out_inactive
+
+keyboard_stb_state_low:
+	fetcht 1,mem_mcu_stb_gpio
+	branch gpio_out_active
+/***********************************kscan process***********************************************/
+
+
+
+
+
+
+
+/**********************************key value process*******************************/
+// same key press check
+keyboard_press_change_or_no_key:
+	jam 0,mem_same_keyvalue_timerout_flag
+	fetch 2,mem_same_keyvalue_timer_init
+	store 2,mem_same_keyvalue_timer
+	rtn
+
+keyboard_key_process:
+	// key deshake
+	bpatch patch0a_0,mem_patch0a
+	arg mem_keyscan_value_current,rega
+	arg mem_keyscan_value_check,regb
+	arg 20,loopcnt
+	call string_compare
+	nbranch keyboard_press_change_or_no_key,zero
+	call keyboard_keyscan_value_current_zero_check
+	call keyboard_press_change_or_no_key,blank
+
+	call keyboard_ghost_key_check
+	fetch 1,mem_mouse_ghost_flag
+	nrtn blank
+	fetch 1,mem_keyboard_commbination_key_step
+	rtneq CAMMBINATION_KEY_PRESS
+	rtneq CAMMBINATION_KEY_HOLD
+	rtneq CAMMBINATION_KEY_WAIT_RELEASE
+
+	// keyvalue get from map,and in or out process
+	jam 0,mem_keyscan_col_loop_count
+	arg mem_keyscan_value_current,rega
+	arg mem_keyscan_value_old,regb
+keyboard_keyvalue_process:		// loop 20 times
+	ifetcht 1,rega
+	ifetch 1,regb
+	ixor  temp,pdata
+	branch keyboard_keyvalue_process_loop,blank
+	store 1,mem_keyscan_value_temp
+	storet 1,mem_keyboard_press_flag_temp
+	istoret 1,regb
+	jam 1,mem_keyboard_data_change_flag
+	jam 0,mem_keyboard_keyvalue_bit_loop_count
+keyboard_keyvalue_change:			// loop 8 times
+	fetch 1,mem_keyscan_value_temp
+	bbit0 0,keyboard_keyvalue_change_loop
+	fetch 1,mem_keyscan_col_loop_count
+	mul32 pdata,8,pdata
+	fetcht 1,mem_keyboard_keyvalue_bit_loop_count
+	iadd temp,pdata									// map offset
+	arg mem_keyboard_keyvalue_map,contr
+	iadd contr,contr
+	ifetch 1,contr
+	store 1,mem_keyboard_keyvalue_temp				// keyvalue
+	call keyboard_keyvalue_fn_replace
+	call keyboard_keyvalue_commbination_replace
+	call keyboard_keyvalue_in_out
+keyboard_keyvalue_change_loop:
+	fetch 1,mem_keyscan_value_temp
+	rshift pdata,pdata
+	store 1,mem_keyscan_value_temp
+	fetch 1,mem_keyboard_press_flag_temp
+	rshift pdata,pdata
+	store 1,mem_keyboard_press_flag_temp
+	fetch 1,mem_keyboard_keyvalue_bit_loop_count
+	increase 1,pdata
+	store 1,mem_keyboard_keyvalue_bit_loop_count
+	loop keyboard_keyvalue_change
+keyboard_keyvalue_process_loop:
+	increase 1,rega
+	increase 1,regb
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	sub pdata,19,null
+	branch keyboard_keyvalue_process,positive
+	rtn
+
+keyboard_keyscan_value_current_zero_check:
+	fetch 8,mem_keyscan_value_current
+	nrtn blank
+	fetch 8,mem_keyscan_value_current+8
+	nrtn blank
+	fetch 4,mem_keyscan_value_current+16
+	nrtn blank
+	jam CAMMBINATION_KEY_FREE,mem_keyboard_commbination_key_step
+	rtn
+
+/************************************ghost key ******************************************/
+//**input:mem_keyscan_value_current   **output:mem_mouse_ghost_flag   	mem_keyboard_all_press_key_count
+keyboard_ghost_key_check:	// (col[i] press >= 2) && (row[j] press >=2) && (c[i]_r[j] press)
+	bpatch patch0a_1,mem_patch0a
+	jam 0,mem_mouse_ghost_flag
+	jam 0,mem_keyboard_all_press_key_count
+	arg mem_keyscan_value_current,rega
+	arg 20,loopcnt
+keyboard_ghost_key_check_loop:
+	jam 0,mem_keyboard_current_col_press_key_count
+	ifetch 1,rega
+	branch keyboard_ghost_key_check_next_loop,blank
+keyboard_current_col_press_key_count_check:
+	fetcht 1,mem_keyboard_current_col_press_key_count
+	increase 1,temp
+	storet 1,mem_keyboard_current_col_press_key_count
+	copy pdata,temp
+	increase -1,pdata
+	iand temp,pdata									// pdata &= pdata -1;  check pdata bit1 count
+	nbranch keyboard_current_col_press_key_count_check,zero
+	fetch 1,mem_keyboard_current_col_press_key_count
+	fetcht 1,mem_keyboard_all_press_key_count
+	iadd temp,temp
+	storet 1,mem_keyboard_all_press_key_count
+	sub pdata,1,null
+	branch keyboard_ghost_key_check_next_loop,positive
+	sub temp,2,null
+	branch keyboard_ghost_key_check_next_loop,positive
+	jam 0,mem_keyscan_col_loop_count					// col[i] press key count >= 2
+	jam 0,mem_keyboard_same_row_press_key_count
+	ifetcht 1,rega
+	arg mem_keyscan_value_current,regb
+keyboard_same_row_key_check:
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	sub pdata,19,null
+	nbranch keyboard_ghost_key_check_next_loop,positive		// end col[i] row[0~7] check
+	ifetch 1,regb
+	iand temp,null												// col[i] & col[0~19]
+	branch keyboard_same_row_key_check_loop,zero
+	fetch 1,mem_keyboard_same_row_press_key_count
+	increase 1,pdata
+	store 1,mem_keyboard_same_row_press_key_count
+	sub pdata,1,null
+	branch keyboard_same_row_key_check_loop,positive
+	jam 1,mem_mouse_ghost_flag
+	rtn
+
+keyboard_ghost_key_check_next_loop:
+	increase 1,rega
+	loop keyboard_ghost_key_check_loop
+	rtn
+
+keyboard_same_row_key_check_loop:
+	increase 1,regb
+	branch keyboard_same_row_key_check
+
+/******************************ghost key*********************************************/
+
+
+
+
+/******************************fn replace*********************************************/
+keyboard_keyvalue_fn_replace:
+	bpatch patch0a_2,mem_patch0a
+	fetch 1,mem_keyboard_press_flag_temp
+	ncall keyboard_commbination_delay_release_clear,blank
+	fetch 1,mem_keyboard_fn_flag
+	ncall keyboard_keyvalue_fn_replace_press,blank
+	fetch 1,mem_keyboard_fn_first
+	fetcht 1,mem_keyboard_fn_flag
+	ixor temp,pdata
+	rtn zero
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_ESC,keyboard_keyvalue_fn_esc
+	beq HID_KEY_DELETE,keyboard_keyvalue_fn_delete
+	sub pdata,HID_KEY_F12,null
+	nrtn positive
+	arg HID_KEY_F1,temp
+	isub temp,pdata
+	nrtn positive
+	arg mem_keyboard_fn_f1,contr		//  HID_KEY_F1 <= keyvalue <= HID_KEY_F12
+	iadd contr,contr
+	ifetch 1,contr
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_replace_press:
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_UP_ARROW,keyboard_keyvalue_fn_up_arrow
+	beq HID_KEY_DOWN_ARROW,keyboard_keyvalue_fn_down_arrow
+	beq HID_KEY_LEFT_ARROW,keyboard_keyvalue_fn_left_arrow
+	beq HID_KEY_RIGHT_ARROW,keyboard_keyvalue_fn_right_arrow
+	beq HID_KEY_LEFT_CTRL,keyboard_keyvalue_fn_left_ctrl
+	beq HID_KEY_SPACE,keyboard_keyvalue_fn_space
+	rtn
+
+keyboard_keyvalue_fn_esc:
+	fetch 1,mem_keyboard_fn_esc
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_delete:
+	fetch 1,mem_keyboard_fn_del
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_up_arrow:
+	fetch 1,mem_keyboard_fn_arrow_enable_flag
+	rtn blank
+	setarg HID_KEY_PAGE_UP
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_down_arrow:
+	fetch 1,mem_keyboard_fn_arrow_enable_flag
+	rtn blank
+	setarg HID_KEY_PAGE_DOWN
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_left_arrow:
+	fetch 1,mem_keyboard_fn_arrow_enable_flag
+	rtn blank
+	setarg HID_KEY_HOME
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_right_arrow:
+	fetch 1,mem_keyboard_fn_arrow_enable_flag
+	rtn blank
+	setarg HID_KEY_END
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_left_ctrl:
+	fetch 1,mem_keyboard_fn_left_ctrl_enable_flag
+	rtn blank
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_WINDOWS,keyboard_keyvalue_windows_osk
+	setarg HID_KEY_OS_SOFT_KB
+	branch keyboard_keyvalue_store_temp
+keyboard_keyvalue_windows_osk:
+	setarg HID_KEY_OSK
+	branch keyboard_keyvalue_store_temp
+
+keyboard_keyvalue_fn_space:
+	fetch 1,mem_keyboard_fn_space_enable_flag
+	rtn blank
+	setarg HID_KEY_LANGUAGE
+keyboard_keyvalue_store_temp:
+	store 1,mem_keyboard_keyvalue_temp
+	rtn
+/**********************************key value process*******************************/
+
+
+
+/*******************************commbine keyvalue *************************************/
+keyboard_keyvalue_commbination_replace:
+	bpatch patch0a_3,mem_patch0a
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_PRINT_SCREEN,keyboard_commination_screen_shot_replace
+	beq HID_KEY_PAGE_UP,keyboard_commination_pageup_replace
+	beq HID_KEY_PAGE_DOWN,keyboard_commination_pagedown_replace
+	beq HID_KEY_HOME,keyboard_commination_home_replace
+	beq HID_KEY_END,keyboard_commination_end_replace
+	beq HID_KEY_SELECT_ALL,keyboard_commination_select_all
+	beq HID_KEY_COPY,keyboard_commbination_copy
+	beq HID_KEY_PASTE,keyboard_commbination_paste
+	beq HID_KEY_CUT,keyboard_commbination_cut
+	beq HID_KEY_ALL_OS_LOCK,keyboard_commination_os_lock
+	beq HID_KEY_OSK,keyboard_commbination_osk
+	beq HID_KEY_LANGUAGE,keyboard_commbination_language
+	beq HID_KEY_APP_TILING,keyboard_commbination_app_tiling
+	rtn
+
+keyboard_commbination_delay_release_set:
+	fetch 1,mem_keyboard_press_flag_temp
+	nrtn blank
+	jam 10,mem_keyboard_commbination_control_key_delay_release_timer
+	rtn
+
+keyboard_commbination_delay_release_clear:
+	jam 0,mem_keyboard_commbination_control_key_delay_release_timer
+	rtn
+
+keyboard_commination_screen_shot_replace:
+	fetch 1,mem_kb_computer_system
+	rtneq SYSTEM_OS_WINDOWS
+	rtneq SYSTEM_OS_ANDRIOD
+	jam LEFT_SHIFT_GUI,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_3,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+keyboard_commination_pageup_replace:
+	jam HID_KEY_UP_ARROW,mem_keyboard_commbination_standard_key_value
+keyboard_commination_ios_mac_command_commiation:
+	fetch 1,mem_kb_computer_system
+	rtneq SYSTEM_OS_WINDOWS
+	rtneq SYSTEM_OS_ANDRIOD
+	jam LEFT_GUI,mem_keyboard_commbination_control_key_value
+	branch keyboard_commbination_keypress
+
+keyboard_commination_pagedown_replace:
+	jam HID_KEY_DOWN_ARROW,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commination_ios_mac_command_commiation
+
+keyboard_commination_home_replace:
+	jam HID_KEY_LEFT_ARROW,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commination_ios_mac_command_commiation
+
+keyboard_commination_end_replace:
+	jam HID_KEY_RIGHT_ARROW,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commination_ios_mac_command_commiation
+
+keyboard_commination_select_all:
+	jam HID_KEY_A,mem_keyboard_commbination_standard_key_value
+keyboard_commbination_text_edit:
+	jam LEFT_CONTROL,mem_keyboard_commbination_control_key_value
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_WINDOWS,keyboard_commbination_keypress
+	beq SYSTEM_OS_ANDRIOD,keyboard_commbination_keypress
+	jam LEFT_GUI,mem_keyboard_commbination_control_key_value
+	branch keyboard_commbination_keypress
+
+keyboard_commbination_copy:
+	jam HID_KEY_C,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_text_edit
+
+keyboard_commbination_paste:
+	jam HID_KEY_V,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_text_edit
+
+keyboard_commbination_cut:
+	jam HID_KEY_X,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_text_edit
+
+keyboard_commination_os_lock:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_WINDOWS,keyboard_commination_windows_lock
+	beq SYSTEM_OS_MAC,keyboard_commination_mac_lock
+	setarg HID_KEY_IOS_ANDROID_OS_LOCK
+	branch keyboard_keyvalue_store_temp
+keyboard_commination_windows_lock:
+	jam LEFT_GUI,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_L,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+keyboard_commination_mac_lock:
+	jam LEFT_GUI_CONTROL,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_Q,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+keyboard_commbination_osk:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_WINDOWS,keyboard_commbination_windows_osk
+	setarg HID_KEY_OS_SOFT_KB
+	branch keyboard_keyvalue_store_temp
+keyboard_commbination_windows_osk:
+	jam LEFT_GUI_CONTROL,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_O,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+keyboard_commbination_language:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_WINDOWS,keyboard_commbination_language_windows
+	beq SYSTEM_OS_ANDRIOD,keyboard_commbination_language_andriod
+	jam LEFT_CONTROL,mem_keyboard_commbination_control_key_value
+keyboard_commbination_language_next:
+	jam HID_KEY_SPACE,mem_keyboard_commbination_standard_key_value
+	call keyboard_commbination_delay_release_set
+	branch keyboard_commbination_keypress
+keyboard_commbination_language_windows:
+	jam LEFT_GUI,mem_keyboard_commbination_control_key_value
+	branch keyboard_commbination_language_next
+keyboard_commbination_language_andriod:
+	jam LEFT_SHIFT,mem_keyboard_commbination_control_key_value
+	branch keyboard_commbination_language_next
+
+keyboard_commbination_app_tiling:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_WINDOWS,keyboard_commbination_app_tiling_windows_android
+	beq SYSTEM_OS_ANDRIOD,keyboard_commbination_app_tiling_windows_android
+	jam LEFT_CONTROL,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_UP_ARROW,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+keyboard_commbination_app_tiling_windows_android:
+	jam LEFT_GUI,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_TAB,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+keyboard_commbination_keypress:
+	jam 0,mem_keyboard_keyvalue_temp
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit0 0,keyboard_commbination_key_wait_release_set
+	fetch 1,mem_keyboard_commbination_key_step
+	beq CAMMBINATION_KEY_COMPLETE,keyboard_commbination_key_hold_set
+keyboard_commbination_key_press_set:
+	jam CAMMBINATION_KEY_PRESS,mem_keyboard_commbination_key_step
+	rtn
+
+keyboard_commbination_key_wait_release_set:
+	jam CAMMBINATION_KEY_WAIT_RELEASE,mem_keyboard_commbination_key_step
+	rtn
+
+keyboard_commbination_key_null_set:
+	jam CAMMBINATION_KEY_NULL,mem_keyboard_commbination_key_step
+	rtn
+
+//**input:   pdata:control key vaule       temp:standard key value
+keyboard_commbination_key_value_store:
+	store 1,mem_keyboard_tx_data+1
+	storet 1,mem_keyboard_tx_data+3
+	call enable_user
+	jam HID_REPORTID_KEY_STANDARD,mem_keyboard_tx_data
+	branch keyboard_motion_data_check_next
+
+keyboard_commbination_key_press_process:
+	fetch 1,mem_keyboard_commbination_control_key_value
+	arg 0,temp
+	call keyboard_commbination_key_value_store
+keyboard_commbination_key_hold_set:
+	jam CAMMBINATION_KEY_HOLD,mem_keyboard_commbination_key_step
+	rtn
+
+keyboard_commbination_key_hold_process:
+	jam CAMMBINATION_KEY_COMPLETE,mem_keyboard_commbination_key_step
+	fetch 1,mem_keyboard_commbination_control_key_value
+	fetcht 1,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_key_value_store
+
+keyboard_commbination_key_wait_release_process:
+	jam HID_REPORTID_KEY_STANDARD,mem_keyboard_tx_data
+	fetch 1,mem_keyboard_commbination_control_key_value
+	arg 0,temp
+	call keyboard_commbination_key_value_store
+	fetch 1,mem_keyboard_commbination_control_key_delay_release_timer
+	branch keyboard_commbination_key_null_set,blank
+keyboard_commbination_key_release_set:
+	jam CAMMBINATION_KEY_RELEASE,mem_keyboard_commbination_key_step
+	rtn
+
+keyboard_commbination_key_release_process:
+	branch keyboard_commbination_key_value_store+2
+
+keyboard_commbination_key_null_process:
+	jam CAMMBINATION_KEY_FREE,mem_keyboard_commbination_key_step
+	arg 0,pdata
+	arg 0,temp
+	branch keyboard_commbination_key_value_store
+
+
+
+keyboard_keyvalue_in_out:
+	bpatch patch0a_4,mem_patch0a
+	fetch 1,mem_keyboard_keyvalue_temp
+	sub pdata,HID_KEY_RIGHT_GUI,null
+	branch keyboard_keyvalue_standard,positive		// value  <= 0xe7
+	jam KEYBOARD_CONSUMER_KEY_PRESS,mem_keyboard_consumer_key_status
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit1 0,keyboard_keyvalue_standard
+	jam KEYBOARD_CONSUMER_KEY_RELEASE,mem_keyboard_consumer_key_status
+keyboard_keyvalue_standard:
+	jam 0,mem_keyboard_keyvalue_buffer+8
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit1 0,keyboard_keyvalue_standard_in
+keyboard_keyvalue_standard_out:
+	fetcht 1,mem_keyboard_keyvalue_temp
+	arg 6,loopcnt
+	arg mem_keyboard_keyvalue_buffer+2,contr
+keyboard_keyvalue_standard_out_loop:
+	ifetch 1,contr
+	branch keyboard_keyvalue_standard_out_next+1,blank
+	isub temp,null
+	nbranch keyboard_keyvalue_standard_out_next,zero
+	ifetch 1,contr
+	increase -2,contr
+	istore 1,contr
+	rtn blank
+	increase 1,contr
+	istoret 1,contr
+keyboard_keyvalue_standard_out_next:
+	loop keyboard_keyvalue_standard_out_loop
+	sub temp,HID_KEY_RIGHT_GUI,null
+	nrtn positive
+	sub temp,0xbf,null
+	rtn positive
+keyboard_keyvalue_control_key_out:
+	and temp,0x07,queue
+	fetch 1,mem_keyboard_keyvalue_buffer
+	qset0 pdata
+	store 1,mem_keyboard_keyvalue_buffer
+	rtn
+
+keyboard_keyvalue_standard_in:
+	fetcht 1,mem_keyboard_keyvalue_temp
+	arg 6,loopcnt
+	arg mem_keyboard_keyvalue_buffer+2,contr
+keyboard_keyvalue_standard_in_loop:
+	ifetch 1,contr
+	branch keyboard_keyvalue_standard_in_data,blank
+	isub temp,null
+	rtn zero
+	loop keyboard_keyvalue_standard_in_loop
+	sub temp,HID_KEY_RIGHT_GUI,null
+	nrtn positive
+	sub temp,0xbf,null
+	rtn positive
+keyboard_keyvalue_control_key_in:
+	and temp,0x07,queue
+	fetch 1,mem_keyboard_keyvalue_buffer
+	qset1 pdata
+	store 1,mem_keyboard_keyvalue_buffer
+	rtn
+
+keyboard_keyvalue_standard_in_data:
+	sub temp,HID_KEY_RIGHT_GUI,null
+	nbranch keyboard_keyvalue_standard_in_data_next,positive
+	sub temp,0xbf,null
+	nbranch keyboard_keyvalue_control_key_in,positive
+keyboard_keyvalue_standard_in_data_next:
+	increase -1,contr
+	istoret 1,contr
+	rtn
+
+/******************************** special key ****************************************************/
+// check Fn,pairing button,control key
+keyboard_special_key_check:
+	bpatch patch0a_5,mem_patch0a
+	call keyboard_pairing_button_check
+	jam 0,mem_keyboard_fn_flag
+	jam 0,mem_keyboard_control_key_flag
+	jam 0,mem_keyboard_bt_button_flag
+	fetch 1,mem_keyboard_keyvalue_buffer
+	ncall keyborad_control_key_set,blank
+	arg mem_keyboard_keyvalue_buffer+2,contr
+	arg 6,loopcnt
+keyboard_special_key_check_loop:
+	ifetch 1,contr
+	sub pdata,HID_KEY_FN,null
+	call keyboard_fn_set,zero
+	sub pdata,HID_KEY_PB,null
+	call keyboard_pb_set,zero
+	loop keyboard_special_key_check_loop
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_special_key_check_24g
+keyboard_special_key_check_bluetooth:
+	call keyboard_commbination_fast_conn_bt_check
+	fetch 1,mem_keyboard_pairing_type
+	branch keyboard_enable_bt_button_pairing,blank
+	fetch 2,mem_keyboard_keyvalue_buffer+2
+	fetcht 2,mem_keyboard_commbination_key_bt
+	isub temp,null
+	branch keyboard_long_button_bt_discovery,zero
+	byteswap temp,temp
+	isub temp,null
+	branch keyboard_long_button_bt_discovery,zero
+	rtn
+keyboard_special_key_check_24g:
+	fetch 1,mem_keyboard_pairing_type
+	branch keyboard_enable_bt_button_pairing,blank
+	branch keyboard_commbination_pairing_24g_check
+
+keyboard_pairing_button_check:
+	fetch 1,mem_keyboard_pairing_type
+	nrtn blank
+	fetcht 1,mem_config_select_device_button_gpio
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	call gpio_get_bit
+	nbranch keyboard_pairing_button_release,true
+	arg 8,loopcnt
+	arg mem_keyboard_keyvalue_buffer,contw
+	call clear_mem
+	jam HID_KEY_PB,mem_keyboard_keyvalue_buffer+2
+	rtn
+
+keyboard_pairing_button_release:
+	fetch 1,mem_keyboard_keyvalue_buffer+2
+	rtnne HID_KEY_PB
+	jam HID_KEY_NULL,mem_keyboard_keyvalue_buffer+2
+	rtn
+
+keyboard_enable_bt_button_pairing:
+	bpatch patch0a_6,mem_patch0a
+	fetch 1,mem_keyboard_bt_button_flag
+	rtn blank
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_24g_start_pair_mode
+keyboard_long_button_bt_discovery:
+//	call keyboard_pairing_check_otp_offset
+	jam 0,mem_keyboard_data_change_flag
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	call mouse_enable_function_flag
+	call app_evt_button_long_pressed
+	branch keyboard_bb_event_discovery_btn
+
+
+
+keyboard_commbination_pairing_24g_check:
+	fetch 2,mem_keyboard_keyvalue_buffer+2
+	fetcht 2,mem_keyboard_commbination_key_24g
+	isub temp,null
+	branch keyboard_24g_start_pair_mode,zero
+	byteswap temp,temp
+	isub temp,null
+	nrtn zero
+keyboard_24g_start_pair_mode:
+	call keyboard_pairing_check_otp_offset
+	jam 0,mem_keyboard_data_change_flag
+	fetch 2,mem_24g_pair_timeout
+	nrtn blank
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	call keyboard_capslock_led_off
+	branch mouse_24g_start_pair_mode
+
+
+keyborad_control_key_set:
+	jam 1,mem_keyboard_control_key_flag
+	rtn
+
+keyboard_fn_set:
+	jam 1,mem_keyboard_fn_flag
+	rtn
+
+keyboard_pb_set:
+	jam 1,mem_keyboard_bt_button_flag
+	rtn
+
+
+
+///////////////////////////////////////////////////////////////---motion----//////////////////////////////////
+keyboard_motion:
+	bpatch patch0a_7,mem_patch0a
+	disable user
+	jam 0,mem_customer_key
+	jam 0,mem_customer_data_trigger
+	jam 0,mem_customer_data_trigger_last
+	fetch 1,mem_keyboard_commbination_key_step
+	beq CAMMBINATION_KEY_PRESS,keyboard_commbination_key_press_process
+	beq CAMMBINATION_KEY_HOLD,keyboard_commbination_key_hold_process
+	beq CAMMBINATION_KEY_COMPLETE,keyboard_commbination_key_hold_process
+	beq CAMMBINATION_KEY_WAIT_RELEASE,keyboard_commbination_key_wait_release_process
+	beq CAMMBINATION_KEY_NULL,keyboard_commbination_key_null_process
+	fetch 1,mem_keyboard_data_change_flag
+	branch keyboard_no_key_press,blank
+	increase -1,pdata
+	store 1,mem_keyboard_data_change_flag
+	call keyboard_current_mult_update
+	jam 10,mem_keyboard_led_status_get_timer
+	call mouse_no_data_timer_init
+	fetch 1,mem_keyboard_commbination_key_step
+	beq CAMMBINATION_KEY_RELEASE,keyboard_commbination_key_release_process
+	arg mem_keyboard_tx_data,contw
+	arg 10,loopcnt
+	call clear_mem
+	call keyboard_motion_data_check
+	jam 0,mem_keyboard_data_send_flag
+	rtn
+
+keyboard_current_mult_update:
+	jam 3,mem_lpm_mult
+	jam 10,mem_mouse_current_mult_timer
+	rtn
+
+
+
+keyboard_no_key_press:
+	fetch 1,mem_device_flag
+	rtneq MODE_BT_DEVICE1
+	fetch 1,mem_keyboard_led_status_get
+	rtn blank
+	fetch 1,mem_24g_repeat_send_flag
+	nrtn blank
+	fetcht 1,mem_keyboard_led_status_get_timer_last
+	fetch 1,mem_keyboard_led_status_get_timer
+	isub temp,null
+	store 1,mem_keyboard_led_status_get_timer_last
+	rtn zero
+	arg mem_keyboard_tx_data,contw
+	arg 10,loopcnt
+	call clear_mem
+	call enable_user
+	branch keyboard_motion_data_check_next
+
+
+
+keyboard_motion_data_check:
+	fetch 1,mem_keyboard_consumer_key_status
+	beq KEYBOARD_CONSUMER_KEY_RELEASE,keyboard_value_consumer_release
+	arg mem_keyboard_keyvalue_buffer+2,contr
+	arg 6,loopcnt
+keyboard_value_tpye_check:
+	ifetch 1,contr
+	sub pdata,HID_KEY_RIGHT_GUI,null
+	nbranch keyboard_value_tpye_consumer_set,positive
+keyboard_value_tpye_check_loop:
+	loop keyboard_value_tpye_check
+
+	fetch 1,mem_keyboard_all_press_key_count
+	call keyboard_value_release_all_key,blank
+	jam HID_REPORTID_KEY_STANDARD,mem_keyboard_tx_data
+	fetch 1,mem_keyboard_keyvalue_buffer+2
+	sub pdata,HID_KEY_FN,null
+	branch keyboard_tx_data_skip_fn,zero
+	arg mem_keyboard_keyvalue_buffer,contr
+	arg mem_keyboard_tx_data+1,contw
+	arg 8,loopcnt
+keyboard_tx_data_store:
+	ifetch 1,contr
+	beq HID_KEY_FN,keyboard_tx_data_clear_fn
+keyboard_tx_data_store_loop:
+	istore 1,contw
+	loop keyboard_tx_data_store
+
+keyboard_motion_data_check_next:
+	call keyboard_device_data_tpye_check
+
+	fetch 1,mem_keyboard_data_send_flag
+	beq DEVICE_DATA_TPYE_MOUSE,enable_user
+	beq DEVICE_DATA_TPYE_STANDARD_KEYBOARD,device_send_keyboard_data
+	beq DEVICE_DATA_TPYE_NONSTARNDARD_KEYBOARD,device_send_keyboard_data
+	beq DEVICE_DATA_TPYE_CONSUMER,device_send_keyboard_data
+	beq DEVICE_DATA_TPYE_SYSTEM_CONCTOL,device_send_keyboard_data
+device_send_keyboard_data:
+	call mouse_customerkey_press
+	branch enable_user
+
+keyboard_value_release_all_key:
+	arg mem_keyboard_keyvalue_buffer,contw
+	arg 9,loopcnt
+	branch clear_mem
+
+
+keyboard_tx_data_skip_fn:
+	fetch 2,mem_keyboard_keyvalue_buffer
+	store 2,mem_keyboard_tx_data+1
+	fetch 6,mem_keyboard_keyvalue_buffer+3
+	store 6,mem_keyboard_tx_data+3
+	branch keyboard_motion_data_check_next
+
+keyboard_tx_data_clear_fn:
+	setarg 0
+	branch keyboard_tx_data_store_loop
+
+////////////////////////////////////////////////////---fn---//////////////////////////////////////////////////////////
+keyboard_value_tpye_consumer_set:
+	copy pdata,temp
+	bpatch patch0b_0,mem_patch0b
+	copy temp,pdata
+	jam HID_REPORTID_CONSUMER_KEY,mem_keyboard_tx_data
+	fetcht 1,mem_keyboard_all_press_key_count
+	sub temp,HID_KEY_NULL,null
+	branch keyboard_value_consumer_all_key_release,zero
+	beq 	HID_KEY_MULTIKEY_MEDIA,keyboard_value_media
+	beq 	HID_KEY_MULTIKEY_PALY,keyboard_value_play
+	beq 	HID_KEY_MULTIKEY_STOP,keyboard_value_stop
+	beq 	HID_KEY_MULTIKEY_PRE_TRACK,keyboard_value_pre_track
+	beq 	HID_KEY_MULTIKEY_NEXT_TRACK,keyboard_value_next_track
+	beq 	HID_KEY_MULTIKEY_VOL_DOWN,keyboard_value_vol_down
+	beq 	HID_KEY_MULTIKEY_VOL_UP,keyboard_value_vol_up
+	beq 	HID_KEY_MULTIKEY_MUTE,keyboard_value_mute
+	beq 	HID_KEY_MY_COMPUTER,keyboard_value_my_computer
+	beq 	HID_KEY_MAIL,keyboard_value_mail
+	beq 	HID_KEY_CALCULATOR,keyboard_value_calculator
+	beq 	HID_KEY_LIGHT_DOWN,keyboard_value_light_down
+	beq 	HID_KEY_LIGHT_UP,keyboard_value_light_up
+	beq 	HID_KEY_AC_FAVORITES,keyboard_value_ac_favorites
+	beq 	HID_KEY_AC_FORWARD,keyboard_value_ac_forward
+	beq 	HID_KEY_AC_BACK,keyboard_value_ac_back
+	beq 	HID_KEY_AC_STOP,keyboard_value_ac_stop
+	beq 	HID_KEY_AC_REFRESH,keyboard_value_ac_refresh
+	beq 	HID_KEY_AC_SEARCH,keyboard_value_ac_search
+	beq 	HID_KEY_AC_HOME,keyboard_value_ac_home
+	beq 	HID_KEY_IOS_ANDROID_OS_LOCK,keyboard_value_os_lock
+	beq 	HID_KEY_OS_SOFT_KB,keyboard_value_os_soft_kb
+	beq 	HID_KEY_SYSTEM_SLEEP,keyboard_value_system_sleep
+	branch keyboard_motion_data_check_next
+
+keyboard_value_media:
+	setarg 0x0183
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_play:
+	setarg 0x00cd
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_stop:
+	setarg 0x00b7
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_pre_track:
+	setarg 0x00b6
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_next_track:
+	setarg 0x00b5
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_vol_down:
+	setarg 0x00ea
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_vol_up:
+	setarg 0x00e9
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_mute:
+	setarg 0x00e2
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_my_computer:
+	setarg 0x0194
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_mail:
+	setarg 0x018a
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_calculator:
+	setarg 0x0192
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_light_down:
+	setarg 0x0070
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_light_up:
+	setarg 0x006f
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_ac_favorites:
+	setarg 0x022a
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_ac_forward:
+	setarg 0x0225
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_ac_back:
+	setarg 0x0224
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_ac_stop:
+	setarg 0x0226
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_ac_refresh:
+	setarg 0x0227
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_ac_search:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_IOS,keyboard_value_ac_home
+	beq SYSTEM_OS_MAC,keyboard_value_ac_home
+	setarg 0x0221
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_ac_home:
+	setarg 0x0223
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_os_lock:
+	setarg 0x0030
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_os_soft_kb:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_ANDRIOD,keyboard_value_os_soft_kb_andriod
+	setarg 0x01ae
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+keyboard_value_os_soft_kb_andriod:
+	setarg 0x0307
+	store 2,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+
+keyboard_value_consumer_all_key_release:
+keyboard_value_consumer_release:
+	jam 2,mem_keyboard_data_change_flag
+	fetch 1,mem_keyboard_all_press_key_count
+	call keyboard_value_release_all_key,blank
+	jam KEYBOARD_CONSUMER_KEY_STANDBY,mem_keyboard_consumer_key_status
+	setarg 0x03
+	store 3,mem_keyboard_tx_data
+	branch keyboard_motion_data_check_next
+keyboard_value_system_sleep:
+	jam HID_REPORTID_SYSTEM_CTRL,mem_keyboard_tx_data
+	setarg 0x02
+	store 1,mem_keyboard_tx_data+1
+	branch keyboard_motion_data_check_next
+
+
+/************************************fn**********************************************/
+
+
+
+keyboard_device_data_tpye_check:
+	bpatch patch0b_1,mem_patch0b
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,keyboard_device_data_tpye_check_next
+	jam 0,mem_24g_repeat_send_flag
+	fetch 2,mem_keyboard_tx_data
+	ncall keyboard_set_repeat_send_flag,blank
+	fetch 6,mem_keyboard_tx_data+3
+	ncall keyboard_set_repeat_send_flag,blank
+
+keyboard_device_data_tpye_check_next:
+	fetch 1,mem_keyboard_tx_data
+	beq HID_REPORTID_KEY_STANDARD,keyboard_standard_data_send
+	beq HID_REPORTID_MOUSE,keyboard_mouse_data_send
+	beq HID_REPORTID_CONSUMER_KEY,keyboard_consumer_data_send
+	beq HID_REPORTID_SYSTEM_CTRL,keyboard_system_control_data_send
+	rtn
+
+keyboard_mouse_data_send:
+	jam DEVICE_DATA_TPYE_MOUSE,mem_keyboard_data_send_flag
+	arg mem_keyboard_tx_data,contr
+	arg mem_mouse_key,contw
+	arg 7,loopcnt
+	branch memcpy
+
+keyboard_standard_data_send:
+	jam DEVICE_DATA_TPYE_STANDARD_KEYBOARD,mem_keyboard_data_send_flag
+	call keyboard_clear_key_data
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,keyboard_standard_data_send_end
+	call keyboard_24g_led_get_status_check
+	fetch 1,mem_keyboard_led_status_get
+	store 1,mem_keyboard_tx_data+2
+keyboard_standard_data_send_end:
+	arg mem_keyboard_tx_data,contr
+	arg mem_customer_key_press,contw
+	arg 9,loopcnt
+	branch memcpy
+
+keyboard_consumer_data_send:
+	jam DEVICE_DATA_TPYE_CONSUMER,mem_keyboard_data_send_flag
+	call keyboard_clear_key_data
+	setarg 0x03
+	call mouse_customer_media_key_set
+	arg mem_keyboard_tx_data+1,contr
+	arg mem_customer_key_press+1,contw
+	arg 2,loopcnt
+	branch memcpy
+
+keyboard_system_control_data_send:
+	jam DEVICE_DATA_TPYE_SYSTEM_CONCTOL,mem_keyboard_data_send_flag
+	call keyboard_clear_key_data
+	setarg 0x02
+	store 8,mem_customer_key_press
+	store 8,mem_customer_key_release
+	fetch 1,mem_keyboard_tx_data+1
+	store 1,mem_customer_key_press+1
+	rtn
+
+
+keyboard_clear_key_data:
+	arg 18,loopcnt
+	arg mem_customer_key_press,contw
+	branch clear_mem
+
+
+
+////////////////////////////////////////lpm/////////////////////////////////////////////////////////////////////////
+keyboard_lpm_before_common:
+	call clear_wake
+	call mouse_wheel_check
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_set_wake_by_current_state
+
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_set_wake
+
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	arg 20,loopcnt
+keyboard_key_col_wake_init:
+	ifetcht 1,regb
+	isolate1 7,temp				// exmcu gpio
+	ncall gpio_out_active,true
+	increase 1,regb
+	loop keyboard_key_col_wake_init
+
+	fetch 2,mem_kb_row_ptr
+	copy pdata,regb
+	arg 8,loopcnt
+keyboard_key_row_wake_init:
+	ifetcht 1,regb
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	ncall gpio_set_wake_by_current_state,zero
+	increase 1,regb
+	loop keyboard_key_row_wake_init
+	rtn
+
+keyboard_key_row_wake_set:
+	fetch 1,mem_same_keyvalue_timerout_flag
+	branch gpio_set_wake,blank
+	branch gpio_set_wake_by_current_state
+keyboard_process_lpm_before:
+	rtnmark1 mark_24g
+	call keyboard_lpm_before_common
+	fetch 1,mem_lpm_current_mult
+	nrtn blank					// 7.5ms, no gpio wakeup
+	branch gpio_clr_wake
+keyboard_before_hibernate:
+	bpatch patch0b_2,mem_patch0b
+	jam 0xff,mem_sensor_motion_gpio
+	call disable_authrom
+	call keyboard_device_led_all_off
+	call mouse_before_hibernate_wheel_gpio_set
+	call mouse_setgpio_hibernate
+	call mouse_flash_power_down
+	fetcht 1,mem_sensor_motion_gpio
+	branch gpio_clr_wake
+
+keyboard_power_down:
+	call keyboard_device_led_all_off
+keyboard_app_enter_hibernate:
+	bpatch patch0b_3,mem_patch0b
+	call keyboard_setgpio_hibernate
+	call ice_break
+	branch app_enter_hibernate
+
+keyboard_device_led_all_off:
+	bpatch patch0b_4,mem_patch0b
+	call keyboard_device_led_off
+	call keyboard_numlock_led_off
+	call keyboard_capslock_led_off
+	branch keyboard_power_led_off
+
+
+
+
+
+
+keyboard_setgpio_hibernate:
+	bpatch patch0b_5,mem_patch0b
+	call clear_wake
+	call keyboard_device_led_all_off
+	call mouse_set_sdio_high
+	call keyboard_lpm_before_common
+	call mouse_gpio_pd_idle
+	fetcht 1,mem_mouse_reuse_2ice_gpio
+	call mouse_gpio_config_input_pu
+	call mouse_gpio_set_high_impedance
+	branch mouse_adc_gpio_set_before_hibernate
+////////////////////////////////////////24g/////////////////////////////////////////////////////////////////////////
+
+
+
+
+
+
+
+
+
+
+keyboard_g24_reconn_dispatch:
+	fetch 2,mem_24g_reconn_count
+	and_into 0xe0,pdata
+	branch keyboard_g24_reconn_dispatch_next,blank		// each 0x100 times,reconnect 16 times
+	fetch 2,mem_24g_reconn_count
+	increase 1,pdata
+	store 2,mem_24g_reconn_count
+	rtn
+keyboard_g24_reconn_dispatch_next:
+	call g24_reconn_data_prep
+	call g24_transmit_receive_ack
+	nbranch g24_reconn_device_fail,sync
+	nbranch g24_reconn_device_fail,user3
+	call keyboard_g24_ackpayload_parse
+	branch g24_reconn_dispatch_next+5
+
+
+
+keyboard_g24_transmit_no_interrupt:
+
+	call g24_txdata_prep
+	nbranch keyboard_g24_nodata_transmit,user
+keyboard_g24_transmit_start:
+	call keyboard_g24_transmit_process
+	call keyboard_power_ctrl_start
+	branch keyboard_g24_transmit_start_next
+
+keyboard_g24_nodata_transmit:
+	fetch 8,mem_keyscan_value_current
+	nbranch keyboard_g24_transmit_start,blank
+	fetch 8,mem_keyscan_value_current+8
+	nbranch keyboard_g24_transmit_start,blank
+	fetch 4,mem_keyscan_value_current+16
+	nbranch keyboard_g24_transmit_start,blank
+
+	fetch 1,mem_24g_transmit_by_interrupt
+	rtneq G24_TX_TIMER_INT_ENABLE
+	call g24_search_receiver
+keyboard_g24_long_sleep:
+	call keyboard_g24_lpm_wait
+	nrtn user
+	fetch 1,mem_sensor_shutdown_flag
+	ncall keyboard_setgpio_hibernate,blank
+	fetch 4,mem_24g_enter_hibernate
+	branch g24_long_seep2
+
+keyboard_g24_transmit_process:
+	bpatch patch0b_6,mem_patch0b
+	jam 0,mem_24g_retry
+keyboard_g24_transmit_loop:
+	fetchr timeup,2,mem_param_rx_setup
+	until clkn_rt,meet
+	call keyboard_special_key_check
+	fetch 1,mem_keyboard_bt_button_flag
+	nbranch mouse_soft_reset,blank
+	call g24_transmit_receive_ack
+	fetch 1,mem_24g_no_ack	//tx noack
+	beq no_ack_24g,g24_transmit_no_ack
+	nbranch keyboard_g24_retransmit,sync
+	nbranch keyboard_g24_retransmit,user3
+	call keyboard_g24_ackpayload_parse
+	jam 0,mem_sensor_shutdown_flag
+	branch g24_transmit_no_ack
+
+
+keyboard_g24_retransmit:
+	fetch 1,mem_24g_abort_pac
+	nrtn blank
+	fetch 2,mem_24g_txfail_cnt
+	increase 1,pdata
+	store 2,mem_24g_txfail_cnt
+	fetch 1,mem_24g_txfail_cnt
+	beq 0xff,g24_tx_attempt_fail
+	call keyboard_g24_transmit_hop_process
+	branch keyboard_g24_transmit_loop
+
+
+keyboard_g24_transmit_hop_process:
+	fetcht 1,mem_24g_retry
+	sub temp,20,null
+	branch keyboard_g24_tx_fast_hop,positive		//  1-3 current channel  4~ 20 fast hop
+	arg 25,loopcnt
+	call delay_ms_wait
+	branch g24_hop_ch_disable
+
+keyboard_g24_tx_fast_hop:
+	increase 1,temp
+	storet 1,mem_24g_retry
+	fetch 4,mem_24g_addr
+	fetcht 4,mem_24g_fast_conn_addr
+	isub temp,null
+	branch g24_ch,zero
+	fetch 1,mem_24g_retry
+	sub pdata,3,null
+	rtn positive
+	branch g24_tx_fast_hop
+
+
+keyboard_g24_lpm_wait:
+	enable user
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	branch disable_user,blank
+	fetch 1,mem_keyboard_fn_flag
+	nbranch disable_user,blank
+	fetch 1,mem_keyboard_control_key_flag
+	nbranch disable_user,blank
+	fetch 1,mem_keyboard_commbination_control_key_delay_release_timer
+	nbranch disable_user,blank
+	fetch 1,mem_24g_transmit_by_interrupt
+	beq G24_TX_TIMER_INT_ENABLE,disable_user
+	branch g24_lpm_wait+5
+
+keyboard_power_ctrl_start:
+	fetch 4,mem_24g_addr
+	fetcht 4,mem_24g_fast_conn_addr
+	isub temp,null
+	nbranch power_ctrl_start+1,zero
+	jam TX_POWER_F30DB,mem_tx_power
+	rtn
+keyboard_g24_transmit_start_next:
+	fetch 8,mem_24g_long_sleep_set
+	store 8,mem_24g_enter_hibernate
+	fetch 2,mem_24g_long_sleep_param_update_timer_init
+	store 2,mem_24g_long_sleep_param_update_timer
+keyboard_g24_short_sleep:
+	bpatch patch0b_7,mem_patch0b
+	call g24_lpm_wait
+	nrtn user
+	call clear_wake
+	fetch 3,mem_24g_short_sleep_set
+	branch g24_long_seep2
+
+
+
+
+
+
+keyboard_24g_package_data:
+
+	rtnmark0 mark_24g
+	call keyboard_motion
+	nrtn user
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_KEYBOARD,mouse_24g_mouse_package_data
+	fetch 1,mem_customer_key
+	nbranch keyboard_24g_keyboard_package_data,blank
+	branch mouse_24g_mouse_package_data
+
+keyboard_24g_keyboard_package_data:
+	jam TYPE_KB,mem_24g_data_type
+	arg 9,rega	//length
+	fetch 1,mem_customer_data_trigger
+	nbranch keyboard_customer_key_press,blank
+	arg mem_customer_key_release,regb	//tx buff
+	rtn
+keyboard_customer_key_press:
+	arg mem_customer_key_press,regb
+	rtn
+
+
+/**************************************g24 search receiver*****************************************/
+
+keyboard_24g_search_dongle_init:
+	setarg 0
+	store 3,mem_mouse_search_dongle_action
+	rtn
+
+keyboard_24g_search_dongle:
+	bpatch patch0c_0,mem_patch0c
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_24G_SEARCH_DONGLE
+	fetch 1,mem_mouse_long_mult_flag
+	rtn blank
+	fetch 1,mem_24g_abort_pac
+	rtn blank
+	fetch 1,mem_mouse_search_dongle_interval
+	increase 1,pdata
+	and_into 3,pdata
+	store 1,mem_mouse_search_dongle_interval
+	nrtn blank	//400ms
+	jam 0,mem_mouse_search_dongle_ch
+keyboard_24g_search_dongle_loop:
+
+	fetch 1,mem_mouse_search_dongle_ch
+	increase 1,pdata
+	store 1,mem_mouse_search_dongle_ch
+	sub pdata,G24_CH_NUMBER,null
+	nbranch keyboard_24g_search_dongle_loop_end,positive
+	call g24_reconn_data_prep
+	call g24_transmit_receive_ack
+	nbranch keyboard_24g_search_dongle_loop_retry,sync
+	nbranch keyboard_24g_search_dongle_loop_retry,user3
+	call keyboard_g24_ackpayload_parse
+	call keyboard_24g_search_dongle_success
+keyboard_24g_search_dongle_loop_end:
+	call g24_txbuf_clear
+	fetch 1,mem_mouse_search_dongle_count
+	increase 1,pdata
+	store 1,mem_mouse_search_dongle_count
+	beq G24_CH_POLL_COUNT,keyboard_24g_search_dongle_check
+	rtn
+
+keyboard_24g_search_dongle_loop_retry:
+	call g24_ch
+	branch keyboard_24g_search_dongle_loop
+
+keyboard_24g_search_dongle_check:
+	jam 0,mem_mouse_search_dongle_count
+	fetch 1,mem_mouse_search_dongle_action
+	rtnbit1 G24_DISCONN_STATE
+	set1 G24_DISCONN_STATE,pdata
+	store 1,mem_mouse_search_dongle_action
+	fetch 2,mem_mouse_24g_search_dongle_time_init		//3min
+	store 2,mem_mouse_no_data_timer
+	rtn
+
+
+keyboard_24g_search_dongle_success:
+	fetch 1,mem_24g_abort_pac
+	branch keyboard_24g_search_dongle_init,blank
+	jam 0,mem_mouse_search_dongle_count
+	fetch 1,mem_mouse_search_dongle_action
+	rtnbit0 G24_DISCONN_STATE
+	set0 G24_DISCONN_STATE,pdata
+	store 1,mem_mouse_search_dongle_action
+	branch mouse_no_data_timer_init
+
+
+keyboard_g24_ackpayload_parse:
+	call g24_ackpayload_parse
+	fetch 1,mem_24g_rxbuf+1
+	compare 0x08,pdata,0xf8
+	nrtn true
+	fetch 1,mem_24g_rxbuf+2		// pc sleep mouse ackpayload: 01 08 ff
+	beq 0xff,keyboard_24g_hibernate_set
+	rtn
+
+
+
+/////////////////////////////////////////////////////// ble auto recognize////////////////////////////////////////////////////////////
+keyboard_le_send_att_find_by_type_value_request_ancs:
+	jam 1,mem_le_connect_ios_mac_flag
+	arg 23,rega
+	arg LE_L2CAP_CID_ATT,regb
+	call le_fifo_malloc_tx_l2cap
+	setarg ATTOP_FIND_BY_TYPE_VALUE_REQUEST
+	istore 1,contw
+	setarg 0x0001		//start handle
+	istore 2,contw
+	setarg 0xffff		//end handle
+	istore 2,contw
+	setarg 0x2800		//uuid type
+	istore 2,contw
+	arg mem_le_search_service_uuid,contr
+	branch memcpy16
+keyboard_le_att_auto_reco_process:
+	bpatch patch0c_1,mem_patch0c
+	fetch 1,mem_le_connect_ios_mac_flag
+	rtn blank
+	copy rega,contr
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+	beq ATTOP_READ_RESPONSE,keyboard_le_parse_att_manu_resp
+	beq ATTOP_READ_BY_TYPE_RESPONSE,keyboard_le_send_att_read_by_type_rsp_mac
+	beq ATTOP_FIND_BY_TYPE_VALUE_RESPONSE,keyboard_le_parse_att_find_by_type_value_rsp
+	beq ATTOP_ERROR_RESPONSE,keyboard_le_send_att_find_by_type_value_request_mac
+	branch le_parse_att2
+
+keyboard_le_parse_att_find_by_type_value_rsp:
+	fetch 1,mem_le_connect_ios_mac_flag
+	beq 2,keyboard_le_parse_att_find_by_type_value_rsp_mac
+keyboard_le_parse_att_find_ios_report:
+	jam SYSTEM_OS_IOS,mem_kb_computer_system
+	branch keyboard_otp_store_computer_system_ble
+keyboard_le_parse_att_not_find_mac_report:
+
+	fetch 1,mem_le_conn_peer_addr_type
+	store 1,mem_kb_computer_system
+	branch keyboard_otp_store_computer_system_ble
+keyboard_le_parse_att_find_mac_report:
+	jam SYSTEM_OS_MAC,mem_kb_computer_system
+keyboard_otp_store_computer_system_ble:
+	jam 0,mem_le_connect_ios_mac_flag
+	fetcht 2,mem_otp_read_retention_offset
+	setarg 0x1fd0
+	isub temp,regb
+	arg mem_kb_computer_system,rega
+//	copy regb,temp
+	arg 1,loopcnt
+	call otp_write
+	fetcht 2,mem_otp_read_retention_offset
+	increase 14,temp
+	storet 2,mem_otp_read_retention_offset
+	rtn
+
+
+// second time read device info service differ phone from other
+keyboard_le_send_att_find_by_type_value_request_mac:
+	fetch 1,mem_le_connect_ios_mac_flag
+	beq 2,keyboard_le_parse_att_not_find_mac_report
+	jam 2,mem_le_connect_ios_mac_flag
+	arg 9,rega
+	arg LE_L2CAP_CID_ATT,regb
+	call le_fifo_malloc_tx_l2cap
+	setarg ATTOP_FIND_BY_TYPE_VALUE_REQUEST
+	istore 1,contw
+	setarg 0x0001		//start handle
+	istore 2,contw
+	setarg 0xffff		//end handle
+	istore 2,contw
+	setarg 0x2800		//uuid type
+	istore 2,contw
+	arg 2,loopcnt
+	arg mem_le_search_mac_uuid,contr
+	branch memcpy
+//third time read handle for manufactory name
+keyboard_le_parse_att_find_by_type_value_rsp_mac:
+	arg 7,rega
+	arg LE_L2CAP_CID_ATT,regb
+	call le_fifo_malloc_tx_l2cap
+	setarg ATTOP_READ_BY_TYPE_REQUEST
+	istore 1,contw
+	fetcht 2,mem_le_payload_ptr
+	increase 5,temp
+	ifetch 4,temp
+	istore 4,contw
+	setarg 0x2803
+	istore 2,contw
+	rtn
+//fourth time whether read manufactory name isn't in device info service
+keyboard_le_send_att_read_by_type_rsp_mac:
+	fetch 2,mem_le_l2cap_size
+	increase -2,pdata
+	div pdata,7
+	call wait_div_end
+	quotient loopcnt
+	fetch 2,mem_le_payload_ptr
+	add pdata,6,contr
+	branch keyboard_le_check_att_read_type_manu_loop
+
+keyboard_le_check_att_read_type_manu_loop:
+	increase 3,contr
+	ifetch 2,contr
+	copy pdata,regc
+	ifetch 2,contr
+	arg 0x2a29,temp
+	isub temp,null
+	branch keyboard_le_send_att_read_by_type_rsp_manufactory,zero
+	loop keyboard_le_check_att_read_type_manu_loop
+	branch keyboard_le_parse_att_not_find_mac_report
+keyboard_le_send_att_read_by_type_rsp_manufactory:
+	arg 3,rega
+	arg LE_L2CAP_CID_ATT,regb
+	call le_fifo_malloc_tx_l2cap
+	setarg ATTOP_READ_REQUEST
+	istore 1,contw
+	copy regc,pdata
+	istore 2,contw
+	rtn
+//fifth time 	read manufactory name make sure is Apple Inc
+keyboard_le_parse_att_manu_resp:
+	fetch 2,mem_le_l2cap_size
+	arg 9,loopcnt
+	fetch 2,mem_le_payload_ptr
+	add pdata,5,rega
+	arg mem_le_search_mac_manu_name,regb
+	call string_compare
+	branch keyboard_le_parse_att_find_mac_report,zero
+	branch  keyboard_le_parse_att_not_find_mac_report
+
+
+
+
+
Index: program/app_mouse.prog
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/app_mouse.prog	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/app_mouse.prog	(working copy)
@@ -0,0 +1,5303 @@
+
+ifdef COMPILE_MOUSE
+mouse_init:
+	call enable_authrom
+	call mouse_setting_config
+	call mouse_init_sunt
+	rtn wake
+	call mouse_setting_sensor_type
+	call mouse_drawing_optima_init
+	call mouse_cb_fuction
+	call mouse_sensor_powerdown
+mouse_init_wireless:	
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	call mouse_check_select_device_by_switch
+	branch mouse_start_work
+
+
+mouse_cb_fuction:
+	bpatch patch0d_0,mem_patch0d
+	setarg mouse_24g_short_sleep
+	store 2,mem_cb_24g_transmit_short_sleep
+	setarg mouse_24g_long_sleep
+	store 2,mem_cb_24g_transmit_long_sleep
+	setarg mouse_24g_before_lpm_sleep
+	store 2,mem_cb_before_lpm_sleep
+	setarg mouse_24g_package_data
+	store 2,mem_cb_24g_transmit_data
+	setarg mouse_24g_search_dongle
+	store 2,mem_cb_24g_search_receiver
+	setarg mouse_lpm_before_common
+	store 2,mem_cb_24g_lpm_before
+	setarg mouse_le
+	store 2,mem_cb_le_process
+	setarg mouse_process_lpm_before
+	store 2,mem_cb_before_lpm
+	setarg mouse_priority_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg mouse_idle
+	store 2,mem_cb_idle_process
+	setarg mouse_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg mouse_le_bb_event_connect_complete
+	store 2,mem_cb_att_write	
+	setarg mouse_bb_event_timer
+	store 2,mem_cb_event_timer
+	setarg mouse_spi_write_flash_cb
+	store 2,mem_cb_spi_flash_write_complate
+	setarg mouse_lpm_check_wake_lock
+	store 2,mem_cb_check_wakelock
+	setarg mouse_le_transmit
+	store 2,mem_cb_ble_transmit
+	setarg mouse_set_lpm_mult
+	store 2,mem_cb_bt_set_mult
+	rtn
+
+
+mouse_setting_config:
+	rtn wake
+	call g24_transmit_init
+	call g24_chmap_param_init
+	call mouse_24g_send_time_long_wake
+	call mouse_gpio_init
+	call mouse_le_name_modify
+	call mouse_param_init
+	call mouse_device_multi_led_parm_init
+	call le_set_fixed_ltk_justwork
+mouse_load_device_info_check:
+	bpatch patch0d_1,mem_patch0d
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_load_eeprom_info_check
+	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_check
+	bbit1 MOUSE_ENABLE_OTP,mouse_load_otp_info_check
+	rtn
+	
+mouse_xtal_init:
+	jam XTAL_16M,mem_fcomp_div		// 0x08--16M 
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_16M
+	jam XTAL_24M,mem_fcomp_div		// 0x18--24M
+	rtn
+
+mouse_24g_phy_select:
+	call g24_enable_1M
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_24G_2M_PHY
+	branch g24_enable_2M
+
+mouse_default_init:
+	bpatch patch0d_2,mem_patch0d
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_KEYBOARD_ENABLE,pdata
+	call mouse_customer_key_enable,true
+	
+mouse_default_parm_init:
+	fetch 2,mem_mouse_24g_pair_timeout_init
+	store 2,mem_24g_pair_timeout_init
+
+	fetch 1,mem_mouse_24g_reconn_timeout_init
+	store 2,mem_24g_reconn_timeout_init
+
+	fetch 5,mem_rssi_dis_min_24g_init
+	store 5,mem_rssi_dis_min_24g
+
+	fetch 1,mem_mouse_24g_pair_tx_power
+	store 1,mem_24g_pair_tx_power
+
+	fetch 1,mem_24g_ch_map_update
+	ncall g24_chamap_param_update,blank
+mouse_default_parm_init_next:
+	bpatch patch0d_3,mem_patch0d
+	call mouse_xtal_init
+	call mouse_24g_phy_select
+	call mouse_24g_long_sleep_set
+	branch g24_pair_param_init
+
+mouse_param_common_init:
+	setarg MOUSE_BLE_ATT_LIST_ADDR				//ble attlist start address
+	store 2,mem_ui_le_uuid_table
+	jam 3,mem_lpm_mult_timeout
+	jam 8,mem_lpm_overhead
+	jam PB_BUTTON_STATE_UP,mem_select_device_button_statue
+	jam COMMBINATION_KEY_STATE_UP,mem_commbination_key_statue	
+	setarg 0x0200
+	store 2,mem_lpm_interval
+	jam 0x17,mem_le_local_mtu
+	jam 0x17,mem_le_remote_mtu
+
+	setarg mem_le_tx_buffer0_omemalloc
+	store 2,mem_ble_l2cap_tx_buff0_ptr
+	setarg MOUSE_BLE_L2CAP_TXBUFF_SIZE
+	store 2,mem_ble_l2cap_tx_buff_size_ptr
+	branch mouse_adc_gpio_mux_init
+	
+mouse_param_init:
+	bpatch patch0d_4,mem_patch0d
+	call mouse_param_common_init
+	jam DPI_BUTTON_STATE_UP,mem_mouse_dpi_button_state	
+//===========init spi param==============================
+	setarg 0x0a77
+	store 2,mem_spi_init_clk
+	setsect 0,0x1224
+	setsect 1,0x4000
+	setsect 2,0x0
+	istore 5,contw
+//======================================================	
+	
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_BT_125Hz,mouse_param_init_intervl_end
+	setarg LE_INTERVAL_7_5MS
+	store 2,mem_le_interval_min
+	store 2,mem_le_interval_min+2
+mouse_param_init_intervl_end:
+	call mouse_g24_interval_param_8ms
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_24G_250Hz,mouse_24g_short_sleep_set_end
+	call mouse_g24_interval_param_4ms
+mouse_24g_short_sleep_set_end:
+	fetch 3,mem_24g_short_sleep_set
+	store 3,mem_mouse_24g_short_sleep_set_init
+	fetch 1,mem_device_flag
+	store 1,mem_device_flag_temp
+	fetch 3,mem_le_lap+3
+	store 3,mem_mouse_le_lap_temp
+	setarg 0
+	store 7,mem_mouse_key
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_bt_discovery_count
+	store 1,mem_select_device_count
+	call le_modified_name_adv
+mouse_sensor_set_angle:
+	bpatch patch0d_5,mem_patch0d
+	fetch 1,mem_sensor_angle_default
+	store 1,mem_config_sensor_angle
+	fetch 1,mem_select_sensor_angle_gpio
+	rtneq GPIO_DISABLE
+	fetcht 1,mem_select_sensor_angle_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_select_sensor_angle_gpio
+	call gpio_get_bit
+	call mouse_sensor_switch_angle,true
+	branch mouse_gpio_config_input_pd
+mouse_sensor_switch_angle:
+	fetch 1,mem_sensor_angle_switch
+	store 1,mem_config_sensor_angle
+	rtn
+
+mouse_g24_interval_param_4ms:
+	fetch 3,mem_mouse_24g_short_sleep_set_4ms
+	store 3,mem_24g_short_sleep_set
+	fetch 3,mem_mouse_24g_long_sleep_set_4ms
+	store 3,mem_24g_long_sleep_set
+	fetch 1,mem_mouse_24g_fast_hop_count_4ms
+	store 1,mem_24g_fast_hop_count
+	fetch 4,mem_mouse_24g_tsniff_4ms
+	store 4,mem_mouse_24g_tsniff	
+mouse_report_rate_set_250hz:
+	setarg 0x100c0c
+	store 3,mem_24g_interval
+	rtn
+
+mouse_g24_interval_param_8ms:
+	fetch 3,mem_mouse_24g_short_sleep_set_8ms
+	store 3,mem_24g_short_sleep_set
+	fetch 3,mem_mouse_24g_long_sleep_set_8ms
+	store 3,mem_24g_long_sleep_set
+	fetch 1,mem_mouse_24g_fast_hop_count_8ms
+	store 1,mem_24g_fast_hop_count
+	fetch 4,mem_mouse_24g_tsniff_8ms
+	store 4,mem_mouse_24g_tsniff
+mouse_report_rate_set_125hz:
+	setarg 0x1c1919
+	store 3,mem_24g_interval
+	rtn
+
+//mouse_report_rate_set_500hz:
+//	setarg 0x080606
+//	store 3,mem_24g_interval
+//	rtn
+//mouse_report_rate_set_1000hz:
+//	setarg 0x040303
+//	store 3,mem_24g_interval
+//	rtn
+
+
+mouse_start_work:
+	bpatch patch0d_6,mem_patch0d
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING, mouse_24g_first_start_auto_pair_mode
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_start_mode
+mouse_le_fast_conn_judge:
+	call mouse_bluetooth_fast_conn_disable
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_le_device1_judge
+	beq MODE_BT_DEVICE2,mouse_le_device2_judge
+	rtn
+mouse_le_device1_judge:
+	fetch 6,mem_device1_addr
+	fetcht 6,mem_mouse_compare_addr
+	isub temp,null
+	branch mouse_bluetooth_fast_conn_init,zero
+	branch mouse_start_reconnect_device
+	
+mouse_le_device2_judge:
+	fetch 6,mem_device2_addr
+	fetcht 6,mem_mouse_compare_addr
+	isub temp,null
+	branch mouse_bluetooth_fast_conn_init,zero
+	branch mouse_start_reconnect_device
+	
+mouse_start_reconnect_device:
+	bpatch patch0d_7,mem_patch0d
+	call mouse_device_le_reconn_led_config
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	increase -1,pdata
+	mul32 pdata,29,pdata
+	iadd rega,rega
+	ifetch 1,rega
+	store 1,mem_xrecord_mode
+mouse_start_reconnect:	
+	fetch 1,mem_xrecord_mode
+	beq REC_4_MODE,mouse4_0_check_reconn_target
+	branch mouse_bluetooth_fast_conn_init
+
+mouse_wakeup_from_power_check:
+	bpatch patch0e_0,mem_patch0e
+	disable user
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_WAKEUP_FROM_POWER,mouse_wakeup_from_poweron
+	fetch 1,core_lpm_isogate
+	bbit1 cold_wake,mouse_wakeup_from_poweron
+	enable user	//wake from hibernate
+mouse_wakeup_from_poweron:
+	fetch 1,mem_reconn_times_init
+	store 1,mem_reconn_times
+	rtn
+
+mouse4_0_check_reconn_target:
+	jam 1,mem_mouse_le_reconnect_flag
+	fetcht 1,mem_mouse_fast_direct_timeout
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,mouse4_0_check_reconn_target_next
+	fetcht 1,mem_mouse_direct_timeout
+mouse4_0_check_reconn_target_next:	
+	storet 1,mem_mouse_direct_timer
+	call app_lpm_mult_disable
+	fetch 3,mem_le_adv_direct_ind
+	store 3,mem_le_adv_data+4
+	call mouse_le_check_adv_flag
+	setarg ADV_FLAG_BREDR_NOT_SUPPORTED
+	istore 1,contr
+	arg mem_le_scan_data,contr
+	call mouse_le_adv_data_update
+	branch check_51cmd_adv
+
+
+/**********************system clk**********************************/
+mouse_lpm_check_wake_lock:
+	bmark1 mark_24g,app_get_lpm_wake_lock
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	branch app_get_lpm_wake_lock,blank
+	fetch 1,mem_mouse_le_conn_param_reject
+	beq LE_LPM_DISABLE,app_get_lpm_wake_lock
+	fetch 1,mem_mouse_wheel_trigger
+	nbranch app_get_lpm_wake_lock,blank
+	branch app_put_lpm_wake_lock
+
+/**********************system clk end*****************************/
+
+//mouse_delay_enter_hibernata:
+//	fetch 1,mem_mouse_direct_timeout
+//	store 1,mem_mouse_bluetooth_reconnect_timeout
+//	rtn
+ 
+mouse_app_enter_hibernate:
+	bpatch patch0e_1,mem_patch0e
+	setarg PAN_REG_CONFIG
+	call twspi_read
+	bbit1 3,mouse_app_enter_hibernate_next
+	call mouse_sensor_reset
+	call mouse_sensor_powerdown
+mouse_app_enter_hibernate_next:
+	call mouse_setgpio_hibernate
+	branch app_enter_hibernate
+
+mouse_before_hibernate:
+	bpatch patch0e_2,mem_patch0e
+	call disable_authrom 
+	call mouse_before_hibernate_wheel_gpio_set
+	call mouse_setgpio_hibernate
+	call mouse_flash_power_down
+	fetcht 1,mem_sensor_motion_gpio
+	branch gpio_clr_wake
+
+
+mouse_setgpio_hibernate:
+	bpatch patch0e_3,mem_patch0e
+	call mouse_set_sdio_high
+	call clear_wake
+	call mouse_logo_led_off
+	call mouse_lpm_before_common
+	call mouse_gpio_pd_idle
+	fetcht 1,mem_mouse_reuse_2ice_gpio
+	call mouse_gpio_config_input_pu
+	call mouse_gpio_set_high_impedance
+	call mouse_device_multi_led_all_off
+	call mouse_adc_gpio_set_before_hibernate
+	branch mouse_wheel_gpio_set_before_hibernate
+
+mouse_wheel_gpio_set_before_hibernate:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+mouse_wheel_gpio_clr_wakeup:	
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_clr_wake
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_clr_wake
+	fetcht 1,mem_whee_a_data_gpio
+	call mouse_gpio_config_input_pd
+	fetcht 1,mem_whee_b_data_gpio
+	branch mouse_gpio_config_input_pd
+	
+mouse_adc_gpio_set_before_hibernate:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_ADC
+	fetch 1,mem_adc_config_flag
+	rtnne ADC_CONFIG_GPIO
+	fetch 1,mem_adc_channel_gpio
+	arg gpcfg_no_ie,temp
+ 	branch gpio_config_function_int
+	
+
+//set all unused gpio to pull down mode to save power	
+mouse_gpio_pd_idle:
+	arg core_gpio_conf,contr
+	arg GPIO_NUMBER,loopcnt
+mouse_gpio_pd_idle_loop:
+	ifetch 1,contr
+	nbranch mouse_gpio_pd_idle_configured,blank
+	setarg gpcfg_pulldown
+	add contr,-1,contw
+	istore 1,contw
+mouse_gpio_pd_idle_configured:
+	loop mouse_gpio_pd_idle_loop
+	arg core_gpio_conf_hi+GPIO_NUMBER_EXT,pdata
+	isub contr,null
+	rtn zero
+mouse_gpio_pd_idle_ext:
+	arg GPIO_NUMBER_EXT,loopcnt
+	arg core_gpio_conf_hi,contr
+	branch mouse_gpio_pd_idle_loop
+	
+mouse_process_lpm_before:
+	rtnmark1 mark_24g
+	call mouse_lpm_before_common
+	fetch 1,mem_lpm_current_mult
+	nrtn blank					// 7.5ms, no gpio wakeup
+	branch gpio_clr_wake
+
+mouse_lpm_before_common:
+	bpatch patch0e_4,mem_patch0e
+	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
+	call gpio_config_input
+	
+	call mouse_wheel_check
+	fetch 1,mem_mouse_sensor_sclk_gpio		//set sdio high
+ 	call mouse_gpio_config_output_high
+	call twspi_disable
+	
+	fetcht 1,mem_lbutton_gpio
+	call gpio_set_wake
+	fetcht 1,mem_rbutton_gpio
+	call gpio_set_wake
+	fetcht 1,mem_mbutton_gpio
+	call gpio_set_wake
+
+	fetcht 1,mem_bk_button_gpio
+	call gpio_set_wake
+	fetcht 1,mem_fw_button_gpio
+	call gpio_set_wake
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_set_wake
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_set_wake
+
+	fetcht 1,mem_customer_key_gpio
+	call gpio_set_wake
+	
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_whee_ta_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_whee_tb_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_sensor_motion_gpio
+	branch gpio_set_wake
+
+
+//short mult: no key 
+mouse_set_mult:
+	fetch 2,mem_ui_state_map
+	rtnbit0 UI_STATE_BLE_CONNECTED
+	copy rega,pdata
+	nbranch le_set_config_short_mult,blank
+	branch le_clr_config_short_mult
+	
+	
+/****************************adc**************************************/	
+mouse_adc_gpio_set:
+	bpatch patch0e_5,mem_patch0e
+	fetch 1,mem_adc_config_flag
+	rtnne ADC_CONFIG_GPIO
+	fetcht 1,mem_adc_channel_gpio
+	branch gpio_set_high_impedance
+
+mouse_adc_gpio_mux_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_ADC
+	jam MOUSE_ADC_CHECK_MULTIPLE,mem_adc_mux_status
+	rtn
+
+mouse_adc_read:
+	bpatch patch0e_6,mem_patch0e
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_ADC
+	call mouse_adc_gpio_set
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_GPIO,mouse_adc_read_gpio_mux_start	// gpio + dpi/switch
+	jam MOUSE_ADC_CHECK_HVIN_MULTIPLE,mem_adc_mux_status
+	branch mouse_adc_read_start
+
+mouse_adc_read_gpio_mux_start:
+	jam MOUSE_ADC_CHECK_GPIO_MULTIPLE,mem_adc_mux_status
+	branch mouse_adc_read_start
+	
+mouse_adc_read_start:
+	bpatch patch0e_7,mem_patch0e
+	call enable_adc
+	call vdd_calculate_by_mode
+	store 2,mem_mouse_vdd_now_vol
+	fetch 1,mem_adc_config_flag
+	bne ADC_CONFIG_GPIO, mouse_adc_data_process
+	fetcht 2,mem_mouse_vdd_now_vol	// BAT= 1.5V, R = 200k, a = a*1.8
+	mul32 temp,8,pdata
+	div pdata,10
+	call get_div_result
+	iadd temp,pdata
+	store 2,mem_mouse_vdd_now_vol
+mouse_adc_data_process:	
+	arg mem_mouse_vdd_calculate_set,rega
+	call mouse_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,mouse_app_enter_hibernate
+	bbit0 0,mouse_adc_no_low_voltage
+	jam 1,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_adc_low_voltage
+	
+mouse_adc_low_voltage:
+	arg MOUSE_LOW_VOLTAGE_FLAG,queue
+	branch mouse_enable_function_flag
+mouse_adc_no_low_voltage:
+	arg MOUSE_LOW_VOLTAGE_FLAG,queue
+	call mouse_disable_function_flag
+	jam 1,mem_adc_low_volatage_led_timer_count
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	rtn blank
+	jam 0,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_low_voltage_led_off_judge
+	
+
+mouse_adc_bat_percent_lowpower_out:
+	bpatch patch0f_0,mem_patch0f
+	ifetch 8,rega
+	store 8,mem_pdatatemp
+	fetch 1,mem_adc_mux_status
+	beq MOUSE_ADC_CHECK_BATTERY_ONLY,mouse_adc_bat_percent_lowpower_out_battery
+	beq MOUSE_ADC_CHECK_GPIO_MULTIPLE,mouse_adc_bat_percent_lowpower_out_battery
+	beq MOUSE_ADC_CHECK_HVIN_MULTIPLE,mouse_adc_bat_percent_lowpower_out_hvin_multiple
+mouse_adc_bat_percent_lowpower_out_battery:
+	call adc_clear_no_power_flag
+	call adc_clear_low_power_flag
+	fetch 2,mem_pdatatemp+6
+	fetcht 2,mem_pdatatemp+2	        //shutdown voltage
+	isub temp,null
+	ncall adc_set_no_power_flag,positive
+	fetcht 2,mem_pdatatemp+4		//low voltage
+	isub temp,null
+	ncall adc_set_low_power_flag,positive
+mouse_adc_bat_level_set:
+	fetch 2,mem_pdatatemp+6		//now voltage	
+	fetcht 2,mem_pdatatemp		//full voltage
+	isub temp,null
+	branch mouse_adc_bat_level_100_percent,positive		// now >= full
+	fetcht 2,mem_pdatatemp+2	        //shutdown voltage
+	isub temp,pdata
+	nbranch mouse_adc_bat_level_0_percent,positive		// now < shutdown
+	branch mouse_adc_bat_level_0_percent,blank			// now = shutdown
+	mul32 pdata,100,rega								// (now - shutdown)*100 /(full - shutdown)
+	fetch 2,mem_pdatatemp
+	fetcht 2,mem_pdatatemp+2
+	isub temp,temp
+	copy rega,pdata
+	idiv temp
+	call get_div_result
+	store 1,mem_le_battery_level_percentage
+	rtn
+
+mouse_adc_bat_level_100_percent:
+	jam 100,mem_le_battery_level_percentage
+	rtn
+mouse_adc_bat_level_0_percent:	
+	jam 0,mem_le_battery_level_percentage
+	rtn
+
+mouse_adc_bat_percent_lowpower_out_hvin_multiple:
+	branch mouse_adc_bat_percent_lowpower_out_battery
+	
+/****************************adc end********************************/	
+
+
+/****************************gpio******************************************/
+mouse_gpio_init:
+	fetcht 1,mem_eeprom_wp_gpio
+	call gpio_config_output
+//	call usb_offline_check_init
+	fetcht 1,mem_lbutton_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_rbutton_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_mbutton_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_bk_button_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_fw_button_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_dpi_button_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_matrix_public_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_config_select_device_button_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_customer_key_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_whee_a_data_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_whee_b_data_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_whee_ta_data_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_whee_tb_data_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_sensor_motion_gpio
+	call mouse_gpio_config_input_pu
+
+	fetcht 1,mem_device_switch_gpio
+	call mouse_gpio_config_input_pu
+	
+	fetcht 1,mem_select_sensor_angle_gpio
+	branch mouse_gpio_config_input_pu
+
+
+mouse_gpio_set_pupd_by_input:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	and temp,0x7f,queue
+	fetch 4,core_gpio_in
+	qisolate1 pdata
+	branch mouse_gpio_config_input_pu,true
+mouse_gpio_config_input_pd:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	set1 GPIO_ACTIVE_BIT,temp
+	branch gpio_config_input
+
+mouse_gpio_config_input_pu:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero 
+	set0 GPIO_ACTIVE_BIT,temp
+	branch gpio_config_input
+
+mouse_gpio_set_high_impedance:
+	fetch 3,mem_mouse_set_high_impedance_bit_set
+	store 3,mem_pdatatemp
+	arg 13,loopcnt
+	arg 0,temp
+mouse_gpio_set_high_impedance_bit_loop:	
+	fetch 3,mem_pdatatemp
+	isolate1 0,pdata
+	call gpio_set_high_impedance,true
+	fetch 3,mem_pdatatemp
+	lshift pdata,pdata
+	store 3,mem_pdatatemp
+	increase 1,temp
+	loop mouse_gpio_set_high_impedance_bit_loop
+	rtn
+
+/****************************gpio end*******************************/
+
+
+/***********************le device info modify*****************************/
+mouse_le_name_modify:
+	bpatch patch0f_1,mem_patch0f
+	fetch 8,mem_le_name_patch
+	rtn blank
+	fetch 1,mem_le_name_patch_len
+	copy pdata,rega
+	sub pdata,11,null
+	nbranch mouse_le_name_patch_len_overflow,positive
+	
+	call mouse_le_name_clear
+	
+	arg mem_le_adv_swift_pair+9,contw
+	call mouse_le_name_modify_next
+	
+	arg mem_le_scan_data+2,contw
+	call mouse_le_name_modify_next
+	
+	arg mem_le_name,contw
+mouse_le_name_modify_next:
+	arg mem_le_name_patch,contr
+	copy rega,loopcnt
+	branch memcpy
+
+mouse_le_name_clear:
+	arg mem_le_adv_swift_pair+9,contw
+	call mouse_le_name_clear_next
+	
+	arg mem_le_scan_data+2,contw
+	call mouse_le_name_clear_next
+
+	arg mem_le_name,contw
+mouse_le_name_clear_next:
+	arg 11,loopcnt
+	branch clear_mem	
+
+mouse_le_name_patch_len_overflow:
+	call mouse_le_swift_pair_disable
+	
+	fetch 1,mem_le_name_patch_len
+	increase 1,pdata
+	store 1,mem_le_adv_swift_pair
+	jam 9,mem_le_adv_swift_pair+1
+	arg mem_le_name_patch,contr
+	arg mem_le_adv_swift_pair+2,contw
+	copy rega,loopcnt
+	call memcpy
+
+	fetch 1,mem_le_name_patch_len
+	increase 1,pdata
+	store 1,mem_le_scan_data
+	jam 9,mem_le_scan_data+1
+	arg mem_le_name_patch,contr
+	arg mem_le_scan_data+2,contw
+	copy rega,loopcnt
+	call memcpy
+
+	arg mem_le_name_patch_len,contr
+	arg mem_le_name_len,contw
+	copy rega,loopcnt
+	increase 1,loopcnt
+	branch memcpy
+
+mouse_le_swift_pair_disable:
+	arg mem_le_adv_swift_pair,contw
+	arg 20,loopcnt
+	branch clear_mem
+
+/***********************le device info modify end*************************/
+
+
+/*******************spi*****************************/
+mouse_sensor_spi_init:
+	call mouse_spid_init_pin
+	jam 0x73,mem_spi_init_clk
+//	jam 0x1e,mem_spi_init_delay_time
+	call mouse_spi_init
+	branch twspi_enable
+	
+mouse_spi_write_flash_cb:
+mouse_spi_init:
+	branch spid_init
+	
+mouse_spid_init_pin:
+	fetch 1,mem_mouse_sensor_sclk_gpio
+ 	arg gpcfg_spid_sck,temp
+ 	call gpio_config_function_int
+ 	fetch 1,mem_mouse_sensor_sdio_gpio
+ 	arg gpcfg_spid_sdio,temp
+ 	branch gpio_config_function_int
+
+
+/*******************spi end**************************/
+
+mouse_motion:
+	bpatch patch0f_2,mem_patch0f
+	disable user
+	setarg 0
+	store 6,mem_mouse_x
+	call mouse_check_sensor_data
+	setarg 0x0089
+	call twspi_write	
+	call mouse_setting_sensor_type
+	call mouse_zwheel
+	call mouse_t_zwheel
+	call mouse_key
+	fetch 1,mem_mouse_key
+	and_into 0x1f,pdata
+	store 1,mem_mouse_key
+	nbranch mouse_drawing_optima_init,user
+	call mouse_drawing_optima
+	branch mouse_no_data_timer_init
+
+
+/*******************wheel*************************/
+mouse_zwheel:
+	fetch 1,mem_mouse_z_data
+	rtn blank	
+	store 1,mem_mouse_z
+	jam 0,mem_mouse_z_data
+	branch enable_user
+	
+mouse_t_zwheel:
+	fetch 1,mem_mouse_tz_data
+	rtn blank	
+	store 1,mem_mouse_tz
+	jam 0,mem_mouse_tz_data
+	branch enable_user
+
+mouse_wheel_check:
+	call mouse_t_wheel_scan
+	call mouse_wheel_scan
+	fetch 1,mem_wheel_tb_new_pinlevel
+	fetcht 1,mem_wheel_tb_old_pinlevel
+	store 1,mem_wheel_tb_old_pinlevel
+	isub temp,null
+	nbranch app_lpm_wake_auto_lock,zero
+	fetch 1,mem_mwheel_b_new_pinlevel
+	fetcht 1,mem_mwheel_b_old_pinlevel
+	store 1,mem_mwheel_b_old_pinlevel
+	isub temp,null
+	nbranch app_lpm_wake_auto_lock,zero
+	rtn
+mouse_t_wheel_scan:
+	fetch 1,mem_whee_ta_data_gpio
+	rtneq GPIO_DISABLE
+	arg 0,rega
+	fetcht 1,mem_whee_ta_data_gpio
+	call gpio_get_bit
+	setflag true,0,rega
+	fetcht 1,mem_whee_tb_data_gpio
+	call gpio_get_bit
+	setflag true,1,rega
+	copy rega,pdata
+	store 1,mem_wheel_tb_new_pinlevel
+	beq 0x01,mouse_t_wheel_scan_judge1
+	beq 0x02,mouse_t_wheel_scan_judge2
+	fetch 1,mem_wheel_tog
+	bbit1 7,mouse_t_wheel_scan_judge3
+	rtn
+
+mouse_t_wheel_scan_judge1:
+	fetch 1,mem_wheel_tb_old_pinlevel
+	beq 0,mouse_t_wheel_scan_judge11
+	beq 3,mouse_t_wheel_scan_judge12
+	rtn
+mouse_t_wheel_scan_judge2:
+	fetch 1,mem_wheel_tb_old_pinlevel
+	beq 0,mouse_t_wheel_scan_judge21
+	beq 3,mouse_t_wheel_scan_judge22
+	rtn
+mouse_t_wheel_scan_judge11:
+	jam 0x82,mem_wheel_tog
+	rtn
+mouse_t_wheel_scan_judge12:
+	jam 0x81,mem_wheel_tog
+	rtn
+mouse_t_wheel_scan_judge21:
+	jam 0x80,mem_wheel_tog
+	rtn
+mouse_t_wheel_scan_judge22:
+	jam 0x83,mem_wheel_tog
+	rtn
+mouse_t_wheel_scan_judge3:
+	fetch 1,mem_wheel_tog
+	set0 7,pdata
+	store 1,mem_wheel_tog
+	beq 0,mouse_t_wheel_scan_judge30
+	beq 1,mouse_t_wheel_scan_judge31
+	beq 2,mouse_t_wheel_scan_judge32
+	beq 3,mouse_t_wheel_scan_judge33
+	rtn
+mouse_t_wheel_scan_judge30:
+	fetch 1,mem_wheel_tb_new_pinlevel
+	beq 3,mouse_wheel_t_forward
+	rtn
+mouse_t_wheel_scan_judge31:
+	fetch 1,mem_wheel_tb_new_pinlevel
+	beq 0,mouse_wheel_t_forward
+	rtn
+mouse_t_wheel_scan_judge32:
+	fetch 1,mem_wheel_tb_new_pinlevel
+	beq 3,mouse_wheel_t_back
+	rtn
+mouse_t_wheel_scan_judge33:
+	fetch 1,mem_wheel_tb_new_pinlevel
+	beq 0,mouse_wheel_t_back
+	rtn
+mouse_wheel_t_forward:
+	fetch 1,mem_mouse_tz_data
+	increase 1,pdata
+	store 1,mem_mouse_tz_data
+	rtn
+mouse_wheel_t_back:
+	fetch 1,mem_mouse_tz_data
+	increase -1,pdata
+	store 1,mem_mouse_tz_data
+	rtn
+
+
+mouse_wheel_scan:
+	fetch 1,mem_whee_a_data_gpio
+	rtneq GPIO_DISABLE
+	arg 0,rega
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_get_bit
+	setflag true,0,rega
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_get_bit
+	setflag true,1,rega
+	copy rega,pdata
+	store 1,mem_mwheel_b_new_pinlevel
+	beq 0x01,mouse_wheel_scan_judge1
+	beq 0x02,mouse_wheel_scan_judge2
+	fetch 1,mem_mwheel_tog
+	bbit1 7,mouse_wheel_scan_judge3
+	rtn
+
+mouse_wheel_scan_judge1:
+	fetch 1,mem_mwheel_b_old_pinlevel
+	beq 0,mouse_wheel_scan_judge11
+	beq 3,mouse_wheel_scan_judge12
+	rtn
+mouse_wheel_scan_judge2:
+	fetch 1,mem_mwheel_b_old_pinlevel
+	beq 0,mouse_wheel_scan_judge21
+	beq 3,mouse_wheel_scan_judge22
+	rtn
+mouse_wheel_scan_judge11:
+	jam 0x82,mem_mwheel_tog
+	rtn
+mouse_wheel_scan_judge12:
+	jam 0x81,mem_mwheel_tog
+	rtn
+mouse_wheel_scan_judge21:
+	jam 0x80,mem_mwheel_tog
+	rtn
+mouse_wheel_scan_judge22:
+	jam 0x83,mem_mwheel_tog
+	rtn
+mouse_wheel_scan_judge3:
+	fetch 1,mem_mwheel_tog
+	set0 7,pdata
+	store 1,mem_mwheel_tog
+	beq 0,mouse_wheel_scan_judge30
+	beq 1,mouse_wheel_scan_judge31
+	beq 2,mouse_wheel_scan_judge32
+	beq 3,mouse_wheel_scan_judge33
+	rtn
+mouse_wheel_scan_judge30:
+	fetch 1,mem_mwheel_b_new_pinlevel
+	beq 3,mouse_wheel_forward
+	rtn
+mouse_wheel_scan_judge31:
+	fetch 1,mem_mwheel_b_new_pinlevel
+	beq 0,mouse_wheel_forward
+	rtn
+mouse_wheel_scan_judge32:
+	fetch 1,mem_mwheel_b_new_pinlevel
+	beq 3,mouse_wheel_back
+	rtn
+mouse_wheel_scan_judge33:
+	fetch 1,mem_mwheel_b_new_pinlevel
+	beq 0,mouse_wheel_back
+	rtn
+mouse_wheel_forward:
+	fetch 1,mem_mouse_z_data
+	increase 1,pdata
+	store 1,mem_mouse_z_data
+	rtn
+mouse_wheel_back:
+	fetch 1,mem_mouse_z_data
+	increase -1,pdata
+	store 1,mem_mouse_z_data
+	rtn
+
+
+mouse_wheel_gpio_set_wake:
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_whee_ta_data_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_whee_tb_data_gpio
+	branch gpio_set_wake_by_current_state
+	
+mouse_before_hibernate_wheel_gpio_set:
+	fetcht 1,mem_whee_a_data_gpio
+	call mouse_gpio_set_pupd_by_input
+	fetcht 1,mem_whee_b_data_gpio
+	call mouse_gpio_set_pupd_by_input
+	fetcht 1,mem_whee_ta_data_gpio
+	call mouse_gpio_set_pupd_by_input
+	fetcht 1,mem_whee_tb_data_gpio
+	branch mouse_gpio_set_pupd_by_input
+
+mouse_wheel_trigger:
+	fetch 2,mem_mouse_z
+	rtn blank
+	jam 1,mem_mouse_wheel_trigger
+	jam 10,mem_mouse_wheel_trigger_timer
+	rtn
+
+mouse_wheel_trigger_timer:
+	arg mem_mouse_wheel_trigger_timer,regc
+	arg mouse_wheel_trigger_disable,regb
+	branch timer_single_step
+mouse_wheel_trigger_disable:
+	jam 0,mem_mouse_wheel_trigger
+	rtn
+
+
+/*
+mouse_set_qdecoder_x:
+	arg MOUSE_DEFAULT_XA_GPIO,temp
+	call mouse_gpio_config_input_pu
+	arg MOUSE_DEFAULT_XA_GPIO,temp
+	call gpio_get_bit
+	rtn true
+	fetch 1,core_qdec_cntx
+	set1 4,pdata
+	store 1,core_qdec_cntx
+	rtn
+*/	
+	
+/*******************wheel end**********************/
+
+
+/********************dpi******************************/
+mouse_dpi_check:
+	fetch 1,mem_dpi_button_gpio
+	rtneq GPIO_DISABLE
+	arg 0,rega
+	jam MOUSE_DPI_KEY,mem_mouse_key_temp
+	fetcht 1,mem_dpi_button_gpio
+	call mouse_dpi_key_check
+mouse_dpi_check_next:
+	store 1,mem_mouse_dpikey_press_status
+	fetch 1,mem_matrix_public_gpio
+	beq GPIO_DISABLE,mouse_3io6key_dpi_check_end
+	call mouse_matrix_public_gpio_reset
+mouse_dpi_check_exit:	
+	copy rega,pdata
+	bbit1 MOUSE_DPI_KEY,mouse_dpi_down
+	branch mouse_dpi_up
+	
+mouse_dpi_key_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DPI_KEY_CONNECT_GND,mouse_dpi_key_connect_gnd
+	fetch 1,mem_mouse_dpikey_press_status
+	copy pdata,regc
+	fetch 1,mem_matrix_public_gpio
+	beq GPIO_DISABLE,mouse_3io6key_check
+mouse_dpi_key_check_next:
+	fetch 1,mem_mouse_ghost_flag
+	nbranch mouse_dpi_check_end,blank
+mouse_dpi_key_connect_matrix:
+	call gpio_get_bit
+	fetcht 1,mem_matrix_public_gpio
+	branch mouse_dpi_key_connect_gnd,true
+	fetcht 1,mem_matrix_public_gpio
+	call gpio_out_active
+	fetcht 1,mem_dpi_button_gpio
+	fetch 1,mem_mouse_dpikey_press_status
+	branch mouse_check_key_connect_gnd
+
+mouse_3io6key_dpi_check_end:
+	fetcht 1,mem_dpi_button_gpio
+	call mouse_gpio_config_input_pu
+	branch mouse_dpi_check_exit
+
+mouse_dpi_check_end:
+	jam DPI_BUTTON_STATE_UP,mem_mouse_dpi_button_state
+	jam 0,mem_mouse_dpikey_press_status
+	rtn
+
+mouse_dpi_key_connect_gnd:
+	fetch 1,mem_mouse_dpikey_press_status
+	branch mouse_check_key_connect_gnd
+
+mouse_dpi_down:
+	fetch 1,mem_mouse_dpi_button_state
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_mouse_dpi_button_state
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
+	rtnbit1 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY
+	branch mouse_dpi_process
+
+mouse_dpi_up:
+	fetch 1,mem_mouse_dpi_button_state
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_mouse_dpi_button_state
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON,mouse_dpi_up_next
+	bbit1 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY,mouse_dpi_up_next
+	rtn
+mouse_dpi_up_next:	
+	fetch 1,mem_mouse_dpi_long_press_flag
+	nbranch mouse_dpi_up_after_long_press,blank
+	fetch 1,mem_select_device_count
+	ncall mouse_dpi_process,blank
+mouse_dpi_up_after_long_press:	
+	jam 0,mem_mouse_dpi_long_press_flag
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_select_device_count	
+	store 1,mem_bt_discovery_count	
+	rtn
+	
+mouse_dpi_process:	
+	bpatch patch0f_3,mem_patch0f
+	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
+	copy temp,pdata
+	
+	increase 1,pdata
+	and pdata,0x03,pdata
+mouse_dpi_level_store:	
+	store 1,mem_mouse_dpi
+	call mouse_setting_dpi
+	branch mouse_store_dpi_info_check
+
+
+/***************************another dpi key dpi**********************/
+
+mouse_double_dpi_check:
+	fetch 1,mem_dpi_another_button_down_enable
+	nbranch mouse_another_dpi_button_down,blank
+mouse_dpi_increase:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DPI_LEVEL_4,mouse_dpi_increase_level_4
+	copy temp,pdata
+	rtneq MOUSE_DPI_LEVEL2
+mouse_dpi_increase_level:
+	beq MOUSE_DPI_LEVEL1,mouse_dpi_level_3	//1600
+	beq MOUSE_DPI_LEVEL3,mouse_dpi_level_2 	//1200
+	rtn
+
+mouse_dpi_level_1:		//800
+	setarg 2
+	branch mouse_dpi_level_store
+mouse_dpi_level_2:		//1200
+	setarg 0
+	branch mouse_dpi_level_store
+mouse_dpi_level_3:		//1600
+	setarg 1
+	branch mouse_dpi_level_store
+mouse_dpi_level_4:		//1000
+	setarg 3
+	branch mouse_dpi_level_store	
+
+mouse_dpi_increase_level_4:
+	copy temp,pdata			//0->1,2->3,3->0
+	rtneq MOUSE_DPI_LEVEL2
+	beq MOUSE_DPI_LEVEL1,mouse_dpi_level_3
+	beq MOUSE_DPI_LEVEL3,mouse_dpi_level_4
+	beq MOUSE_DPI_LEVEL4,mouse_dpi_level_2
+	rtn
+mouse_dpi_decrease_level_4:
+	copy temp,pdata			//0->3,1->0,3->2
+	rtneq MOUSE_DPI_LEVEL3
+	beq MOUSE_DPI_LEVEL1,mouse_dpi_level_4
+	beq MOUSE_DPI_LEVEL2,mouse_dpi_level_2
+	beq MOUSE_DPI_LEVEL4,mouse_dpi_level_1
+	rtn
+
+mouse_another_dpi_button_down:
+mouse_dpi_decrease:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DPI_LEVEL_4,mouse_dpi_decrease_level_4
+	copy temp,pdata
+	rtneq MOUSE_DPI_LEVEL3
+mouse_dpi_decrease_level:
+	beq MOUSE_DPI_LEVEL1,mouse_dpi_level_1
+	beq MOUSE_DPI_LEVEL2,mouse_dpi_level_2
+	rtn
+	
+
+/*************************another dpi key dpi end********************/
+
+mouse_dpi_ghost_check:
+	disable user
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_DPI_KEY_CONNECT_GND
+	branch mouse_ghost_key_value_check
+	
+mouse_dpi_key_check_long_press:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON,mouse_select_device_by_dpi_button
+	bbit1 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY,mouse_discovery_by_dpi_button
+	rtn
+
+mouse_select_device_by_dpi_button:
+	fetch 1,mem_mouse_dpi_button_state
+	rtnne DPI_BUTTON_STATE_DOWN	
+	arg mem_select_device_count,regc
+	arg mouse_ready_reconnection_by_dpi_button,regb
+	branch timer_single_step
+
+mouse_ready_reconnection_by_dpi_button:
+	jam 1,mem_mouse_dpi_long_press_flag
+	branch mouse_ready_reconnection_by_button
+
+mouse_discovery_by_dpi_button:
+	fetch 1,mem_mouse_dpi_button_state
+	rtnne DPI_BUTTON_STATE_DOWN	
+	arg mem_bt_discovery_count,regc
+	arg mouse_long_dpi_button_bt_discovery,regb
+	branch timer_single_step
+
+mouse_long_dpi_button_bt_discovery:
+	jam 1,mem_mouse_dpi_long_press_flag
+	branch mouse_long_button_bt_discovery
+
+mouse_setting_dpi_4_level:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_DPI_LEVEL_4
+	fetch 1,mem_mouse_dpi
+	rtnne MOUSE_DPI_LEVEL4
+	jam MOUSE_DPI_LEVEL1,mem_mouse_dpi
+	rtn
+	
+mouse_setting_dpi:
+	bpatch patch0f_4,mem_patch0f
+	call mouse_setting_dpi_4_level
+	call mouse_dpi_led_blink_delay
+mouse_setting_sensor_type:
+	bpatch patch0f_5,mem_patch0f
+	fetch 1,mem_config_sensor_type
+	beq S201X,mouse_seting_S201_dpi
+	beq P3212,mouse_seting_3212_dpi
+	beq KA8G2,mouse_seting_ka8g2_dpi
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_cpi0		//1200
+	beq MOUSE_DPI_LEVEL2,mouse_set_cpi1		//1600
+	beq MOUSE_DPI_LEVEL3,mouse_set_cpi2		//800
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi3		//1000
+mouse_set_cpi1:	//320x+8009
+	fetcht 1,mem_320x_dpi_1
+	branch mouse_dpi_store
+mouse_set_cpi0:
+	fetcht 1,mem_320x_dpi_0
+	branch mouse_dpi_store
+mouse_set_cpi2:
+	fetcht 1,mem_320x_dpi_2
+	branch mouse_dpi_store
+mouse_set_cpi3:
+	fetcht 1,mem_320x_dpi_3
+mouse_dpi_store:
+	fetch 1,mem_config_sensor_type
+	beq P3065_XY,mouse_3065xy_set_dpi
+	beq MX8650,mouse_3065xy_set_dpi
+	beq KA8,mouse_ka8_set_dpi
+	beq P6520,mouse_ka8_set_dpi
+	beq P8009,mouse_3065xy_set_dpi
+mouse_dpi_write:		// 3205  1  2  3  4
+	storet 1,mem_mouse_cpi_count
+	setarg MOUSE_DPI_ADDRESS
+	call twspi_read
+	and pdata,0xf8,temp
+	fetch 1,mem_mouse_cpi_count
+	iadd temp,pdata
+	lshift8 pdata,pdata
+	add pdata,MOUSE_DPI_ADDRESS,pdata
+	branch twspi_write
+
+mouse_3065xy_set_dpi:	// 0 1 2 3
+	increase -1,temp
+	branch mouse_dpi_write
+
+mouse_ka8_set_dpi:	// 3 4 5 6
+	increase 2,temp
+	branch mouse_dpi_write
+
+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_2	//2400
+	beq MOUSE_DPI_LEVEL3,mouse_set_S201_dpi_3	//3200
+mouse_set_S201_dpi_0:	//1200
+	fetch 1,mem_sensor_s201_dpi_0
+	copy pdata,rega
+	branch mouse_dpi_S201_store
+
+mouse_set_S201_dpi_1:	//1600
+	fetch 1,mem_sensor_s201_dpi_1
+	copy pdata,rega
+	branch mouse_dpi_S201_store
+	
+mouse_set_S201_dpi_2:	//2400
+	fetch 1,mem_sensor_s201_dpi_2
+	copy pdata,rega
+	branch mouse_dpi_s201_store
+
+mouse_set_S201_dpi_3:	//3200
+	fetch 1,mem_sensor_s201_dpi_3
+	copy pdata,rega
+	branch mouse_dpi_s201_store
+
+mouse_set_S201_dpi_4:	//800
+	fetch 1,mem_sensor_s201_dpi_4
+	copy pdata,rega
+mouse_dpi_s201_store:
+	setarg 0xc309
+	call twspi_write
+	copy rega,pdata
+	lshift8 pdata,pdata
+	add pdata,0x23,pdata
+	call twspi_write
+	setarg 0x0009
+	branch twspi_write
+
+mouse_seting_3212_dpi:
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_p3212_cpi0	//1200
+	beq MOUSE_DPI_LEVEL2,mouse_set_p3212_cpi1	//1600
+	beq MOUSE_DPI_LEVEL3,mouse_set_p3212_cpi2	//2400
+	beq MOUSE_DPI_LEVEL4,mouse_set_p3212_cpi3	//800
+mouse_set_p3212_cpi1:
+	fetch 1,mem_3212_dpi_1
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi0:
+	fetch 1,mem_3212_dpi_0
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi2:
+	fetch 1,mem_3212_dpi_2
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi3:
+	fetch 1,mem_3212_dpi_3
+mouse_p3212_dpi:
+	store 1,mem_mouse_cpi_count
+	lshift8 pdata,pdata
+	copy pdata,rega
+	add pdata,MOUSE_P3212_DPI_XADDRESS,pdata
+  	call twspi_write
+ 	copy rega,pdata
+  	add pdata,MOUSE_P3212_DPI_YADDRESS,pdata
+	branch twspi_write
+
+mouse_seting_ka8g2_dpi:
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_pka8g2_cpi0		//1600
+	beq MOUSE_DPI_LEVEL2,mouse_set_pka8g2_cpi1		//2400
+	beq MOUSE_DPI_LEVEL3,mouse_set_pka8g2_cpi2		//3200
+	beq MOUSE_DPI_LEVEL4,mouse_set_pka8g2_cpi3		//800
+mouse_set_pka8g2_cpi1:
+	fetch 1,mem_ka8g2_dpi_1
+	branch mouse_p3212_dpi
+
+mouse_set_pka8g2_cpi0:
+	fetch 1,mem_ka8g2_dpi_0
+	branch mouse_p3212_dpi
+	
+mouse_set_pka8g2_cpi2:
+	fetch 1,mem_ka8g2_dpi_2
+	branch mouse_p3212_dpi
+
+mouse_set_pka8g2_cpi3:
+	fetch 1,mem_ka8g2_dpi_3
+	branch mouse_p3212_dpi
+
+		
+/********************dpi end***************************/		
+
+
+/***********************key******************************/
+
+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 mouse_ghost_key_check
+	call mouse_set_mult
+	call mouse_24g_key
+	copy rega,pdata
+	fetcht 1,mem_mouse_key_last
+	store 1,mem_mouse_key_last
+	store 1,mem_mouse_key
+	ixor temp,pdata
+	sub pdata,0,null
+	rtn zero
+	branch enable_user
+
+mouse_24g_key:
+	rtnmark0 mark_24g
+	copy rega,pdata
+	rtn blank
+	store 1,mem_mouse_key
+	branch enable_user
+
+	
+/************************************ghost key******************************/
+
+mouse_ghost_key_check:
+	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 mouse_matrix_ghost_key_L_BK,zero
+	fetch 1,mem_fw_button_gpio
+	isub temp,null
+	branch mouse_matrix_ghost_key_L_FW,zero
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch mouse_ghost_key_MBK_RFW,zero
+	branch mouse_ghost_key_MFW_RBK
+
+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
+	branch mouse_ghost_key_LBK_RFW
+
+mouse_matrix_ghost_key_L_FW:
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch mouse_ghost_key_LFW_MBK,zero
+	branch mouse_ghost_key_LFW_RBK
+
+mouse_ghost_key_LBK_MFW:
+	call mouse_ghost_key_check_L_BK
+	call mouse_ghost_key_check_M_FW
+	branch mouse_ghost_key_check_next
+
+mouse_ghost_key_LBK_RFW:
+	call mouse_ghost_key_check_L_BK
+	branch mouse_ghost_key_RFW
+
+mouse_ghost_key_LFW_MBK:
+	call mouse_ghost_key_check_L_FW
+	call mouse_ghost_key_check_M_BK
+	branch mouse_ghost_key_check_next
+	
+mouse_ghost_key_LFW_RBK:
+	call mouse_ghost_key_check_L_FW
+	branch mouse_ghost_key_RBK
+	
+mouse_ghost_key_MBK_RFW:
+	call mouse_ghost_key_check_M_BK
+mouse_ghost_key_RFW:
+	call mouse_ghost_key_check_R_FW
+	branch mouse_ghost_key_check_next
+	
+mouse_ghost_key_MFW_RBK:
+	call mouse_ghost_key_check_M_FW
+mouse_ghost_key_RBK:
+	call mouse_ghost_key_check_R_BK
+mouse_ghost_key_check_next:
+	call mouse_ghost_key_check_BK_FW
+	call mouse_ghost_key_check_LMR
+	fetch 1,mem_mouse_matrix_key_row_count
+	rtn blank
+	fetch 1,mem_mouse_matrix_key_cow_count
+	rtn blank
+	jam 1,mem_mouse_ghost_flag
+	fetch 1,mem_mouse_key_last		// matrix have ghost key
+	copy pdata,rega
+	rtn
+
+mouse_ghost_key_check_L_BK:
+	and regb,MOUSE_L_BK_BUTTON,pdata
+	beq MOUSE_L_BK_BUTTON,mouse_matrix_cow_more_than_one_key
+	rtn
+mouse_ghost_key_check_M_BK:
+	and regb,MOUSE_L_BK_BUTTON,pdata
+	beq MOUSE_M_BK_BUTTON,mouse_matrix_cow_more_than_one_key
+	rtn
+mouse_ghost_key_check_R_BK:
+	and regb,MOUSE_L_BK_BUTTON,pdata
+	beq MOUSE_R_BK_BUTTON,mouse_matrix_cow_more_than_one_key
+	rtn
+mouse_ghost_key_check_L_FW:
+	and regb,MOUSE_L_BK_BUTTON,pdata
+	beq MOUSE_L_FW_BUTTON,mouse_matrix_cow_more_than_one_key
+	rtn
+mouse_ghost_key_check_M_FW:
+	and regb,MOUSE_M_FW_BUTTON,pdata
+	beq MOUSE_M_FW_BUTTON,mouse_matrix_cow_more_than_one_key
+	rtn
+mouse_ghost_key_check_R_FW:
+	and regb,MOUSE_M_FW_BUTTON,pdata
+	beq MOUSE_R_FW_BUTTON,mouse_matrix_cow_more_than_one_key
+	rtn
+
+mouse_ghost_key_check_BK_FW:
+	and regb,MOUSE_BK_FW_BUTTON,pdata
+	beq MOUSE_BK_FW_BUTTON,mouse_matrix_row_more_than_one_key
+	rtn	
+
+mouse_ghost_key_check_LMR:
+	and temp,MOUSE_LMR_BUTTON,pdata	// key LMR press
+	beq MOUSE_LR_BUTTON,mouse_matrix_row_more_than_one_key
+	beq MOUSE_LM_BUTTON,mouse_matrix_row_more_than_one_key
+	beq MOUSE_RM_BUTTON,mouse_matrix_row_more_than_one_key
+	beq MOUSE_LMR_BUTTON,mouse_matrix_row_more_than_one_key
+	rtn
+
+
+mouse_matrix_row_more_than_one_key:
+	jam 1,mem_mouse_matrix_key_row_count
+	rtn
+
+mouse_matrix_cow_more_than_one_key:
+	jam 1,mem_mouse_matrix_key_cow_count
+	rtn
+
+/************************************ghost key end******************************/
+
+
+
+/************************************double dpi key******************************/
+
+mouse_dpi_another_gpio_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_DOUBLE_DPI_KEY
+	bbit0 MOUSE_ENABLE_ANOTHER_DPI_KEY_CONNECT_GND,mouse_dpi_another_gpio_connect_vin_check
+mouse_dpi_another_gpio_connect_gnd_check:	
+	fetch 1,mem_dpi_another_button_gpio
+	call mouse_gpio_config_output_high
+	call mouse_dpi_another_check
+	fetcht 1,mem_dpi_another_button_gpio
+	branch mouse_gpio_config_input_pu	
+
+mouse_dpi_another_gpio_connect_vin_check:
+	fetch 1,mem_dpi_another_button_gpio
+	call mouse_gpio_config_output_low
+	jam MOUSE_DPI_ANOTHER_KEY,mem_mouse_key_temp_patch
+	fetcht 1,mem_dpi_another_button_gpio
+	fetch 1,mem_dpi_another_press_status
+	call mouse_check_key_connect_vin_new
+	call mouse_dpi_another_state_check
+	fetcht 1,mem_dpi_another_button_gpio
+	branch mouse_gpio_config_input_pu	
+
+mouse_dpi_another_down_new:
+	call mouse_gpio_config_input_pu	
+	fetch 1,mem_dpi_another_button_state
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_dpi_another_button_state
+	branch mouse_dpi_process
+
+mouse_dpi_another_check:
+	jam MOUSE_DPI_ANOTHER_KEY,mem_mouse_key_temp_patch
+	fetcht 1,mem_dpi_another_button_gpio
+	fetch 1,mem_dpi_another_press_status	
+	call mouse_check_key_connect_gnd_new
+mouse_dpi_another_state_check:
+	store 1,mem_dpi_another_press_status
+	fetch 1,mem_dpi_another_button_down_enable
+	branch mouse_dpi_another_up,blank	
+mouse_dpi_another_down:
+	fetch 1,mem_dpi_another_button_state
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_dpi_another_button_state
+	branch mouse_dpi_process
+
+mouse_dpi_another_up:
+	fetch 1,mem_dpi_another_button_state
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_dpi_another_button_state
+	rtn
+
+mouse_check_key_connect_gnd_new:	
+	lshift pdata,pdata
+	copy pdata,regb
+	call gpio_get_bit
+	setflag true,0,regb
+	and regb,0x07,pdata
+	fetcht 1,mem_mouse_key_temp_patch
+	copy temp,queue
+	beq 0x07,mouse_another_dpi_key_press		//  about 17~22ms three times
+	beq 0x00,mouse_another_dpi_key_release
+	rtn
+
+mouse_check_key_connect_vin_new:	
+	lshift pdata,pdata
+	copy pdata,regb
+	call mouse_gpio_config_input_pd
+	call gpio_get_bit
+	setflag true,0,regb
+	and regb,0x07,pdata
+	fetcht 1,mem_mouse_key_temp_patch
+	copy temp,queue
+	beq 0x07,mouse_another_dpi_key_press		//  about 17~22ms three times
+	beq 0x00,mouse_another_dpi_key_release
+	rtn
+
+mouse_another_dpi_key_press:
+	jam 1,mem_dpi_another_button_down_enable
+	rtn
+mouse_another_dpi_key_release:
+	jam 0,mem_dpi_another_button_down_enable
+	rtn
+
+/************************************double dpi key end******************************/
+
+
+
+/************************************fire key************************************/
+
+mouse_check_firekey_gpio:
+	arg 0,regb
+	fetch 1,mem_firebutton_gpio
+	rtneq GPIO_DISABLE
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_FIRE_KEY_CONNECT_GND,mouse_check_firekey_connect_vin
+mouse_check_firekey_connect_gnd:
+	fetcht 1,mem_firebutton_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_firebutton_gpio
+	call gpio_get_bit
+	setflag true,0,regb
+mouse_firekey_state_store:	
+	copy regb,pdata
+	store 1,mem_fire_key_flag
+	rtn
+
+mouse_check_firekey_connect_vin:
+	fetcht 1,mem_firebutton_gpio
+	call mouse_gpio_config_input_pd
+	fetcht 1,mem_firebutton_gpio
+	call gpio_get_bit
+	nsetflag true,0,regb
+	branch mouse_firekey_state_store
+
+fire_key_process: 
+	beq 4,fire_key_process_end
+fire_key_press:
+	call firekey_clkn_bt_timer_check 
+	fetch 4,mem_fire_key_delay
+	arg 0xa0,temp      
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	store 4,mem_fire_key_delay 
+	fetch 1,mem_fire_key_status
+	beq 0,fire_key_process_start
+	beq 1,fire_key_process_release1
+	beq 2,fire_key_process_start2
+	beq 3,fire_key_process_release2
+	rtn
+
+fire_key_process_start:
+	jam 1,mem_fire_key_status
+fire_key_down:
+	jam 1,mem_mouse_key
+	branch enable_user
+
+fire_key_process_release1:
+	jam 2,mem_fire_key_status
+fire_key_release:
+	jam 0,mem_mouse_key
+	branch enable_user
+
+fire_key_process_start2:
+	jam 3,mem_fire_key_status
+	branch fire_key_down
+
+fire_key_process_release2:
+	jam 0,mem_fire_key_status
+	branch fire_key_release
+
+fire_key_process_end:
+	jam 0,mem_fire_key_status
+	jam 0,mem_mouse_key
+	rtn
+
+firekey_clkn_bt_timer_check:
+	fetcht 4,mem_fire_key_delay
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall firekey_clkn_bt_timer_timeout,positive
+	rtn
+firekey_clkn_bt_timer_timeout:
+	setarg 0
+	store 4,mem_fire_key_delay
+	rtn
+
+/*********************************fire key end*****************************/
+
+
+
+/*********************************matrix key*****************************/
+
+mouse_key_check_once:
+	call mouse_check_key_gpio_once
+	call mouse_check_key_gpio
+	setarg 0x00
+	store 3,mem_mouse_lkey_press_status
+	rtn
+	
+mouse_check_key_gpio:
+	bpatch patch0f_6,mem_patch0f
+	fetch 1,mem_sensor_shutdown_flag
+	ncall mouse_check_key_gpio_once,blank
+	arg 0,rega
+	call mouse_check_lkey_gpio
+	call mouse_check_rkey_gpio
+	call mouse_check_mkey_gpio
+	call mouse_check_bkkey_gpio
+	call mouse_check_fwkey_gpio
+	call mouse_check_firekey_gpio
+	call mouse_check_customerkey_gpio
+	copy rega,pdata
+	rtn
+
+mouse_check_key_gpio_once:
+	setarg 0x030303
+	store 3,mem_mouse_lkey_press_status
+	rtn
+
+mouse_check_lkey_gpio:
+	fetch 1,mem_lbutton_gpio
+	call mouse_gpio_config_output_high
+	jam MOUSE_L_KEY,mem_mouse_key_temp
+	fetcht 1,mem_lbutton_gpio
+	fetch 1,mem_mouse_lkey_press_status
+	call mouse_check_key_connect_gnd
+	store 1,mem_mouse_lkey_press_status
+	fetcht 1,mem_lbutton_gpio
+	branch mouse_gpio_config_input_pu
+
+mouse_check_rkey_gpio:
+	fetch 1,mem_rbutton_gpio
+	call mouse_gpio_config_output_high
+	jam MOUSE_R_KEY,mem_mouse_key_temp
+	fetcht 1,mem_rbutton_gpio
+	fetch 1,mem_mouse_rkey_press_status
+	call mouse_check_key_connect_gnd
+	store 1,mem_mouse_rkey_press_status
+	fetcht 1,mem_rbutton_gpio
+	branch mouse_gpio_config_input_pu
+	
+mouse_check_mkey_gpio:
+	fetch 1,mem_mbutton_gpio
+	call mouse_gpio_config_output_high
+	jam MOUSE_M_KEY,mem_mouse_key_temp
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_mouse_mkey_press_status
+	call mouse_check_key_connect_gnd
+	store 1,mem_mouse_mkey_press_status
+	fetcht 1,mem_mbutton_gpio
+	branch mouse_gpio_config_input_pu
+
+mouse_check_bkkey_gpio:
+	fetch 1,mem_bk_button_gpio
+	rtneq GPIO_DISABLE
+	jam MOUSE_BK_KEY,mem_mouse_key_temp
+	fetch 1,mem_mouse_bkkey_press_status
+	copy pdata,regc
+	fetcht 1,mem_bk_button_gpio
+	fetch 1,mem_matrix_public_gpio
+	beq GPIO_DISABLE,mouse_3io6key_bk_check
+	call gpio_get_bit
+	branch mouse_check_bk_button_connect_gnd,true
+	fetcht 1,mem_matrix_public_gpio
+	call gpio_out_active
+	fetcht 1,mem_bk_button_gpio
+	fetch 1,mem_mouse_bkkey_press_status
+	call mouse_check_key_connect_gnd
+mouse_check_bkkey_gpio_end:	
+	store 1,mem_mouse_bkkey_press_status
+	branch mouse_matrix_public_gpio_reset
+
+mouse_check_bk_button_connect_gnd:
+	fetcht 1,mem_matrix_public_gpio
+	fetch 1,mem_mouse_bkkey_press_status
+	call mouse_check_key_connect_gnd
+	branch mouse_check_bkkey_gpio_end
+
+mouse_3io6key_bk_check:
+	fetch 1,mem_bk_button_gpio
+	call mouse_gpio_config_output_low
+	fetcht 1,mem_bk_button_gpio
+	call mouse_3io6key_check
+	store 1,mem_mouse_bkkey_press_status
+	fetcht 1,mem_bk_button_gpio
+	branch mouse_gpio_config_input_pu
+
+
+mouse_check_fwkey_gpio:
+	fetch 1,mem_fw_button_gpio
+	rtneq GPIO_DISABLE
+	jam MOUSE_FW_KEY,mem_mouse_key_temp
+	fetch 1,mem_mouse_fwkey_press_status
+	copy pdata,regc
+	fetcht 1,mem_fw_button_gpio
+	fetch 1,mem_matrix_public_gpio
+	beq GPIO_DISABLE,mouse_3io6key_fw_check
+	call gpio_get_bit
+	branch mouse_check_fw_button_connect_gnd,true
+	fetcht 1,mem_matrix_public_gpio
+	call gpio_out_active
+	fetcht 1,mem_fw_button_gpio
+	fetch 1,mem_mouse_fwkey_press_status
+	call mouse_check_key_connect_gnd
+mouse_check_fwkey_gpio_end:	
+	store 1,mem_mouse_fwkey_press_status
+mouse_matrix_public_gpio_reset:	
+	fetcht 1,mem_matrix_public_gpio
+	branch mouse_gpio_config_input_pu
+
+mouse_check_fw_button_connect_gnd:
+	fetcht 1,mem_matrix_public_gpio
+	fetch 1,mem_mouse_fwkey_press_status
+	call mouse_check_key_connect_gnd
+	branch mouse_check_fwkey_gpio_end	
+
+mouse_3io6key_fw_check:
+	fetch 1,mem_fw_button_gpio
+	call mouse_gpio_config_output_low
+	fetcht 1,mem_fw_button_gpio
+	call mouse_3io6key_check
+	store 1,mem_mouse_fwkey_press_status
+	fetcht 1,mem_fw_button_gpio
+	branch mouse_gpio_config_input_pu
+
+mouse_check_customerkey_gpio:
+	jam 0,mem_customer_key
+	fetch 1,mem_customer_key_gpio
+	rtneq GPIO_DISABLE
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_KEYBOARD
+	bbit1 MOUSE_ENABLE_CUSTOMER_KEY_CONNECT_VIN_OR_MATRIX,mouse_customer_key_connect_vin
+mouse_customer_key_connect_gnd:
+	jam MOUSE_CUSTOMER_KEY,mem_mouse_key_temp
+	fetcht 1,mem_customer_key_gpio
+	fetch 1,mem_mouse_customerkey_press_status
+	call mouse_check_key_connect_gnd
+	store 1,mem_mouse_customerkey_press_status
+mouse_check_customerkey_gpio_next:
+	copy rega,pdata
+	bbit1 MOUSE_CUSTOMER_KEY,mouse_customerkey_press
+	call mouse_customerkey_release
+mouse_check_customerkey_gpio_exit:
+	fetch 1,mem_customer_data_trigger
+	store 1,mem_customer_data_trigger_last
+	rtn
+
+mouse_customer_key_connect_vin:
+	jam MOUSE_CUSTOMER_KEY,mem_mouse_key_temp
+	fetch 1,mem_mouse_customerkey_press_status
+	copy pdata,regc
+	fetcht 1,mem_customer_key_gpio
+	fetch 1,mem_matrix_public_gpio
+	beq GPIO_DISABLE,mouse_3io6key_customer_key_check_vin
+	call gpio_get_bit
+	branch mouse_check_customer_button_connect_gnd,true
+	fetcht 1,mem_matrix_public_gpio
+	call gpio_out_active
+	fetcht 1,mem_customer_key_gpio
+	fetch 1,mem_mouse_customerkey_press_status
+	call mouse_check_key_connect_gnd
+	branch mouse_check_customerkey_gpio_over
+
+mouse_check_customer_button_connect_gnd:
+	fetcht 1,mem_matrix_public_gpio
+	fetch 1,mem_mouse_customerkey_press_status
+	call mouse_check_key_connect_gnd
+	branch mouse_check_customerkey_gpio_over
+
+mouse_3io6key_customer_key_check_vin:
+	fetch 1,mem_customer_key_gpio
+	call mouse_gpio_config_output_low
+	fetcht 1,mem_customer_key_gpio
+	call mouse_3io6key_check
+mouse_check_customerkey_gpio_over:	
+	store 1,mem_mouse_customerkey_press_status
+	call mouse_check_customerkey_gpio_next
+	fetcht 1,mem_customer_key_gpio
+	branch mouse_gpio_config_input_pu
+	
+
+mouse_customerkey_press:
+	jam 1,mem_customer_data_trigger
+	call mouse_customer_key_need_send
+	branch mouse_check_customerkey_gpio_exit
+
+mouse_customerkey_release:
+	jam 0,mem_customer_data_trigger
+	fetch 1,mem_customer_data_trigger_last
+	rtn blank
+mouse_customer_key_need_send:	
+	jam 1,mem_customer_key
+	rtn	
+
+/*******************************matrix key end***************************/
+
+mouse_check_matrix_button_connect_gnd:	
+	call gpio_get_bit
+	fetcht 1,mem_mouse_key_temp
+	copy temp,queue	
+	branch  mouse_key_press,true
+mouse_key_release:
+	qset0 rega
+	rtn	
+
+mouse_check_key_connect_gnd:	
+	lshift pdata,pdata
+	copy pdata,regb
+	call gpio_get_bit
+	setflag true,0,regb
+mouse_check_key_connect_gnd_1:
+	and regb,0x07,pdata
+mouse_check_key_connect_gnd_next:
+	fetcht 1,mem_mouse_key_temp
+	copy temp,queue
+	beq 0x07,mouse_key_press		//  about 17~22ms three times
+	beq 0x00,mouse_key_release
+	rtn
+
+mouse_key_press:
+	qset1 rega
+	rtn
+
+mouse_3io6key_check:
+	bpatch patch0f_7,mem_patch0f
+	copy regc,pdata
+	store 1,mem_mouse_key_status
+	lshift pdata,pdata
+	copy pdata,regb
+	copy temp,regc
+	call mouse_gpio_config_input_pd
+	copy regc,temp
+	call gpio_get_bit
+	nsetflag true,0,regb
+	call mouse_check_press
+	branch mouse_check_key_connect_gnd_next
+
+mouse_check_press:
+	fetcht 1,mem_mouse_key_status
+	and_into 0x01,temp
+	and regb,0x01,pdata
+	isub temp,null
+	nbranch mouse_current_mult_update,zero
+	rtn
+	
+	
+//input:pdata gpio number
+mouse_gpio_config_output_high:
+	rtneq GPIO_DISABLE
+	arg gpcfg_output_high,temp
+	branch gpio_config_function_int
+
+//input:pdata gpio number
+mouse_gpio_config_output_low:
+	rtneq GPIO_DISABLE
+	arg gpcfg_output_low,temp
+	branch gpio_config_function_int	
+	
+/*************************key***************************************/
+
+/**********************sensor******************************/	
+mouse_init_sunt:
+	bpatch patch10_0,mem_patch10
+	call mouse_sensor_spi_init
+	rtn wake
+mouse_init_sensor_wakeup:	
+	call mouse_sensor_poweron
+mouse_init_sensor:
+	bpatch patch10_1,mem_patch10
+	call mouse_read_sensor_id
+	beq P32XX_ID1,mouse_init_p32xx_id2_judge
+	beq P3065_ID1,mouse_init_p3065
+	beq PKA8G2_ID1,mouse_ka8g2_id2_judge
+	call mouse_twspi_reset
+	nop 6900
+	branch mouse_init_sensor
+mouse_twspi_reset:
+	fetcht 1,mem_mouse_sensor_sclk_gpio
+	call twspi_reset
+	branch mouse_spid_init_pin
+
+mouse_read_sensor_id:
+	setarg PAN_REG_PID_H
+	call twspi_read
+	store 1,mem_sensor_id2
+	setarg PAN_REG_PID_L
+	call twspi_read
+	store 1,mem_sensor_id1
+	rtn
+
+mouse_init_p32xx_id2_judge:
+	fetch 1,mem_sensor_id2
+	beq P_MX8650,mouse_mx8650_init_param
+	beq P8009_ID2,mouse_8009_init_param
+	beq P3205_TJ3T_ID2,mouse_S210X_3205_3t_judge
+	beq P3204_TJ3L_ID2,mouse_3204_3l_init_param
+	beq P3212_ID2,mouse_3212_init_param
+	beq PKA8_ID2,mouse_ka8_init_param_check
+	beq P6520A_ID2,mouse_p6520_init_param
+	branch mouse_init_sensor
+
+mouse_S210X_3205_3t_judge:
+	setarg 0x49		// id3
+	call twspi_read
+	beq 0xa1,mouse_S201X_init_param
+	branch mouse_3205_3t_init_param
+
+mouse_S201X_init_param:
+	jam S201X,mem_config_sensor_type
+	rtn
+	
+mouse_mx8650_init_param:
+	jam MX8650,mem_config_sensor_type
+	call mouse_sensor_reset
+	call delay_10ms
+	arg mem_sensor_8650_init,regc
+	call mouse_sensor_wr_seq
+	branch mouse_setting_sensor_type
+
+mouse_8009_init_param:
+	setarg 0x16
+	call twspi_read
+	sub pdata,0xbd,null 
+	nbranch mouse_init_sunt,zero
+	setarg 0x19
+	call twspi_read
+	sub pdata,0x55,null 
+	nbranch mouse_init_sunt,zero
+	setarg 0x1b
+	call twspi_read
+	sub pdata,0x1d,null 
+	nbranch mouse_init_sunt,zero
+	jam P8009,mem_config_sensor_type
+	arg mem_sensor_8009_init,regc
+	branch mouse_sensor_wr_seq
+
+mouse_3205_3t_init_param:
+	jam P3205,mem_config_sensor_type
+	arg mem_sensor_3205_init,regc
+	call mouse_sensor_wr_seq
+	arg mem_sensor_32xx_init,regc
+	call mouse_sensor_wr_seq
+	setarg 0x0943
+	call twspi_write
+	arg mem_sensor_32xx_init_1,regc
+	branch mouse_sensor_wr_seq	
+
+mouse_3204_3l_init_param:
+	jam P3204,mem_config_sensor_type
+	arg mem_sensor_3204_init,regc
+	call mouse_sensor_wr_seq
+	arg mem_sensor_32xx_init,regc
+	call mouse_sensor_wr_seq
+	arg mem_sensor_32xx_init_1,regc
+	branch mouse_sensor_wr_seq	
+
+mouse_3212_init_param:
+	jam P3212,mem_config_sensor_type
+	arg mem_sensor_3212_init,regc
+mouse_sensor_wr_seq:
+	ifetch 2,regc
+	arg 0xffff,temp
+	isub temp,null
+	rtn zero
+	call twspi_write
+	increase 2,regc
+	branch mouse_sensor_wr_seq
+
+mouse_ka8_init_param_check:	
+	call mouse_sensor_disable_wp
+	setarg 0x9a5b
+	call twspi_write
+	setarg 0x0d
+	call twspi_read
+	sub pdata,0x12,null
+	branch mouse_ka8ul_init_param,zero
+	sub pdata,0x0a,null
+	nbranch mouse_ka8hd_sensor_judge,zero
+	setarg 0x0e
+	call twspi_read
+	sub pdata,0xe5,null
+	nbranch mouse_init_sensor,zero
+	setarg 0x10
+	call twspi_read
+	sub pdata,0xa5,null
+	branch mouse_ka8ul_init_param,zero
+	call mouse_enable_ka8_sensor_wp
+mouse_ka8_init_param:
+	jam KA8,mem_config_sensor_type	
+	rtn
+mouse_ka8ul_init_param:
+	jam KA8_UL,mem_config_sensor_type	
+	arg mem_sensor_ka8ul_init,regc
+	branch mouse_sensor_wr_seq
+mouse_ka8hd_sensor_judge:
+	sub pdata,0x10,null
+	nbranch mouse_init_sensor,zero
+	setarg 0x0e
+	call twspi_read
+	sub pdata,0xc5,null
+	nbranch mouse_init_sensor,zero
+	setarg 0x10
+	call twspi_read
+	sub pdata,0x38,null
+	nbranch mouse_init_sensor,zero
+mouse_ka8hd_init_param:
+	call mouse_enable_ka8_sensor_wp
+	jam KA8_HD,mem_config_sensor_type
+	rtn
+mouse_enable_ka8_sensor_wp:
+	setarg 0x005b
+	call twspi_write
+	branch mouse_sensor_enable_wp
+	
+mouse_p6520_init_param:
+	jam P6520,mem_config_sensor_type
+	arg mem_sensor_p6520_init,regc
+	branch mouse_sensor_wr_seq
+	
+mouse_init_p3065:
+	call mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+	beq P3065_XY_ID2,mouse_p3065xy_init_param
+	beq P3065_ID2,mouse_p3065_init_param
+	branch mouse_init_sensor
+	
+mouse_p3065_init_param:	
+	jam P3065,mem_config_sensor_type
+	rtn
+
+mouse_p3065xy_init_param:
+	jam P3065_XY,mem_config_sensor_type
+	rtn
+	
+mouse_ka8g2_id2_judge:
+	call mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+	beq PKA8G2_ID2,mouse_ka8g2_init_param
+	branch mouse_init_p32xx_id2_judge
+mouse_ka8g2_init_param:
+	jam KA8G2,mem_config_sensor_type
+	arg mem_sensor_ka8g2_init,regc
+	branch mouse_sensor_wr_seq
+	
+mouse_sensor_enable_wp:
+	setarg 0x0009
+	branch twspi_write
+mouse_sensor_disable_wp:
+	setarg 0x5a09
+	branch twspi_write
+
+mouse_sensor_reset:	
+	arg 0x8006,temp
+	fetch 1,mem_config_sensor_type
+	bne KA8G2,mouse_sensor_reset_end
+	arg 0x9706,temp
+mouse_sensor_reset_end:
+	copy temp,pdata
+	call twspi_write
+	nop 12000
+	rtn
+
+mouse_sensor_poweron_init:
+	arg mem_sensor_poweron_init,regc
+	fetch 1,mem_config_sensor_type
+	rtnne KA8G2
+	arg mem_sensor_ka8g2_poweron_init,regc
+	rtn
+	
+mouse_sensor_poweron:
+	bpatch patch10_2,mem_patch10
+	call mouse_sensor_spi_init
+	call mouse_sensor_reset
+	call mouse_sensor_poweron_init
+	call mouse_sensor_wr_seq
+	branch mouse_setting_sensor_type
+
+mouse_sensor_powerdown:
+	bpatch patch10_3,mem_patch10
+	call mouse_init_sunt
+	call mouse_sensor_spi_init
+	arg 0x0806,temp
+	fetch 1,mem_config_sensor_type
+	bne KA8G2,mouse_sensor_powerdown_end
+	arg 0x1f06,temp
+mouse_sensor_powerdown_end:
+	copy temp,pdata
+	branch twspi_write
+/*********sensor init*************/	
+
+
+
+/*********sensor motion*************/
+mouse_check_sensor_data:
+	fetch 1,mem_spi_write_flash_sm
+	rtnne FLASH_SM_NO_BUYS
+	fetch 1,mem_config_sensor_type
+	beq P3205,mouse_p32xx_sensor_motion
+	beq P3065,mouse_p32xx_sensor_motion
+	beq KA8,mouse_p32xx_sensor_motion
+	beq P3204,mouse_p32xx_sensor_motion
+	beq P3212,mouse_p3212_sensor_motion
+	beq P3065_xy,mouse_p32xx_sensor_motion
+	beq P8009,mouse_p8009_sensor_motion	
+	beq KA8G2,mouse_pka8g2_sensor_motion
+	branch mouse_p32xx_sensor_motion
+
+
+mouse_p32xx_sensor_motion:
+	call mouse_clear_sensor_data
+	disable user
+	fetch 1,mem_sensor_motion_gpio
+	beq GPIO_DISABLE,mouse_p32xx_sensor_motion_2
+	fetcht 1,mem_sensor_motion_gpio
+	call gpio_get_bit
+	nrtn true
+mouse_p32xx_sensor_motion_2:
+	setarg PAN_REG_PID_L
+	call twspi_read
+	bne P32XX_ID1,mouse_p3065_judge   
+mouse_p32xx_sensor_motion_1:
+	setarg PAN_REG_MOTION_STAUS
+	call twspi_read
+	rtnbit0 7
+	call mouse_read_sensor_common
+	fetch 1,mem_mouse_x
+	call mouse_data_extsign
+	store 2,mem_mouse_x
+	fetch 1,mem_mouse_y
+	call mouse_data_extsign
+	store 2,mem_mouse_y
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_6CLK_ANGLE,mouse_motion32xx_6clk_direction_selection
+	beq MOUSE_9CLK_ANGLE,mouse_motion32xx_9clk_direction_selection
+	beq MOUSE_12CLK_ANGLE,mouse_motion32xx_12clk_direction_selection
+	beq MOUSE_3CLK_ANGLE,mouse_motion32xx_3clk_direction_selection
+	rtn
+
+mouse_p3065_judge:
+	beq P3065_ID1,mouse_p32xx_sensor_motion_1
+	branch mouse_twspi_reset
+	
+mouse_motion32xx_6clk_direction_selection:
+	call mouse_motion_6clk_direction_dispose
+	branch mouse_sensor_sdio_low
+mouse_motion32xx_9clk_direction_selection:
+	call mouse_motion_9clk_direction_dispose
+	branch mouse_sensor_sdio_low
+mouse_motion32xx_12clk_direction_selection:
+	call mouse_motion_12clk_direction_dispose
+	branch mouse_sensor_sdio_low
+mouse_motion32xx_3clk_direction_selection:
+	call mouse_motion_3clk_direction_dispose
+	branch mouse_sensor_sdio_low
+
+
+	
+mouse_p3212_sensor_motion:
+	call mouse_clear_sensor_data
+	fetch 1,mem_sensor_motion_gpio
+	beq GPIO_DISABLE,mouse_p3212_sensor_motion_1
+	fetcht 1,mem_sensor_motion_gpio
+	call gpio_get_bit
+	nrtn true
+mouse_p3212_sensor_motion_1:	
+	setarg PAN_REG_PID_L
+	call twspi_read
+	bne P32XX_ID1,mouse_twspi_reset
+mouse_p3212_sensor_motion_2:
+	setarg PAN_REG_MOTION_STAUS
+	call twspi_read
+	rtnbit0 7
+	call mouse_read_sensor_common
+	call mouse_read_3212sensor_xy_high
+	store 1,mem_mouse_xy_h
+	rshift4 pdata,pdata
+	call mouse_data_extsign_bit3
+	store 1,mem_mouse_x+1
+	fetch 1,mem_mouse_xy_h
+	and pdata,0x0f,pdata
+	call mouse_data_extsign_bit3
+	store 1,mem_mouse_y+1
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_6CLK_ANGLE,mouse_motion_6clk_direction_dispose
+	beq MOUSE_9CLK_ANGLE,mouse_motion_9clk_direction_dispose
+	beq MOUSE_12CLK_ANGLE,mouse_motion_12clk_direction_dispose
+	beq MOUSE_3CLK_ANGLE,mouse_motion_3clk_direction_dispose
+	rtn
+
+mouse_read_3212sensor_xy_high:
+	setarg 0x12
+	branch twspi_read
+
+mouse_pka8g2_sensor_motion:
+	call mouse_clear_sensor_data
+	fetch 1,mem_sensor_motion_gpio
+	beq GPIO_DISABLE,mouse_pka8g2_sensor_motion_1
+	fetcht 1,mem_sensor_motion_gpio
+	call gpio_get_bit
+	nrtn true
+mouse_pka8g2_sensor_motion_1:
+	branch mouse_p3212_sensor_motion_2
+
+
+mouse_p8009_sensor_motion:
+	call mouse_clear_sensor_data
+	disable user
+	setarg PAN_REG_MOTION_STAUS
+	call twspi_read
+	rtnbit0 7
+	setarg PAN_REG_OPRATION_STATE
+	call twspi_read
+	branch mouse_p32xx_sensor_motion_1+3,blank
+	setarg 0
+	store 6,mem_mouse_x
+	rtn
+
+mouse_motion_6clk_direction_dispose:
+	fetch 2,mem_mouse_x
+	sub pdata,0,pdata
+	store 2,mem_mouse_x
+	branch enable_user
+mouse_motion_12clk_direction_dispose:
+	fetch 2,mem_mouse_y
+	sub pdata,0,pdata
+	store 2,mem_mouse_y
+	branch enable_user
+mouse_motion_9clk_direction_dispose:
+	fetch 2,mem_mouse_y
+	sub pdata,0,pdata
+	store 2,mem_mouse_y
+	fetch 2,mem_mouse_x
+	sub pdata,0,pdata
+	store 2,mem_mouse_x
+	call mouse_sensor_data_swap_places
+	branch enable_user
+mouse_motion_3clk_direction_dispose:
+	call mouse_sensor_data_swap_places
+	branch enable_user
+
+mouse_sensor_data_swap_places:
+	fetch 2, mem_mouse_y
+	fetcht 2,mem_mouse_x
+	store 2,mem_mouse_x
+	storet 2,mem_mouse_y
+	rtn
+
+	
+mouse_clear_sensor_data:
+	fetch 1,mem_mouse_move_flag
+	call mouse_read_sensor_common,blank
+	jam 1,mem_mouse_move_flag
+	rtn
+
+mouse_clear_sensor_data_by_reset:
+	jam 1,mem_mouse_clear_sensor_data_flag
+	call le_set_config_more_data
+mouse_init_sensor_reset:
+	branch mouse_init_sunt
+
+mouse_data_xy_release:
+	fetch 1,mem_sensor_motion_gpio
+	rtnne GPIO_DISABLE
+	fetch 1,mem_mouse_long_mult_flag
+	rtnne 1
+	setarg 0
+	store 1,mem_mouse_long_mult_flag
+	store 4,mem_mouse_x
+	branch mouse_init_sensor_reset
+
+mouse_data_extsign:
+	rtnbit0 7
+	arg 0xff00,temp
+	ior temp,pdata
+	rtn
+
+mouse_data_extsign_bit3:
+	rtnbit0 3
+	arg 0xf0,temp
+	ior temp,pdata
+	rtn
+
+mouse_read_sensor_common:
+	arg PAN_REG_DELTA_X,pdata
+	call twspi_read
+	store 2,mem_mouse_x
+	arg PAN_REG_DELTA_Y,pdata
+	call twspi_read
+	store 2,mem_mouse_y
+	rtn
+
+	/* sdio high will cost extra 9mA */
+mouse_sensor_sdio_low:
+	fetcht 1,mem_mouse_sensor_sdio_gpio
+	call gpio_get_bit
+	rtn true
+	setarg 0x0a
+	call twspi_read
+	nop 1000
+	branch mouse_sensor_sdio_low
+
+mouse_set_sdio_high:		// make sdio high to make 100uA less
+	setarg 0x8100
+	branch twspi_write
+	
+/****************************sensor*************************/
+
+/*******************mouse fast connect******************/
+mouse_bluetooth_fast_conn_init:
+	jam 0xff,mem_mouse_bluetooth_fast_conn_flag
+mouse_ble_fast_conn_init:	
+	jam 0x34,mem_xrecord_mode
+	setarg 0x0f0f0f
+	store 3,mem_le_lap
+	store 3,mem_le_lap+3
+	branch mouse_start_reconnect
+
+mouse_buletooth_fast_conn_end:
+	bpatch patch10_4,mem_patch10
+	call mouse_select_reconn_device
+	call mouse_bluetooth_fast_conn_disable
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_device1_check_auto_discover
+	beq MODE_BT_DEVICE2,mouse_device2_check_auto_discover
+	rtn
+mouse_device1_check_auto_discover:
+	fetch 6,mem_device1_addr
+	branch mouse_device_check_auto_discover
+mouse_device2_check_auto_discover:
+	fetch 6,mem_device2_addr
+mouse_device_check_auto_discover:	
+	fetcht 6,mem_mouse_compare_addr
+	isub temp,null
+	branch mouse_start_discovery ,zero
+	branch mouse_start_reconnect_device
+
+mouse_bluetooth_fast_conn_disable:
+	jam 0x5a,mem_mouse_bluetooth_fast_conn_flag
+	rtn	
+/*******************mouse fast connect******************/
+
+mouse_stop_bluetooth_mode:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	branch mouse_stop_discovery
+mouse_disconnect:
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	rtn
+	
+mouse_check_125Hz:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_BT_125Hz
+mouse_bluetooth_125Hz:
+	nbranch mouse_bluetooth_125hz_clear,user
+	fetch 1,mem_bluetooth_125hz_cnt
+	increase 1,pdata
+	and_into 0x0f,pdata
+	store 1,mem_bluetooth_125hz_cnt
+	nrtn blank
+mouse_bluetooth_125hz_clear:
+	jam 0,mem_bluetooth_125hz_cnt
+	branch disable_user
+
+mouse_current_mult_update:
+	fetch 1,mem_sensor_motion_gpio
+	rtnne GPIO_DISABLE
+	jam 0,mem_lpm_mult
+	jam 30,mem_mouse_current_mult_timer
+	rtn
+
+
+mouse_priority_bb_event:	
+	bpatch patch10_5,mem_patch10
+	copy regc,pdata
+	beq BT_EVT_LE_CONNECTED,mouse_le_bb_event_connected
+	beq BT_EVT_LE_DISCONNECTED,mouse_le_bb_disconnected
+	beq BT_EVT_BUTTON_LONG_PRESSED,mouse_bb_event_discovery_btn
+	beq BT_EVT_LE_PAIRING_SUCCESS,mouse_le_pairing_success
+	beq BT_EVT_LE_ENC_INFO,mouse_le_enc_info
+	beq BT_EVT_LE_START_ENC,mouse_le_ll_start_encryt
+	beq BT_EVT_LE_PAIRING_COMPLETE,app_ble_store_reconn_info
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,mouse_le_conn_param_update_rsp_recieved
+	beq BT_EVT_24G_PAIRING_COMPLETE,mouse_24g_pairing_complete
+	beq BT_EVT_24G_ATTEMPT_FAIL,mouse_24g_attempt_fail
+	beq BT_EVT_24G_ATTEMPT_SUCCESS,mouse_24g_attempt_success
+	beq BT_EVT_LE_PARSE_CONN_PARAM_ACCEPTED,mouse_le_parse_conn_param_accepted
+	rtn
+
+/***************************le*************************/
+mouse_le_bb_event_connected:
+	call mouse_device_poweron_led_config
+	jam 0,mem_mouse_long_mult_flag
+	call mouse_init_sensor_reset
+	jam 1,mem_mouse_le_bb_connected_flag
+	call mouse_24g_first_store_reconn_info
+	fetch 1,mem_mouse_le_reconnect_flag
+	nbranch mouse_le_bb_event_connected_next,blank
+	jam 0x14,mem_mouse_send_secutiry_request_timer
+mouse_le_bb_event_connected_next:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set0 APP_DISC_BY_BUTTON ,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	jam 0,mem_mouse_direct_timer
+	fetch 2,mem_le_battery_level_updata_timer_init
+	store 2,mem_le_battery_level_updata_timer
+	call mouse_no_data_timer_init
+	branch mouse_stop_discovery
+
+mouse_le_bb_disconnected:
+	setarg 0
+	store 2,mem_le_battery_level_updata_timer
+	jam 0,mem_mouse_le_bb_connected_flag
+	arg LE_INTERVAL_7_5MS,temp
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_BT_125Hz,mouse_le_bb_disconnected_next
+	arg LE_INTERVAL_8_75MS,temp
+mouse_le_bb_disconnected_next:	
+	storet 2,mem_le_interval_min
+	storet 2,mem_le_interval_min+2
+	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 mouse_bb_disconnected
+
+mouse_le_pairing_success:
+	arg LL_PAIRING_SUCCESS_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+mouse_le_enc_info:
+mouse_updata_le_param:
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+mouse_le_ll_start_encryt:
+	fetch 1,mem_mouse_le_reconnect_flag
+	beq 1,mouse_le_ll_reconn_start_encryt
+	branch mouse_le_ll_enable_start_enc_flag
+mouse_le_ll_reconn_start_encryt:
+	call mouse_updata_le_param
+	jam 20,mem_le_start_encrypt_timer
+mouse_le_ll_enable_start_enc_flag:
+	arg LL_START_ENC_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+mouse_le_enable_connect_flag:
+	fetch 1,mem_le_connect_status_flag
+	qset1 pdata
+	store 1,mem_le_connect_status_flag
+	rtn
+
+mouse_le_conn_param_update_rsp_recieved:
+	fetch 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	rtneq BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_ACCEPTED
+	fetch 1,mem_le_tsniff
+	rshift2 pdata,pdata
+	sub pdata,LE_INTERVAL_15MS,null
+	rtn positive
+	setarg LE_INTERVAL_11_25MS
+	store 2,mem_le_interval_min
+	store 2,mem_le_interval_min+2
+	call mouse_updata_le_param
+mouse_le_conn_param_lpm_disable:
+	jam LE_LPM_DISABLE,mem_mouse_le_conn_param_reject
+	rtn
+
+mouse_le_bb_event_connect_complete:
+	fetch 1,mem_mouse_le_reconnect_flag
+	nrtn blank
+	fetch 1,mem_le_att_handle
+	sub pdata,34,pdata
+	nrtn zero
+	jam 0,mem_le_start_encrypt_timer
+mouse_le_write_enable:	
+	arg WRITE_REQ_ENABLE_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+mouse_le_parse_conn_param_accepted:
+	fetch 1,mem_le_new_conninterval
+	sub pdata,LE_INTERVAL_15MS,null
+	nbranch mouse_le_conn_param_lpm_disable,positive
+	store 2,mem_le_interval_min
+	store 2,mem_le_interval_min+2
+	fetch 1,mem_le_new_connslavelatency
+	branch mouse_le_lpm_mult_reinit,blank
+	fetcht 1,mem_lpm_mult_init
+	isub temp,null
+	branch mouse_le_lpm_mult_reinit,positive
+	fetch 1,mem_le_new_connslavelatency
+	store 1,mem_lpm_mult
+	branch mouse_le_conn_param_lpm_enable
+mouse_le_lpm_mult_reinit:
+	fetch 1,mem_lpm_mult_init
+	store 1,mem_lpm_mult
+mouse_le_conn_param_lpm_enable:
+	jam LE_LPM_ENABLE,mem_mouse_le_conn_param_reject
+	rtn
+	
+/*
+mouse_le_disable_connect_flag:
+	fetch 1,mem_le_connect_status_flag
+	qset0 pdata
+	store 1,mem_le_connect_status_flag
+	rtn
+*/
+mouse_le_clean_connect_flag:
+	jam 0,mem_le_connect_status_flag
+	rtn
+
+/*
+mouse_le_reconn_write_enable_timer_reinit:
+	fetch 1,mem_mouse_le_reconnect_flag
+	rtn blank
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtneq 0x03
+	jam 2,mem_le_start_encrypt_timer
+	rtn
+*/
+mouse_le:
+	bpatch patch10_6,mem_patch10
+	call le_fifo_check_nearly_full
+	nrtn blank
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,mouse_le_next
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+mouse_le_next:	
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	call mouse_clear_sensor_data_by_reset,blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_24G_PAIRING_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,mouse_le_send_empty_packet
+	call mouse_motion
+	call mouse_check_125Hz
+	nrtn user
+	call mouse_current_mult_update
+	call mouse_data_xy_release
+	call mouse_wheel_trigger
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_KEYBOARD,mouse_le_send_mouse_data
+	fetch 1,mem_customer_key
+	beq 1,mouse_le_send_keyboard_package_data		
+mouse_le_send_mouse_data:
+	branch mouse_fill_mouse_data_le
+
+
+mouse_le_send_keyboard_package_data:
+	fetch 1,mem_customer_data_trigger
+	branch mouse_le_release_keyboard_data,blank
+	fetch 8,mem_customer_key_press+1
+mouse_fill_keyboard_package_data_le:
+	store 8,mem_pdatatemp
+	fetch 1,mem_customer_key_press
+	beq KB_MULTIKEY_REPORT_ID,mouse_fill_multimedia_key_data_le
+	beq KB_SYSTEM_CONCTRL_REPORT_ID,mouse_fill_systemctrl_key_data_le
+	jam 8,mem_le_data_len
+	fetcht 2,mem_le_keyboard_handle
+mouse_fill_data_le:
+	fetch 1,mem_le_data_len
+	copy pdata,rega
+	call le_att_malloc_tx_notify
+	fetcht 1,mem_le_data_len
+	copy temp,loopcnt
+	arg mem_pdatatemp,contr
+	branch memcpy
+	
+mouse_le_release_keyboard_data:
+	fetch 8,mem_customer_key_release+1
+	branch mouse_fill_keyboard_package_data_le
+
+mouse_fill_multimedia_key_data_le:
+	jam 3,mem_le_data_len
+	fetcht 2,mem_le_multimedia_handle
+	branch mouse_fill_data_le
+
+mouse_fill_systemctrl_key_data_le:
+	jam 2,mem_le_data_len
+	fetcht 2,mem_le_systemctrl_handle
+	branch mouse_fill_data_le
+
+mouse_fill_battery_level_le:
+	arg 1,rega
+	fetcht 2,mem_le_battery_level_handle
+	call le_att_malloc_tx_notify
+	fetch 1,mem_le_battery_level_percentage
+	istore 1,contw
+	rtn
+
+mouse_le_send_empty_packet:
+	setarg 0
+	store 7,mem_mouse_key
+mouse_fill_mouse_data_le:
+	jam 7,mem_le_data_len
+	fetch 7,mem_mouse_key
+	store 7,mem_pdatatemp
+	fetcht 2,mem_le_notify_handle
+	branch mouse_fill_data_le
+
+mouse_check_51cmd_adv:
+	jam 0,mem_mouse_le_reconnect_flag
+	fetch 3,mem_le_adv_ind
+	store 3,mem_le_adv_data+4
+	call mouse_le_check_adv_flag
+	setarg ADV_FLAG_BREDR_NOT_SUPPORTED |ADV_FLAG_LIMITED_DISCOVERABLE
+	istore 1,contr
+	arg mem_le_adv_swift_pair,contr
+	call mouse_le_adv_data_update
+	branch check_51cmd_adv
+
+mouse_le_check_adv_flag:
+	arg mem_le_adv_data,rega
+mouse_le_check_adv_flag_loop:
+	ifetch 1,rega	//length
+	rtn blank
+	iadd contr,rega
+	ifetch 1,contr	//type
+	rtneq 0x01
+	branch mouse_le_check_adv_flag_loop
+	
+mouse_le_adv_data_update:
+	arg mem_le_adv_data+11,contw
+	arg 19,loopcnt
+	call memcpy
+	branch le_modified_name_adv
+	
+/***************************le*************************/
+
+
+
+mouse_bb_disconnected:
+	call mouse_bb_discon_clear_stack
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BLE,mouse4_0_event_bb_disconn
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	branch mouse_start_discovery
+	
+mouse_bb_discon_clear_stack:
+	setarg 0
+	store 8,mem_wheel_tb_old_pinlevel
+	istore 4,contw             //clean wheel statue
+	jam 0,mem_mouse_move_flag
+	jam 0,mem_ltk_exists
+	rtn
+
+mouse4_0_event_bb_disconn:
+	call mouse_le_clean_connect_flag
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	branch mouse_app_enter_hibernate
+
+
+/********************mouse 100ms timer*****************/
+mouse_bb_event_timer:
+	bpatch patch10_7,mem_patch10
+	//adc
+	call mouse_low_voltage_led_timer
+	call mouse_adc_read
+	//led
+	call mouse_logo_led_on_timer
+	call mouse_led_multi_timer
+	call mouse_dpi_led_blink_delay_timer
+	//24g
+	call g24_pair_timeout_timer
+	call g24_reconn_timeout_timer
+	call mouse_24g_long_sleep_param_update_timer
+	//poll
+	call mouse_dpi_key_check_long_press
+	call mouse_bt_discovery_check
+	call mouse_commbination_key_process
+	call mouse_check_discovery_timeout_timer
+	//ble
+	call mouse_check_direct_timeout_timer
+	call mouse_le_enable_att_list_timer
+	call mouse_le_battery_updata_timer
+	call mouse_le_send_smp_security_request_timer
+	//bt
+	call mouse_check_reconnect_delay_long_sleep		//delete 3.0,reconnect fail
+	call mouse_current_mult_update_timer
+	call mouse_wheel_trigger_timer
+	call mouse_store_information_delay_timer
+	branch mouse_check_no_data_timeout_timer
+
+mouse_bt_discovery_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY,mouse_bt_discovery_by_pb_button
+	rtn
+
+mouse_bt_discovery_by_pb_button:
+	fetch 1,mem_select_device_button_statue
+	rtnne PB_BUTTON_STATE_DOWN
+	arg mem_bt_discovery_count,regc
+	arg mouse_long_button_bt_discovery,regb
+	branch timer_single_step
+		
+mouse_long_button_bt_discovery:
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	call mouse_enable_function_flag
+	call app_evt_button_long_pressed
+	branch mouse_bb_event_discovery_btn
+		
+mouse_commbination_key_process:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_commbination_key_process
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_COMMBINATION_KEY_BY_BT_DISCOVERY
+	fetcht 1,mem_mouse_commbination_key_bt
+	branch mouse_commbination_key_start
+
+mouse_24g_commbination_key_process:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_COMMBINATION_KEY_BY_24G_PAIRING
+	fetcht 1,mem_mouse_commbination_key_24g
+mouse_commbination_key_start:
+	storet 1,mem_mouse_commbination_key
+	call mouse_check_key_gpio
+	and pdata,0x07,pdata
+	fetcht 1,mem_mouse_commbination_key
+	isub temp,null
+	branch mouse_commbination_key_down,zero
+mouse_commbination_key_up:
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_combination_ui_button_count	//combination key timer init 
+	fetch 1,mem_commbination_key_statue
+	rtneq COMMBINATION_KEY_STATE_UP
+	jam COMMBINATION_KEY_STATE_UP,mem_commbination_key_statue	
+	rtn
+		
+mouse_commbination_key_down:
+	call mouse_combination_ui_timer
+	fetch 1,mem_commbination_key_statue
+	rtneq COMMBINATION_KEY_STATE_DOWN
+	jam COMMBINATION_KEY_STATE_DOWN,mem_commbination_key_statue
+	rtn
+
+mouse_combination_ui_timer:
+	arg mouse_24g_start_pair_mode,regb
+	arg mem_combination_ui_button_count,regc
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,timer_single_step
+	arg mouse_long_button_bt_discovery,regb
+	call timer_single_step
+	fetch 1,mem_combination_ui_button_count
+	beq 1,mouse_bt_discovery_button_down_enable	// ble release key press
+	rtn
+
+mouse_check_discovery_timeout_timer:	
+	arg mem_mouse_discovery_timer,regc
+	arg mouse_check_discovery_timeout,regb
+	branch timer_single_step_2B
+
+mouse_check_discovery_timeout:
+	call mouse_stop_discovery
+	branch mouse_app_enter_hibernate
+
+mouse_check_direct_timeout_timer:	
+	arg mem_mouse_direct_timer,regc
+	arg mouse_check_direct_timeout,regb
+	call timer_single_step
+	fetch 1,mem_mouse_direct_timer
+	beq 1,app_ble_stop_direct_adv
+	rtn
+
+mouse_check_direct_timeout:
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,mouse_buletooth_fast_conn_end
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_BT_RECONNECT_TIMEOUT_ENTER_DISCOVERY,mouse_start_discovery
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_first_bb_event_reconn_timeout
+	branch mouse_app_enter_hibernate
+	
+mouse_le_enable_att_list_timer:
+	arg mem_le_start_encrypt_timer,regc
+	arg mouse_le_write_enable,regb
+	branch timer_single_step
+
+mouse_le_send_smp_security_request_timer:
+	fetch 1,mem_mouse_le_bb_connected_flag
+	rtn blank
+	arg mem_mouse_send_secutiry_request_timer,regc
+	arg mouse_le_pairing_sm_start_check,regb
+	branch timer_single_step
+mouse_le_pairing_sm_start_check:
+	fetch 1,mem_mouse_le_reconnect_flag
+	nrtn blank
+	fetch 1,mem_le_pairing_state
+	rtnne FLAG_LE_PAIRING_NULL
+	branch le_pairing_sm_start
+
+mouse_le_battery_updata_timer:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+	arg mem_le_battery_level_updata_timer,regc
+	arg mouse_le_battery_level_updata,regb
+	branch timer_single_step
+
+mouse_le_battery_level_updata:
+	fetch 2,mem_le_battery_level_updata_timer_init
+	store 2,mem_le_battery_level_updata_timer
+	branch mouse_fill_battery_level_le
+	
+mouse_le_enable_att_list:	
+	fetch 1,mem_le_connect_status_flag
+	rtnbit1 LL_PAIRING_SUCCESS_FLAG
+	call mouse_updata_le_param
+	arg WRITE_REQ_ENABLE_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+mouse_check_reconnect_delay_long_sleep:
+	arg mem_mouse_bluetooth_reconnect_timeout,regc
+	arg mouse_app_enter_hibernate,regb
+	branch timer_single_step
+
+mouse_current_mult_update_timer:
+	arg mem_mouse_current_mult_timer,regc
+	arg mouse_current_mult_reinit,regb
+	branch timer_single_step
+mouse_current_mult_reinit:
+	fetch 1,mem_lpm_mult_init
+	store 1,mem_lpm_mult
+	jam 1,mem_mouse_long_mult_flag
+	rtn
+
+
+mouse_check_no_data_timeout_timer:	
+	arg mem_mouse_no_data_timer,regc
+	arg mouse_check_no_data_timeout,regb
+	branch timer_single_step_2B
+
+mouse_check_no_data_timeout:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_hibernate_set
+	branch mouse_disconnect
+	
+mouse_no_data_timer_init:
+	fetch 2,mem_mouse_no_data_timeout
+	store 2,mem_mouse_no_data_timer
+	rtn
+
+mouse_store_information_delay_timer:
+	arg mem_store_information_delay_timer,regc
+	arg mouse_store_device_info_check,regb
+	branch timer_single_step
+
+mouse_store_device_info_check:
+	call mouse_store_device_info
+	fetch 1,mem_mouse_need_soft_reset
+	nbranch mouse_soft_reset,blank
+	rtn
+
+mouse_bb_event_discovery_btn:
+	isolate1 mark_24g,mark
+	call mouse_24g_stop,true
+	call mouse_disconnect
+	call mouse_le_clean_connect_flag
+	branch mouse_start_discovery
+	
+mouse_start_discovery:
+	bpatch patch11_0,mem_patch11
+	call mouse_device_discovery_led_config
+	fetch 2,mem_ui_state_map
+	isolate1 UI_STATE_BLE_ADV,pdata
+	call mouse_stop_le_adv,true		//reconnect adv
+	call mouse_bluetooth_fast_conn_disable
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_ADV,mouse_start_discovery_norandom
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE,mouse_start_discovery_norandom
+	fetcht 2,mem_random_addr_increase_count
+	increase 1,temp
+	storet 2,mem_random_addr_increase_count
+	storet 2,mem_le_lap+1
+	random pdata					//random ble addr
+	store 1,mem_le_lap
+mouse_start_discovery_norandom:
+	fetch 3,mem_mouse_le_lap_temp
+	store 3,mem_le_lap+3
+	call app_lpm_mult_disable
+	fetch 2,mem_mouse_discovery_timeout
+	store 2,mem_mouse_discovery_timer
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	store 2,mem_le_battery_level_updata_timer
+	store 1,mem_mouse_direct_timer
+	store 1,mem_mouse_bluetooth_reconnect_timeout
+	store 1,mem_mouse_clear_sensor_data_flag
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_enable_function_flag
+	call mouse_bt_discovery_button_down_disable
+	branch mouse_check_51cmd_adv
+
+mouse_stop_discovery:
+	bpatch patch11_1,mem_patch11
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	call mouse_disable_function_flag
+	jam 0,mem_mouse_bluetooth_reconnect_timeout
+	branch mouse_stop_le_adv
+mouse_stop_le_adv:
+	setarg 0
+	store 1,mem_mouse_direct_timer
+	store 2,mem_mouse_discovery_timer
+	branch check_51cmd_stop_adv
+
+mouse_store_remote_bdaddr:
+	bpatch patch11_2,mem_patch11
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_STORE_EEPROM_FLAG
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_disable_function_flag
+	call mouse_check_device_addr
+mouse_unplug_clean_bdaddr:
+	call mouse_before_store_reconn_info
+	branch mouse_store_device_info_delay
+
+mouse_check_device_addr:
+	fetch 1,mem_record_bt_mode
+	beq REC_4_MODE,mouse_check_le_device_addr
+	rtn
+mouse_check_le_device_addr:
+	store 1,mem_device_addr_temp
+	fetch 6,mem_le_plap
+mouse_check_bt_device_addr_common:
+	store 6,mem_device_addr_temp+1
+	fetch 7,mem_device_addr_temp
+	arg mem_device1_type,contr
+	arg 3,loopcnt
+mouse_check_device_addr_end:
+	ifetcht 7,contr
+	isub temp,null
+	branch mouse_clean_addr,zero
+	increase 22,contr
+	loop mouse_check_device_addr_end
+	rtn
+mouse_before_store_reconn_info:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	increase -1,pdata
+	mul32 pdata,29,pdata
+	iadd rega,rega
+	fetch 1,mem_record_bt_mode
+	istore 1,rega
+	beq REC_4_MODE,mouse_store_le_device
+	rtn
+	
+mouse_store_le_device:
+	fetch 6,mem_le_plap
+	istore 6,contw
+	arg mem_le_ltk,contr
+	call memcpy16
+	fetch 6,mem_le_lap
+	istore 6,contw
+	rtn
+
+mouse_clean_addr:
+	increase -6,contr
+	copy contr,contw
+	fetcht 6,mem_device_addr_temp+1
+	increase 3,temp
+	istoret 6,contw
+	rtn
+	
+mouse_select_reconn_device:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	increase -1,pdata
+	mul32 pdata,29,pdata
+	iadd rega,rega
+	ifetch 1,rega
+	store 1,mem_xrecord_mode
+	beq REC_4_MODE,mouse_load_le_device
+	rtn
+
+mouse_load_le_device:
+	ifetch 6,contr
+mouse_load_le_device_end:
+	store 6,mem_hci_plap
+	arg mem_le_ltk,contw
+	call memcpy16
+	ifetch 6,contr
+	store 6,mem_le_lap
+	rtn
+
+mouse_app_initflag_check:
+	bpatch patch11_3,mem_patch11
+	fetch 2,mem_store_flag
+	arg EEPROM_INIT_FLAG,temp
+	isub temp,null
+	branch mouse_load_device_info,zero
+mouse_app_initflag_check_next:
+	storet 2,mem_store_flag
+	call mouse_ble_init_address
+	fetch 1,mem_device_flag_temp
+	store 1,mem_device_flag
+	fetch 4,mem_24g_fast_conn_addr
+	store 4,mem_24g_receiver_addr
+	store 4,mem_24g_addr
+mouse_load_default_dpi:
+	fetch 1,mem_config_sensor_dpi
+	store 1,mem_mouse_dpi
+	rtn
+
+mouse_load_device_info:
+	call mouse_otp_load_dpi
+//	call mouse_select_reconn_device
+	fetch 4,mem_mouse_24g_addr
+	store 4,mem_24g_receiver_addr
+	store 4,mem_24g_addr
+	rtn	
+
+mouse_otp_load_dpi:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_LOAD_AND_STORE_DPI
+	fetch 2,mem_otp_offset_dpi
+	copy pdata,regb
+	call mouse_read_otp_dpi_common			
+	fetch 1,mem_mouse_dpi_temp
+	call mouse_load_default_dpi,blank
+	rtn
+	
+mouse_ble_init_address:
+	fetch 6,mem_le_lap
+	store 6,mem_device1_locall_addr
+	add pdata,0x0100,pdata
+	store 6,mem_device2_locall_addr
+	add pdata,0x0100,pdata
+	store 6,mem_device3_locall_addr
+	rtn
+
+/******************************store info start**************************************/
+	
+mouse_store_device_info_delay:	
+	fetch 1,mem_store_information_delay_timer_init
+	store 1,mem_store_information_delay_timer
+	rtn
+
+mouse_store_device_info:
+	bpatch patch11_4,mem_patch11
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eeprom_device_info
+	bbit1 MOUSE_ENABLE_FLASH,mouse_store_flash_device_info
+	bbit1 MOUSE_ENABLE_OTP,mouse_store_otp_device_info
+	rtn
+
+mouse_store_dpi_info_check:
+	bpatch patch11_5,mem_patch11
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eerpom_dpi
+	bbit1 MOUSE_ENABLE_OTP,mouse_store_otp_dpi
+	rtn
+
+
+/******************eeprom data store****************/
+mouse_store_eeprom_device_info:
+	arg 128,temp
+	arg mem_device_flag,rega
+	arg MOUSE_INFO_EEPROM_OFFECT,regb
+	branch iicd_write_protect_eep_data
+
+mouse_store_eerpom_dpi:
+	arg 1,temp
+	arg mem_mouse_dpi,rega
+	arg MOUSE_DPI_EEPROM_OFFECT,regb
+	branch iicd_write_protect_eep_data
+	
+
+/******************flash data store****************/
+mouse_store_flash_device_info:
+	call spid_init_flash
+	call mouse_spid_flash_release_form_powerdown
+	call mouse_flash_erase_sector
+
+	call mouse_information_flash_parameters
+	call mouse_spid_write_flash
+	call mouse_spid_flash_powerdown
+	branch mouse_sensor_spi_init
+
+
+
+/******************otp data store****************/
+mouse_store_otp_device_info:
+	call mouse_write_otp_device_flag
+	call mouse_write_otp_device_info
+	branch mouse_write_otp_le_addr_increase_count_info
+
+
+/**********otp device flag store********/
+mouse_write_otp_device_flag:
+	fetchr regb,2,mem_otp_offset_device_flag
+	copy regb,regc
+mouse_write_otp_device_flag_loop:
+	call mouse_read_otp_device_flag_common
+	fetch 1,mem_device_flag_temp
+	branch mouse_device_flag_store,blank
+	store 1,mem_device_flag_last
+	increase 1,regc
+	fetch 2,mem_otp_offset_device_flag_end
+	isub regc,null
+	nrtn positive
+	copy regc,regb
+	branch mouse_write_otp_device_flag_loop
+
+mouse_device_flag_store:
+	fetch 1,mem_device_flag_last
+	and pdata,0xf0,pdata
+	branch mouse_device_flag_store_check,blank
+	fetch 1,mem_device_flag
+	store 1,mem_device_flag_value
+mouse_devoce_flag_store_end:	
+	arg 1,loopcnt
+	copy regc,regb
+	arg mem_device_flag_value,rega
+	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
+
+mouse_device_flag_store_check:
+	fetch 1,mem_device_flag_last
+	fetcht 1,mem_device_flag
+	isub temp,null
+	rtn zero
+	lshift4 temp,temp
+	iadd temp,pdata
+	store 1,mem_device_flag_value
+	
+	copy regc,pdata
+	fetcht 2,mem_otp_offset_device_flag
+	isub temp,null
+	branch mouse_devoce_flag_store_end,zero
+	
+	increase -1,regc
+	branch mouse_devoce_flag_store_end
+
+
+/**********otp addr store********/
+mouse_write_otp_device_info:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_write_otp_24g_addr
+	beq MODE_BT_DEVICE1,mouse_write_otp_le_device1
+	beq MODE_BT_DEVICE2,mouse_write_otp_le_device2
+	rtn
+
+mouse_write_otp_24g_addr:
+	fetchr regb,2,mem_otp_offset_24g_addr
+	copy regb,regc
+mouse_otp_store_24g_addr_loop:
+	call mouse_read_otp_24g_addr_common
+	fetch 4,mem_mouse_24g_addr_temp
+	branch mouse_24g_addr_store,blank	
+	store 4,mem_mouse_24g_addr_last
+	increase 4,regc
+	fetch 2,mem_otp_offset_24g_addr_end
+	isub regc,null
+	nrtn positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_otp_store_24g_addr_loop
+
+mouse_24g_addr_store:
+	fetch 4,mem_mouse_24g_addr_last
+	fetcht 4,mem_mouse_24g_addr
+	isub temp,null
+	rtn zero
+	arg 4,loopcnt
+	arg mem_mouse_24g_addr,rega
+	copy regc,regb
+	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
+
+mouse_write_otp_le_device1:
+	fetchr regb,2,mem_otp_offset_le_addr1
+	copy regb,regc
+mouse_otp_store_le_addr1_loop:
+	call mouse_read_otp_le_addr1_common
+	fetch 6,mem_mouse_le_addr1_temp
+	branch mouse_le_addr1_store,blank	
+	store 6,mem_mouse_le_addr1_last
+	increase 6,regc
+	fetch 2,mem_otp_offset_le_addr1_end
+	isub regc,null
+	nrtn positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_otp_store_le_addr1_loop
+
+mouse_le_addr1_store:
+	fetch 6,mem_mouse_le_addr1_last
+	fetcht 6,mem_device1_addr
+	isub temp,null
+	rtn zero
+	arg 6,loopcnt
+	arg mem_device1_addr,rega
+	copy regc,regb
+	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
+
+
+mouse_write_otp_le_device2:
+	fetchr regb,2,mem_otp_offset_le_addr2
+	copy regb,regc
+mouse_otp_store_le_addr2_loop:
+	call mouse_read_otp_le_addr2_common
+	fetch 6,mem_mouse_le_addr2_temp
+	branch mouse_le_addr2_store,blank	
+	store 6,mem_mouse_le_addr2_last
+	increase 6,regc
+	fetch 2,mem_otp_offset_le_addr2_end
+	isub regc,null
+	nrtn positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_otp_store_le_addr2_loop
+
+mouse_le_addr2_store:
+	fetch 6,mem_mouse_le_addr2_last
+	fetcht 6,mem_device2_addr
+	isub temp,null
+	rtn zero
+	arg 6,loopcnt
+	arg mem_device2_addr,rega
+	copy regc,regb
+	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
+
+
+/**************store le addr increase count**********/
+mouse_write_otp_le_addr_increase_count_info:
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	fetchr regb,2,mem_otp_offset_le_addr_increase_count
+	copy regb,regc
+mouse_otp_store_le_addr_increase_count_loop:
+	call mouse_read_otp_le_addr_increase_count_common
+	fetch 2,mem_random_addr_increase_count_temp
+	branch mouse_le_addr_increase_count_store,blank	
+	store 2,mem_random_addr_increase_count_last
+	increase 2,regc
+	fetch 2,mem_otp_offset_le_addr_increase_count_end
+	isub regc,null
+	nrtn positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_otp_store_le_addr_increase_count_loop
+
+mouse_le_addr_increase_count_store:
+	fetch 2,mem_random_addr_increase_count_last
+	fetcht 2,mem_random_addr_increase_count
+	isub temp,null
+	rtn zero
+	arg 2,loopcnt
+	arg mem_random_addr_increase_count,rega
+	copy regc,regb
+	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
+
+
+/**********otp dpi store********/
+mouse_store_otp_dpi:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_LOAD_AND_STORE_DPI
+	fetchr regb,2,mem_otp_offset_dpi
+	copy regb,regc
+mouse_otp_store_dpi_loop:
+	call mouse_read_otp_dpi_common
+	fetch 1,mem_mouse_dpi_temp
+	branch mouse_otp_dpi_store,blank
+	store 1,mem_mouse_dpi_last
+	increase 1,regc
+	fetch 2,mem_otp_offset_dpi_end
+	isub regc,null
+	nrtn positive
+	copy regc,regb
+	branch mouse_otp_store_dpi_loop
+
+mouse_otp_dpi_store:
+	fetch 1,mem_mouse_dpi_last
+	and pdata,0xf0,pdata
+	branch mouse_dpi_store_last,blank
+	fetch 1,mem_mouse_dpi
+	store 1,mem_mouse_otp_dpi_value
+mouse_dpi_store_end:	
+	arg 1,loopcnt
+	copy regc,regb
+	arg mem_mouse_otp_dpi_value,rega
+	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
+
+mouse_dpi_store_last:
+	fetch 1,mem_mouse_dpi_last
+	fetcht 1,mem_mouse_dpi
+	isub temp,null
+	rtn zero
+	lshift4 temp,temp
+	iadd temp,pdata
+	store 1,mem_mouse_otp_dpi_value
+	
+	copy regc,pdata
+	fetcht 2,mem_otp_offset_dpi
+	isub temp,null
+	branch mouse_dpi_store_end,zero
+	
+	increase -1,regc
+	branch mouse_dpi_store_end
+	
+/******************************store info end**************************************/
+	
+
+
+/******************************load info start**************************************/
+
+/******************eeprom data load****************/
+mouse_load_eeprom_info_check:
+	call iicd_read_init_pin
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_2K_EEPROM,pdata
+	ncall clear_eeprom_size_2k,true
+	call mouse_eeprom_load_recon_info
+	branch mouse_app_initflag_check
+
+mouse_eeprom_load_recon_info:
+	arg 128,temp
+	arg mem_device_flag,rega
+	arg MOUSE_INFO_EEPROM_OFFECT,regb
+	branch iicd_read_eep_data
+
+mouse_load_eeprom_dpi:
+	arg 1,temp
+	arg mem_mouse_dpi,rega
+	arg MOUSE_DPI_EEPROM_OFFECT,regb
+	branch iicd_read_eep_data
+
+
+/******************flash data load****************/
+mouse_load_flash_info_check:
+	call spid_init_flash
+	call mouse_spid_flash_release_form_powerdown
+	call mouse_information_flash_parameters
+	call spid_read_flash
+	call mouse_spid_flash_powerdown
+	call mouse_app_initflag_check
+	branch mouse_sensor_spi_init
+	
+mouse_information_flash_parameters:
+	setarg mem_mouse_information_end
+	arg mem_mouse_information_start,temp
+	isub temp,temp
+	fetch 3,mem_flash_base
+	arg mem_mouse_information_start,rega
+	rtn
+	
+mouse_spid_flash_release_form_powerdown:
+	jam FLASH_COMMAND_RELEASE_FROM_POWERDOWN,mem_temp
+mouse_spid_write_flash_cmd:
+	call delay_nop100
+	call spid_unlock_flash
+	arg mem_write_flash_head_temp,rega
+	fetcht 1,mem_temp
+	call mouse_spid_write_flash_cmd_common
+	branch delay_nop100
+
+mouse_spid_flash_powerdown:
+	jam FLASH_COMMAND_POWERDOWN,mem_temp
+	branch mouse_spid_write_flash_cmd
+
+mouse_spid_write_flash_cmd_common:
+	istoret 1,rega
+	rshift16 pdata,temp
+	istoret 1,contw
+	rshift8 pdata,temp
+	istoret 1,contw
+	istore 1,contw
+	deposit rega
+	store 2,core_spid_txaddr
+	setarg 0
+	store 2,core_spid_rxlen
+	jam spid_start,core_misc_ctrl
+	branch wait_spid_done
+		
+mouse_flash_erase_sector:
+	fetch 3,mem_flash_base
+	store 3,mem_spi_write_addr
+	branch spid_flash_erase_sector+2
+
+mouse_spid_write_flash:
+	copy pdata,regc
+	copy rega,pdata
+	increase -4,pdata
+	copy pdata,regb
+	ifetch 4,regb
+	store 4,mem_write_flash_head_temp
+	copy regc,pdata
+	call spid_write_flash
+	fetch 4,mem_write_flash_head_temp
+	istore 4,regb
+	rtn
+
+mouse_flash_power_down:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_FLASH
+	call mouse_spid_flash_powerdown
+	call twspi_enable	// 2 wire mode
+	fetcht 1,mem_spi_cs_gpio		//disable flash
+	call gpio_out_inactive
+	fetcht 1,mem_spi_hold_gpio
+	branch mouse_gpio_config_input_pd
+
+
+/******************otp data load****************/
+mouse_load_otp_info_check:
+	call mouse_read_otp_dpi
+	call mouse_read_otp_device_flag
+	call mouse_read_otp_device_info
+	call mouse_read_otp_le_addr_increase_count_info
+mouse_otp_load_app_initflag:
+	arg 2,loopcnt
+	fetch 2,mem_otp_offset_app_initflag
+	copy pdata,regb
+	arg mem_store_flag,rega
+	call otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */
+	call mouse_app_initflag_check
+mouse_otp_store_app_initflag:
+	arg 2,loopcnt
+	arg mem_store_flag,rega
+	fetchr regb,2,mem_otp_offset_app_initflag
+	branch otp_write
+
+
+/**************load device flag**********/
+mouse_read_otp_device_flag:
+	fetchr regb,2,mem_otp_offset_device_flag
+	copy regb,regc
+mouse_read_otp_device_flag_loop:
+	call mouse_read_otp_device_flag_common
+	fetch 1,mem_device_flag_temp
+	branch mouse_device_flag_load,blank	
+	store 1,mem_device_flag_last
+	increase 1,regc
+	fetch 2,mem_otp_offset_device_flag_end
+	isub regc,null
+	nbranch mouse_device_flag_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_device_flag_loop
+
+mouse_read_otp_device_flag_common:
+	arg 1,loopcnt
+	arg mem_device_flag_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */
+
+mouse_device_flag_load:
+	fetch 1,mem_device_flag_last
+	copy pdata,temp
+	and pdata,0xf0,pdata
+	branch mouse_device_flag_load_last,blank
+	rshift4 pdata,pdata
+	branch mouse_device_flag_load_end
+
+mouse_device_flag_load_last:
+	copy temp,pdata
+mouse_device_flag_load_end:
+	store 1,mem_device_flag
+	rtn
+
+/****************otp load addr*************/
+mouse_read_otp_device_info:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_read_otp_24g_addr
+	beq MODE_BT_DEVICE1,mouse_read_otp_le_device1
+	beq MODE_BT_DEVICE2,mouse_read_otp_le_device2
+	rtn
+	
+mouse_read_otp_le_device1:
+	call mouse_read_otp_le_device1_addr
+	branch mouse_read_otp_le_device1_locall_addr
+
+mouse_read_otp_le_device2:
+	call mouse_read_otp_le_device2_addr
+	branch mouse_read_otp_le_device2_locall_addr
+
+/*************************load le addr1**********************************/
+mouse_read_otp_le_device1_addr:
+	fetchr regb,2,mem_otp_offset_le_addr1
+	copy regb,regc
+mouse_read_otp_le_device1_addr_loop:
+	call mouse_read_otp_le_addr1_common	
+	fetch 6,mem_mouse_le_addr1_temp
+	branch mouse_le_addr1_load,blank	
+	store 6,mem_mouse_le_addr1_last
+	increase 6,regc
+	fetch 2,mem_otp_offset_le_addr1_end
+	isub regc,null
+	nbranch mouse_le_addr1_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_le_device1_addr_loop
+
+mouse_read_otp_le_addr1_common:
+	arg 6,loopcnt
+	arg mem_mouse_le_addr1_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */	
+
+mouse_le_addr1_load:
+	fetch 6,mem_mouse_le_addr1_last
+	store 6,mem_device1_addr
+	rtn
+
+
+mouse_read_otp_le_device1_locall_addr:
+	fetchr regb,2,mem_otp_offset_le_locall_addr1
+	copy regb,regc
+mouse_read_otp_le_device1_locall_addr_loop:
+	call mouse_read_otp_le_locall_addr1_common	
+	fetch 6,mem_mouse_le_locall_addr1_temp
+	branch mouse_le_locall_addr1_load,blank	
+	store 6,mem_mouse_le_locall_addr1_last
+	increase 6,regc
+	fetch 2,mem_otp_offset_le_locall_addr1_end
+	isub regc,null
+	nbranch mouse_le_locall_addr1_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_le_device1_locall_addr_loop
+
+mouse_read_otp_le_locall_addr1_common:
+	arg 6,loopcnt
+	arg mem_mouse_le_locall_addr1_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */	
+
+mouse_le_locall_addr1_load:
+	fetch 6,mem_mouse_le_locall_addr1_last
+	store 6,mem_device1_locall_addr
+	rtn
+
+
+/*************************load le addr2**********************************/
+mouse_read_otp_le_device2_addr:
+	fetchr regb,2,mem_otp_offset_le_addr2
+	copy regb,regc
+mouse_read_otp_le_device2_addr_loop:
+	call mouse_read_otp_le_addr2_common	
+	fetch 6,mem_mouse_le_addr2_temp
+	branch mouse_le_addr2_load,blank	
+	store 6,mem_mouse_le_addr2_last
+	increase 6,regc
+	fetch 2,mem_otp_offset_le_addr2_end
+	isub regc,null
+	nbranch mouse_le_addr2_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_le_device2_addr_loop
+
+mouse_read_otp_le_addr2_common:
+	arg 6,loopcnt
+	arg mem_mouse_le_addr2_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */	
+
+mouse_le_addr2_load:
+	fetch 6,mem_mouse_le_addr2_last
+	store 6,mem_device2_addr
+	rtn
+
+
+mouse_read_otp_le_device2_locall_addr:
+	fetchr regb,2,mem_otp_offset_le_locall_addr2
+	copy regb,regc
+mouse_read_otp_le_device2_locall_addr_loop:
+	call mouse_read_otp_le_locall_addr2_common	
+	fetch 6,mem_mouse_le_locall_addr2_temp
+	branch mouse_le_locall_addr2_load,blank	
+	store 6,mem_mouse_le_locall_addr2_last
+	increase 6,regc
+	fetch 2,mem_otp_offset_le_locall_addr2_end
+	isub regc,null
+	nbranch mouse_le_locall_addr2_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_le_device2_locall_addr_loop
+
+mouse_read_otp_le_locall_addr2_common:
+	arg 6,loopcnt
+	arg mem_mouse_le_locall_addr2_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */	
+
+mouse_le_locall_addr2_load:
+	fetch 6,mem_mouse_le_locall_addr2_last
+	store 6,mem_device2_locall_addr
+	rtn
+
+
+/**************load 24g addr**********/
+mouse_read_otp_24g_addr:
+	fetchr regb,2,mem_otp_offset_24g_addr
+	copy regb,regc
+mouse_read_otp_24g_addr_loop:
+	call mouse_read_otp_24g_addr_common
+	fetch 4,mem_mouse_24g_addr_temp
+	branch mouse_24g_addr_load,blank	
+	store 4,mem_mouse_24g_addr_last
+	increase 4,regc
+	fetch 2,mem_otp_offset_24g_addr_end
+	isub regc,null
+	nbranch mouse_24g_addr_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_24g_addr_loop
+
+mouse_read_otp_24g_addr_common:
+	arg 4,loopcnt
+	arg mem_mouse_24g_addr_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */
+	
+mouse_24g_addr_load:
+	fetch 4,mem_mouse_24g_addr_last
+	store 4,mem_mouse_24g_addr
+	rtn
+
+/**************load le addr increase count**********/
+mouse_read_otp_le_addr_increase_count_info:
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	fetchr regb,2,mem_otp_offset_le_addr_increase_count
+	copy regb,regc
+mouse_read_otp_le_addr_increase_count_loop:
+	call mouse_read_otp_le_addr_increase_count_common
+	fetch 2,mem_random_addr_increase_count_temp
+	branch mouse_le_addr_increase_count_load,blank	
+	store 2,mem_random_addr_increase_count_last
+	increase 2,regc
+	fetch 2,mem_otp_offset_le_addr_increase_count_end
+	isub regc,null
+	nbranch mouse_le_addr_increase_count_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_le_addr_increase_count_loop
+
+mouse_read_otp_le_addr_increase_count_common:
+	arg 2,loopcnt
+	arg mem_random_addr_increase_count_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */
+	
+mouse_le_addr_increase_count_load:
+	fetch 2,mem_random_addr_increase_count_temp
+	store 2,mem_random_addr_increase_count
+	rtn
+
+/*************load dpi**********/
+mouse_read_otp_dpi:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_LOAD_AND_STORE_DPI,mouse_load_default_dpi
+	fetchr regb,2,mem_otp_offset_dpi
+	copy regb,regc
+mouse_read_otp_dpi_loop:
+	call mouse_read_otp_dpi_common	
+	fetch 1,mem_mouse_dpi_temp
+	branch mouse_dpi_load,blank	
+	store 1,mem_mouse_dpi_last
+	increase 1,regc
+	fetch 2,mem_otp_offset_dpi_end
+	isub regc,null
+	nbranch mouse_dpi_load,positive	//if read end,retention last value
+	copy regc,regb
+	branch mouse_read_otp_dpi_loop
+
+mouse_read_otp_dpi_common:
+	arg 1,loopcnt
+	arg mem_mouse_dpi_temp,rega
+	branch otp_read_data				/* regb=otp address, rega points to data, loopcnt is count */
+
+mouse_dpi_load:
+	fetch 1,mem_mouse_dpi_last
+	copy pdata,temp
+	and pdata,0xf0,pdata
+	branch mouse_dpi_load_last,blank
+	rshift4 pdata,pdata
+	branch mouse_dpi_load_end
+
+mouse_dpi_load_last:
+	copy temp,pdata
+mouse_dpi_load_end:
+	store 1,mem_mouse_dpi
+	rtn
+
+/******************************load info end**************************************/
+
+
+mouse_idle:
+	bpatch patch11_6,mem_patch11
+	call mouse_low_voltage_led_no_enter_lpm
+	call ui_check_paring_button
+	call mouse_dpi_check
+	call mouse_dpi_another_gpio_check
+	call mouse_select_device_check
+	call mouse_check_select_device_by_switch
+	call mouse_bt_button_check
+	branch mouse_wheel_check
+	
+mouse_select_device_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_SELECT_DEVICE_BY_PB_BUTTON,mouse_select_device_by_pb_button
+	bbit1 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY,mouse_select_device_by_pb_button
+	rtn
+
+mouse_select_device_by_pb_button_check_once:
+	jam 0x03,mem_mouse_pbkey_press_status
+mouse_select_device_by_pb_button:	
+	call mouse_select_device_by_pb_button_check
+	branch mouse_select_device_by_pb_button_exit
+	
+mouse_select_device_by_pb_button_check:
+	bpatch patch11_7,mem_patch11
+	fetch 1,mem_config_select_device_button_gpio
+	rtneq GPIO_DISABLE
+	arg 0,rega
+	jam MOUSE_PB_KEY,mem_mouse_key_temp
+	fetcht 1,mem_config_select_device_button_gpio
+	call mouse_pb_button_check
+	store 1,mem_mouse_pbkey_press_status
+	fetch 1,mem_matrix_public_gpio
+	beq GPIO_DISABLE,mouse_3io6key_pb_button_check_end	
+	branch mouse_matrix_public_gpio_reset
+
+mouse_retransmit_select_device_by_pb_button:
+	call mouse_select_device_by_pb_button_check
+	copy rega,pdata
+	bbit1 MOUSE_PB_KEY,mouse_select_device_button_down+2
+	branch mouse_select_device_button_up
+	
+mouse_3io6key_pb_button_check_end:
+	fetcht 1,mem_config_select_device_button_gpio
+	call mouse_gpio_config_input_pu
+mouse_select_device_by_pb_button_exit:	
+	copy rega,pdata
+	bbit1 MOUSE_PB_KEY,mouse_select_device_button_down
+	branch mouse_select_device_button_up
+
+mouse_pb_button_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_PB_BUTTON_CONNECT_GND,mouse_pb_button_connect_gnd
+	fetch 1,mem_mouse_pbkey_press_status
+	copy pdata,regc
+	fetch 1,mem_matrix_public_gpio
+	beq GPIO_DISABLE,mouse_3io6key_check
+	fetch 1,mem_mouse_ghost_flag
+	nbranch mouse_select_device_by_pb_button_end,blank
+	branch mouse_pb_button_connect_matrix
+
+mouse_select_device_by_pb_button_end:
+	jam PB_BUTTON_STATE_UP,mem_select_device_button_statue
+	jam 0,mem_mouse_pbkey_press_status
+	rtn
+
+mouse_pb_button_connect_gnd:
+	fetch 1,mem_mouse_pbkey_press_status
+	branch mouse_check_key_connect_gnd
+
+mouse_pb_button_connect_matrix:
+	call gpio_get_bit
+	fetcht 1,mem_matrix_public_gpio
+	branch mouse_pb_button_connect_gnd,true
+	fetcht 1,mem_matrix_public_gpio
+	call gpio_out_active
+	fetcht 1,mem_config_select_device_button_gpio
+	fetch 1,mem_mouse_pbkey_press_status
+	branch mouse_check_key_connect_gnd
+	
+mouse_select_device_button_up:
+	fetch 1,mem_select_device_button_statue
+	rtneq PB_BUTTON_STATE_UP
+	jam PB_BUTTON_STATE_UP,mem_select_device_button_statue	
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY
+	fetch 1,mem_bt_discovery_count
+	sub pdata,20,null
+	ncall mouse_ready_reconnection_by_button,positive		// press button less than 30-20=1000ms
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_bt_discovery_count
+	rtn
+
+mouse_select_device_button_down:
+	call mouse_select_device_ghost_check
+	rtn user
+	fetch 1,mem_select_device_button_statue
+	rtneq PB_BUTTON_STATE_DOWN
+	jam PB_BUTTON_STATE_DOWN,mem_select_device_button_statue
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY,mouse_long_button_bt_discovery
+	fetch 1,mem_mouse_direct_timer
+	rtn blank
+	fetch 1,mem_mouse_direct_timeout
+	store 1,mem_mouse_direct_timer
+	rtn
+
+mouse_select_device_ghost_check:
+	disable user
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_PB_BUTTON_CONNECT_GND
+mouse_ghost_key_value_check:
+	fetch 1,mem_mouse_lkey_press_status
+	rtn blank
+	fetch 1,mem_mouse_rkey_press_status
+	rtn blank
+	branch enable_user
+	
+mouse_check_select_device_by_switch:
+	bpatch patch12_0,mem_patch12
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
+	fetcht 1,mem_device_switch_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_device_switch_gpio
+	call gpio_get_bit
+	branch mouse_check_select_24g_device,true
+mouse_select_btdevice:
+	fetch 1,mem_device_flag
+	rtneq MODE_BT_DEVICE1
+	jam MODE_BT_DEVICE1,mem_device_flag
+	branch mouse_stop_bluetooth_mode
+	
+mouse_check_select_24g_device:	
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	jam MODE_24G_DEVICE,mem_device_flag
+	branch mouse_24g_stop
+
+mouse_ready_reconnection_by_button:
+	bpatch patch12_1,mem_patch12
+	fetch 1,mem_device_number
+	rtneq 1		// 1channel
+	call mouse_select_device_number
+	storet 1,mem_device_flag
+mouse_store_device_number_before_reset:	
+//	jam 0,mem_link_key_exists
+	call mouse_select_device_enable
+	call mouse_stop_bluetooth_mode
+	call app_evt_button_long_pressed
+	call mouse_select_device_disable
+	jam 1,mem_mouse_need_soft_reset
+	branch mouse_store_device_info_delay
+
+mouse_soft_reset:
+	call mouse_select_device_enable
+	branch soft_reset_chip
+
+mouse_select_device_number:
+	fetcht 1,mem_device_flag
+	increase 1,temp
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G,mouse_select_device_number_24g
+	sub temp,2,null
+	ncall mouse_select_device_count_clean_bt,positive
+	rtn
+	
+mouse_select_device_number_24g:	
+	fetch 1,mem_device_number
+	increase -1,pdata
+	isub temp,null
+	ncall mouse_select_device_count_clean_24g,positive
+	rtn
+
+mouse_select_device_count_clean_24g:
+	arg 0,temp
+	rtn
+mouse_select_device_count_clean_bt:
+	arg 1,temp
+	rtn
+
+mouse_store_device_number2eeprom:
+	arg 1,temp
+	arg mem_device_flag,rega
+	arg 0,regb
+	branch iicd_write_protect_eep_data
+		
+mouse_bt_button_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY
+	branch mouse_select_device_by_pb_button
+	
+mouse_select_device_enable:
+	arg MOUSE_SELECT_DEVICE_FLAG,queue
+	branch mouse_enable_function_flag
+mouse_select_device_disable:
+	arg MOUSE_SELECT_DEVICE_FLAG,queue
+	branch mouse_disable_function_flag
+mouse_bt_cannel_reconn_enable:
+	arg MOUSE_BT_CANNEL_RECONN_FLAG,queue
+	branch mouse_enable_function_flag
+mouse_bt_cannel_reconn_disable:
+	arg MOUSE_BT_CANNEL_RECONN_FLAG,queue
+	branch mouse_disable_function_flag
+mouse_bt_discovery_button_down_enable:
+	arg MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,queue
+	branch mouse_enable_function_flag
+mouse_bt_discovery_button_down_disable:
+	arg MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,queue
+	branch mouse_disable_function_flag
+
+mouse_adc_read_enable:
+	arg MOUSE_ENABLE_ADC,queue
+	branch mouse_enable_function_flag
+
+mouse_24g_set_250Hz:
+	arg MOUSE_ENABLE_24G_250Hz,queue
+	branch mouse_enable_function_flag
+
+mouse_24g_search_dongle_enable:
+	arg MOUSE_ENABLE_24G_SEARCH_DONGLE,queue
+	branch mouse_enable_function_flag
+	
+mouse_16M_enable:
+	arg MOUSE_ENABLE_16M,queue
+	branch mouse_enable_function_flag
+	
+mouse_dpi_4level_enable:
+	arg MOUSE_ENABLE_DPI_LEVEL_4,queue
+	branch mouse_enable_function_flag
+
+mouse_enable_function_flag:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	qset1 pdata
+	store MOUSE_FLAG_LEN,mem_mouse_flag
+	rtn
+
+mouse_disable_function_flag:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	qset0 pdata
+	store MOUSE_FLAG_LEN,mem_mouse_flag
+	rtn
+
+mouse_customer_key_enable:
+	setarg 0
+	store 8,mem_customer_key_press
+	store 8,mem_customer_key_release
+	fetch 1,mem_mouse_customer_function	// 01--win+d     02--ctrl+alt+a    03--AC home    04--play
+	beq 2,mouse_customer_key_ctrl_alt_a
+	beq 3,mouse_customer_AC_home
+	beq 4,mouse_customer_key_play
+	setarg 0x070008
+mouse_customer_standrad_key_set:	
+	store 8,mem_customer_key_press+1		// win + d
+	rtn
+
+mouse_customer_key_ctrl_alt_a:
+	setarg 0x040005
+	branch mouse_customer_standrad_key_set
+
+mouse_customer_AC_home:
+	setarg 0x022303
+mouse_customer_media_key_set:	
+	store 8,mem_customer_key_press
+	setarg 0x03
+	store 8,mem_customer_key_release
+	rtn
+	
+mouse_customer_key_play:
+	setarg 0x00cd03
+	branch mouse_customer_media_key_set
+
+	
+mouse_polling_device:
+	bpatch patch12_2,mem_patch12
+	fetch 1,mem_reconn_times
+	increase -1,pdata
+	store 1,mem_reconn_times
+	fetcht 1,mem_device_flag
+	sub temp,1,null
+	ncall mouse_select_device_number,zero
+	storet 1,mem_device_flag
+	call mouse_store_device_number2eeprom
+	call mouse_before_store_reconn_info
+	branch mouse_start_reconnect_device
+
+	
+//notice: need to call p_mouse_drawing_optima_init when waked from mult
+mouse_drawing_optima:
+	bpatch patch12_3,mem_patch12
+	fetch 1,mem_config_sensor_type
+	rtneq P3212
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_SMOOTHER
+	fetch 4,mem_mouse_x
+	rtn blank
+	call mouse_data_abs_check
+	setarg 0x03	//asm_flag enable condition
+	call mouse_pdata_greater_than_check
+	call mouse_disable_asm,blank
+	ncall mouse_enable_asm,blank
+	setarg 0x02	//asm_flag disable condition
+	call mouse_data_less_than_check
+	call mouse_disable_asm,blank
+	fetch 1,mem_mouse_asm_flag
+	beq 1,mouse_drawing_optima_modify
+mouse_drawing_optima_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_SMOOTHER
+	arg 5,loopcnt
+	arg mem_mouse_asm_flag,contw
+	branch clear_mem
+
+mouse_drawing_optima_modify:
+	call mouse_drawing_optima_xy_offset_modify
+	fetch 2,mem_mouse_x_pre
+	store 2,mem_data_pre
+	fetch 2,mem_mouse_x
+	store 2,mem_data_current
+	call mouse_drawing_optima_data_x
+	fetch 2,mem_data_pre
+	store 2,mem_mouse_x_pre
+	fetch 2,mem_data_current
+	store 2,mem_mouse_x
+
+	fetch 2,mem_mouse_y_pre
+	store 2,mem_data_pre
+	fetch 2,mem_mouse_y
+	store 2,mem_data_current
+	call mouse_drawing_optima_data_y
+	fetch 2,mem_data_pre
+	store 2,mem_mouse_y_pre
+	fetch 2,mem_data_current
+	store 2,mem_mouse_y
+	rtn
+
+mouse_drawing_optima_xy_offset_modify:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_XY_OFFSET
+	bpatch patch12_4,mem_patch12
+	fetch 2,mem_mouse_x_pre
+	store 2,mem_data_value
+	call mouse_pre_xy_data_judge
+	store 2,mem_mouse_x_pre
+	fetch 2,mem_mouse_x
+	store 2,mem_data_value
+	call mouse_current_xy_data_judge
+	store 2,mem_mouse_x
+	fetch 2,mem_mouse_y_pre
+	store 2,mem_data_value
+	call mouse_pre_xy_data_judge
+	store 2,mem_mouse_y_pre
+	fetch 2,mem_mouse_y
+	store 2,mem_data_value
+	call mouse_current_xy_data_judge
+	store 2,mem_mouse_y
+	rtn
+
+mouse_pre_xy_data_judge:	
+	fetch 1,mem_data_value+1
+	branch mouse_pre_xy_pdata_offset,blank
+	branch mouse_pre_xy_ndata_offset
+
+mouse_pre_xy_pdata_offset:
+	fetch 1,mem_data_value
+	call mouse_pre_xy_get_0_4_times
+	store 1,mem_data_value
+mouse_xy_data_offset_new:
+	fetch 2,mem_data_value
+	rtn
+mouse_pre_xy_ndata_offset:
+	fetch 1,mem_data_value
+	call mouse_pdata_invert
+	call mouse_pre_xy_get_0_4_times
+	call disable_blank,blank
+	call mouse_pdata_get_new_value
+	branch mouse_xy_data_offset_new
+	
+mouse_current_xy_data_judge:
+	fetch 1,mem_data_value+1
+	branch mouse_current_xy_pdata_offset,blank
+	branch mouse_current_xy_ndata_offset
+mouse_current_xy_pdata_offset:
+	fetch 1,mem_data_value
+	call mouse_current_xy_get_0_6_times
+	store 1,mem_data_value
+	branch mouse_xy_data_offset_new
+mouse_current_xy_ndata_offset:	
+	fetch 1,mem_data_value
+	call mouse_pdata_invert
+	call mouse_current_xy_get_0_6_times
+	call disable_blank,blank
+	call mouse_pdata_get_new_value
+	branch mouse_xy_data_offset_new
+	
+mouse_pre_xy_get_0_4_times:
+	mul32 pdata,4,pdata
+	div pdata,5
+	call wait_div_end
+	quotient pdata
+	rtn
+mouse_current_xy_get_0_6_times:	//0.6 times
+	mul32 pdata,12,pdata
+	div pdata,10
+	call wait_div_end
+	quotient pdata
+	rtn	
+	
+mouse_drawing_optima_data_x:
+	fetch 2,mem_data_pre
+	fetcht 2,mem_data_current
+	iadd temp,pdata
+	fetcht 1,mem_mouse_data_xtemp
+	iadd temp,pdata
+	and pdata,0x01,temp
+	storet 1,mem_mouse_data_xtemp
+	branch mouse_drawing_optima_data
+
+mouse_drawing_optima_data_y:
+	fetch 2,mem_data_pre
+	fetcht 2,mem_data_current
+	iadd temp,pdata
+	fetcht 1,mem_mouse_data_ytemp
+	iadd temp,pdata
+	and pdata,0x01,temp
+	storet 1,mem_mouse_data_ytemp
+	branch mouse_drawing_optima_data
+
+/**********
+input:data_pre,data_current
+output:data_pre,data_current after optima
+***********/
+mouse_drawing_optima_data:
+	store 3,mem_data_sum
+	isolate1 16,pdata
+	branch mouse_data_sum_overflow,true
+	fetch 1,mem_data_sum+1
+	beq 0xff,mouse_data_sum_n
+	fetch 1,mem_data_sum
+mouse_data_store_pre:
+	rshift pdata,pdata
+	store 2,mem_data_pre
+	store 2,mem_data_current
+	rtn
+mouse_data_sum_overflow:
+	fetch 1,mem_data_sum+1	//sum positive
+	beq 0,mouse_data_sum_overflow_p
+	fetch 3,mem_data_sum	
+	branch mouse_data_store_pre
+mouse_data_sum_overflow_p:
+	jam 0,mem_data_sum+2
+	fetch 1,mem_data_sum
+	branch mouse_data_store_pre
+
+mouse_data_sum_n:
+	fetch 1,mem_data_sum	//sum negetive
+	call mouse_pdata_get_half
+	store 1,mem_data_pre
+	store 1,mem_data_current
+	branch mouse_data_zero,blank
+	setarg 0xff
+mouse_data_set_direction:	
+	store 1,mem_data_pre+1
+	store 1,mem_data_current+1
+	rtn
+mouse_data_zero:
+	setarg 0
+	branch mouse_data_set_direction
+
+mouse_pdata_get_half:
+	call mouse_pdata_invert
+	rshift pdata,pdata
+mouse_pdata_get_new_value:	
+	call mouse_rega_in_out
+	sub pdata,0,pdata
+	store 1,mem_data_value	
+	rtn
+
+mouse_pdata_invert:
+	sub pdata,0,pdata
+mouse_rega_in_out:	
+	store 1,mem_rega
+	fetch 1,mem_rega
+	rtn
+
+mouse_disable_asm:
+	jam 0,mem_mouse_asm_flag
+	rtn
+mouse_enable_asm:
+	jam 1,mem_mouse_asm_flag
+	rtn
+
+//rega mouse_x, regb mouse_y, pdata refer
+mouse_pdata_greater_than_check:
+	isub rega,null
+	nbranch disable_blank,positive
+	isub regb,null
+	nbranch disable_blank,positive
+	branch enable_blank
+mouse_data_less_than_check:
+	isub rega,null
+	nrtn positive
+	isub regb,null
+	nrtn positive
+	branch enable_blank
+
+mouse_data_abs_check:
+	fetch 2,mem_mouse_x
+	call mouse_data_abs
+	copy pdata,rega
+	fetch 2,mem_mouse_y
+	call mouse_data_abs
+	copy pdata,regb
+	rtn
+
+/***********
+input: data_current
+output:pdata,abs
+************/
+mouse_data_abs:
+	store 2,mem_data_current
+	fetch 1,mem_data_current+1
+	beq 0xff,mouse_data_reversal
+	fetch 1,mem_data_current
+mouse_data_abs_store:
+	and_into 0xff,pdata
+	//output:pdata
+	rtn
+mouse_data_reversal:
+	fetch 2,mem_data_current
+	sub pdata,0,pdata
+	branch mouse_data_abs_store
+
+mouse_24g_long_sleep_param_update_timer:
+	arg mem_24g_long_sleep_param_update_timer,regc
+	arg mouse_24g_long_sleep_normal_param,regb
+	branch timer_single_step
+mouse_24g_long_sleep_normal_param:
+	fetch 4,mem_24g_long_sleep_set1
+	store 4,mem_24g_enter_hibernate
+	jam 1,mem_mouse_long_mult_flag
+	rtn
+
+
+mouse_24g_long_sleep_set:
+	fetch 1,mem_24g_long_sleep_set_level
+	beq 0x00,mouse_24g_long_sleep_set_30ms
+	beq 0x01,mouse_24g_long_sleep_set_50ms
+	beq 0x02,mouse_24g_long_sleep_set_80ms
+	beq 0x03,mouse_24g_long_sleep_set_100ms
+mouse_24g_long_sleep_set_80ms:
+	setarg 0x0ea600
+mouse_24g_long_sleep_set_end:	
+	store 4,mem_24g_long_sleep_set1
+	rtn
+mouse_24g_long_sleep_set_30ms:
+	setarg 0x05e740
+	branch mouse_24g_long_sleep_set_end
+mouse_24g_long_sleep_set_50ms:
+	setarg 0x0927c0
+	branch mouse_24g_long_sleep_set_end
+mouse_24g_long_sleep_set_100ms:
+	setarg 0x124f80
+	branch mouse_24g_long_sleep_set_end
+
+mouse_24g_hibernate_set:
+	bpatch patch12_5,mem_patch12
+	jam 0,mem_24g_attempt_fail_flag
+	call g24_transmit_next_packet
+	setarg -1
+	store 4,mem_24g_enter_hibernate
+	setarg 0
+	store 7,mem_mouse_key
+	jam 1,mem_sensor_shutdown_flag
+	call mouse_sensor_powerdown
+	call mouse_setgpio_hibernate
+	branch mouse_24g_long_sleep
+
+mouse_wakeup_24g:
+	fetch 1,mem_sensor_shutdown_flag
+	ncall mouse_wakeup_24g_from_long_sleep,blank
+	jam 0,mem_sensor_shutdown_flag
+	rtn
+
+mouse_wakeup_24g_from_long_sleep:
+	call mouse_init_sensor_wakeup
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+mouse_wheel_gpio_init:
+	fetch 1,mem_whee_a_data_gpio
+	arg gpcfg_pullup,temp
+ 	call gpio_config_function_int
+	fetch 1,mem_whee_b_data_gpio
+	arg gpcfg_pullup,temp
+ 	branch gpio_config_function_int	
+
+mouse_24g_transmit_start:
+	call mouse_24g_fast_conn_mode_check
+	fetch 1,mem_sensor_shutdown_flag
+	nbranch mouse_24g_short_sleep,blank
+	branch g24_transmit_start_next
+
+mouse_24g_fast_conn_mode_check:
+	fetch 4,mem_24g_receiver_addr
+	fetcht 4,mem_24g_fast_conn_addr
+	isub temp,null
+	branch mouse_soft_agc_enable,zero
+	branch mouse_soft_agc_disable
+
+mouse_soft_agc_enable:
+	jam 0,mem_gain_fix
+	jam TX_POWER_FACTORY,mem_tx_power
+	rtn
+mouse_soft_agc_disable:
+	jam 0xff,mem_gain_fix
+	rtn
+
+mouse_24g_stop:
+	set0 mark_24g,mark
+	jam STATE_24G_STOP,mem_24g_conn_sm
+	arg MOUSE_24G_PAIRING_FLAG,queue
+	branch mouse_disable_function_flag
+
+mouse_24g_start_mode:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_24G,mouse_24g_mode_setup_error
+	call mouse_device_24g_pair_led_config
+	call mouse_wakeup_from_power_check	// wake from hibernate :enble user
+	branch mouse_24g_reconn_dongle_start,user
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_reconn_general_dongle
+	bbit0 MOUSE_ENABLE_24G_POWER_ON_PAIRING,mouse_24g_reconn_general_dongle
+	call mouse_key_check_once
+	and rega,0x07,pdata
+	fetcht 1,mem_mouse_commbination_key_24g
+	isub temp,null
+	branch mouse_24g_start_pair_mode,zero
+	branch mouse_24g_reconn_general_dongle
+
+mouse_24g_mode_setup_error:
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	rtn
+
+mouse_24g_first_start_auto_pair_mode:
+	call mouse_wakeup_from_power_check
+	branch mouse_24g_first_start_reconn,user  	// wake from hibernate :enble user
+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_3_0_ADDR,mem_24g_reconn_type
+	branch g24_reconn_start
+
+mouse_24g_start_auto_pair:
+	fetch 2,mem_24g_pair_timeout_init
+	store 2,mem_24g_reconn_timeout
+	jam PAIR_AND_3_0_ADDR,mem_24g_reconn_type
+	branch g24_reconn_start
+
+mouse_24g_first_start_reconn:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_reconn_dongle_start
+	call mouse_bluetooth_fast_conn_disable
+mouse_24g_first_bluetooth_reconnect:
+	call mouse_24g_stop
+	jam MODE_BT_DEVICE1,mem_device_flag
+	call mouse_select_reconn_device
+	branch mouse_start_reconnect_device
+
+mouse_24g_first_bb_event_reconn_timeout:
+	call mouse_wakeup_from_power_check
+	branch mouse_app_enter_hibernate,user
+	branch mouse_start_discovery
+
+mouse_24g_first_store_reconn_info:
+	call mouse_wakeup_from_power_check
+	rtn user
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_store_device_info_delay
+	rtn
+
+mouse_24g_start_pair_mode:
+	call mouse_device_24g_pair_led_config
+	jam 0,mem_24g_reconn_type
+	arg MOUSE_24G_PAIRING_FLAG,queue
+	call mouse_enable_function_flag
+	setarg 0
+	store 2,mem_24g_reconn_timeout	
+	call mouse_stop_discovery
+	jam TYPE_MS,mem_24g_data_type
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_KEYBOARD,g24_pair_start
+	jam TYPE_KB,mem_24g_data_type
+	branch g24_pair_start
+
+mouse_24g_attempt_fail:
+	fetch 1,mem_24g_attempt_fail_flag
+	nbranch mouse_24g_hibernate_set,blank
+	fetch 1,mem_24g_reconn_type
+	beq FAST_CONN_AND_3_0_ADDR,mouse_24g_fast_conn_attempt_fail
+	beq PAIR_AND_3_0_ADDR,mouse_24g_auto_pair_attempt_fail
+	beq RECEIVER_AND_3_0_ADDR,mouse_reconn_dongle_attempt_fail
+mouse_24g_attempt_fail_enter_hibernate:
+	call mouse_24g_stop
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_app_enter_hibernate
+	rtn
+
+mouse_24g_fast_conn_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_start_auto_pair
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_start_auto_pair
+	bbit0 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED,mouse_24g_reconn_dongle_start
+	fetch 4,mem_mouse_24g_addr		// auto pair first time
+	fetcht 4,mem_mouse_compare_addr
+	isub temp,null
+	branch mouse_24g_start_pair_mode,zero
+mouse_24g_reconn_dongle_start:
+	fetch 2,mem_24g_reconn_timeout_init
+	store 2,mem_24g_reconn_timeout
+	jam RECEIVER_AND_3_0_ADDR,mem_24g_reconn_type
+	branch g24_reconn_start
+
+mouse_24g_auto_pair_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
+	bbit0 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_attempt_fail_enter_hibernate
+	fetch 1,mem_device_number
+	beq 1,mouse_24g_attempt_fail_enter_hibernate		//24g first mode and only 2.4g device
+	branch mouse_24g_first_bluetooth_reconnect
+
+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+1
+	
+mouse_24g_attempt_success:
+	fetch 4,mem_24g_addr
+	store 4,mem_24g_receiver_addr
+	store 4,mem_mouse_24g_addr		// if need store 24g address to eeprom/flash,need get mem_24g_addr
+	call g24_ch_syncword_crc8_init
+	call mouse_no_data_timer_init
+	call mouse_device_poweron_led_config
+	call mouse_init_sensor_reset
+	jam 0,mem_mouse_long_mult_flag
+	jam 0,mem_24g_conn_sm
+	jam 0,mem_24g_reconn_type
+	fetch 4,mem_24g_receiver_addr
+	fetch 4,mem_24g_fast_conn_addr
+	isub temp,null
+	rtn zero
+	branch mouse_24g_first_store_reconn_info
+	
+mouse_24g_pairing_complete:
+	call mouse_init_sensor_reset
+	call mouse_read_sensor_common
+mouse_24g_pairing_complete_common:
+	call mouse_device_poweron_led_config
+	call mouse_no_data_timer_init
+	arg MOUSE_24G_PAIRING_FLAG,queue
+	call mouse_disable_function_flag
+	setarg 0
+	store 2,mem_24g_pair_timeout
+	store 2,mem_24g_reconn_timeout
+	store 1,mem_24g_conn_sm
+	store 1,mem_mouse_move_flag
+	store 1,mem_24g_reconn_type
+
+
+	fetch 4,mem_24g_addr
+	store 4,mem_24g_receiver_addr
+	store 4,mem_mouse_24g_addr
+	branch mouse_store_device_info_delay
+
+mouse_24g_short_sleep_clear_wake:
+	call clear_wake
+	branch lpm_write_gpio_wakeup
+
+mouse_24g_package_data:
+	bpatch patch12_6,mem_patch12
+	rtnmark0 mark_24g
+	call mouse_motion
+	nrtn user
+	fetch 1,mem_mouse_24g_long_sleep_flag
+	jam 0,mem_mouse_24g_long_sleep_flag
+	ncall mouse_24g_short_sleep_clear_wake,blank	
+	
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_KEYBOARD,mouse_24g_mouse_package_data
+	fetch 1,mem_customer_key
+	nbranch mouse_24g_keyboard_package_data,blank
+mouse_24g_mouse_package_data:
+	call mouse_data_xy_release
+	fetch 1,mem_24g_data_type
+	bbit1 1,mouse_24g_mouse_package_data_now	// last package is keyboard data
+	fetcht 1,mem_24g_txbuf+1
+	fetch 1,mem_mouse_key
+	ior temp,pdata
+	store 1,mem_mouse_key
+	fetcht 1,mem_24g_txbuf+6
+	fetch 1,mem_mouse_z
+	iadd temp,pdata
+	store 1,mem_mouse_z
+	fetcht 1,mem_24g_txbuf+7
+	fetch 1,mem_mouse_tz
+	iadd temp,pdata
+	store 1,mem_mouse_tz	
+mouse_24g_mouse_package_data_now:	
+	jam TYPE_MS,mem_24g_data_type
+	arg 7,rega	//length
+	arg mem_mouse_key,regb //tx buff
+	fetch 2,mem_mouse_z
+	rtn blank
+	branch g24_transmit_by_interrupt_enable
+
+mouse_24g_keyboard_package_data:
+	jam TYPE_KB,mem_24g_data_type
+	arg 9,rega	//length
+	fetch 1,mem_customer_data_trigger
+	nbranch mouse_customer_key_press,blank
+	arg mem_customer_key_release,regb	//tx buff
+	rtn
+mouse_customer_key_press:
+	arg mem_customer_key_press,regb
+	rtn
+
+
+/**************************************g24 search receiver*****************************************/
+
+mouse_24g_search_dongle_init:
+	setarg 0
+	store 3,mem_mouse_search_dongle_action
+	rtn
+
+mouse_24g_search_dongle:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_24G_SEARCH_DONGLE
+	fetch 1,mem_mouse_long_mult_flag
+	rtn blank
+	fetch 1,mem_24g_abort_pac
+	rtn blank
+	fetch 1,mem_mouse_search_dongle_interval
+	increase 1,pdata
+	and_into 3,pdata
+	store 1,mem_mouse_search_dongle_interval
+	nrtn blank	//400ms
+	jam 0,mem_mouse_search_dongle_ch
+mouse_24g_search_dongle_loop:
+	bpatch patch12_7,mem_patch12
+	fetch 1,mem_mouse_search_dongle_ch
+	increase 1,pdata
+	store 1,mem_mouse_search_dongle_ch
+	sub pdata,G24_CH_NUMBER,null
+	nbranch mouse_24g_search_dongle_loop_end,positive
+	call g24_reconn_data_prep
+	call g24_transmit_receive_ack
+	nbranch mouse_24g_search_dongle_loop_retry,sync
+	nbranch mouse_24g_search_dongle_loop_retry,user3
+	call mouse_g24_ackpayload_parse
+	call mouse_24g_search_dongle_success
+mouse_24g_search_dongle_loop_end:
+	call g24_txbuf_clear
+	fetch 1,mem_mouse_search_dongle_count
+	increase 1,pdata
+	store 1,mem_mouse_search_dongle_count
+	beq G24_CH_POLL_COUNT,mouse_24g_search_dongle_check
+	rtn
+
+mouse_24g_search_dongle_loop_retry:
+	call g24_ch
+	branch mouse_24g_search_dongle_loop
+
+mouse_24g_search_dongle_check:
+	jam 0,mem_mouse_search_dongle_count
+	fetch 1,mem_mouse_search_dongle_action
+	rtnbit1 G24_DISCONN_STATE
+	set1 G24_DISCONN_STATE,pdata
+	store 1,mem_mouse_search_dongle_action
+	fetch 2,mem_mouse_24g_search_dongle_time_init		//3min
+	store 2,mem_mouse_no_data_timer
+	branch mouse_sensor_powerdown
+	
+mouse_24g_search_dongle_success:
+	fetch 1,mem_24g_abort_pac
+	branch mouse_24g_search_dongle_init,blank
+	jam 0,mem_mouse_search_dongle_count
+	fetch 1,mem_mouse_search_dongle_action
+	rtnbit0 G24_DISCONN_STATE
+	set0 G24_DISCONN_STATE,pdata
+	store 1,mem_mouse_search_dongle_action
+	call mouse_no_data_timer_init
+	branch mouse_init_sensor_wakeup
+
+mouse_g24_ackpayload_parse:
+	call g24_ackpayload_parse
+	fetch 1,mem_24g_rxbuf+1
+	compare 0x08,pdata,0xf8
+	nrtn true
+	fetch 1,mem_24g_rxbuf+2		// pc sleep mouse ackpayload: 01 08 ff
+	beq 0xff,mouse_24g_hibernate_set
+	rtn
+
+/**************************************g24 search receiver*****************************************/
+
+
+mouse_g24_retransmit:
+	fetch 1,mem_mouse_need_soft_reset
+	nrtn blank
+	call mouse_retransmit_select_device_by_pb_button
+	call mouse_select_device_by_dpi_button_once
+	branch g24_retransmit0
+
+mouse_select_device_by_dpi_button_once:
+	arg 12,queue
+	call timer_check
+	nrtn blank
+	call mouse_dpi_check_once
+	call mouse_dpi_key_check_long_press
+mouse_g24_retransmit_100ms_timer_init:
+	arg 12,queue
+	setarg 160
+	branch timer_init
+	
+mouse_dpi_check_once:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
+//	jam 0x03,mem_mouse_dpikey_press_status
+	branch mouse_dpi_check
+
+/**************************************g24 new process start********************************************/
+mouse_24g_before_lpm_sleep:
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,lpm_sleep_skip_cb_function
+	fetch 1,mem_24g_disable_fec1
+	rtn blank
+mouse_peripheral_clock_off:
+	jam 2,core_clksel			//use rc clock
+	jam 0xf8,core_lpm_ctrl
+	rtn
+
+/**************************************g24 new process end********************************************/
+
+/*******************logo led*******************/
+mouse_logo_led_on_timer:
+	fetch 1,mem_mouse_logo_led_gpio
+	rtneq GPIO_DISABLE
+	fetch 2,mem_mouse_no_data_timer
+	rtn blank
+	fetch 2,mem_mouse_no_data_timeout
+	fetcht 2,mem_mouse_no_data_timer
+	isub temp,temp
+	fetch 2,mem_mouse_logo_led_on_time_init
+	isub temp,pdata
+	branch mouse_logo_led_on,positive
+mouse_logo_led_off:
+	fetcht 1,mem_mouse_logo_led_gpio
+	branch mouse_led_off
+mouse_logo_led_on:
+	fetcht 1,mem_mouse_logo_led_gpio
+	branch mouse_led_on
+	
+/*******************logo led end*******************/
+
+
+
+/*******************dpi led*******************/
+mouse_dpi_led_blink_delay_timer:
+	arg mem_mouse_dpi_led_delay_count,regc
+	arg mouse_dpi_led_blink_init,regb
+	branch timer_single_step
+	
+mouse_dpi_led_blink_init:
+	bpatch patch13_0,mem_patch13
+	fetch 1,mem_config_sensor_type
+	beq P3212,mouse_dpi_led_blink_init_another		//result:    level3: 1  2  3     level4: 2  3  4  1
+	beq KA8G2,mouse_dpi_led_blink_init_another	//result:    level3: 1  2  3     level4: 2  3  4  1
+	fetcht 1,mem_mouse_dpi
+	increase 2,temp	// 2 3 4 (5)
+mouse_dpi_led_blink_init_next:
+	sub temp,3,null
+	call mouse_dpi_led_blink_init_level_4,positive
+	ncall mouse_dpi_led_blink_count_clean,positive
+	copy temp,pdata
+	iadd pdata,pdata
+	store 1,mem_mouse_multi_led_blink_count
+mouse_multi_dpi_led_blink_enable:
+	jam 4,mem_mouse_multi_led_blink_type
+	call mouse_multi_dpi_led_blink_timer_init	
+	jam MULTI_LED_BLINK,mem_mouse_multi_led_type
+	branch mouse_multi_led_enable
+
+mouse_dpi_led_blink_init_another:
+	fetcht 1,mem_mouse_dpi
+	increase 1,temp
+	branch mouse_dpi_led_blink_init_next
+
+mouse_dpi_led_blink_init_level_4:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_DPI_LEVEL_4
+	increase 1,temp  	// 2-->3   3-->4
+	rtn
+mouse_dpi_led_blink_count_clean:
+	increase -3,temp		// 4-->1  5-->2
+	rtn
+
+
+mouse_dpi_led_blink_delay:
+	fetch 1,mem_mouse_dpi_gpio
+	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
+	fetch 1,mem_mouse_dpi_led_delay_count_init
+	branch mouse_dpi_led_blink_init,blank
+	store 1,mem_mouse_dpi_led_delay_count  //delay 1s led blink
+	rtn
+
+/*******************dpi led end*******************/
+
+
+
+/*******************low voltage led*************************/
+
+mouse_check_dpi_blink:
+	disable user
+	fetch 1,mem_mouse_multi_led_blink_type		//04:dpi blink
+	sub pdata,4,null
+	nrtn zero
+	branch enable_user
+
+mouse_low_voltage_led_timer:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_LOW_LED
+	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+	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_dpi_blink		//need judge blink led=dpi? if led=dpi led->rtn
+	rtn user
+
+	fetch 1,mem_mouse_multi_low_led_blink_count
+	branch mouse_low_led_blink_count_init_judge,blank
+mouse_low_led_blink_timer:
+	fetcht 1,mem_adc_low_volatage_led_timer_count
+	increase 1,temp
+	storet 1,mem_adc_low_volatage_led_timer_count
+	fetch 1,mem_mouse_low_led_blink_timer
+	isub temp,null
+	ncall mouse_low_led_timer_count_clean,positive
+	fetch 1,mem_mouse_low_led_blink_half_timer
+	isub temp,null
+	nbranch mouse_low_voltage_led_off_judge,positive
+mouse_low_voltage_led_on_judge:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_LOW_FOR_LED,mouse_device_led_on
+	bbit1 MOUSE_ENABLE_DPI_LOW_FOR_LED,mouse_device_led_on
+mouse_low_voltage_led_on:
+	fetcht 1,mem_mouse_low_voltage_alarm_gpio 
+	branch mouse_led_on
+
+mouse_low_led_timer_count_clean:
+	jam 1,mem_adc_low_volatage_led_timer_count
+	fetch 1,mem_mouse_multi_low_led_blink_count	//blink count decrease
+	increase -1,pdata
+	store 1,mem_mouse_multi_low_led_blink_count
+mouse_low_voltage_led_off_judge:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_LOW_FOR_LED,mouse_device_led_off
+	bbit1 MOUSE_ENABLE_DPI_LOW_FOR_LED,mouse_device_led_off
+mouse_low_voltage_led_off:
+	fetcht 1,mem_mouse_low_voltage_alarm_gpio
+	branch mouse_led_off
+
+mouse_low_led_blink_count_init_judge:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_LOW_LED_BLINK_LIMIT,mouse_low_voltage_led_off_judge
+	call mouse_multi_low_led_blink_count_init
+	branch mouse_low_led_blink_timer
+	
+/*******************low voltage led end*************************/
+
+
+/*******************multi led start*************************/
+/***parm init****/
+
+mouse_device_multi_led_parm_init:
+	jam 0,mem_mouse_multi_led_blink_enable
+	call mouse_device_multi_led_all_off		//can be remove?
+	jam 0,mem_mouse_multi_led_blink_type
+	fetch 1, mem_mouse_low_led_blink_timer
+	rshift pdata,pdata
+	store 1,mem_mouse_low_led_blink_half_timer
+	rtn
+mouse_multi_low_led_blink_count_init:
+	fetch 1,mem_mouse_multi_lowled_blink_count_init
+	store 1,mem_mouse_multi_low_led_blink_count
+	rtn
+
+mouse_multi_led_blink_timer_init:
+	fetch 1,mem_mouse_multi_led_blink_type		//00:rtn	01:24g blink	02:le blink		03:reconn blink 	04:low blink	05:dpi blink
+	beq 1,mouse_device_24g_led_blink_timer_init
+	beq 2,mouse_device_le_discovery_led_blink_timer_init
+	beq 3,mouse_device_le_reconn_led_blink_timer_init
+mouse_multi_dpi_led_blink_timer_init:
+	fetch 1,mem_mouse_dpi_led_blink_timer_init
+mouse_store_multi_led_blink_timer:
+	store 1,mem_mouse_multi_led_blink_timer
+	rtn
+mouse_device_24g_led_blink_timer_init:
+	fetch 1,mem_mouse_multi_24gled_blink_timer_init
+	branch mouse_store_multi_led_blink_timer
+mouse_device_le_discovery_led_blink_timer_init:
+	fetch 1,mem_mouse_multi_le_discovery_blink_timer_init
+	branch mouse_store_multi_led_blink_timer
+mouse_device_le_reconn_led_blink_timer_init:
+	fetch 1,mem_mouse_multi_le_reconn_blink_timer_init
+	branch mouse_store_multi_led_blink_timer
+
+//===led poweron config===//
+mouse_device_poweron_led_config:	//power on
+	bpatch patch13_1,mem_patch13
+	fetch 1,mem_mouse_multi_led_powon_timer_init
+	store 1,mem_mouse_multi_led_powon_timer
+	jam MULTI_LED_ON,mem_mouse_multi_led_type
+mouse_multi_led_enable:
+	jam OFF,mem_mouse_multi_led_state
+	jam ON,mem_mouse_multi_led_blink_enable
+	rtn
+
+//===led blink config===//
+mouse_device_24g_pair_led_config:		//24g pair led config
+	bpatch patch13_2,mem_patch13
+	fetch 1,mem_device_flag
+	rtnne MODE_24G_DEVICE
+	call mouse_multi_led_blink_enable_init
+	jam 1,mem_mouse_multi_led_blink_type
+	call mouse_device_24g_led_blink_timer_init
+	fetch 1,mem_mouse_le_reconn_blink_limit
+	rtn blank
+	fetch 1,mem_mouse_multi_24gled_blink_count_init
+	branch mouse_device_led_blink_count_init
+
+mouse_device_le_reconn_led_config:		//le recon led config
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	call mouse_multi_led_blink_enable_init
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_BT_RECONN_LED_EFFECT
+	jam 3,mem_mouse_multi_led_blink_type
+	call mouse_device_le_reconn_led_blink_timer_init
+	fetch 1,mem_mouse_le_reconn_blink_limit
+	rtn blank
+	fetch 1,mem_mouse_multi_le_reconn_blink_count_init
+mouse_device_led_blink_count_init:
+	store 1,mem_mouse_multi_led_blink_count
+	rtn	
+
+mouse_device_discovery_led_config:		//ble discovery led config
+	jam 0,mem_mouse_le_reconn_blink_limit
+	jam 2,mem_mouse_multi_led_blink_type
+	call mouse_device_le_discovery_led_blink_timer_init
+mouse_multi_led_blink_enable_init:
+	jam 1,mem_mouse_multi_led_blink_enable
+	jam MULTI_LED_BLINK,mem_mouse_multi_led_type
+	branch mouse_device_multi_led_on
+
+
+//====multi timer====//
+mouse_led_multi_timer:
+	fetch 1,mem_mouse_multi_led_blink_enable
+	rtn blank
+	fetch 1,mem_mouse_multi_led_type
+	beq MULTI_LED_BLINK,mouse_multi_led_type_blink
+mouse_device_multi_led_type_on:
+	fetch 1,mem_mouse_multi_led_powon_timer
+	branch mouse_device_poweron_led_off,blank
+	increase -1
+	store 1,mem_mouse_multi_led_powon_timer
+	branch mouse_device_led_on
+
+mouse_device_poweron_led_off:
+ 	jam 0,mem_mouse_multi_led_blink_enable
+	call mouse_multi_low_led_blink_count_init
+	branch mouse_device_led_off
+
+mouse_multi_led_type_blink:
+	bpatch patch13_3,mem_patch13
+	fetch 1,mem_mouse_multi_led_blink_type	//00:rtn	01:24g blink	02:le blink		03:reconn blink 	04:low blink	05:dpi blink
+	rtn blank
+	beq 4,mouse_device_led_blink_limit	//dpi blink
+	branch mouse_device_led_blink_judge
+
+mouse_device_led_blink_judge:
+	fetch 1,mem_mouse_le_reconn_blink_limit
+	beq 1,mouse_device_led_blink_limit
+	branch mouse_multi_led_type_blink_next
+
+mouse_device_led_blink_limit:
+	fetch 1,mem_mouse_multi_led_blink_count
+	branch mouse_multi_led_off_judge, blank		//blink count =0
+mouse_multi_led_type_blink_next:	//blink no limit
+	arg mem_mouse_multi_led_blink_timer,regc
+	arg mouse_multi_led_type_blink_start,regb
+	branch timer_single_step
+	
+mouse_multi_led_type_blink_start:
+	fetch 1,mem_mouse_multi_led_blink_type
+	beq 4,mouse_multi_led_blink_count_decrease		//dpi blink
+	fetch 1,mem_mouse_le_reconn_blink_limit
+	beq 1,mouse_multi_led_blink_count_decrease
+mouse_multi_led_blink:
+	call mouse_multi_led_blink_timer_init
+	fetch 1,mem_mouse_multi_led_state
+	beq ON,mouse_multi_led_off_judge_next
+	branch mouse_multi_led_on_judge
+
+mouse_multi_led_blink_count_decrease:
+	fetch 1,mem_mouse_multi_led_blink_count	
+	increase -1
+	store 1,mem_mouse_multi_led_blink_count
+	branch mouse_multi_led_blink
+
+//=====led on/off interface=====//
+mouse_multi_led_on_judge:
+	fetch 1,mem_mouse_multi_led_blink_type
+	beq 4,mouse_multi_dpi_led_on_judge
+mouse_device_multi_led_on:
+	jam ON,mem_mouse_multi_led_state
+mouse_device_led_on:
+	bpatch patch13_4,mem_patch13
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_device_24g_led_on
+	beq MODE_BT_DEVICE1,mouse_device_bt1_led_on
+	beq MODE_BT_DEVICE2,mouse_device_bt2_led_on
+	rtn
+mouse_device_24g_led_on:
+	fetcht 1,mem_mouse_1io2led_multi_24gled
+	branch mouse_led_on	//by mouse.dat config
+mouse_device_bt1_led_on:
+	fetcht 1,mem_mouse_1io2led_multi_bt1led
+	branch mouse_led_on	//by mouse.dat config
+mouse_device_bt2_led_on:
+	fetcht 1,mem_mouse_1io2led_multi_bt2led
+mouse_led_on:
+	branch gpio_out_active	//by mouse.dat config
+
+mouse_led_off:
+	branch gpio_out_inactive	//by mouse.dat config
+
+mouse_multi_led_off_judge:
+	jam 0,mem_mouse_multi_led_blink_enable
+	jam 0,mem_mouse_multi_led_blink_type
+mouse_multi_led_off_judge_next:
+	fetch 1,mem_mouse_multi_led_blink_type
+	beq 4,mouse_multi_dpi_led_off_judge
+mouse_device_multi_led_off:
+	jam OFF,mem_mouse_multi_led_state
+mouse_device_led_off:
+	bpatch patch13_5,mem_patch13
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_device_24g_led_off
+	beq MODE_BT_DEVICE1,mouse_device_bt1_led_off
+	beq MODE_BT_DEVICE2,mouse_device_bt2_led_off
+	rtn
+mouse_device_24g_led_off:
+	fetcht 1,mem_mouse_1io2led_multi_24gled
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_1IO2LED,mouse_led_off
+	branch gpio_set_high_impedance
+mouse_device_bt1_led_off:
+	fetcht 1,mem_mouse_1io2led_multi_bt1led
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_1IO2LED,mouse_led_off
+	branch gpio_set_high_impedance
+mouse_device_bt2_led_off:
+	fetcht 1,mem_mouse_1io2led_multi_bt2led
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_1IO2LED,mouse_led_off
+	branch gpio_set_high_impedance
+
+mouse_device_multi_led_all_off:		//dpi+low no
+	call mouse_device_24g_led_off
+	call mouse_device_bt1_led_off
+	call mouse_device_bt2_led_off
+	call mouse_low_voltage_led_off_judge
+	branch mouse_multi_dpi_led_off_judge
+
+mouse_multi_dpi_led_off_judge:
+	jam OFF,mem_mouse_multi_led_state
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DPI_FOR_LED,mouse_device_multi_led_off
+	bbit1 MOUSE_ENABLE_DPI_LOW_FOR_LED,mouse_device_multi_led_off
+mouse_multi_dpi_led_off:
+	fetcht 1,mem_mouse_dpi_gpio
+	branch mouse_led_off
+
+mouse_multi_dpi_led_on_judge:
+	jam ON,mem_mouse_multi_led_state
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DPI_FOR_LED,mouse_device_multi_led_on
+	bbit1 MOUSE_ENABLE_DPI_LOW_FOR_LED,mouse_device_multi_led_on
+mouse_multi_dpi_led_on:
+	fetcht 1,mem_mouse_dpi_gpio
+	branch mouse_led_on	//by mouse.dat config
+
+/*******************multi led end*************************/
+
+mouse_low_voltage_led_no_enter_lpm:	
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+	fetch 1,mem_adc_low_volatage_led_timer_count
+	fetcht 1,mem_mouse_low_led_blink_half_timer
+	sub pdata,temp,null
+	branch mouse_lpm_mode_clear,positive
+mouse_low_voltage_led_no_enter_lpm_next:	
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,g24_transmit_by_interrupt_exit_check
+	jam 1,mem_lpm_mode
+	rtn
+
+g24_transmit_by_interrupt_exit_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag	
+	rtnbit1 MOUSE_ENABLE_24G_250Hz	
+	branch g24_transmit_by_interrupt_exit
+
+mouse_lpm_mode_clear:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,g24_transmit_by_interrupt_enable
+	jam 0,mem_lpm_mode
+	rtn
+
+
+mouse_store_signal_rssi:
+//	call rssi_hex2dec
+	fetch 1,mem_rssi
+	branch rssi_signal
+
+mouse_le_transmit:
+	call mouse_store_signal_rssi
+	branch power_ctrl_start
+
+mouse_le_set_lpm_mult:
+	fetch 1,mem_le_connect_status_flag
+	compare 3,pdata,3
+	nbranch disable_blank,true
+	call app_lpm_mult_enable
+	branch enable_blank
+
+mouse_set_lpm_mult:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,mouse_le_set_lpm_mult
+	rtn
+
+mouse_24g_long_sleep:
+	call g24_lpm_wait
+	nrtn user
+	jam 1,mem_mouse_24g_long_sleep_flag
+	call g24_setgpio_lpm_before
+	jam 0,mem_mouse_24g_sleep_miss
+	call mouse_24g_send_time_long_wake
+	fetch 1,mem_sensor_shutdown_flag
+	ncall mouse_setgpio_hibernate,blank
+	fetch 4,mem_24g_enter_hibernate
+	branch g24_long_seep2	
+
+mouse_24g_short_sleep:
+	fetch 1,mem_mouse_sleep_deal_type
+	branch g24_short_sleep,blank
+	call g24_lpm_wait
+	nrtn user
+	fetch 1,mem_mouse_24g_sleep_miss
+	jam 0,mem_mouse_24g_sleep_miss
+	sub pdata,0,null
+	nbranch mouse_24g_short_sleep_last_miss,zero
+	fetcht 2,mem_24g_retransmit
+	sub temp,0,null
+	branch mouse_24g_short_sleep_default,zero
+
+	fetch 4,mem_mouse_24g_tx_time_last_delt
+	branch mouse_24g_short_sleep_default,blank
+mouse_24g_short_sleep_notify:
+	fetcht 4,mem_mouse_24g_tsniff
+	isub temp,temp
+	storet 4,mem_mouse_24g_sleep_miss_temp
+	nbranch mouse_24g_short_sleep_long,positive
+	fetch 3,mem_24g_short_sleep_set
+	isub temp,pdata
+	nbranch mouse_24g_short_sleep_2,positive
+	arg 0x600,temp
+	isub temp,null
+	nbranch mouse_24g_short_sleep_2,positive
+mouse_24g_short_sleep2:
+	store 4,mem_mouse_24g_sleep_time_temp
+	call mouse_24g_miss_temp_clear
+	fetch 4,mem_mouse_24g_sleep_time_temp
+mouse_24g_short_sleep3:	
+	call clk2lpo
+	storet 4,mem_sleep_counter
+	branch lpm_sleep
+
+mouse_24g_short_sleep_default:
+	call mouse_24g_miss_temp_clear
+	fetch 3,mem_24g_short_sleep_set
+	branch mouse_24g_short_sleep2
+
+mouse_24g_short_sleep_long:
+	sub temp,0,temp
+	fetch 3,mem_24g_short_sleep_set
+	iadd temp,pdata
+	branch mouse_24g_short_sleep2
+
+mouse_24g_miss_temp_clear:
+	setarg 0
+	store 4,mem_mouse_24g_sleep_miss_temp
+	rtn
+	
+mouse_24g_short_sleep_last_miss:
+	fetch 4,mem_mouse_24g_tx_time_last_delt
+	fetcht 4,mem_mouse_24g_sleep_miss_temp
+	iadd temp,pdata
+	branch mouse_24g_short_sleep_notify
+	
+mouse_24g_short_sleep_2:
+	jam 1,mem_mouse_24g_sleep_miss
+	rtn
+
+
+mouse_24g_transmit_callback:
+	call mouse_24g_send_time_check
+	branch mouse_wakeup_24g
+
+mouse_24g_send_time_check:
+	fetch 1,mem_mouse_sleep_deal_type
+	rtn blank
+	fetch 1,mem_24g_transmit_by_interrupt
+	beq G24_TX_TIMER_INT_ENABLE,mouse_24g_send_timer_first
+	fetch 1,mem_mouse_24g_tx_count
+	branch mouse_24g_send_timer_first,blank
+	copy clkn,pdata
+	fetcht 6,mem_mouse_24g_tx_time_last
+	store 6,mem_mouse_24g_tx_time_last
+	call clk_diff_rt
+	store 4,mem_mouse_24g_tx_time_last_delt
+
+	fetch 1,mem_mouse_24g_sleep_miss
+	nrtn blank
+	fetch 2,mem_24g_retransmit
+	nrtn blank
+	fetch 4,mem_mouse_24g_tx_time_last_delt
+mouse_24g_send_time_check_1:
+	fetcht 5,mem_mouse_24g_tx_time_sum
+	iadd temp,pdata
+	store 5,mem_mouse_24g_tx_time_sum	
+	fetcht 1,mem_mouse_24g_tx_count
+	fetch 1,mem_mouse_24g_tx_time_sum_count
+	isub temp,null
+	branch mouse_24g_send_time_check_average,zero
+	increase 1,temp
+	storet 1,mem_mouse_24g_tx_count
+	rtn
+
+mouse_24g_send_time_check_average:
+	jam 1,mem_mouse_24g_tx_count
+	arg 0,temp
+	fetch 5,mem_mouse_24g_tx_time_sum
+	storet 5,mem_mouse_24g_tx_time_sum
+	fetcht 1,mem_mouse_24g_tx_time_sum_count
+	idiv temp
+	call wait_div_end
+  	quotient rega
+
+	fetch 4,mem_mouse_24g_tsniff
+	fetcht 1,mem_mouse_24g_tx_time_offset
+	isub temp,temp
+	increase -40,temp
+
+	copy rega,pdata
+	isub temp,pdata
+	branch mouse_24g_send_time_check_average_late,positive
+	sub pdata,0,pdata
+	
+	rshift2 pdata,pdata
+	fetcht 3,mem_24g_short_sleep_set
+	iadd temp,temp
+	bpatch patch13_6,mem_patch13
+	fetch 3,mem_mouse_24g_short_sleep_set_init
+	arg 0x1800,rega
+	iadd rega,pdata
+	isub temp,null
+	nbranch mouse_24g_send_time_check_average_min,positive
+	storet 3,mem_24g_short_sleep_set
+	rtn
+
+mouse_24g_send_time_check_average_late:
+	rshift2 pdata,temp
+	fetch 3,mem_24g_short_sleep_set
+	isub temp,temp
+	bpatch patch13_7,mem_patch13
+	fetch 3,mem_mouse_24g_short_sleep_set_init
+	arg 0x1800,rega
+	isub rega,pdata
+	isub temp,null
+	branch mouse_24g_send_time_check_average_min,positive
+	storet 3,mem_24g_short_sleep_set
+	rtn
+
+mouse_24g_send_time_check_average_min:
+	store 3,mem_24g_short_sleep_set
+	rtn
+
+mouse_24g_send_timer_first:
+	jam 1,mem_mouse_24g_tx_count
+	copy clkn,pdata
+	store 6,mem_mouse_24g_tx_time_last
+	rtn
+
+mouse_24g_send_time_long_wake:
+	setarg 0
+	store 1,mem_mouse_24g_tx_count
+	store 5,mem_mouse_24g_tx_time_sum
+	rtn
+	
+
+/*****************close define  COMPILE_MOUSE**********/
+else
+
+endif
+
+
+
Index: program/patch.prog
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/patch.prog	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/patch.prog	(working copy)
@@ -0,0 +1,3215 @@
+//define ex_eeprom
+define g24_enable
+//define ble_enable
+//define ice_disable
+//define RGB_backlight
+define num_led_enable
+define scroll_led_enable
+define ADC_1121SB
+//define ADC_1121SB_1V8_MODE
+define ADC_1V5
+//define ADC_3V0
+//define ADC_4V2
+
+	bbit1 8,pf_patch_ext
+	beq patch00_0,p_soft_reset
+	beq patch00_2,p_main_loop
+	beq patch02_0,p_shutdown_radio
+	beq patch02_1,p_set_sync_on
+	beq patch02_4,p_set_lemode
+	beq patch02_5,p_rf_rx_enable
+	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 patch05_0,p_lpm_dispatch
+ifndef ex_eeprom
+	beq patch08_2,p_keyboard_load_otp_info_check
+endif
+	beq patch08_4,p_keyboard_store_device_info
+	beq patch08_5,p_keyboard_cb_fuction
+	beq patch08_6,p_keyboard_priority_bb_event
+	beq patch08_7,p_keyboard_bb_event_timer
+ifdef ble_enable
+	beq patch09_0,p_keyboard_start_discovery
+	beq patch09_1,p_keyboard_stop_discovery
+	beq patch09_2,p_keyboard_store_remote_bdaddr
+endif
+	beq patch09_3,p_keyboard_idle
+	beq patch09_4,p_keyboard_start_work
+ifdef ble_enable
+	beq patch09_5,p_keyboard_le
+endif
+	beq patch09_6,p_keyboard_keyscan
+	beq patch0a_0,p_keyboard_key_process
+	beq patch0a_2,p_keyboard_keyvalue_fn_replace
+	//beq patch0a_3,p_keyboard_keyvalue_commbination_replace
+	beq patch0a_5,p_keyboard_special_key_check
+	beq patch0a_7,p_keyboard_motion
+	beq patch0b_1,p_keyboard_device_data_tpye_check
+	beq patch0b_2,p_keyboard_before_hibernate
+	beq patch0b_3,p_keyboard_app_enter_hibernate
+	beq patch0b_4,p_keyboard_device_led_all_off
+	beq patch0b_5,p_keyboard_setgpio_hibernate
+ifdef g24_enable
+	beq patch0b_6,p_keyboard_g24_transmit_process
+	beq patch0b_7,p_keyboard_g24_short_sleep
+endif
+ifdef ble_enable
+	beq patch0c_1,p_le_parse_att
+	beq patch0d_7,p_keyboard_start_reconnect_device
+endif
+	beq patch0e_1,p_keyboard_app_enter_hibernate
+	beq patch0e_6,p_keyboard_adc_read
+	beq patch0e_7,p_keyboard_adc_read_start
+	beq patch10_0,p_mouse_init_sunt
+	beq patch10_4,p_keyboard_app_enter_hibernate
+ifdef ex_eeprom
+	beq patch11_3,p_keyboard_app_initflag_check
+endif
+	beq patch13_2,p_keyboard_discover_setting_led_gpio
+	beq patch16_1,p_keyboard_init
+ifndef ex_eeprom
+	beq patch18_5,p_otp_read_data
+endif
+	beq patch1a_5,p_gpio_set_wake_by_current_state
+	beq patch1a_6,p_gpio_set_wake
+	beq patch1b_2,p_sadc_calibration
+ifdef ADC_1121SB
+	beq patch1b_3,p_adc_init_data
+	beq patch1b_4,p_enable_adc
+	beq patch1b_5,p_vdd_calculate_by_mode
+endif
+	beq patch1e_6,p_ui_ipc_send_event
+	beq patch1f_2,p_check_51cmd_once_continue
+	branch assert
+
+pf_patch_ext:
+ifdef ble_enable
+	beq patch22_4,p_le_slave_match
+	beq patch23_2,p_le_got_first_packet
+	beq patch24_5,p_le_rx_dec
+	beq patch24_6,p_le_rx_nopayload
+	beq patch29_4,p_le_adv_not_match
+	beq patch29_5,p_le_init_adv
+endif
+ifdef g24_enable
+	beq patch2f_7,p_g24_pair_dispatch
+	beq patch32_0,p_keyboard_g24_reconn_dispatch
+	beq patch32_5,p_keyboard_g24_transmit_no_interrupt
+endif
+	rtneq patch3f_7
+	branch assert
+
+p_soft_reset:
+	nbranch p_soft_reset_next,wake
+	until null,lpo_edge
+	until null,lpo_edge
+p_soft_reset_next:
+	call mouse_wakeup_from_power_check
+	nbranch soft_reset+1,user
+	fetch 1,mem_power_on_flag_new
+	branch soft_reset+1,blank
+	jam 0,mem_power_on_flag_new
+	fetch 1,mem_config_select_device_button_gpio
+	beq UI_BUTTON_GPIO_DISABLE,soft_reset+1
+	copy pdata,queue
+	fetch 4,mem_saved_gpio_in
+	qisolate0 pdata					// bt button gpio num
+	call keyboard_pb_set,true
+	branch soft_reset+1
+
+p_keyboard_keyvalue_commbination_replace:
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_SEARCH,p_keyboard_commbination_search
+	branch keyboard_keyvalue_commbination_replace+2
+
+
+p_keyboard_adc_read:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_ADC
+	call p_keyboard_adc_gpio_set
+	branch mouse_adc_read+4
+
+p_keyboard_adc_gpio_set:
+	fetch 1,mem_adc_config_flag
+	rtnne ADC_CONFIG_GPIO
+	fetch 1,mem_adc_channel
+	call p_adc_channel_set_gpio
+	copy temp,pdata
+	store 1,mem_adc_channel_gpio
+	set1 GPIO_ACTIVE_BIT,pdata
+	arg gpcfg_input,temp
+	branch gpio_config_function
+
+p_adc_channel_set_gpio:
+	arg 18,temp
+	rtneq 0x6
+	arg 10,temp
+	rtneq 0x7
+	arg 9,temp
+	rtneq 0x8
+	arg 12,temp
+	rtneq 0x9
+	arg 6,temp
+	rtneq 0xa
+	arg 20,temp
+	rtneq 0xb
+	arg 21,temp
+	rtneq 0xc
+	arg 22,temp
+	rtneq 0xd
+	arg 13,temp
+//	rtnne 0xe
+	rtn
+
+
+
+p_main_loop:
+ifdef SECURE_CONNECTION
+	call sp_calc_sequence_256
+	call sp_calc_sequence_256_check
+endif
+	call le_advertising_dispatch
+	call idle_dispatch
+	call app_process_idle
+	call connection_dispatch
+	call g24_dispatch
+	call lpm_dispatch
+	branch p_main_loop
+p_shutdown_radio:
+	jam 0,0x8900
+	branch shutdown_radio+1
+p_set_sync_on:
+	jam 0x60,0x8a0f
+	jam 0xaa,0x8a10
+	jam 0x7a,0x8a12
+	jam 0x00,0x8a25
+	jam 0x00,0x8a26
+	nop 60
+	jam 0x20,0x8a20
+	jam 0xf5,0x8a23
+	jam 0x12,0x8a24
+	jam 0x10,0x8a24
+	nop 60
+	jam 0x60,0x8a12
+	jam 0xdd,0x8a23
+	rtn
+
+p_initialize_radio_cont:
+	jam 0,mem_le_testtype
+	jam 0,mem_cmd_le_create_conn
+	until null,lpo_edge
+
+	jam 0x0d,0x8946
+	jam 0x10,0x896f
+	jam 0xcd,0x8a13
+	jam 0x10,0x8a06
+	jam 0x4a,0x8a84
+	jam 0x40,0x8a85
+	jam 0xfe,0x8a16
+	call p_set_otp_config
+//	branch initialize_radio_cont+1
+	//fetch 1,mem_wdt_always_work
+	call wdt_set_disable
+
+	until null,lpo_edge
+	jam 0x5f,0x813b
+	until null,lpo_edge
+	jam 0x88,0x813c
+	until null,lpo_edge
+	fetch 1,mem_fcomp_div
+	beq XTAL_16M,p_initialize_radio_16m
+	fetch 1,mem_ring_ibias_trim
+	or_into 0x04,pdata
+	store 1,0x8a02
+	jam 0x01,0x890f
+	jam 0x24,0x8a80
+	jam 0x62,0x8a81
+	setarg 0xe61212
+	store 3,0x8a73
+p_initialize_radio2:
+	jam 0x60,0x8a86
+	jam 0x3b,0x8a8b
+	call p_dpll_on
+	jam 0,core_config
+	jam CLKSEL_DPLL,core_clksel
+	setarg 0x557474
+	store 3,0x8968
+	jam 0x6e,0x8960
+	call p_rx_dcoc
+	call p_rfpll_aac_ghpc
+	call p_set_xtal_cap
+	jam SYSTEM_CLK_12M,mem_system_clk
+	branch sadc_calibration
+//	branch p_dpll_ring_ibias_calc
+
+p_set_xtal_cap:
+	rtn wake
+	until null,lpo_edge
+	fetch 1,mem_xtal_c_sel
+	store 1,core_xtal_cap
+	until null,lpo_edge
+	rtn
+
+p_dpll_on:
+	fetch 1,mem_fcomp_div
+	beq XTAL_24M,p_dpll_on_24m
+	fetch 1,mem_ring_ibias_trim
+	or_into 0x06,pdata
+	store 1,0x8a02
+	jam 0xe0,0x8a05
+p_dpll_on_24m:
+	jam 0xd8,0x8a00
+	nop 60
+	jam 0xa0,0x8a01
+	jam 0xdf,0x8a00
+	jam 0xfa,0x8a01
+	nop 20
+	jam 0x9f,0x8a00
+	rtn
+
+p_initialize_radio_16m:
+	fetch 1,mem_ring_ibias_trim
+	or_into 0x06,pdata
+	store 1,0x8a02
+	jam 0x00,0x890f
+	jam 0x23,0x8a80
+	jam 0xb0,0x8a81
+	setarg 0xe40909
+	store 3,0x8a73
+	jam 0x2a,0x8a76
+	jam 0x04,0x8902
+	branch p_initialize_radio2
+
+p_set_otp_config:
+	branch p_set_otp_config_wake,wake
+	fetch 4,mem_otp_core_ldo
+	rtn blank
+	until null,lpo_edge
+	fetch 1,0x8136
+	and pdata,0xf0,pdata
+	fetcht 1,mem_otp_core_ldo
+	ior temp,pdata
+	increase -3,pdata
+	store 1,0x8136
+	until null,lpo_edge
+
+	fetch 1,0x8138
+	and pdata,0x7,pdata
+	fetcht 1,mem_otp_verf_bg
+	lshift3 temp,temp
+	ior temp,pdata
+	store 1,0x8138
+	until null,lpo_edge
+
+p_set_otp_config2:
+	fetch 1,0x8acb
+	and pdata,0xf0,pdata
+	fetcht 1,mem_otp_charge_pump
+	storet 1,mem_otp_charge_pump_x
+	ior temp,pdata
+	store 1,0x8acb
+
+	fetch 1,mem_otp_dpll_ibais
+	store 1,mem_otp_dpll_ibais_x
+	isolate1 3,pdata
+	fetch 1,0x8a06
+	setflag true,7,pdata
+	store 1,0x8a06
+
+	fetch 1,mem_otp_dpll_ibais
+	and pdata,7,temp
+	lshift4 temp,temp
+	lshift temp,temp
+	storet 1,mem_ring_ibias_trim
+	fetch 1,0x8a02
+	and pdata,0x1f,pdata
+	ior temp,pdata
+	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_rx_agc_set
+	force 8,radio_ctrl
+	force 0,radio_ctrl
+
+	setarg 0x0aaada
+	store 3,0x8a0f
+	jam 0x40,0x8a25
+	jam 0x10,0x8a26
+	nop 60
+	jam 0xfb,0x8a01
+	jam 0xff,0x8a25
+	jam 0x30,0x8a26
+	jam 0xfe,0x8a16
+	branch rf_rx_enable+14
+
+p_txon:
+	setarg 0x0aaa7e
+	store 3,0x8a0f
+	nop 60
+	jam 0x00,0x8a25
+	jam 0x0d,0x8a26
+	jam 0xf6,0x8a16
+	branch txon+7
+
+p_set_tx_power:
+	fetch 1,mem_tx_power
+	beq TX_POWER_10DB,p_set_tx_power_10db
+	branch set_tx_power+2
+
+p_set_tx_power_10db:
+	jam 0x25,0x8a14
+	setarg 0xa93f3f
+	store 3,0x8a60
+	jam 0x1f,0x8a63
+	rtn
+
+
+p_rx_dcoc:
+	rtn wake
+	call set_sync_on
+	arg 39,temp
+	call set_freq_rx
+	call rf_rx_enable
+	jam 0x7f,0x8a25
+	jam 0x1a,0x8a30
+	jam 0x78,0x8a31
+	jam 0xb2,0x8a8f
+	jam 0,0x8ac2
+	jam 0,0x8ac3
+	arg 6,queue
+	call p_rx_dcoc_avg
+	isolate1 13,rega
+	call qset_start
+	isolate1 13,regb
+	call qset_p
+	arg 5,queue
+p_rx_dcoc_loop2:
+	call qset1_p
+	call qset_p
+	call p_rx_dcoc_avg
+	arg 0x8ac2,contw
+	rshift4 rega,pdata
+	call qsetxor
+	rshift4 regb,pdata
+	call qsetxor
+	increase -1,queue
+	branch p_rx_dcoc_loop2,positive
+	branch rx_dcoc_loop2+10
+
+p_rx_dcoc_avg:
+	nop 60
+	setarg mem_dcoc_buf
+	store 2,0x8982
+	setarg mem_dcoc_buf_end
+	store 2,0x8984
+	jam 0x9,0x8981
+	jam 0x3,0x8981
+	jam 0x6,0x8980
+	nop 60
+	arg 0,rega
+	arg 0,regb
+	arg 16,loopcnt
+	arg mem_dcoc_buf,contr
+	branch rx_dcoc_loop
+
+p_rfpll_aac_ghpc:
+	rtn wake
+	branch rfpll_aac_ghpc+1
+
+p_keyboard_clear_pdata:
+	setarg 0
+p_mouse_init_sunt:
+p_dpll_ring_ibias_calc:
+	rtn
+
+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
+	jam 0x0a,0x8a8e
+	fetch 1,mem_fcomp_div
+	beq XTAL_16M,p_set_lemode_2m_16m
+	setarg 0x5762
+	store 2,0x8907
+p_set_lemode_2m:
+	jam 3,0x8901
+	jam 3,0x8930
+	rtnmark1 mark_ble_2M
+	jam 1,0x8901
+	jam 0x07,0x8a82
+	jam 0x44,0x8a8d
+	jam 0x0a,0x8a8e
+	fetch 1,mem_fcomp_div
+	beq XTAL_16M,p_set_lemode_1m_16m
+	setarg 0x2bb1
+	store 2,0x8907
+p_set_lemode_1m:
+	rtnmark0 mark_ble_lr
+	jam 0x24,0x8930
+	jam 5,0x8901
+	rtn
+
+p_set_lemode_1m_16m:
+	setarg 0x4189
+	store 2,0x8907
+	branch p_set_lemode_1m
+
+p_set_lemode_2m_16m:
+	setarg 0x8312
+	store 2,0x8907
+	branch p_set_lemode_2m
+
+ifndef ex_eeprom
+p_otp_read_data:
+	call enable_otp_read			//read enable
+	call otp_read_data+1
+	branch otp_disable_chgpump	//disable otp
+
+p_keyboard_load_otp_info_check:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_load_otp_device_info_g24_init
+	beq MODE_BT_DEVICE1,p_keyboard_load_otp_device_info_ble_init
+	rtn
+
+p_keyboard_load_otp_device_info_g24_init:
+	arg 8,regd
+	fetch 2,mem_otp_read_retention_max_size
+	idiv regd
+	call wait_div_end
+	quotient pdata
+	store 2,mem_pdatatemp
+	arg 0x1fbc,pdata
+	arg 4,temp
+	arg 4,rege
+	branch p_keyboard_load_otp_device_info
+
+p_keyboard_load_otp_device_info_ble_init:
+	arg 32,regd
+	fetch 2,mem_otp_read_retention_max_size
+	idiv regd
+	call wait_div_end
+	quotient pdata
+	store 2,mem_pdatatemp
+	arg 0x1fb0,pdata
+	arg 16,temp
+	arg 16,rege
+	branch p_keyboard_load_otp_device_info
+
+p_keyboard_load_otp_device_info:
+	store 2,mem_pdatatemp+2
+	storet 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	arg 0,regc
+p_keyboard_load_otp_info_check_page_loop:
+	fetch 2,mem_pdatatemp+2
+	copy pdata,regb
+	fetchr loopcnt, 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	call otp_read_data
+	fetch 8,mem_otp_read_retention_memory
+	fetcht 8,mem_otp_read_retention_memory+8
+	ior temp,pdata
+	fetcht 8,mem_otp_read_retention_memory+16
+	ior temp,pdata
+	branch p_keyboard_load_otp_info_check_first_time,blank
+	increase 1,regc
+	fetch 2,mem_pdatatemp
+	isub regc,null
+//	nbranch p_keyboard_load_otp_info_check_overwise,positive
+	fetch 2,mem_pdatatemp+2
+	isub regd,pdata
+	store 2,mem_pdatatemp+2
+	branch p_keyboard_load_otp_info_check_page_loop
+p_keyboard_load_otp_info_check_first_time:
+	sub regc,0,null
+	branch keyboard_load_otp_info_check_first_time_process,zero
+p_keyboard_load_otp_info_check_first_time_loop_init:
+	fetch 2,mem_pdatatemp+2
+	iadd regd,pdata
+p_keyboard_load_otp_info_check_first_time_loop:
+	isub rege,pdata
+	store 2,mem_pdatatemp+2
+	fetch 2,mem_pdatatemp+2
+	copy pdata,regb
+	fetchr loopcnt, 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	call otp_read_data
+	fetch 8,mem_otp_read_retention_memory
+	fetcht 8,mem_otp_read_retention_memory+8
+	ior temp,pdata
+	fetcht 8,mem_otp_read_retention_memory+16
+	ior temp,pdata
+	branch p_keyboard_load_otp_info_check_offset_process,blank
+	fetch 2,mem_pdatatemp+2
+	branch p_keyboard_load_otp_info_check_first_time_loop
+
+p_keyboard_load_otp_info_check_offset_process:
+	setarg 0x1fc0
+	fetcht 2,mem_pdatatemp+2
+	isub temp,pdata
+	store 2,mem_otp_read_retention_offset		//store the next field offset ,convenient for next storage
+	copy temp,pdata
+	iadd rege,regb
+	fetchr loopcnt, 1,mem_temp
+	arg mem_otp_read_retention_memory,rega
+	call otp_read_data
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,keyboard_load_otp_info_check_offset_process_g24
+	beq MODE_BT_DEVICE1,p_keyboard_load_otp_info_check_offset_process_ble
+	rtn
+
+p_keyboard_load_otp_info_check_offset_process_ble:
+	fetch 1,mem_otp_read_retention_memory
+	sub pdata,SYSTEM_OS_MAC,null
+	ncall set_pdata_0,positive
+	store 1,mem_kb_computer_system
+	fetch 1,mem_otp_read_retention_memory+1
+	store 1,mem_device1_type
+	fetch 6,mem_otp_read_retention_memory+2
+	store 6,mem_device1_addr
+	fetch 6,mem_otp_read_retention_memory+8
+	store 6,mem_device1_locall_addr
+	fetcht 2,mem_otp_read_retention_memory+14
+	random pdata
+	iadd temp,pdata
+	store 2,mem_random_addr_increase_count
+	branch p_keyboard_select_reconn_device
+
+p_keyboard_store_otp_device_info:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_store_otp_device_info_g24
+	beq MODE_BT_DEVICE1,p_keyboard_store_otp_device_info_ble
+	rtn
+
+p_keyboard_store_otp_device_info_g24:
+	fetcht 2,mem_otp_read_retention_offset
+	setarg 0x1fc0
+	branch keyboard_store_otp_device_info_g24+2
+
+p_keyboard_store_otp_device_info_ble:
+	jam 1,mem_otp_store_device_info_flag
+	fetch 1,mem_otp_store_system_flag
+	rtn blank
+p_keyboard_wirte_otp_ble:
+	fetcht 2,mem_otp_read_retention_offset
+	setarg 0x1fc0
+	isub temp,pdata
+	store 2,mem_pdatatemp
+
+	copy pdata,regb
+	arg mem_kb_computer_system,rega
+	arg 1,loopcnt
+	call otp_write   /* regb = otp address, rega pointers data, loopcnt is count */
+
+	fetch 2,mem_pdatatemp
+	add pdata,1,regb
+	arg mem_device1_type,rega
+	arg 13,loopcnt
+	call otp_write   /* regb = otp address, rega pointers data, loopcnt is count */
+
+	fetch 2,mem_pdatatemp
+	add pdata,14,regb
+	arg mem_random_addr_increase_count,rega
+	arg 2,loopcnt
+	call otp_write  /* regb = otp address, rega pointers data, loopcnt is count */
+
+	fetcht 2,mem_otp_read_retention_offset
+	increase 16,temp
+	storet 2,mem_otp_read_retention_offset
+	rtn
+endif
+
+p_keyboard_store_device_info:
+ifdef ex_eeprom
+	fetcht 1,mem_eeprom_sda_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_eeprom_sda_gpio
+	call gpio_get_bit
+	branch mouse_store_device_info_delay,true
+endif
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+ifndef ex_eeprom
+	bbit1 MOUSE_ENABLE_OTP,p_keyboard_store_otp_device_info
+endif
+ifdef ex_eeprom
+	bbit1 MOUSE_ENABLE_EEPROM,p_keyboard_store_eeprom_device_info
+endif
+	branch keyboard_store_device_info+2
+
+
+ifdef ex_eeprom
+p_keyboard_eeprom_init:
+	call iicd_read_init_pin
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_2K_EEPROM,pdata
+	branch set_eeprom_size_2k,true
+	branch clear_eeprom_size_2k
+
+p_keyboard_load_eeprom_info_check:
+	call p_keyboard_eeprom_init
+	call  mouse_load_eeprom_info_check+4
+	fetch 1,mem_mouse_dpi
+	store 1,mem_kb_computer_system
+	fetcht 2,mem_otp_read_retention_memory+14
+	random pdata
+	iadd temp,pdata
+	store 2,mem_random_addr_increase_count
+	rtn
+
+p_keyboard_app_initflag_check:
+	fetch 2,mem_store_flag
+	arg EEPROM_INIT_FLAG,temp
+	isub temp,null
+	branch p_keyboard_load_device_info,zero
+	storet 2,mem_store_flag
+	call mouse_ble_init_address
+	fetch 1,mem_device_flag_temp_new
+	branch mouse_app_initflag_check_next+3
+
+p_keyboard_load_device_info:
+	call p_keyboard_select_reconn_device
+	branch mouse_load_device_info+1
+
+p_keyboard_store_eeprom_device_info:
+	call p_keyboard_eeprom_init
+	fetch 1,mem_kb_computer_system
+	store 1,mem_mouse_dpi
+	branch mouse_store_eeprom_device_info
+endif
+
+p_keyboard_priority_bb_event:
+	copy regc,pdata
+ifdef g24_enable
+	beq BT_EVT_24G_ATTEMPT_FAIL,p_keyboard_24g_attempt_fail
+endif
+ifdef ble_enable
+	beq BT_EVT_LE_DISCONNECTED,p_keyboard_le_bb_disconnected
+ifdef RGB_backlight
+	beq BT_EVT_LE_CONNECTED,p_keyboard_le_bb_event_connected
+endif
+endif
+	branch keyboard_priority_bb_event+2
+
+ifdef g24_enable
+p_keyboard_24g_attempt_fail:
+	fetch 1,mem_24g_attempt_fail_flag
+	nbranch p_keyboard_24g_hibernate_set,blank
+	fetch 1,mem_24g_reconn_type
+	beq FAST_CONN_AND_3_0_ADDR,p_keyboard_24g_fast_conn_attempt_fail
+	branch keyboard_24g_attempt_fail+4
+
+p_keyboard_24g_hibernate_set:
+	jam 0,mem_24g_attempt_fail_flag
+	call g24_transmit_next_packet
+	setarg -1
+	store 8,mem_24g_enter_hibernate
+	setarg 0
+	store 7,mem_mouse_key
+	jam 1,mem_sensor_shutdown_flag
+	branch p_keyboard_g24_long_sleep
+
+
+p_keyboard_24g_fast_conn_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_start_auto_pair
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_start_auto_pair
+	bbit0 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED,mouse_24g_reconn_dongle_start
+	fetch 4,mem_mouse_24g_addr		// auto pair first time
+ifdef ex_eeprom
+	fetcht 4,mem_keyboard_factory_addr
+	isub temp,null
+	branch p_keyboard_24g_start_pair_mode,zero
+else
+	branch p_keyboard_24g_start_pair_mode,blank
+endif
+	branch mouse_24g_reconn_dongle_start
+endif
+
+ifdef ble_enable
+p_keyboard_le_bb_disconnected:
+	setarg 0
+	store 2,mem_le_battery_level_updata_timer
+	store 1,mem_keyboard_le_send_conn_param_update
+	store 1,mem_keyboard_le_send_conn_param_update_timer
+	store 1,mem_mouse_le_bb_connected_flag
+	jam LE_LPM_ENABLE,mem_mouse_le_conn_param_reject
+	call le_clr_config_more_data
+	jam 0,mem_ltk_exists
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BLE,p_keyboard4_0_event_bb_disconn
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	branch keyboard_start_discovery
+p_keyboard4_0_event_bb_disconn:
+	call mouse_le_clean_connect_flag
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	branch p_keyboard_app_enter_hibernate
+
+ifdef RGB_backlight
+p_keyboard_le_bb_event_connected:
+	call p_keyboard_load_eerpom_rgb
+	branch keyboard_le_bb_event_connected
+endif
+endif
+
+
+
+p_keyboard_bb_event_timer:
+
+	call mouse_adc_read
+	call p_keyboard_low_voltage_led_timer
+
+	call g24_pair_timeout_timer
+	call g24_reconn_timeout_timer
+	call mouse_24g_long_sleep_param_update_timer
+	call p_keyboard_24g_repeat_send_data
+	call keyboard_24g_led_status_get_timer
+
+	//led
+	call p_keyboard_num_capslock_led_on_timer
+	call p_keyboard_device_poweron_timer
+	call p_keyboard_device_pair_discovery_led_timer
+	call p_keyboard_mode_led_timer
+ifdef RGB_backlight
+	call p_keyboard_rgb_on_timer
+endif
+	call keyboard_check_discovery_timeout_timer
+	call keyboard_check_direct_timeout_timer
+	call mouse_le_enable_att_list_timer
+	call keyboard_le_battery_updata_timer
+	call mouse_le_send_smp_security_request_timer
+	call keyboard_le_send_conn_param_update_timer
+	call keyboard_le_auto_recognize_timer
+
+	call p_keyboard_key_press_timer
+	call keyboard_commbination_key_process
+	call mouse_current_mult_update_timer
+	call keyboard_store_information_delay_timer
+
+	call p_keyboard_long_press_timer
+	call keyboard_commbination_delay_release_timer
+	branch p_keyboard_check_no_data_timeout_timer
+	rtn
+
+p_keyboard_adc_read_start:
+	call p_keyboard_low_voltage_param_set
+	call enable_adc
+	call vdd_calculate_by_mode
+	div pdata,10
+	call get_div_result
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+	call mouse_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,keyboard_power_down
+	bbit0 0,p_keyboard_adc_no_low_voltage
+	jam 1,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_adc_low_voltage
+
+p_keyboard_adc_no_low_voltage:
+	arg MOUSE_LOW_VOLTAGE_FLAG,queue
+	call mouse_disable_function_flag
+	jam 9,mem_keyboard_adc_low_volatage_led_timer_count
+	branch mouse_adc_no_low_voltage+3
+
+
+p_keyboard_low_voltage_param_set:
+	call mouse_adc_gpio_set_before_hibernate
+ifdef ADC_1V5
+	setarg 0x520090		// 0x0090--1.5V  0x0052--0.9V  0x005a--1.0V  0x006d--1.1V
+	store 3,mem_mouse_vdd_full_vol
+	setarg 0x006d00
+	istore 3,contw
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	branch p_keyboard_low_voltage_param_set_backligh_off_1V0,blank
+	jam 0x70,mem_mouse_vdd_low_vol
+	rtn
+p_keyboard_low_voltage_param_set_backligh_off_1V0:
+	jam 0x6d,mem_mouse_vdd_low_vol
+	rtn
+endif
+ifdef ADC_4V2
+	setarg 0x230170		// 0x0170--3.7V  0x0123--3.0V  0x0146--3.2V  0x0153--3.3V
+	store 3,mem_mouse_vdd_full_vol
+	setarg 0x015301
+	istore 3,contw
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	branch p_keyboard_low_voltage_param_set_33V,blank
+	jam 0x58,mem_mouse_vdd_low_vol
+	rtn
+p_keyboard_low_voltage_param_set_33V:
+	jam 0x53,mem_mouse_vdd_low_vol
+	rtn
+endif
+ifdef ADC_3V0
+	setarg 0xcd0123		// 0x0170--3.7V  0x0123--3.0V  0x00dc--2.4V  0x00cd--2.2V
+	store 3,mem_mouse_vdd_full_vol
+	setarg 0x00dc00
+	istore 3,contw
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	branch p_keyboard_low_voltage_param_set_2V4,blank
+	jam 0xdf,mem_mouse_vdd_low_vol
+	rtn
+p_keyboard_low_voltage_param_set_2V4:
+	jam 0xdc,mem_mouse_vdd_low_vol
+	rtn
+
+endif
+	rtn
+
+p_keyboard_24g_repeat_send_data:
+	fetch 1,mem_same_keyvalue_timerout_flag
+	nrtn blank
+	branch keyboard_24g_repeat_send_data
+
+p_keyboard_num_capslock_led_on_timer:
+	fetch 2,mem_mouse_no_data_timer
+	rtn blank
+	fetch 1,mem_sensor_shutdown_flag
+	nrtn blank
+	fetch 2,mem_mouse_no_data_timeout
+	fetcht 2,mem_mouse_no_data_timer
+	isub temp,temp
+	fetch 2,mem_keyboard_caps_led_on_timer
+	isub temp,pdata
+	branch p_keyboard_num_cap_led_on,positive
+ifdef num_led_enable
+	call p_keyboard_numlock_led_off
+endif
+ifdef scroll_led_enable
+	call p_keyboard_scrolllock_led_off
+endif
+	branch p_keyboard_capslock_led_off
+
+p_keyboard_capslock_led_off:
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_CAPSLED_BIT,p_keyboard_lowpower_capslock_led_off
+	fetcht 1,mem_keyboard_caps_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_lowpower_capslock_led_off:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LOW_VOLTAGE_FLAG
+	branch p_keyboard_capslock_led_off+2
+
+p_keyboard_capslock_led_check_on:
+	fetch 1,mem_keyboard_led_status
+	bbit0 KB_PC_KEYSEL_CAPSLOCK,p_keyboard_capslock_led_off
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_CAPSLED_BIT,p_keyboard_lowpower_capslock_led_on
+	fetcht 1,mem_keyboard_caps_led_gpio
+	branch gpio_out_active
+
+p_keyboard_lowpower_capslock_led_on:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_LOW_VOLTAGE_FLAG,p_keyboard_capslock_led_check_on+4
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,11,null
+	nbranch p_keyboard_capslock_led_check_on+4,positive
+	rtn
+
+
+p_keyboard_num_cap_led_on:
+ifdef num_led_enable
+	call p_keyboard_numlock_led_check_on
+endif
+ifdef scroll_led_enable
+	call p_keyboard_scrolllock_led_check_on
+endif
+	branch p_keyboard_capslock_led_check_on
+ifdef num_led_enable
+p_keyboard_numlock_led_check_on:
+	fetch 1,mem_keyboard_led_status
+	bbit0 KB_PC_KEYSEL_NUMLOCK,p_keyboard_numlock_led_off
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_NUMLED_BIT,p_keyboard_lowpower_numlock_led_on
+	fetcht 1,mem_keyboard_num_led_gpio
+	branch gpio_out_active
+
+p_keyboard_lowpower_numlock_led_on:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_LOW_VOLTAGE_FLAG,p_keyboard_numlock_led_check_on+4
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,11,null
+	nbranch p_keyboard_numlock_led_check_on+4,positive
+	rtn
+
+p_keyboard_numlock_led_off:
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_NUMLED_BIT,p_keyboard_lowpower_numlock_led_off
+	fetcht 1,mem_keyboard_num_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_lowpower_numlock_led_off:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LOW_VOLTAGE_FLAG
+	branch p_keyboard_numlock_led_off+2
+
+endif
+ifdef scroll_led_enable
+p_keyboard_scrolllock_led_off:
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_SCROLLLED_BIT,p_keyboard_lowpower_scrolllock_led_off
+	fetch 1,mem_keyboard_device_poweron_timer_count
+	nrtn blank
+	fetcht 1,mem_keyboard_scroll_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_scrolllock_led_check_on:
+	fetch 1,mem_keyboard_device_poweron_timer_count
+	nrtn blank
+	fetch 1,mem_keyboard_reuse_led_bit
+	bbit1 KEYBOARD_REUSE_SCROLLLED_BIT,p_keyboard_lowpower_scroll_led_on
+	fetch 1,mem_keyboard_led_status
+	bbit0 KB_PC_KEYSEL_SCROLLLOCK,p_keyboard_scrolllock_led_off
+	fetcht 1,mem_keyboard_scroll_led_gpio
+	branch gpio_out_active
+
+p_keyboard_lowpower_scroll_led_on:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_LOW_VOLTAGE_FLAG,p_keyboard_scrolllock_led_check_on+4
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,11,null
+	nbranch p_keyboard_scrolllock_led_check_on+4,positive
+	rtn
+
+p_keyboard_lowpower_scrolllock_led_off:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LOW_VOLTAGE_FLAG
+	branch p_keyboard_scrolllock_led_off+2
+endif
+
+p_keyboard_device_poweron_timer:
+	fetch 1,mem_keyboard_device_poweron_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_keyboard_device_poweron_timer_count
+	branch p_keyboard_device_led_off,blank
+	branch p_keyboard_device_led_on
+
+p_keyboard_device_led_off:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_device_24g_led_off
+	beq MODE_BT_DEVICE1,p_keyboard_device_bt1_led_off
+	beq MODE_BT_DEVICE2,p_keyboard_device_bt2_led_off
+	beq MODE_BT_DEVICE3,p_keyboard_device_bt3_led_off
+	rtn
+
+p_keyboard_device_led_on:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_device_24g_led_on
+	beq MODE_BT_DEVICE1,p_keyboard_device_bt1_led_on
+	beq MODE_BT_DEVICE2,p_keyboard_device_bt2_led_on
+	beq MODE_BT_DEVICE3,p_keyboard_device_bt3_led_on
+	rtn
+
+p_keyboard_device_24g_led_off:
+	fetcht 1,mem_keyboard_24g_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_bt1_led_off:
+	fetcht 1,mem_keyboard_bt1_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_bt2_led_off:
+	fetcht 1,mem_keyboard_bt2_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_bt3_led_off:
+	fetcht 1,mem_keyboard_bt3_led_gpio
+	branch gpio_out_inactive
+
+p_keyboard_device_24g_led_on:
+	fetcht 1,mem_keyboard_24g_led_gpio
+	branch gpio_out_active
+
+p_keyboard_device_bt1_led_on:
+	fetcht 1,mem_keyboard_bt1_led_gpio
+	branch gpio_out_active
+
+p_keyboard_device_bt2_led_on:
+	fetcht 1,mem_keyboard_bt2_led_gpio
+	branch gpio_out_active
+
+p_keyboard_device_bt3_led_on:
+	fetcht 1,mem_keyboard_bt3_led_gpio
+	branch gpio_out_active
+
+p_keyboard_mode_led_timer:
+	fetch 2,mem_mouse_no_data_timer
+	rtn blank
+	fetch 1,mem_keyboard_mode_led_on_timer
+	rtn blank
+	increase -1,pdata
+	store 1,mem_keyboard_mode_led_on_timer
+	bbit1 0,p_keyboard_device_led_on
+	branch p_keyboard_device_led_off
+
+p_keyboard_device_pair_discovery_led_timer:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_device_pair_led
+	fetch 2,mem_mouse_discovery_timer
+	rtn blank
+	branch p_keyboard_device_pair_led+2
+
+p_keyboard_device_pair_led:
+	fetch 2,mem_24g_pair_timeout
+	rtn blank
+	fetch 1,mem_keyboard_pair_led_flag
+	increase 1,pdata
+	store 1,mem_keyboard_pair_led_flag
+	bbit1 2,p_keyboard_device_led_on
+	branch p_keyboard_device_led_off
+
+
+p_keyboard_low_voltage_led_timer:
+	jam 0,mem_keyboard_low_volatage_led_blink_new_data_enable
+	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_keyboard_device_poweron_timer_count
+	nrtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_LOW_LED
+	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+	bbit1 MOUSE_ENABLE_LOW_VOLTAGE_LED_BLINK_N_SECOND,p_keyboard_low_voltage_led_blink_new_data
+	fetch 1,mem_keyboard_adc_low_volatage_led_timer_count
+	increase 1,pdata
+	store 1,mem_keyboard_adc_low_volatage_led_timer_count
+	sub pdata,20,null
+	ncall p_keyboard_adc_low_volatage_led_timer_count_clean,positive
+	beq 2,p_keyboard_low_voltage_led_on
+	beq 4,p_keyboard_low_voltage_led_off
+	beq 6,p_keyboard_low_voltage_led_on
+	beq 8,p_keyboard_low_voltage_led_off
+	rtn
+p_keyboard_adc_low_volatage_led_timer_count_clean:
+	jam 1,mem_keyboard_adc_low_volatage_led_timer_count
+	jam 0,mem_keyboard_low_volatage_led_flag
+	branch p_keyboard_low_voltage_led_off
+p_keyboard_low_voltage_led_on:
+	fetcht 1,mem_keyboard_low_voltage_alarm_gpio
+	branch gpio_out_active
+p_keyboard_low_voltage_led_off:
+	fetcht 1,mem_keyboard_low_voltage_alarm_gpio
+	branch gpio_out_inactive
+
+p_keyboard_low_voltage_led_blink_new_data:
+	fetch 2,mem_mouse_no_data_timeout
+	fetcht 2,mem_mouse_no_data_timer
+	isub temp,temp
+	fetch 2,mem_adc_low_volatage_led_blink_timer
+	isub temp,null
+	nbranch p_keyboard_low_voltage_led_off,positive
+	jam 1,mem_keyboard_low_volatage_led_blink_new_data_enable
+	fetch 1,mem_keyboard_low_volatage_led_flag
+	increase 1,pdata
+	store 1,mem_keyboard_low_volatage_led_flag
+	beq 1,p_keyboard_low_voltage_led_on
+	beq 6,p_keyboard_low_voltage_led_off
+	sub pdata,9,null
+	ncall p_keyboard_adc_low_volatage_led_timer_count_clean,positive
+	rtn
+
+
+ifdef RGB_backlight
+p_keyboard_pwm_init:
+	arg 0,rega //sys clk 12mhz
+	call pwm_init
+	fetch 6,mem_rgb_pwm_conf
+	store 6,mem_pdatatemp
+	call pwm_out_set
+	fetch 2,mem_rgb_pwm_conf
+	branch pwm_disable
+
+p_keyboard_rgb_red_led_on:
+	fetcht 1,mem_keyboard_led_r_gpio
+	branch gpio_out_inactive
+
+p_keyboard_rgb_red_led_off:
+	fetcht 1,mem_keyboard_led_r_gpio
+	branch gpio_out_active
+
+p_keyboard_rgb_green_led_on:
+	fetcht 1,mem_keyboard_led_g_gpio
+	branch gpio_out_inactive
+
+p_keyboard_rgb_green_led_off:
+	fetcht 1,mem_keyboard_led_g_gpio
+	branch gpio_out_active
+
+p_keyboard_rgb_blue_led_on:
+	fetcht 1,mem_keyboard_led_b_gpio
+	branch gpio_out_inactive
+
+p_keyboard_rgb_blue_led_off:
+	fetcht 1,mem_keyboard_led_b_gpio
+	branch gpio_out_active
+
+
+p_keyboard_rgb_led_control:
+	fetch 1,mem_rgb_on_color_temp
+	isolate1 KEYBOARD_RGB_RED_STATUS,pdata
+	call p_keyboard_rgb_red_led_on,true
+	ncall p_keyboard_rgb_red_led_off,true
+	fetch 1,mem_rgb_on_color_temp
+	isolate1 KEYBOARD_RGB_GREEN_STATUS,pdata
+	call p_keyboard_rgb_green_led_on,true
+	ncall p_keyboard_rgb_green_led_off,true
+	fetch 1,mem_rgb_on_color_temp
+	isolate1 KEYBOARD_RGB_BLUE_STATUS,pdata
+	call p_keyboard_rgb_blue_led_on,true
+	ncall p_keyboard_rgb_blue_led_off,true
+	rtn
+
+p_keyboard_rgb_mode_switch:
+	call p_keyboard_keyvalue_clear_temp_end
+	fetch 1,mem_keyboard_press_flag_temp
+	rtnbit0 0
+	call mouse_store_device_info_delay
+	jam RGB_BACKLIGHT_BREATHE_TPYE_BLUE,mem_backlight_breathe_type
+	jam 0,mem_rgb_pwm_breathe_flag
+	jam 10,mem_rgb_pwm_conf+5
+	fetch 1,mem_backlight_on_flag
+	increase 1,pdata
+p_keyboard_rgb_mode_switch_next:
+	sub pdata,RGB_BACKLIGHT_STATUS_BREATHE,null
+	ncall p_keyboard_clear_pdata,positive
+	store 1,mem_backlight_on_flag
+	store 1,mem_mouse_retention
+	rtn
+
+p_keyboard_rgb_on_type_switch:
+	call p_keyboard_keyvalue_clear_temp_end
+	fetch 1,mem_keyboard_press_flag_temp
+	rtnbit0 0
+	fetch 1,mem_backlight_on_flag
+	rtnne RGB_BACKLIGHT_STATUS_ON
+	call mouse_store_device_info_delay
+	fetch 1,mem_backlight_on_type
+	increase 1,pdata
+p_keyboard_rgb_on_type_switch_next:
+	sub pdata,RGB_BACKLIGHT_ON_TPYE_WHITE,null
+	ncall p_keyboard_clear_pdata,positive
+	store 1,mem_backlight_on_type
+	store 1,mem_mouse_retention+1
+	rtn
+
+p_keyboard_load_eerpom_rgb:
+	fetch 1,mem_mouse_retention
+	call p_keyboard_rgb_mode_switch_next
+	fetch 1,mem_mouse_retention+1
+	branch p_keyboard_rgb_on_type_switch_next
+
+p_keyboard_rgb_process:
+	fetch 1,mem_backlight_on_flag
+	beq RGB_BACKLIGHT_STATUS_BREATHE,p_keyboard_rbg_breathe_process
+	beq RGB_BACKLIGHT_STATUS_ON,p_keyboard_rgb_on_process
+	jam 0,mem_backlight_on_flag
+p_keyboard_rgb_off:
+	call p_keyboard_rgb_pwm_disable
+	jam 0,mem_rgb_on_color_temp
+	branch p_keyboard_rgb_led_control
+
+p_keyboard_rbg_breathe_process:
+	// timer = 0.3125 * mem_customize_timer_setup
+	fetcht 4,mem_ui_check_timer_setup
+	copy clkn_bt,pdata
+	isub temp,pdata
+	fetcht 2,mem_customize_timer_setup		// * 0.3125ms
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	rtn blank
+	copy clkn_bt,temp
+	storet 4,mem_ui_check_timer_setup
+	fetch 1,mem_rgb_pwm_breathe_flag
+	branch p_keyboard_rbg_breathe_up,blank
+	fetch 1,mem_rgb_pwm_conf+5
+	sub pdata,5,null
+	branch p_keyboard_rbg_breathe_color_switch,positive
+	increase -1,pdata
+	store 1,mem_rgb_pwm_conf+5
+	branch p_keyboard_rgb_pwm
+
+p_keyboard_rbg_breathe_color_switch:
+	jam 0,mem_rgb_pwm_breathe_flag
+	fetch 1,mem_backlight_breathe_type
+	increase 1,pdata
+	sub pdata,RGB_BACKLIGHT_BREATHE_TPYE_WHITE,null
+	ncall p_keyboard_clear_pdata,positive
+	store 1,mem_backlight_breathe_type
+	rtn
+
+p_keyboard_rbg_breathe_up:
+	fetch 1,mem_rgb_pwm_conf+5
+	increase 1,pdata
+	store 1,mem_rgb_pwm_conf+5
+	call p_keyboard_rgb_pwm
+	fetch 1,mem_rgb_pwm_conf+5
+	sub pdata,90,null
+	rtn positive
+	jam 1,mem_rgb_pwm_breathe_flag
+	rtn
+
+p_keyboard_rgb_pwm:
+	call p_keyboard_pwm_init
+	call p_keyboard_rgb_off+1
+	branch p_keyboard_breathe_tpye_select
+
+p_keyboard_rgb_pwm_set:
+	fetch 6,mem_rgb_pwm_conf
+	store 6,mem_pdatatemp
+	branch pwm_out_set
+
+p_keyboard_rgb_pwm_disable:
+	fetch 1,mem_keyboard_led_r_gpio
+	call pwm_disable
+	fetch 1,mem_keyboard_led_g_gpio
+	call pwm_disable
+	fetch 1,mem_keyboard_led_b_gpio
+	branch pwm_disable
+
+p_keyboard_breathe_tpye_select:
+	fetch 1,mem_backlight_breathe_type
+	beq RGB_BACKLIGHT_BREATHE_TPYE_RED,p_keyboard_breathe_tpye_red
+	beq RGB_BACKLIGHT_BREATHE_TPYE_GREEN,p_keyboard_breathe_tpye_green
+	beq RGB_BACKLIGHT_BREATHE_TPYE_BLUE,p_keyboard_breathe_tpye_blue
+	beq RGB_BACKLIGHT_BREATHE_TPYE_CYAN,p_keyboard_breathe_tpye_cyan
+	beq RGB_BACKLIGHT_BREATHE_TPYE_ORANGE,p_keyboard_breathe_tpye_orange
+	beq RGB_BACKLIGHT_BREATHE_TPYE_PURPLE,p_keyboard_breathe_tpye_purple
+	beq RGB_BACKLIGHT_BREATHE_TPYE_WHITE,p_keyboard_breathe_tpye_white
+p_keyboard_breathe_tpye_red:
+	fetch 1,mem_keyboard_led_r_gpio
+	store 1,mem_rgb_pwm_conf
+	setarg 0x01
+	store 1,mem_rgb_pwm_conf+1
+	branch p_keyboard_rgb_pwm_set
+
+p_keyboard_breathe_tpye_green:
+	fetch 1,mem_keyboard_led_g_gpio
+	store 1,mem_rgb_pwm_conf
+	setarg 0x02
+	store 1,mem_rgb_pwm_conf+1
+	branch p_keyboard_rgb_pwm_set
+
+p_keyboard_breathe_tpye_blue:
+	fetch 1,mem_keyboard_led_b_gpio
+	store 1,mem_rgb_pwm_conf
+	setarg 0x04
+	store 1,mem_rgb_pwm_conf+1
+	branch p_keyboard_rgb_pwm_set
+
+p_keyboard_breathe_tpye_cyan:
+	call p_keyboard_breathe_tpye_green
+	branch p_keyboard_breathe_tpye_blue
+
+p_keyboard_breathe_tpye_orange:
+	call p_keyboard_breathe_tpye_red
+	branch p_keyboard_breathe_tpye_green
+
+p_keyboard_breathe_tpye_purple:
+	call p_keyboard_breathe_tpye_red
+	branch p_keyboard_breathe_tpye_blue
+
+p_keyboard_breathe_tpye_white:
+	call p_keyboard_breathe_tpye_red
+	call p_keyboard_breathe_tpye_green
+	branch p_keyboard_breathe_tpye_blue
+
+p_keyboard_rgb_on_process:
+	call p_keyboard_rgb_pwm_disable
+	fetch 1,mem_backlight_on_type
+	sub pdata,RGB_BACKLIGHT_ON_TPYE_WHITE,null
+	ncall p_keyboard_clear_pdata,positive
+	store 1,mem_backlight_on_type
+	arg mem_rgb_on_color,contr
+	iadd contr,contr
+	ifetch 1,contr
+	store 1,mem_rgb_on_color_temp
+	branch p_keyboard_rgb_led_control
+
+p_keyboard_rgb_on_timer:
+	fetch 2,mem_mouse_no_data_timer
+	rtn blank
+	fetch 2,mem_mouse_no_data_timeout
+	fetcht 2,mem_mouse_no_data_timer
+	isub temp,temp
+	fetch 2,mem_keyboard_led_on_time_init
+	isub temp,pdata
+	rtn positive
+	jam 0,mem_backlight_on_flag
+	branch p_keyboard_rgb_off
+endif
+
+p_keyboard_discover_setting_led_gpio:
+	rtn
+
+p_keyboard_long_press_timer:
+	arg mem_same_keyvalue_timer,regc
+	arg p_keyboard_long_press_timerout,regb
+	branch timer_single_step_2B
+
+p_keyboard_long_press_timerout:
+	jam 1,mem_same_keyvalue_timerout_flag
+	branch keyboard_app_enter_hibernate
+
+
+p_keyboard_check_no_data_timeout_timer:
+ifdef usb_enable
+	fetch 1,mem_mouse_usb_vdd_status_current
+	rtneq MOUSE_USB_INTERFACE_INSERT
+endif
+	arg mem_mouse_no_data_timer,regc
+	arg p_keyboard_check_no_data_timeout,regb
+	branch timer_single_step_2B
+
+p_keyboard_check_no_data_timeout:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_keyboard_24g_hibernate_set
+	branch mouse_disconnect
+
+p_keyboard_key_press_timer:
+ifdef g24_enable
+	fetch 1,mem_keyboard_switch_device_flag
+	bbit1 KEYBOARD_FLAG_G24_DEVICE_BUTTON,p_keyboard_device_select_g24_press_timer
+	call p_keyboard_device_select_g24_nopress_timer
+endif
+ifdef ble_enable
+	fetch 1,mem_keyboard_switch_device_flag
+	bbit1 KEYBOARD_FLAG_BT_DEVICE_BUTTON,p_keyboard_device_select_bt_press_timer
+	branch p_keyboard_device_select_bt_nopress_timer
+else
+	rtn
+endif
+
+ifdef g24_enable
+p_keyboard_device_select_g24_press_timer:
+	fetch 1,mem_keyboard_switch_g24_press_timer
+	sub pdata,100,null
+	nrtn positive
+	increase 1,pdata
+	store 1,mem_keyboard_switch_g24_press_timer
+	rtnne 25
+	jam 0,mem_keyboard_switch_g24_enable
+p_keyboard_24g_start_pair_mode:
+	call p_keyboard_device_led_all_off
+	branch keyboard_24g_start_pair_mode
+
+p_keyboard_device_select_g24_nopress_timer:
+	jam 0,mem_keyboard_switch_g24_press_timer
+	rtn
+endif
+
+p_keyboard_idle:
+	call kscan_dispatch
+ifdef RGB_backlight
+	call p_keyboard_rgb_process
+endif
+ifdef usb_enable
+	call p_keyboard_usb_isr
+	call p_keyboard_usb_mode
+endif
+	branch p_keyboard_evt_ui_timer_check
+
+p_keyboard_evt_ui_timer_check:
+	arg 0,rega
+	fetcht 4,mem_keyboard_evt_btclk
+	copy clkn_bt,regb
+	copy regb,pdata
+	isub temp,null
+	ncall ui_timer_timeout,positive
+p_keyboard_evt_ui_timer_check_loop:
+	copy regb,pdata
+	increase 40,temp    //40clk = 12.5ms
+	isub temp,null
+	nbranch p_keyboard_evt_ui_timer_check_end,positive
+	increase 1,rega   //increase 1 every 100ms count
+	and rega,0x0f,pdata
+	nbranch p_keyboard_evt_ui_timer_check_loop,blank
+	arg 0,rega  //reset timer if it's longer than 1.5s between 2 checks
+	call p_keyboard_evt_ui_timer_check_send_evt
+p_keyboard_evt_ui_timer_init:
+	copy clkn_bt,pdata
+	store 4,mem_keyboard_evt_btclk
+	rtn
+p_keyboard_evt_ui_timer_check_end:
+	copy rega,pdata
+	rtn blank
+	increase -40,temp    //160btclk = 50ms
+	set0 28,temp
+	storet 4,mem_keyboard_evt_btclk
+p_keyboard_evt_ui_timer_check_send_evt:
+	store 1,mem_keyboard_evt_timer_count
+p_keyboard_evt_50ms_loop:
+	fetch 1,mem_keyboard_evt_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_keyboard_evt_timer_count
+
+	call p_keyboard_delay_lpm_timer
+
+	branch p_keyboard_evt_50ms_loop
+
+p_keyboard_start_work:
+ifdef RGB_backlight
+	call mouse_wakeup_from_power_check	// wake from hibernate :enble user
+	call p_keyboard_load_eerpom_rgb,user
+endif
+p_keyboard_start_work_adc_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_ADC,p_keyboard_start_work_next
+	call p_keyboard_adc_gpio_set
+	call p_keyboard_low_voltage_param_set
+	call enable_adc
+	call vdd_calculate_by_mode
+	div pdata,10
+	call get_div_result
+	store 2,mem_mouse_vdd_now_vol
+	fetch 2,mem_mouse_vdd_empty_vol
+	div pdata,2
+	call get_div_result
+	fetcht 2,mem_mouse_vdd_now_vol
+	isub temp,null
+	branch p_keyboard_start_work_adc_check,positive // now vol < empty vol/2  check again
+	arg mem_mouse_vdd_calculate_set,rega
+	call mouse_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,keyboard_power_down
+p_keyboard_start_work_next:
+	fetch 1,mem_keyboard_pairing_type
+	call keyboard_enable_bt_button_pairing,blank
+	fetch 1,mem_keyboard_bt_button_flag
+	nrtn blank
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_reconn_general_dongle
+	call mouse_bluetooth_fast_conn_disable
+p_keyboard_start_ble1_reconnect:
+	fetch 6,mem_device1_addr
+p_keyboard_start_ble_reconnect:
+ifdef ex_eeprom
+	fetcht 6,mem_keyboard_factory_addr
+	isub temp,null
+	branch mouse_bluetooth_fast_conn_init,zero
+else
+	branch mouse_bluetooth_fast_conn_init,blank
+endif
+	branch mouse_start_reconnect_device
+
+
+
+p_keyboard_keyscan:
+	call p_keyboard_gpio_init
+	setarg 0
+	store 2,mem_keyscan_exmcu_wait_wake_count
+	arg mem_keyscan_value_current,contr
+	arg mem_keyscan_value_check,contw
+	arg 20,loopcnt
+	call memcpy
+	call keyboard_stb_state_low							// exmcu wake up
+	setarg mem_keyscan_value_current
+	store 2,mem_keyscan_value_ptr
+	setarg mem_keyscan_exmcu_value_new
+	store 2,mem_keyscan_exmcu_value_ptr
+	call keyboard_stb_state_high
+//	call keyboard_clk_state_high
+	call keyboard_clk_input
+p_keyboard_keyscan_exmcu_start_check:
+	fetch 2,mem_keyscan_exmcu_wait_wake_count
+	increase 1,pdata
+	store 2,mem_keyscan_exmcu_wait_wake_count
+	bbit1 9,p_keyboard_keyscan_reset_exmcu 				// 953us reset exmcu
+	fetcht 1,mem_mcu_clk_gpio							// waiting for exmcu wake done
+	call gpio_get_bit
+	nbranch p_keyboard_keyscan_exmcu_start_check,true
+	call keyboard_stb_state_low
+p_keyboard_keyscan_wait_wake_next:
+	fetcht 1,mem_mcu_clk_gpio							// waiting for exmcu clk done
+	call gpio_get_bit
+	branch p_keyboard_keyscan_wait_wake_next,true
+
+	call p_keyboard_keyscan_get_exmcu_value
+	call p_keyboard_keyscan_get_mcu_value
+	call keyboard_clk_input
+	call keyboard_stb_state_high							// exmcu sleep
+p_keyboard_keyscan_copy_value:
+	fetch 2,mem_kb_excol_ptr
+	copy pdata,regb
+	jam 0,mem_keyscan_col_loop_count
+p_keyboard_compare_col_excol_gpio_loop:		// loop 12 times
+	ifetcht 1,regb
+	fetch 2,mem_kb_col_ptr
+	copy pdata,rega
+	copy rega,regc
+	arg 20,loopcnt
+p_keyboard_compare_col_gpio_loop:
+	ifetch 1,rega
+	isub temp,null
+	branch p_keyboard_copy_value_exmcu_to_mcu,zero
+	increase 1,rega
+	loop p_keyboard_compare_col_gpio_loop
+p_keyboard_compare_col_excol_gpio_loop_next:
+	increase 1,regb
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	sub pdata,11,null
+	branch p_keyboard_compare_col_excol_gpio_loop,positive
+	call p_keyboard_gpio_pu_idle
+	branch p_keyboard_key_row_init
+
+
+p_keyboard_copy_value_exmcu_to_mcu:
+	fetch 2,mem_keyscan_value_ptr
+	copy pdata,contw
+	copy rega,pdata
+	isub regc,pdata
+	iadd contw,contw							// offset = rega-regc
+	fetch 2,mem_keyscan_exmcu_value_ptr
+	copy pdata,regc
+	fetch 1,mem_keyscan_col_loop_count
+	iadd regc,regc
+	ifetch 1, regc								// offset = mem_keyscan_col_loop_count
+	istore 1,contw
+	branch p_keyboard_compare_col_excol_gpio_loop_next
+
+p_keyboard_keyscan_get_exmcu_value:
+	jam 0,mem_keyscan_exmcu_reset_count
+	jam 0,mem_keyscan_col_loop_count
+p_keyboard_keyscan_exmcu_start_loop:	// clk:0 1 0 1 0 1 0 1 0 1 0 1
+	call keyboard_clk_state_low
+	call p_keyboard_keyscan_exmcu_get_col_value
+	call keyboard_clk_state_high
+	call p_keyboard_keyscan_exmcu_get_col_value
+	sub pdata,11,null
+	branch p_keyboard_keyscan_exmcu_start_loop,positive
+	branch keyboard_clk_state_low
+
+p_keyboard_keyscan_reset_exmcu:
+	branch p_keyboard_keyscan
+
+
+
+p_keyboard_keyscan_exmcu_get_col_value:
+	jam 0,mem_keyscan_value_temp
+	call p_keyboard_keyscan_get_col_value
+	fetch 2,mem_keyscan_exmcu_value_ptr
+	branch keyboard_keyscan_value_store
+
+p_keyboard_keyscan_get_col_value:
+	nop 120
+	branch keyboard_keyscan_get_col_value
+
+p_keyboard_keyscan_get_mcu_value:
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	jam 0,mem_keyscan_col_loop_count
+p_keyboard_keyscan_mcu_start:		// loop 20 times
+	jam 0,mem_keyscan_value_temp
+	ifetcht 1,regb
+	isolate1 7,temp								// exmcu gpio
+	branch p_keyboard_keyscan_mcu_start_loop,true
+	call gpio_out_active
+	call p_keyboard_keyscan_get_col_value
+	ifetcht 1,regb
+	call gpio_out_inactive
+	ifetcht 1,regb
+	call keyboard_gpio_config_input_pu
+p_keyboard_keyscan_mcu_start_loop:
+	increase 1,regb
+	fetch 2,mem_keyscan_value_ptr
+	call keyboard_keyscan_value_store
+	sub pdata,19,null						//sub pdata,19,null
+	branch p_keyboard_keyscan_mcu_start,positive
+	rtn
+
+p_keyboard_delay_lpm_timer:
+	fetch 1,mem_keyboard_delay_lpm_flag
+	rtn blank
+	jam 1,mem_lpm_mode
+	jam 0,mem_keyboard_delay_lpm_flag
+	rtn
+
+p_keyboard_press_change_or_no_key:
+	jam 0,mem_lpm_mode
+	jam 1,mem_keyboard_delay_lpm_flag
+	branch keyboard_press_change_or_no_key
+
+p_keyboard_key_process:
+	arg mem_keyscan_value_current,rega
+	arg mem_keyscan_value_check,regb
+	arg 20,loopcnt
+	call string_compare
+	nbranch p_keyboard_press_change_or_no_key,zero
+	call p_keyboard_keyscan_value_current_zero_check
+	call keyboard_press_change_or_no_key,blank
+
+	call keyboard_ghost_key_check
+	fetch 1,mem_mouse_ghost_flag
+	nrtn blank
+	fetch 1,mem_keyboard_commbination_key_step
+	rtneq CAMMBINATION_KEY_PRESS
+	rtneq CAMMBINATION_KEY_HOLD
+	rtneq CAMMBINATION_KEY_WAIT_RELEASE
+	// keyvalue get from map,and in or out process
+	jam 0,mem_keyscan_col_loop_count
+	arg mem_keyscan_value_current,rega
+	arg mem_keyscan_value_old,regb
+p_keyboard_keyvalue_process:		// loop 20 times
+	ifetcht 1,rega
+	ifetch 1,regb
+	ixor  temp,pdata
+	branch p_keyboard_keyvalue_process_loop,blank
+	store 1,mem_keyscan_value_temp
+	storet 1,mem_keyboard_press_flag_temp
+	istoret 1,regb
+	jam 1,mem_keyboard_data_change_flag
+	jam 0,mem_keyboard_keyvalue_bit_loop_count
+p_keyboard_keyvalue_change:			// loop 8 times
+	fetch 1,mem_keyscan_value_temp
+	bbit0 0,p_keyboard_keyvalue_change_loop
+	fetch 1,mem_keyscan_col_loop_count
+	mul32 pdata,8,pdata
+	fetcht 1,mem_keyboard_keyvalue_bit_loop_count
+	iadd temp,pdata									// map offset
+	arg mem_keyboard_keyvalue_map_new,contr
+	iadd contr,contr
+	ifetch 1,contr
+	store 1,mem_keyboard_keyvalue_temp				// keyvalue
+	call keyboard_keyvalue_fn_replace
+	call p_keyboard_keyvalue_commbination_replace
+	call p_keyboard_keyvalue_in_out
+p_keyboard_keyvalue_change_loop:
+	fetch 1,mem_keyscan_value_temp
+	rshift pdata,pdata
+	store 1,mem_keyscan_value_temp
+	fetch 1,mem_keyboard_press_flag_temp
+	rshift pdata,pdata
+	store 1,mem_keyboard_press_flag_temp
+	fetch 1,mem_keyboard_keyvalue_bit_loop_count
+	increase 1,pdata
+	store 1,mem_keyboard_keyvalue_bit_loop_count
+	sub pdata,7,null
+	branch p_keyboard_keyvalue_change,positive
+p_keyboard_keyvalue_process_loop:
+	increase 1,rega
+	increase 1,regb
+	fetch 1,mem_keyscan_col_loop_count
+	increase 1,pdata
+	store 1,mem_keyscan_col_loop_count
+	sub pdata,19,null
+	branch p_keyboard_keyvalue_process,positive
+	rtn
+
+p_keyboard_keyscan_value_current_zero_check:
+ifdef RGB_backlight
+	fetch 8,mem_keyscan_value_current
+	nbranch p_keyboard_load_eerpom_rgb,blank
+	fetch 8,mem_keyscan_value_current+8
+	nbranch p_keyboard_load_eerpom_rgb,blank
+	fetch 4,mem_keyscan_value_current+16
+	nbranch p_keyboard_load_eerpom_rgb,blank
+else
+	fetch 8,mem_keyscan_value_current
+	nrtn blank
+	fetch 8,mem_keyscan_value_current+8
+	nrtn blank
+	fetch 4,mem_keyscan_value_current+16
+	nrtn blank
+endif
+	fetch 1,mem_keyboard_commbination_control_key_delay_release_timer
+	nrtn blank
+	fetch 1,mem_keyboard_commbination_key_step
+	rtneq CAMMBINATION_KEY_NULL
+	jam CAMMBINATION_KEY_FREE,mem_keyboard_commbination_key_step
+	rtn
+
+
+p_keyboard_commbination_search:
+	fetch 1,mem_kb_computer_system
+	beq SYSTEM_OS_MAC,p_keyboard_commbination_mac_search
+	setarg HID_KEY_AC_SEARCH
+	branch keyboard_keyvalue_store_temp
+p_keyboard_commbination_mac_search:
+	jam LEFT_GUI,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_SPACE,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+
+
+p_keyboard_keyvalue_in_out:
+	fetch 1,mem_keyboard_keyvalue_temp
+	arg HID_KEY_LEFT_CTRL,temp
+	isub temp,null
+	nbranch p_keyboard_keyvalue_standard,positive		// value < 0xe0
+	sub pdata,HID_KEY_RIGHT_GUI,null
+	nbranch p_keyboard_keyvalue_consumer,positive		// value  > 0xe7
+	and_into 0x07,pdata
+	copy pdata,queue
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit1 0,p_keyboard_keyvalue_control_key_in
+p_keyboard_keyvalue_control_key_out:
+	fetch 1,mem_keyboard_keyvalue_buffer
+	qset0 pdata
+	store 1,mem_keyboard_keyvalue_buffer
+	rtn
+p_keyboard_keyvalue_control_key_in:
+	fetch 1,mem_keyboard_keyvalue_buffer
+	qset1 pdata
+	store 1,mem_keyboard_keyvalue_buffer
+	rtn
+
+p_keyboard_keyvalue_standard:
+	jam 0,mem_keyboard_keyvalue_buffer+8
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit1 0,p_keyboard_keyvalue_standard_in
+p_keyboard_keyvalue_standard_out:
+	fetcht 1,mem_keyboard_keyvalue_temp
+	arg 6,loopcnt
+	arg mem_keyboard_keyvalue_buffer+2,contr
+p_keyboard_keyvalue_standard_out_loop:
+	ifetch 1,contr
+	isub temp,null
+	nbranch p_keyboard_keyvalue_standard_out_next,zero
+	ifetch 1,contr
+	increase -2,contr
+	istore 1,contr
+	rtn blank
+	increase 1,contr
+	istoret 1,contr
+p_keyboard_keyvalue_standard_out_next:
+	loop p_keyboard_keyvalue_standard_out_loop
+	rtn
+
+p_keyboard_keyvalue_standard_in:
+	fetcht 1,mem_keyboard_keyvalue_temp
+	arg 6,loopcnt
+	arg mem_keyboard_keyvalue_buffer+2,contr
+p_keyboard_keyvalue_standard_in_loop:
+	ifetch 1,contr
+	branch p_keyboard_keyvalue_standard_in_data,blank
+	isub temp,null
+	rtn zero
+	loop p_keyboard_keyvalue_standard_in_loop
+	rtn
+p_keyboard_keyvalue_standard_in_data:
+	increase -1,contr
+	istoret 1,contr
+	rtn
+
+p_keyboard_keyvalue_consumer:
+	jam KEYBOARD_CONSUMER_KEY_PRESS,mem_keyboard_consumer_key_status
+	fetch 1,mem_keyboard_press_flag_temp
+	isolate0 0,pdata
+	call p_keyboard_consumer_key_release,true
+	branch p_keyboard_keyvalue_standard
+
+p_keyboard_consumer_key_release:
+	jam KEYBOARD_CONSUMER_KEY_RELEASE,mem_keyboard_consumer_key_status
+	rtn
+
+p_keyboard_keyvalue_fn_replace:
+	fetch 1,mem_keyboard_press_flag_temp
+	isolate1 0,pdata
+	call keyboard_commbination_delay_release_clear,true
+	fetch 1,mem_keyboard_fn_flag
+	ncall p_keyboard_keyvalue_fn_replace_press,blank
+ifdef RGB_backlight
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_RIGHT_ALT,p_keyboard_rgb_on_type_switch
+	beq HID_KEY_RIGHT_GUI,p_keyboard_rgb_mode_switch
+endif
+	fetch 1,mem_keyboard_keyvalue_temp
+	beq HID_KEY_COPILOT,p_keyboard_value_copilot
+	branch keyboard_keyvalue_fn_replace+5
+
+p_keyboard_value_copilot:
+	fetch 1,mem_kb_computer_system
+	rtnne SYSTEM_OS_WINDOWS
+	jam LEFT_SHIFT_GUI,mem_keyboard_commbination_control_key_value
+	jam HID_KEY_F23,mem_keyboard_commbination_standard_key_value
+	branch keyboard_commbination_keypress
+
+p_keyboard_keyvalue_fn_replace_press:
+	fetch 1,mem_keyboard_keyvalue_temp
+//	beq HID_KEY_Q,p_keyboard_keyvalue_os_andriod
+//	beq HID_KEY_W,p_keyboard_keyvalue_os_windows
+//	beq HID_KEY_E,p_keyboard_keyvalue_os_ios
+	branch keyboard_keyvalue_fn_replace_press+1
+
+/*
+p_keyboard_keyvalue_os_andriod:
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit0 0,p_keyboard_keyvalue_clear_temp_end
+	jam SYSTEM_OS_ANDRIOD,mem_kb_computer_system
+ifdef ex_eeprom
+	call mouse_store_device_info_delay
+endif
+p_keyboard_keyvalue_clear_temp:
+	jam 6,mem_keyboard_mode_led_on_timer
+p_keyboard_keyvalue_clear_temp_end:
+	setarg 0
+	branch keyboard_keyvalue_store_temp
+
+p_keyboard_keyvalue_os_windows:
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit0 0,p_keyboard_keyvalue_clear_temp_end
+	jam SYSTEM_OS_WINDOWS,mem_kb_computer_system
+ifdef ex_eeprom
+	call mouse_store_device_info_delay
+endif
+	branch p_keyboard_keyvalue_clear_temp
+
+p_keyboard_keyvalue_os_ios:
+	fetch 1,mem_keyboard_press_flag_temp
+	bbit0 0,p_keyboard_keyvalue_clear_temp_end
+	jam SYSTEM_OS_IOS,mem_kb_computer_system
+ifdef ex_eeprom
+	call mouse_store_device_info_delay
+endif
+	branch p_keyboard_keyvalue_clear_temp
+*/
+
+p_keyboard_special_key_check:
+	call p_keyboard_device_select
+	call keyboard_pairing_button_check
+	jam 0,mem_keyboard_fn_flag
+	jam 0,mem_keyboard_control_key_flag
+	jam 0,mem_keyboard_bt_button_flag
+	fetch 1,mem_keyboard_keyvalue_buffer
+	ncall keyborad_control_key_set,blank
+	arg mem_keyboard_keyvalue_buffer+2,contr
+	arg 6,loopcnt
+p_keyboard_special_key_check_loop:
+	ifetch 1,contr
+	sub pdata,HID_KEY_FN,null
+	call keyboard_fn_set,zero
+	sub pdata,HID_KEY_PB,null
+	call keyboard_pb_set,zero
+	loop p_keyboard_special_key_check_loop
+	rtn
+
+p_keyboard_device_select:
+	call disable_user
+	call p_keyboard_device_select_g24
+	branch p_keyboard_clear_change_flag,user
+	fetch 1,mem_keyboard_switch_device_flag
+	set0 KEYBOARD_FLAG_G24_DEVICE_BUTTON,pdata
+	set0 KEYBOARD_FLAG_BT_DEVICE_BUTTON,pdata
+	store 1,mem_keyboard_switch_device_flag
+	rtn
+
+p_keyboard_clear_change_flag:
+	jam 0,mem_keyboard_data_change_flag
+	rtn
+
+p_keyboard_device_select_g24:
+	fetch 2,mem_keyboard_keyvalue_buffer+2
+	fetcht 2,mem_keyboard_commbination_key_24g
+	isub temp,null
+	branch p_keyboard_device_select_g24_press,zero
+	byteswap temp,temp
+	isub temp,null
+	branch p_keyboard_device_select_g24_press,zero
+	rtn
+
+p_keyboard_device_select_g24_press:
+	fetch 4,mem_keyboard_keyvalue_buffer+4
+	nrtn blank
+	call enable_user
+	fetch 1,mem_keyboard_switch_device_flag
+	set1 KEYBOARD_FLAG_G24_DEVICE_BUTTON,pdata
+	set0 KEYBOARD_FLAG_BT_DEVICE_BUTTON,pdata
+	store 1,mem_keyboard_switch_device_flag
+	rtn
+
+
+
+p_keyboard_motion:
+	disable user
+	jam 0,mem_customer_key
+	jam 0,mem_customer_data_trigger
+	jam 0,mem_customer_data_trigger_last
+	fetch 1,mem_keyboard_commbination_key_step
+	beq CAMMBINATION_KEY_PRESS,keyboard_commbination_key_press_process
+	beq CAMMBINATION_KEY_HOLD,keyboard_commbination_key_hold_process
+	beq CAMMBINATION_KEY_COMPLETE,keyboard_commbination_key_hold_process
+	beq CAMMBINATION_KEY_WAIT_RELEASE,keyboard_commbination_key_wait_release_process
+	beq CAMMBINATION_KEY_NULL,keyboard_commbination_key_null_process
+	fetch 1,mem_keyboard_data_change_flag
+	branch p_keyboard_no_key_press,blank
+	branch keyboard_motion+13
+
+p_keyboard_no_key_press:
+	fetch 1,mem_device_flag
+	rtnne MODE_24G_DEVICE
+	branch keyboard_no_key_press+2
+
+p_keyboard_device_data_tpye_check:
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,p_keyboard_device_data_tpye_check_next
+	jam 0,mem_24g_repeat_send_flag
+	fetch 2,mem_keyboard_tx_data
+	ncall keyboard_set_repeat_send_flag,blank
+	fetch 6,mem_keyboard_tx_data+3
+	ncall keyboard_set_repeat_send_flag,blank
+
+p_keyboard_device_data_tpye_check_next:
+	fetch 1,mem_keyboard_tx_data
+	beq HID_REPORTID_KEY_STANDARD,p_keyboard_standard_data_send
+	branch keyboard_device_data_tpye_check_next+1
+
+p_keyboard_standard_data_send:
+	jam DEVICE_DATA_TPYE_STANDARD_KEYBOARD,mem_keyboard_data_send_flag
+	call keyboard_clear_key_data
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,keyboard_standard_data_send_end
+	branch keyboard_standard_data_send+4
+
+
+p_keyboard_cb_fuction:
+	setarg p_keyboard_24g_before_lpm_sleep
+	store 2,mem_cb_before_lpm_sleep
+	setarg keyboard_24g_package_data
+	store 2,mem_cb_24g_transmit_data
+	setarg keyboard_24g_search_dongle
+	store 2,mem_cb_24g_search_receiver
+	setarg p_keyboard_lpm_before_common
+	store 2,mem_cb_24g_lpm_before
+ifdef ble_enable
+	setarg p_keyboard_le
+	store 2,mem_cb_le_process
+endif
+	setarg p_keyboard_process_lpm_before
+	store 2,mem_cb_before_lpm
+
+	setarg keyboard_priority_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg keyboard_idle
+	store 2,mem_cb_idle_process
+	setarg keyboard_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg mouse_le_bb_event_connect_complete
+	store 2,mem_cb_att_write
+	setarg keyboard_bb_event_timer
+	store 2,mem_cb_event_timer
+	setarg mouse_spi_write_flash_cb
+	store 2,mem_cb_spi_flash_write_complate
+//	setarg p_mouse_lpm_check_wake_lock
+//	store 2,mem_cb_check_wakelock
+	setarg mouse_le_transmit
+	store 2,mem_cb_ble_transmit
+	setarg mouse_set_lpm_mult
+	store 2,mem_cb_bt_set_mult
+	rtn
+
+p_keyboard_24g_before_lpm_sleep:
+	fetch 1,mem_device_flag
+	rtnne MODE_24G_DEVICE
+	branch mouse_24g_before_lpm_sleep+2
+
+p_keyboard_lpm_before_common:
+	call p_clear_wake
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_set_wake
+
+	fetcht 1,mem_usb_level_check_gpio
+	set1 7,temp
+	call gpio_set_wake
+
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	arg 20,loopcnt
+p_keyboard_key_col_wake_init:
+	ifetcht 1,regb
+	isolate1 7,temp				// exmcu gpio
+	ncall gpio_out_active,true
+	increase 1,regb
+	loop p_keyboard_key_col_wake_init
+
+	jam 0,mem_qdec_set_flag
+	fetch 2,mem_kb_row_ptr
+	copy pdata,regb
+	arg 8,loopcnt
+p_keyboard_key_row_wake_init:
+	ifetcht 1,regb
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	ncall keyboard_key_row_wake_set,zero
+	increase 1,regb
+	loop p_keyboard_key_row_wake_init
+	call p_keyboard_puchk_set_check
+	fetcht 1,mem_mouse_reuse_2ice_gpio
+	call mouse_gpio_config_input_pu
+	call mouse_gpio_set_high_impedance
+	branch mouse_adc_gpio_set_before_hibernate
+
+
+p_gpio_set_wake:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	arg 4,debug
+	isolate1 GPIO_ACTIVE_BIT,temp
+	branch gpio_set_wake_high,true
+	arg 3,debug
+	branch gpio_set_wake_high
+
+p_gpio_set_wake_by_current_state:
+	sub temp,GPIO_DISABLE,null
+	rtn zero
+	call gpio_get_bit
+	branch p_gpio_set_qdec_mode,true
+p_gpio_set_low_wake:
+	arg 3,debug
+	branch gpio_set_wake_high
+
+p_gpio_set_qdec_mode:
+	jam 1,mem_qdec_set_flag
+	arg 6,debug
+	branch gpio_set_wake_high
+
+
+p_clear_wake:
+	setarg 0
+	set1 21,pdata				//gpio5(ice) enable wakeup
+	store 8,mem_gpio_wakeup_cfg
+	setarg 0
+	istore 4,contw
+	rtn
+
+p_keyboard_process_lpm_before:
+	rtnmark1 mark_24g
+	branch p_keyboard_lpm_before_common
+
+/*
+p_mouse_lpm_check_wake_lock:
+	bmark1 mark_24g,app_get_lpm_wake_lock
+	fetch 1,mem_mouse_le_conn_param_reject
+	beq LE_LPM_DISABLE,app_get_lpm_wake_lock
+	branch app_put_lpm_wake_lock
+*/
+
+p_keyboard_before_hibernate:
+	jam 0xff,mem_sensor_motion_gpio
+	call disable_authrom
+	call keyboard_device_led_all_off
+	branch p_keyboard_setgpio_hibernate
+
+p_keyboard_device_led_all_off:
+	call keyboard_power_led_off
+	call p_keyboard_device_led_off
+ifdef num_led_enable
+	call p_keyboard_numlock_led_off+2
+endif
+ifdef scroll_led_enable
+	call p_keyboard_scrolllock_led_off+2
+endif
+	branch p_keyboard_capslock_led_off+2
+
+
+p_keyboard_app_enter_hibernate:
+	call p_keyboard_setgpio_hibernate
+	branch app_enter_hibernate
+
+
+p_keyboard_setgpio_hibernate:
+	call p_clear_wake
+	call keyboard_device_led_all_off
+ifdef RGB_backlight
+	call p_keyboard_rgb_off
+endif
+	branch p_keyboard_lpm_before_common
+
+p_keyboard_gpio_pu_idle:
+	arg core_gpio_conf,contr
+	arg GPIO_NUMBER,loopcnt
+p_keyboard_gpio_pu_idle_loop:
+	ifetch 1,contr
+	nbranch p_keyboard_gpio_pu_idle_configured,blank
+	setarg gpcfg_pullup
+	add contr,-1,contw
+	istore 1,contw
+p_keyboard_gpio_pu_idle_configured:
+	loop p_keyboard_gpio_pu_idle_loop
+	arg core_gpio_conf_hi+GPIO_NUMBER_EXT,pdata
+	isub contr,null
+	rtn zero
+	arg GPIO_NUMBER_EXT,loopcnt
+	arg core_gpio_conf_hi,contr
+	branch p_keyboard_gpio_pu_idle_loop
+
+p_keyboard_puchk_set_check:
+	fetch 1,mem_qdec_set_flag
+	branch p_keyboard_puchk_disable,blank
+	branch p_keyboard_puchk_enable
+
+
+p_keyboard_puchk_disable:
+	setarg 0x10			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable
+p_keyboard_puchk_set:
+	store 1,core_puwakeup
+	until null,lpo_edge
+	rtn
+
+p_keyboard_puchk_enable:
+	setarg 0x80			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable
+	branch p_keyboard_puchk_set
+
+
+p_lpm_dispatch:
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	fetch 1,mem_keyboard_fn_flag
+	nrtn blank
+	fetch 1,mem_keyboard_control_key_flag
+	nrtn blank
+	fetch 1,mem_mouse_direct_timer
+	nrtn blank
+	fetch 2,mem_mouse_discovery_timer
+	nrtn blank
+ifdef RGB_backlight
+	fetch 1,mem_backlight_on_flag
+	rtneq RGB_BACKLIGHT_STATUS_BREATHE
+endif
+	fetch 1,mem_keyboard_commbination_control_key_delay_release_timer
+	nrtn blank
+	branch lpm_dispatch+4
+
+
+p_lpm_sleep:
+	//call xtal_fast_wake
+	fetch 2,mem_cb_before_lpm_sleep
+	call callback_func
+p_lpm_sleep_skip_cb_function:
+	fetch 4,mem_sleep_counter_all	// sleep total time, 32k unit
+	iadd temp,pdata
+	store 4,mem_sleep_counter_all
+	call p_lpm_save_context
+
+	branch lpm_sleep_skip_cb_function+4
+
+p_lpm_save_context:
+	storer mark,8,mem_saved_mark
+	arg core_gpio_conf,contr
+	arg mem_saved_gpio,contw
+	call memcpy16
+	arg core_gpio_conf_hi,contr
+	call memcpy8
+	fetch 1,core_spid_ctrl
+	store 1,mem_saved_spidctrl
+	copy temp,regb
+p_lpm_write_gpio_wakeup:		// gpio auto wakeup
+	arg 12,loopcnt
+	arg mem_gpio_wakeup_cfg,rega
+	arg core_gpio_wakeup_cfg,regc
+	until null,lpo_edge
+p_lpm_write_gpio_loop:
+	ifetch 1,rega
+	ifetcht 1,regc
+	isub temp,null
+	branch p_lpm_write_gpio_loop_next,zero
+	istore 1,regc
+	until null,lpo_edge
+p_lpm_write_gpio_loop_next:
+	increase 1,rega
+	increase 1,regc
+	loop p_lpm_write_gpio_loop
+	copy regb,temp
+	rtn
+
+p_app_init:
+p_keyboard_init:
+	call enable_authrom
+ifdef ble_enable
+	call p_le_exchange_hid_map
+endif
+	call p_keyboard_setting_config
+	call p_keyboard_gpio_init
+	call p_keyboard_low_vol_mult_set
+	rtn wake
+ifdef RGB_backlight
+	call p_keyboard_rgb_red_led_off
+	call p_keyboard_rgb_green_led_off
+	call p_keyboard_rgb_blue_led_off
+endif
+	call p_keyboard_device_led_all_off
+	call p_keyboard_led_reuse_judge
+	fetch 1,mem_keyboard_device_poweron_timer_count_init
+	store 1,mem_keyboard_device_poweron_timer_count
+	call keyboard_cb_fuction
+	branch keyboard_init_wireless
+
+
+p_keyboard_setting_config:
+	call app_param_init
+	call p_keyboard_puchk_disable
+	rtn wake
+	call g24_transmit_init
+	call g24_chmap_param_init
+	fetch 1,mem_device_flag
+	store 1,mem_device_flag_temp_new
+	fetch 3,mem_le_lap+3
+	store 3,mem_mouse_le_lap_temp
+	call keyboard_param_init
+	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
+ifdef RGB_backlight
+	call p_keyboard_pwm_init
+endif
+	call le_set_fixed_ltk_justwork
+
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+ifndef ex_eeprom
+	bbit1 MOUSE_ENABLE_OTP,keyboard_load_otp_info_check
+endif
+ifdef ex_eeprom
+	bbit1 MOUSE_ENABLE_EEPROM,p_keyboard_load_eeprom_info_check
+endif
+	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_check
+	rtn
+
+p_keyboard_select_reconn_device:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	rtneq MODE_24G_DEVICE
+	increase -1,pdata
+	mul32 pdata,13,pdata
+	iadd rega,rega
+	ifetch 1,rega
+	store 1,mem_xrecord_mode
+	beq REC_4_MODE,p_keyboard_load_le_device
+	rtn
+
+//num灯，caps灯复用判断
+p_keyboard_led_reuse_judge:
+	fetch 1,mem_keyboard_low_voltage_alarm_gpio
+	fetcht 1,mem_keyboard_caps_led_gpio
+	isub temp,null
+	call p_keyboard_caps_led_reuse,zero
+	fetch 1,mem_keyboard_low_voltage_alarm_gpio
+	fetcht 1,mem_keyboard_num_led_gpio
+	isub temp,null
+	call p_keyboard_num_led_reuse,zero
+	fetch 1,mem_keyboard_low_voltage_alarm_gpio
+	fetcht 1,mem_keyboard_scroll_led_gpio
+	isub temp,null
+	branch p_keyboard_scroll_led_reuse,zero
+	rtn
+
+p_keyboard_caps_led_reuse:
+	fetch 1,mem_keyboard_reuse_led_bit
+	set1 KEYBOARD_REUSE_CAPSLED_BIT,pdata
+	store 1,mem_keyboard_reuse_led_bit
+	rtn
+
+p_keyboard_num_led_reuse:
+	fetch 1,mem_keyboard_reuse_led_bit
+	set1 KEYBOARD_REUSE_NUMLED_BIT,pdata
+	store 1,mem_keyboard_reuse_led_bit
+	rtn
+
+p_keyboard_scroll_led_reuse:
+	fetch 1,mem_keyboard_reuse_led_bit
+	set1 KEYBOARD_REUSE_SCROLLLED_BIT,pdata
+	store 1,mem_keyboard_reuse_led_bit
+	rtn
+
+
+p_keyboard_load_le_device:
+	ifetch 6,contr
+	store 6,mem_hci_plap
+	branch mouse_load_le_device_end+3
+
+p_keyboard_gpio_init:
+	call p_clear_wake
+	fetcht 1,mem_config_select_device_button_gpio
+	storet 1,mem_sensor_motion_gpio
+	call keyboard_gpio_config_input_pu
+ifdef ice_disable
+	call lpm_write_ice_disable
+endif
+	//row init
+	setarg mem_key_row_gpio
+	store 2,mem_kb_row_ptr
+	//col init
+	setarg mem_key_col_gpio
+	store 2,mem_kb_col_ptr
+	//portA and B init
+	setarg mem_key_excol_gpio
+	store 2,mem_kb_excol_ptr
+
+	call p_keyboard_key_row_init
+
+	fetch 2,mem_kb_col_ptr
+	copy pdata,regb
+	arg 20,loopcnt
+	branch keyboard_key_cow_init
+
+p_keyboard_key_row_init:
+	fetch 2,mem_kb_row_ptr
+	copy pdata,regb
+	arg 8,loopcnt
+p_keyboard_key_row_init_loop:
+	ifetcht 1,regb
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	ncall keboard_gpio_set_high_impedance,zero
+	increase 1,regb
+	loop p_keyboard_key_row_init_loop
+	branch p_lpm_write_gpio_wakeup
+
+
+
+p_keyboard_low_vol_mult_set:
+	fetch 1,mem_device_flag
+	bne MODE_24G_DEVICE,keyboard_low_vol_mult_ble_set+1
+	call g24_interval_param_8ms
+	branch keyboard_low_vol_mult_set+2
+
+p_ui_ipc_send_event:
+	fetch 1,mem_fifo_temp
+	arg 8,loopcnt
+	arg mem_ipc_fifo_bt2c51,contr
+p_ui_ipc_fifo_check:
+	ifetcht 1,contr
+	isub temp,null
+	rtn zero
+	loop p_ui_ipc_fifo_check
+	branch ui_ipc_send_event+1
+
+p_check_51cmd_once_continue:
+	fetch 1,mem_fifo_temp
+	beq BT_CMD_STORE_RECONN_INFO_LE,p_eeprom_store_le_reconn_info
+	branch check_51cmd_once_continue+4
+
+p_eeprom_store_le_reconn_info:
+	jam REC_4_MODE,mem_record_bt_mode
+p_eeprom_store_reconn_info:
+	fetch 1,mem_device_option
+	beq DVC_OP_KEYBOARD,keyboard_store_remote_bdaddr
+	branch eeprom_store_reconn_info+1
+
+///////////******************ble patch start*************************//////////////
+ifdef ble_enable
+p_keyboard_start_discovery:
+	call p_keyboard_device_led_all_off+1
+	setarg 0
+	store 2,mem_otp_store_device_info_flag
+	branch keyboard_start_discovery+5
+
+p_keyboard_stop_discovery:
+	setarg 0
+	store 2,mem_mouse_discovery_timer
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	call mouse_disable_function_flag
+	jam 0,mem_mouse_bluetooth_reconnect_timeout
+	call mouse_stop_le_adv
+	fetch 1,mem_keyboard_device_poweron_timer_count
+	branch p_keyboard_device_led_all_off+1,blank
+	rtn
+
+p_keyboard_le:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,p_keyboard_le_next
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+p_keyboard_le_next:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_24G_PAIRING_FLAG,p_keyboard_le_send_empty_packet
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,p_keyboard_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,p_keyboard_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,p_keyboard_le_send_empty_packet
+	call keyboard_motion
+	nrtn user
+	fetch 1,mem_customer_key
+	beq 1,mouse_le_send_keyboard_package_data
+	branch mouse_le_send_mouse_data
+
+p_keyboard_le_send_empty_packet:
+	jam 0,mem_customer_data_trigger
+	branch mouse_le_send_keyboard_package_data
+
+
+p_le_check_retransmit_timesout:
+	fetch 1,mem_le_conn_rcv_new
+	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
+
+p_le_check_retransmit:
+	fetch 1,mem_le_conn_first_rcv
+	rtn blank
+	fetch 1,mem_le_check_retransmit_flag
+	nrtn blank
+	fetcht 1,mem_le_conn_first_rcv
+	fetch 1,mem_le_conn_rcv_new
+	isub temp,null
+	ncall p_le_check_retransmit_timesout,positive
+	isub temp,pdata
+	sub pdata,100,null
+	branch p_le_check_retransmit_count,positive
+	fetch 1,mem_le_retransmit_cnt
+	sub pdata,20,null
+	ncall p_app_ble_disconnect,positive
+	jam 1,mem_le_check_retransmit_flag
+	rtn
+p_app_ble_disconnect:
+	jam 1,mem_le_check_retransmit_discon_flag
+	branch app_ble_disconnect
+p_le_check_retransmit_count:
+	fetcht 1,mem_le_arq
+	fetch 1,mem_le_rxbuf_data_header
+	rshift pdata,pdata
+	ixor temp,pdata
+	isolate1 nesn,pdata
+	setarg 0
+	fetcht 1,mem_le_retransmit_cnt
+	setflag true,0,pdata
+	iadd temp,temp
+	storet 1,mem_le_retransmit_cnt
+	rtn
+
+p_le_got_first_packet_new:
+	fetch 1,mem_le_conn_rcv
+	increase 1,pdata
+	store 1,mem_le_conn_rcv
+	nbranch p_le_got_first_packet_new+7,match
+	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
+//	fetch 1,mem_le_conn_rcv_new
+//	store 1,mem_le_conn_first_rcv
+	rtn
+
+p_le_rx_dec:
+	call le_check_retransmit
+//	bmark1 mark_old_packet,le_retransmit_end_of_packet
+	fetchr rega, 1,mem_le_rxbuf_data_length
+	increase -4,rega
+	nbranch le_crc_fail_consecutive,positive
+	branch le_rx_dec+6
+
+p_le_rx_nopayload:
+	parse demod,bucket,24
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	enable swfine
+	call le_set_until_tx_timer
+	branch le_crc_fail,crc_failed
+	bmark0 mark_ble_encryption,le_rx_match
+	fetch 1,mem_le_rxbuf_data_length
+	branch le_rx_match,blank
+	increase -4,pdata
+	store 1,mem_le_rxbuf_data_length
+	call wait_ccm_done
+ 	fetch 1,core_misc_status
+	bbit0 7, le_crc_fail_consecutive
+ 	force regidx_result,regext_index
+	storer regext, 4,mem_le_peer_mic
+	branch le_rx_match
+
+
+p_le_adv_not_match:
+	call shutdown_radio
+	jam 0,0x8900
+	set0 mark_ble_crc_fail,mark
+	branch le_adv_not_match+1
+
+p_le_init_adv:
+	set0 mark_ble_crc_fail,mark
+	branch le_init_adv+1
+
+
+
+p_keyboard_start_reconnect_device:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	increase -1,pdata
+	mul32 pdata,13,pdata
+	branch mouse_start_reconnect_device+6
+
+p_keyboard_store_remote_bdaddr:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_STORE_EEPROM_FLAG
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_disable_function_flag
+	call p_keyboard_check_device_addr
+	call p_keyboard_unplug_clean_bdaddr
+	branch mouse_store_device_info_delay
+p_keyboard_unplug_clean_bdaddr:
+	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
+	beq REC_4_MODE,p_keyboard_store_le_device
+	rtn
+
+p_keyboard_store_le_device:
+	fetch 6,mem_le_plap
+	istore 6,contw
+	branch mouse_store_le_device+4
+
+p_keyboard_check_device_addr:
+	fetch 1,mem_record_bt_mode
+	beq REC_4_MODE,p_keyboard_check_le_device_addr
+	rtn
+p_keyboard_check_le_device_addr:
+	store 1,mem_device_addr_temp
+	fetch 6,mem_le_plap
+p_keyboard_check_bt_device_addr_common:
+	store 6,mem_device_addr_temp+1
+	fetch 7,mem_device_addr_temp
+	arg mem_device1_type,contr
+	arg 3,loopcnt
+p_keyboard_check_device_addr_end:
+	ifetcht 7,contr
+	isub temp,null
+	branch mouse_clean_addr,zero
+	increase 6,contr
+	loop p_keyboard_check_device_addr_end
+	rtn
+
+
+p_le_parse_att:
+	copy rega,contr
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+	beq ATTOP_READ_RESPONSE,p_keyboard_le_parse_att_manu_resp
+	beq ATTOP_READ_BY_TYPE_REQUEST,p_le_parse_att_read_by_type_request
+	beq ATTOP_READ_BY_TYPE_RESPONSE,p_keyboard_le_send_att_read_by_type_rsp_mac
+	beq ATTOP_FIND_BY_TYPE_VALUE_RESPONSE,p_keyboard_le_parse_att_find_by_type_value_rsp
+	beq ATTOP_ERROR_RESPONSE,p_keyboard_le_send_att_find_by_type_value_request_mac
+	beq ATTOP_READ_BLOB_REQUEST,p_le_parse_att_read_blob_request
+	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
+	beq ATTOP_WRITE_REQUEST,p_le_parse_att_write_request
+	beq ATTOP_WRITE_COMMAND,p_le_parse_att_write_command
+	branch le_parse_att2
+
+p_keyboard_le_parse_att_manu_resp:
+	fetch 1,mem_le_connect_ios_mac_flag
+	rtn blank
+p_keyboard_le_parse_att_manu_resp_next:
+	fetch 2,mem_le_l2cap_size
+	arg 9,loopcnt
+	fetch 2,mem_le_payload_ptr
+	add pdata,5,rega
+	arg mem_le_search_mac_manu_name,regb
+	call string_compare
+	branch p_keyboard_le_parse_att_find_mac_report,zero
+	branch  p_keyboard_le_parse_att_not_find_mac_report
+p_keyboard_le_parse_att_not_find_mac_report:
+	fetch 1,mem_le_conn_peer_addr_type
+	store 1,mem_kb_computer_system
+	branch p_keyboard_store_computer_system_ble
+
+p_keyboard_le_parse_att_find_mac_report:
+	jam SYSTEM_OS_MAC,mem_kb_computer_system
+p_keyboard_store_computer_system_ble:
+	jam 0,mem_le_connect_ios_mac_flag
+ifdef ex_eeprom
+	branch p_keyboard_store_device_info
+else
+	jam 1,mem_otp_store_system_flag
+	fetch 1,mem_otp_store_device_info_flag
+	rtn blank
+	branch p_keyboard_wirte_otp_ble
+endif
+
+p_keyboard_le_send_att_read_by_type_rsp_mac:
+	fetch 1,mem_le_connect_ios_mac_flag
+	rtn blank
+p_keyboard_le_send_att_read_by_type_rsp_mac_next:
+	fetch 2,mem_le_l2cap_size
+	increase -2,pdata
+	div pdata,7
+	call wait_div_end
+	quotient loopcnt
+	fetch 2,mem_le_payload_ptr
+	add pdata,6,contr
+p_keyboard_le_check_att_read_type_manu_loop:
+	increase 3,contr
+	ifetch 2,contr
+	copy pdata,regc
+	ifetch 2,contr
+	arg 0x2a29,temp
+	isub temp,null
+	branch keyboard_le_send_att_read_by_type_rsp_manufactory,zero
+	loop p_keyboard_le_check_att_read_type_manu_loop
+	branch p_keyboard_le_parse_att_not_find_mac_report
+
+p_keyboard_le_parse_att_find_by_type_value_rsp:
+	fetch 1,mem_le_connect_ios_mac_flag
+	rtn blank
+p_keyboard_le_parse_att_find_by_type_value_rsp_next:
+	fetch 1,mem_le_connect_ios_mac_flag
+	beq 2,keyboard_le_parse_att_find_by_type_value_rsp_mac
+p_keyboard_le_parse_att_find_ios_report:
+	jam SYSTEM_OS_IOS,mem_kb_computer_system
+	branch p_keyboard_store_computer_system_ble
+
+p_keyboard_le_send_att_find_by_type_value_request_mac:
+	fetch 1,mem_le_connect_ios_mac_flag
+	rtn blank
+p_keyboard_le_send_att_find_by_type_value_request_mac_next:
+	fetch 1,mem_le_connect_ios_mac_flag
+	beq 2,p_keyboard_le_parse_att_not_find_mac_report
+	branch keyboard_le_send_att_find_by_type_value_request_mac+2
+
+p_le_parse_att_read_by_type_request:
+	call le_get_search_handle_start_end_common
+	call le_get_search_att_type
+p_le_send_att_read_by_type_response:
+	fetcht 2,mem_le_search_handle_start
+	storet 2,mem_temp
+	call le_init_attlist_search
+	call le_att_get_handle_ptr2
+	increase -2,contr
+	copy contr,pdata
+	store 2,mem_le_cur_attlist_start_ptr
+
+	fetcht 2,mem_le_search_att_type
+	setarg UUID_CHRCTR_PNP_ID
+	isub temp,null
+	branch p_le_send_att_read_by_type_res_pnp_id,zero
+	branch le_send_att_read_by_type_response+8
+
+p_le_send_att_read_by_type_res_pnp_id:
+	fetch 1,mem_keyboard_change_vid_pid_flag
+	branch le_send_att_read_by_type_response+8,blank
+	call le_att_get_uuid_ptr
+	branch le_send_att_error_response_notfound,blank
+	arg mem_keyboard_change_vid_pid_flag+1,contr
+	force 11,pdata		// length +1
+	branch le_send_att_read_by_type_res_not_characteristic+9
+
+
+p_le_parse_att_read_blob_request:
+	ifetch 2,contr
+	store 2,mem_le_att_offset
+	iforce rega
+	fetcht 2,mem_le_att_handle
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch le_send_att_read_blob_response,zero
+	fetch 2,mem_keyboard_le_map_len
+	arg mem_keyboard_le_hid_map,contr
+	branch le_send_att_read_blob_response+3
+
+p_le_parse_att_read_request:
+	fetcht 2,mem_le_att_handle
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_READ_AUTH,p_le_send_att_read_response_check_auth
+//input:temp is handle
+p_le_send_att_read_response:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_ADC,p_le_send_att_read_response+3
+	bbit0 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL,p_le_send_att_read_response_next
+	fetch 2,mem_le_att_handle
+	beq 0x30,le_send_att_error_response_notfound
+p_le_send_att_read_response_next:
+	fetch 2,mem_le_att_handle
+	beq 0x05,p_le_send_att_appearance
+	beq 0x10,p_le_send_att_pnp_id
+p_le_send_att_read_response_next_1:
+	fetcht 2,mem_le_att_handle
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch le_send_att_read_response,zero
+	call le_get_search_max_mtu_data
+	fetcht 2,mem_keyboard_le_map_len
+	arg mem_keyboard_le_hid_map,contr
+	branch le_send_att_read_response+14
+
+p_le_send_att_appearance:
+	arg mem_keybord_appearance,contr
+	force 3,pdata		// length +1
+	branch le_send_att_read_response_less
+
+p_le_send_att_pnp_id:
+	fetch 1,mem_keyboard_change_vid_pid_flag
+	branch p_le_send_att_read_response_next_1,blank
+	arg mem_keyboard_change_vid_pid_flag+1,contr
+	force 8,pdata		// length +1
+	branch le_send_att_read_response_less
+
+p_le_send_att_read_response_check_auth:
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch p_le_send_att_read_response,zero
+	call le_check_encrypt_state
+	nbranch p_le_send_att_read_response_next,user
+	branch le_send_att_read_response_error_insufficient_auth
+
+
+p_le_parse_att_write_request:		// mac os 10.9.5 reconnect can't move
+	copy contr,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-3,regb
+	call le_writeatt_cb
+	call p_le_parse_att_write_command+1		//MAC  CAPS
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,le_send_att_write_response_check_auth
+	fetch 1,mem_mouse_le_reconnect_flag
+	branch le_send_att_write_response_check_auth,blank
+	fetch 1,mem_le_connect_status_flag
+	bbit1 LL_START_ENC_FLAG,le_send_att_write_response_check_auth
+	setarg 0x001a
+	fetcht 2,mem_le_att_handle
+	isub temp,null
+	nbranch le_send_att_write_response_check_auth,zero
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
+
+
+p_le_parse_att_write_command:
+	call le_parse_att_write_command
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,p_keyboard_le_fast_conn_led_get
+	fetch 2,mem_le_att_handle
+	beq 0x25,p_keyboard_le_led_get
+	rtn
+p_keyboard_le_fast_conn_led_get:
+	fetch 2,mem_le_att_handle
+	beq 0x21,p_keyboard_le_led_get
+	rtn
+
+p_keyboard_le_led_get:
+	fetch 1,mem_le_rxbuf+9
+	store 1,mem_keyboard_led_status
+	rtn
+
+p_le_exchange_hid_map:
+	arg 0x919f,contr	//key map->mouse map
+	arg mem_keyboard_le_hid_map,contw
+	arg 66,loopcnt
+	call memcpy
+	arg 0x91e1,contr
+	arg mem_keyboard_le_hid_map +66,contw
+	arg 54,loopcnt
+	branch memcpy
+endif
+///////////******************ble patch end*************************//////////////
+
+///////////******************g24 patch start*************************//////////////
+ifdef g24_enable
+p_g24_pair_dispatch:
+	jam DEFAULT_24G_DEVICE,mem_24g_reconn_type
+	branch g24_pair_dispatch+8
+
+p_keyboard_g24_reconn_dispatch:
+	fetch 2,mem_24g_reconn_count
+	and_into 0xe0,pdata
+	branch p_keyboard_g24_reconn_dispatch_next,blank		// each 0x100 times,reconnect 16 times
+	fetch 2,mem_24g_reconn_count
+	increase 1,pdata
+	store 2,mem_24g_reconn_count
+	rtn
+p_keyboard_g24_reconn_dispatch_next:
+	call g24_reconn_data_prep
+	call g24_transmit_receive_ack
+	nbranch g24_reconn_device_fail,sync
+	nbranch g24_reconn_device_fail,user3
+	call p_keyboard_g24_ackpayload_parse
+	branch g24_reconn_dispatch_next+5
+
+
+p_keyboard_g24_transmit_no_interrupt:
+	call g24_txdata_prep
+	nbranch p_keyboard_g24_nodata_transmit,user
+p_keyboard_g24_transmit_start:
+	call p_keyboard_24g_fast_conn_mode_check
+	call p_keyboard_g24_transmit_process
+	call keyboard_power_ctrl_start
+	branch keyboard_g24_transmit_start_next
+
+p_keyboard_24g_fast_conn_mode_check:
+	fetch 4,mem_24g_receiver_addr
+	fetcht 4,mem_24g_fast_conn_addr
+	isub temp,null
+	branch p_keyboard_soft_agc_enable,zero
+	branch p_keyboard_soft_agc_disable
+
+p_keyboard_soft_agc_enable:
+	jam 0,mem_gain_fix
+	jam TX_POWER_FACTORY,mem_tx_power
+	rtn
+
+p_keyboard_soft_agc_disable:
+	jam 0xff,mem_gain_fix
+	rtn
+
+
+p_keyboard_g24_nodata_transmit:
+	fetch 8,mem_keyscan_value_current
+	nbranch keyboard_g24_transmit_start_next,blank
+	fetch 8,mem_keyscan_value_current+8
+	nbranch keyboard_g24_transmit_start_next,blank
+	fetch 4,mem_keyscan_value_current+16
+	nbranch keyboard_g24_transmit_start_next,blank
+	call g24_search_receiver
+p_keyboard_g24_long_sleep:
+	call keyboard_g24_lpm_wait
+	nrtn user
+	call g24_setgpio_lpm_before
+	fetch 1,mem_sensor_shutdown_flag
+	ncall keyboard_setgpio_hibernate,blank
+	fetch 8,mem_24g_enter_hibernate
+	branch g24_long_seep2
+
+p_keyboard_g24_transmit_process:
+	jam 0,mem_24g_retry
+p_keyboard_g24_transmit_loop:
+	fetchr timeup,2,mem_param_rx_setup
+	until clkn_rt,meet
+	call keyboard_special_key_check
+	fetch 2,mem_24g_pair_timeout
+	nbranch g24_transmit_no_ack,blank
+	call g24_transmit_receive_ack
+	fetch 1,mem_24g_no_ack	//tx noack
+	beq no_ack_24g,g24_transmit_no_ack
+	nbranch p_keyboard_g24_retransmit,sync
+	nbranch p_keyboard_g24_retransmit,user3
+	call p_keyboard_g24_ackpayload_parse
+//	call p_keyboard_device_select_g24_nopress_timer
+	jam 0,mem_sensor_shutdown_flag
+	branch g24_transmit_no_ack
+
+
+p_keyboard_g24_retransmit:
+	fetch 1,mem_24g_abort_pac
+	nrtn blank
+	fetch 2,mem_24g_txfail_cnt
+	increase 1,pdata
+	store 2,mem_24g_txfail_cnt
+	fetch 1,mem_24g_txfail_cnt
+	beq 0xff,g24_tx_attempt_fail
+	fetch 1,mem_24g_retry
+	increase 1,pdata
+	store 1,mem_24g_retry
+	and_into 0x03,pdata
+	branch p_keyboard_g24_transmit_hop_process,blank		//each 4 times change channel
+	branch p_keyboard_g24_transmit_loop
+
+p_keyboard_g24_transmit_hop_process:
+	call kscan_dispatch
+	call p_keyboard_device_select
+	fetch 1,mem_keyboard_switch_device_flag
+	nbranch g24_transmit_no_ack,blank
+	call p_g24_tx_fast_hop
+	branch p_keyboard_g24_transmit_loop
+
+p_g24_tx_fast_hop:
+	fetch 4,mem_24g_addr
+	fetcht 4,mem_24g_fast_conn_addr
+	isub temp,null
+	branch g24_ch,zero
+	branch g24_tx_fast_hop
+
+
+p_keyboard_g24_ackpayload_parse:
+	call g24_ackpayload_parse
+	fetch 1,mem_24g_rxbuf+1
+	compare 0x08,pdata,0xf8
+	nrtn true
+	fetch 1,mem_24g_rxbuf+2		// pc sleep mouse ackpayload: 01 08 ff
+	beq 0xff,p_keyboard_24g_hibernate_set
+	store 1,mem_keyboard_led_status
+	rtn
+
+p_keyboard_g24_short_sleep:
+	call g24_lpm_wait
+	nrtn user
+	call p_clear_wake
+	fetch 3,mem_24g_short_sleep_set
+	branch g24_long_seep2
+endif
+///////////******************g24 patch end*************************//////////////
+ifdef ADC_1121SB
+
+p_adc_init_data:
+	fetch 8,mem_otp_adc
+	branch adc_init_cal_data_default,blank
+	store 8,mem_reference_inter1p8v_2v_adc_io_data
+	call enable_otp_read
+	call loadcode_check_otp_lock
+	arg OTP_OFFSET_ADC_PARAM_L_C0,pdata
+	iadd regb,regb
+	arg 10,loopcnt
+	arg mem_otp_temp,rega
+	call otp_read_data
+	call disable_otp
+	fetch 8, mem_otp_temp
+	rtn blank
+	store 8,mem_adc_reference3v_gpio1v_ft_data
+	ifetch 2,contr
+	istore 2,contw
+	//call  eut_test_data_init
+	rtn
+
+p_sadc_cal_write:
+	fetch 1,core_sadc_ctrl
+	set1 1,pdata
+	store 1,core_sadc_ctrl
+	fetchr regb,1,mem_spi_write_addr
+	fetch 1,mem_adc_cal_c7
+	store 1,mem_spi_write_addr
+	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
+	call sadc_cal_write+4
+	storer regb,1,mem_spi_write_addr
+	fetch 1,core_gpadc_cfg2
+	set0 4,pdata//caliberation write disable
+	store 1,core_gpadc_cfg2
+	rtn
+
+
+
+p_vdd_calculate_by_mode:
+ifdef  ADC_1121SB_1V8_MODE
+	fetch 1,mem_adc_reference_mode
+	beq SADC_REFERENCE_INTER3V,p_vdd_reference_inter3V_calculate
+	beq SADC_REFERENCE_INTER1P8V_DIV2,p_vdd_reference_inter1p8V_calculate
+	branch p_vdd_reference_inter3V_calculate
+endif
+
+p_vdd_reference_inter3V_calculate:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_HVIN,p_vdd_reference_inter3V_calculate_by_mode_vdcdc
+	beq ADC_CONFIG_GPIO,p_vdd_reference_inter3V_calculate_by_mode_gpio
+	rtn
+
+p_vdd_reference_inter3V_calculate_by_mode_vdcdc:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_adc_reference3v_vdcdc3p6v_ft_data
+	fetch 2,mem_adc_reference3v_vdcdc4p6v_ft_data
+	arg 3600,regc
+	call vdd_calculate
+	branch p_mul1V_div1V_to_cal
+
+p_vdd_reference_inter3V_calculate_by_mode_gpio:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_adc_reference3v_gpio1v_ft_data
+	fetch 2,mem_adc_reference3v_gpio2v_ft_data
+	arg 1000,regc
+	call vdd_calculate
+p_mul1V_div1V_to_cal:
+	fetcht 2,mem_adc_reference3v_inter1v_ft_data
+	imul32 temp,pdata
+	fetcht 2,mem_adc_reference3v_inter1v_now_data
+	idiv temp
+	branch get_div_result
+
+p_enable_adc_init_config:
+	call p_sadc_cal_write
+	fetch 1,core_gpadc_cfg1
+	set0 7,pdata
+	store 1,core_gpadc_cfg1
+	jam 0x77,core_gpadc_ctrl
+	jam 0xc1,core_gpadc_cfg0
+	jam 0x61,core_vtest_ctrl0
+	jam 0x00,core_gpadc_cfg3
+	rtn
+
+p_enable_adc:
+ifdef  ADC_1121SB_1V8_MODE
+	fetch 1,mem_adc_reference_mode
+	beq SADC_REFERENCE_INTER3V,p_enable_adc_reference_source_inter3V
+	beq SADC_REFERENCE_INTER1P8V_DIV2,p_enable_adc_reference_source_inter1p8V
+	branch p_enable_adc_reference_source_inter3V
+endif
+
+p_enable_adc_reference_source_inter3V:
+	call p_enable_adc_init_config
+	call sadc_channel
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	call sadc_read
+	jam 0x60,core_vtest_ctrl0
+	jam 0x00,core_sadc_clkdiv
+//	rtn
+
+p_read_adc_inter1V:
+	call p_enable_adc_init_config
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	jam 0x50,core_gpadc_cfg3
+	jam 0xc0,core_vtest_ctrl1//select vref1v
+
+	arg 0xb,regext_index
+	fetchr regext, 2,mem_adc_current_value
+
+	jam 0x03,core_sadc_ctrl
+	call p_sar_adc_read_wait
+	fetcht 2,core_sadc_data
+	storet 2,mem_adc_reference3v_inter1v_now_data
+	call sadc_read_wait+4
+
+	arg 0xb,regext_index
+	storer regext,2,mem_adc_current_value
+
+	jam 0x60,core_vtest_ctrl0
+	jam 0x00,core_sadc_clkdiv
+	jam 0x00,core_sadc_ctrl
+	rtn
+
+
+
+p_sar_adc_read_wait:
+	fetch 1,core_perf_status
+	bbit0 SARADC_DONE,p_sar_adc_read_wait
+	rtn
+
+
+
+ifdef  ADC_1121SB_1V8_MODE
+p_vdd_reference_inter1p8V_calculate:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_HVIN,p_vdd_reference_inter1p8V_calculate_by_mode_vdcdc
+	beq ADC_CONFIG_GPIO,p_vdd_reference_inter1p8V_div2_calculate_by_mode_gpio
+	rtn
+
+p_vdd_reference_inter1p8V_calculate_by_mode_vdcdc:
+	setarg 2000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_reference_inter1p8v_2p6v_adc_vdcdc_data
+	fetch 2,mem_reference_inter1p8v_4p6v_adc_vdcdc_data
+	arg 2600,regc
+	branch vdd_calculate
+
+p_vdd_reference_inter1p8V_div2_calculate_by_mode_gpio:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_reference_inter1p8v_2v_adc_io_data
+	fetch 2,mem_reference_inter1p8v_1v_adc_io_data
+	arg 2000,regc
+	branch p_vdd_calculate00
+
+p_vdd_calculate00:
+	isub temp,rega
+	fetch 2,mem_adc_current_value
+	isub temp,pdata
+	nbranch p_vdd_calculate11,positive
+	fetcht 2,mem_reference_voltage
+	imul32 temp,regb
+	copy regc,pdata
+	imul32 rega,pdata
+	isub regb,pdata
+	nbranch set_pdata_0,positive
+	branch vdd_calculate2
+
+p_vdd_calculate11:
+	copy temp,pdata
+	fetcht 2,mem_adc_current_value
+	isub temp,pdata
+	fetcht 2,mem_reference_voltage
+	imul32 temp,regb
+	copy regc,pdata
+	imul32 rega,pdata
+	iadd regb,pdata
+	branch vdd_calculate2
+
+
+p_enable_adc_reference_source_inter1p8V:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_HVIN,p_enable_adc_reference_source_inter1p8V_vdcdc
+p_enable_adc_reference_source_inter1p8V_div2_gpio:
+	call p_sadc_cal_write
+	fetch 1,core_gpadc_cfg1
+	set0 7,pdata
+	store 1,core_gpadc_cfg1
+	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
+
+p_enable_adc_reference_source_inter1p8V_vdcdc:
+	call p_sadc_cal_write
+	fetch 1,core_gpadc_cfg1
+	set0 7,pdata
+	store 1,core_gpadc_cfg1
+	jam 0x77,core_gpadc_ctrl
+	jam 0x41,core_gpadc_cfg0
+	jam 0x10,0x8ac6			//not 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
+
+endif
+endif
\ No newline at end of file
Index: program/patch_sdk.prog
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/patch_sdk.prog	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/program/patch_sdk.prog	(working copy)
@@ -0,0 +1,18 @@
+define SECURE_CONNECTION
+define NEC
+define DEBUG_RF_INIT
+define COMPILE_SHUTTER
+define COMPILE_MOUSE
+define COMPILE_MODULE
+define COMPILE_USB
+define COMPILE_DONGLE
+define COMPILE_LE
+define COMPILE_24G
+define COMPILE_CAR
+define COMPILE_REMOTE_CAR
+define COMPLIE_ADPCM
+define SDKCODE
+ifdef SDKCODE
+INCLUDE "bt_format"
+org 0x0000  // start from patch ram address start
+endif
Index: sched/1305.dat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/sched/1305.dat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/sched/1305.dat	(working copy)
@@ -0,0 +1,36 @@
+
+
+mem_system_clk:0c
+mem_lpm_xtalcnt:35 3f 64
+mem_lpm_isogate:db 7b 3b
+mem_lpm_hibernate_switch:20
+mem_lpm_ldo_sel:00
+mem_lpm_sysctl:08
+mem_lpm_hv_sel:b4
+
+mem_fcomp_div:18
+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
+mem_le_tx2m_delay:20
+
+mem_rx_window_sniff:00 0c
+
+mem_gain_fix:ff	#00:soft agc; ff:hw agc
+mem_gain_table:04 00 00
+mem_gain_second_agc_en:08	#hw agc: 0:second agc disable
+mem_otp_load_check_sum:5a
+
+
+mem_ring_ibias_trim:a0
+mem_ring_ibias_vtune_high:bc 02 #700mv
+mem_ring_ibias_vtune_low:90 01 #400mv
+mem_ring_ibias_calc_adc_gpio:03
+mem_ring_ibias_calc_adc_channel:09
+
+mem_rf_init_data:
+ff
+mem_rf_init_ptr:mem_rf_init_data
+
+
Index: sched/keyboard.dat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/sched/keyboard.dat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/sched/keyboard.dat	(working copy)
@@ -0,0 +1,387 @@
+mem_mouse_flag:
+#mouse flag byte1
+#bit0 MOUSE_SELECT_DEVICE_FLAG
+#bit1 MOUSE_24G_PAIRING_FLAG
+#bit2 MOUSE_STORE_EEPROM_FLAG
+#bit3 MOUSE_BT_CANNEL_RECONN_FLAG
+#bit4 MOUSE_LOW_VOLTAGE_FLAG
+#bit5 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+#bit6 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+04
+
+#mouse flag byte2
+#bit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+#bit1 MOUSE_ENABLE_2K_EEPROM
+#bit2 MOUSE_ENABLE_INIT_DELAY
+#bit3 MOUSE_ENABLE_WAKEUP_FROM_POWER
+#bit4 MOUSE_ENABLE_16M
+#bit5 MOUSE_ENABLE_USB
+#bit6 MOUSE_ENABLE_24G_SEARCH_DONGLE
+#bit7 MOUSE_ENABLE_LOAD_AND_STORE_DPI
+09
+
+#mouse flag byte3
+#bit0 MOUSE_ENABLE_SPI2
+#bit1 MOUSE_ENABLE_24G
+#bit2 MOUSE_ENABLE_FLASH
+#bit3 MOUSE_ENABLE_EEPROM
+#bit4 MOUSE_ENABLE_OTP
+#bit5 MOUSE_ENABLE_ADC
+#bit6 MOUSE_ENABLE_KEYBOARD
+#bit7 MOUSE_ENABLE_DOUBLE_DPI_KEY
+#6a	#eeprom
+72	#otp
+
+#mouse flag byte4
+#bit0 MOUSE_ENABLE_24G_250Hz
+#bit1 MOUSE_ENABLE_24G_500Hz
+#bit2 MOUSE_ENABLE_24G_1000
+#bit3 MOUSE_ENABLE_BT_125Hz
+#bit4 MOUSE_ENABLE_DPI_LEVEL_4
+#bit5 MOUSE_ENABLE_USB_250
+#bit6 MOUSE_ENABLE_USB_500
+#bit7 MOUSE_ENABLE_USB_1000
+00
+
+#mouse flag byte5
+#bit0 MOUSE_ENABLE_1IO2LED
+#bit1 MOUSE_ENABLE_BT_RECONN_LED_EFFECT
+#bit2 MOUSE_ENABLE_LOW_LED_BLINK_LIMIT
+#bit3 MOUSE_ENABLE_LOW_LED
+#bit4 MOUSE_ENABLE_LOW_FOR_LED
+#bit5 MOUSE_ENABLE_DPI_FOR_LED
+#bit6 MOUSE_ENABLE_DPI_LOW_FOR_LED
+#bit7 MOUSE_ENABLE_LOW_VOLTAGE_LED_BLINK_N_SECOND
+08
+
+#mouse flag byte6 
+#bit0 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
+#bit1 MOUSE_ENABLE_SELECT_DEVICE_BY_PB_BUTTON
+#bit2 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
+#bit3 MOUSE_ENABLE_CUSTOMER_KEY_CONNECT_VIN_OR_MATRIX
+#bit4 MOUSE_ENABLE_DPI_KEY_CONNECT_GND
+#bit5 MOUSE_ENABLE_PB_BUTTON_CONNECT_GND
+#bit6 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING 
+00
+
+#mouse flag byte7
+#bit0 MOUSE_ENABLE_AUTO_24G_PARING
+#bit1 MOUSE_ENABLE_24G_POWER_ON_PAIRING
+#bit2 MOUSE_ENABLE_COMMBINATION_KEY_BY_24G_PAIRING
+#bit3 MOUSE_ENABLE_BT_RECONNECT_TIMEOUT_ENTER_DISCOVERY
+#bit4 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY
+#bit5 MOUSE_ENABLE_COMMBINATION_KEY_BY_BT_DISCOVERY
+#bit6 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY
+#bit7 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY
+00
+
+#mouse flag byte8
+#bit0 MOUSE_ENABLE_SMOOTHER
+#bit1 MOUSE_ENABLE_XY_OFFSET
+#bit2 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED
+#bit3 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
+#bit4 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
+#bit5 MOUSE_ENABLE_24G_2M_PHY
+#bit6 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING
+0c
+
+
+mem_device_option:0f
+mem_power_on_flag_new:01
+mem_usb_level_check_gpio:ff
+
+#ui
+mem_ui_button_gpio:ff
+mem_ui_button_timeout:1e
+mem_ui_led_struct_num:01
+mem_ui_led_struct_ptr:mem_keyboard_led_type
+mem_keyboard_struct_led_gpio:ff
+
+#rf
+mem_tx_power:01	#00--0db 01--3db  02--5db  03--f3db  04--f5db
+mem_rssi_buff_index:07
+mem_rssi_signal_buf_ptr:mem_mouse_rssi_signal_buf
+mem_rssi_dis_min_24g_init:85
+mem_rssi_dis_max_24g_init:90
+mem_rssi_dis_min_ble_init:75
+mem_rssi_dis_max_ble_init:80
+mem_rssi_hex_received_max_value_init:63
+mem_power_ctrl_pac_succ_cnt_init:7d
+
+
+#2.4g
+mem_24g_lap: 33 11 3b 55 51 a1
+mem_24g_data_type:02	#01--mouse  02--keyboard
+mem_24g_fast_conn_enable:01
+mem_24g_fast_conn_addr:0f 0f 0f 0f
+mem_24g_ch_map_update:00   #00--disable   01--enable
+mem_24g_long_sleep_set_level:02    #00--30ms   01--50ms  02--80ms  03--100ms
+mem_24g_disable_fec1:00	 #00--default mode  01--new process
+mem_24g_rx_window:c0 12     #400us  ## e0 2e#1ms #transmitter long range min:520us
+mem_mouse_24g_pair_tx_power:94 #-20dBm
+
+mem_24g_enter_hibernate:00 48 60
+mem_24g_long_sleep_param_update_timer_init:0a 00	#1s
+mem_24g_transmit_by_interrupt_exit_count_init:50 00
+mem_mouse_24g_search_dongle_time_init:32 00	#3mins
+mem_store_information_delay_timer_init:02
+mem_local_rx_max_octets:fb 00 48 08 fb 00 48 08  # 1b
+
+#bt
+mem_lpm_mode:01
+mem_lpm_mult:10
+mem_lpm_mult_init:10
+
+
+#ble
+mem_le_lap:73 83 92 a1 b1 c1
+mem_le_adv_channel_map:07
+
+mem_le_battery_level_updata_timer_init:96 00
+mem_le_keyboard_handle:15 00
+mem_le_notify_handle:19 00
+mem_le_multimedia_handle:1d 00
+mem_le_systemctrl_handle:21 00
+mem_le_pairing_handle:28 00
+mem_le_battery_level_handle:30 00
+
+mem_le_adv_data_len:1f
+mem_le_adv_data:
+#flag
+02 01 05 
+#uuid
+03 03 12 18 
+#appearance
+03 19 c1 03
+
+mem_le_adv_swift_pair:
+#microsoft swift pair
+#06 ff 06 00 03 00 80	
+#name
+'\09BT5.2 Keyboard
+
+mem_le_scan_data_len:1f
+mem_le_scan_data:
+#name
+'\09BT5.2 Keyboard
+
+#max 20bytes, att list data rom limits
+mem_le_name_len:
+'BT5.2 Keyboard
+
+mem_le_interval_min:
+07 00 #min interval
+07 00 #max interval
+20 00 #latency
+2c 01 #timeout
+
+mem_le_adv_ind:03 12 18
+mem_le_adv_direct_ind:ff 00 00
+
+mem_le_search_mac_manu_name:
+41 70 70 6c 65 20 49 6e 63
+mem_le_search_mac_uuid:
+0a 18
+mem_le_search_service_uuid:
+D0 00 2D 12 1E 4B 0F A4 99 4E CE B5 31 F4 05 79
+
+mem_keybord_appearance:c1 03
+mem_keyboard_le_map_len:78 00
+
+mem_keyboard_change_vid_pid_flag:
+01			# 00:disable    01:enable
+02
+e8 04		# vid: 04 e8
+21 70		# pid: 70 21
+01 00
+
+#adc
+
+
+# 3.0V/4.2V  mem_adc_config_flag:01   mem_adc_channel:00
+# 1.5V   mem_adc_config_flag:02    mem_adc_channel:select gpio num
+#adc config
+mem_adc_config_flag:02
+#01 ADC_CONFIG_HVIN
+#02 ADC_CONFIG_GPIO
+mem_adc_clkdiv:0a
+mem_adc_channel:0c
+#00 ADC_CH_VBAT
+#01 ADC_CH_VDCDC5V
+#06 ADC_CH_GPIO18
+#07 ADC_CH_GPIO10
+#08 ADC_CH_GPIO9
+#09 ADC_CH_GPIO12
+#0a ADC_CH_GPIO6
+#0b ADC_CH_GPIO20
+#0c ADC_CH_GPIO21
+#0d ADC_CH_GPIO22
+#0e ADC_CH_GPIO13
+
+mem_adc_dma_enable:00
+mem_adc_saddr_ptr:00 07
+mem_adc_eaddr_ptr:ff 07
+
+#led
+mem_keyboard_device_poweron_timer_count_init:1e
+mem_keyboard_disconvey_led_blink_time:e8 03	#500ms on 500ms off
+
+
+#system
+mem_mouse_24g_power_on_fast_conn_timer:02 00	#1s
+mem_mouse_24g_reconn_timeout_init:64 #10s
+mem_mouse_24g_pair_timeout_init:58 02  #1min
+mem_mouse_fast_direct_timeout:64 #10s
+mem_mouse_direct_timeout:64  #10s
+mem_mouse_discovery_timeout:58 02  #1min
+mem_mouse_no_data_timeout:70 17   #10mins
+mem_adc_low_volatage_led_blink_timer:64 00 #10s
+
+mem_same_keyvalue_timer_init:B8 0B		#5min
+mem_keyboard_caps_led_on_timer:58 02	#1min
+
+
+mem_device_flag:00	#00--24g 01--bt/ble
+mem_device1_type:34
+mem_device1_addr:00 00 00 00 00 00
+mem_keyboard_factory_addr:ff ff ff ff ff ff
+
+mem_device_number:01
+
+#rgb
+#mem_rgb_on_color:
+#07		#white
+#01		#blue
+#02		#green
+#04		#red
+#03		#cyan
+#05		#purple
+#06		#orange
+
+#mem_customize_timer_setup: 50 00  	# n*0.3125ms
+#mem_keyboard_led_on_time_init:58 02		#1min
+
+#mem_rgb_pwm_conf:
+#13	#pwm gpio
+#01	#pwm channel
+#a0	#three  byte frequency
+#0f
+#00
+#1e 	#duty cycle (by percent %)
+
+#mem_keyboard_led_r_gpio:ff #13
+#mem_keyboard_led_g_gpio:ff #14
+#mem_keyboard_led_b_gpio:ff #15
+
+##												bt button connct gnd          bt button in matrix        two button commbination
+mem_keyboard_pairing_type:01					#                 00                                    00                                 01
+mem_config_select_device_button_gpio:ff			#              00~16			               ff					ff
+mem_keyboard_commbination_key_bt:7f 06			#		 not care				   not care			     Fn+C
+mem_keyboard_commbination_key_24g:29 14		#		 not care				   not care			     Esc+Q
+mem_eeprom_wp_gpio:ff
+mem_eeprom_scl_gpio:ff
+mem_eeprom_sda_gpio:ff
+mem_eeprom_base:10 00
+mem_otp_read_retention_max_size:40 02		# 16*pair count
+
+mem_keyboard_caps_led_gpio:88
+mem_keyboard_num_led_gpio:8c
+mem_keyboard_power_led_gpio:ff
+mem_keyboard_low_voltage_alarm_gpio:8c
+mem_keyboard_scroll_led_gpio:80
+mem_keyboard_24g_led_gpio:8c
+mem_keyboard_bt1_led_gpio:ff
+mem_keyboard_bt2_led_gpio:ff
+mem_keyboard_bt3_led_gpio:ff
+
+
+
+mem_mcu_stb_gpio:01
+mem_mcu_clk_gpio:02
+mem_mcu_rstb_gpio:ff
+
+mem_sensor_motion_gpio:ff
+mem_mouse_reuse_2ice_gpio:05
+#portA:8x,portB:cx,fixed conf,don't change
+mem_key_excol_gpio:c2 c3 c4 c5 c6 c7 80 81 82 83 84 85
+
+#gpio00~16
+mem_key_row_gpio:
+0d		#r0
+0e 		#r1
+0f		#r2
+10 		#r3
+11 		#r4
+12 		#r5
+13 		#r6
+14		#r7
+
+#gpio00~16   portA:8x,portB:cx
+mem_key_col_gpio:
+85		#c0
+c4		#c1
+c5		#c2
+c6		#c3
+c3		#c4
+c2		#c5
+03		#c6
+04		#c7
+83		#c8
+84		#c9
+82		#c10
+c7		#c11
+80		#c12
+07		#c13
+06		#c14
+81		#c15
+0a		#c16
+0b		#c17
+ff		#c18
+ff		#c19
+
+mem_keyboard_keyvalue_map_new:
+#r0 ~ r7
+48 a1 a0 a0 e4 00 e0 3e 				#c0
+14 2b 04 29 1d 8b 35 1e 				#c1
+1a 39 16 64 1b 8a 3a 1f 					#c2
+08 3c 07 3d 06 88 3b 20 				#c3
+15 17 09 0a 19 05 22 21 				#c4
+18 1c 0d 0b 10 11 23 24					#c5
+0c 30 0e 3f 36 87 2e 25 					#c6
+12 40 0f 00 37 65 41 26 					#c7
+13 2f 33 34 32 38 2d 27 					#c8	
+47 00 7f e2 00 e6 00 46					#c9
+89 2a 31 44 28 45 42 43 				#c10
+5f 5c 59 2c 53 51 4c a1 					#c11
+60 5d 5a 62 54 4f 49 a0 					#c12
+61 5e 5b 63 55 56 4b 4e 				#c13
+57 85 58 52 e9 50 4a 4d					#c14
+00 e1 e5 ed ee ec eb e8 				#c15
+f1 e3 f6 f8 f7 f9 ef fa					#c16
+91 70 70 f0 ea f2 fb 90					#c17
+
+mem_keyboard_fn_first:	00			#fn first  00:press f1~f12=f1~f12      01:press fn+f1~f12=f1~f12
+mem_keyboard_fn_esc:	29			#esc
+mem_keyboard_fn_f1:	e8			#f1
+mem_keyboard_fn_f2:	ed			#f2
+mem_keyboard_fn_f3:	ee			#f3
+mem_keyboard_fn_f4:	ef			#f4
+mem_keyboard_fn_f5:	eb			#f5
+mem_keyboard_fn_f6:	ec			#f6
+mem_keyboard_fn_f7:	e9			#f7
+mem_keyboard_fn_f8:	ea			#f8
+mem_keyboard_fn_f9:	fb			#f9
+mem_keyboard_fn_f10:	f1			#f10
+mem_keyboard_fn_f11:	f0			#f11
+mem_keyboard_fn_f12:	f5			#f12
+mem_keyboard_fn_del:	4c			#delete
+
+# 00: disable           01: enable
+mem_keyboard_fn_arrow_enable_flag:01
+mem_keyboard_fn_left_ctrl_enable_flag:00
+mem_keyboard_fn_space_enable_flag:00
+mem_keyboard_fn_system_switch_enable_flag:00
+
+
+mem_keyboard_commbination_fast_conn_bt:2a 10	# bs+M
+
Index: sched/otp_set.dat
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/sched/otp_set.dat	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/sched/otp_set.dat	(working copy)
@@ -0,0 +1,11 @@
+0b
+00
+02
+00
+00
+00
+00
+00
+00
+00
+00
Index: util/crc16.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: util/crc16.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: util/eeprom2fulleeprom.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: util/eeprom2fulleeprom.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: util/eeprom2fulleeprom.pl
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/eeprom2fulleeprom.pl	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/eeprom2fulleeprom.pl	(working copy)
@@ -0,0 +1,18 @@
+
+
+
+$source_file = $ARGV[0];
+$eeprom_size = $ARGV[1];
+
+open(EEP,"$source_file") or die("cannot open files");
+for ($i = 1 ;$i<=$eeprom_size*128-2;$i++)
+{
+
+    while (<EEP>) { 
+        $c = hex();
+        printf "%02x\n", $c;
+        $i++;
+    }
+
+	printf "FF\n";
+}
Index: util/eeprom2otp.pl
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/eeprom2otp.pl	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/eeprom2otp.pl	(working copy)
@@ -0,0 +1,24 @@
+
+#改前三个字节为0200；
+#输入一个文件，输出一个文件；
+
+if(@ARGV < 2) {
+	printf "less files\n";
+	exit;
+}
+else{
+	open(file, $ARGV[0]) or die "Can't open  file  : $!"; 
+	open(file_out, ">$ARGV[1]")or die "Can't open out file  : $!"; 
+	@lines = <file>;
+	$length = @lines;
+	
+	my $j=2;
+	print file_out "00\n01\n";
+	while($j<$length){
+			print file_out "$lines[$j]";
+			$j++;
+	}
+#	print "----- reverse end -----";
+	close(file);
+	close(file_out);
+}
Index: util/geneep.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: util/geneep.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: util/mergepatch.pl
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/mergepatch.pl	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/mergepatch.pl	(working copy)
@@ -0,0 +1,320 @@
+#!/usr/bin/perl
+$defs = "";
+
+sub alloc {
+	my($end, %mc) = @_;
+	my(%eadr) = ();
+	my($tstr, $str, $i, $j, $addr);
+	my($tstr) = "";
+	
+	foreach $i (sort keys %mc) {
+		if($i =~ /(.+)_(.+)/ && exists($eadr{$1})) {
+			$addr = $eadr{$1};
+		} else {
+			$addr = $end;
+		}
+		for($j = 0;$j <= $#{$mc{$i}};$j++) {
+			if($mc{$i}[$j] =~ /^\s*([0-9]+)\s+([a-zA-Z0-9_]+)\s*(.*)$/) {
+				$str = sprintf "0x%04x %s%s\n", $addr, $2, $3;
+				$var{$2} = $addr;
+				$addr += $1;
+				$tstr .= $str;
+			}
+		}
+		$eadr{$i} = $addr;
+	}
+	if($addr > 0x4000) {
+		$xend = $addr if($addr > $xend);
+	} else {
+		$bend = $addr if($addr > $bend);
+	}
+	return $tstr . "\n";
+}
+
+
+sub malloc {
+	$path="output/bt_format.meta";
+	open file, $path;
+	@f = <file>;
+	close file;
+	open file, ">$path";
+	$path =~ s/\/.*//;
+	open file1, ">output/memmap.format";
+	$xaddr = 0x4000;
+	$addr = 0;
+	if($#ARGV == 1) {
+		$addr = hex($ARGV[0]);
+		$xaddr = hex($ARGV[1]);
+	}
+	for($i = 0, $ocnt = 0;$i < @f;$i++) { 
+		$_ = $f[$i];
+		$start = 1 if(/^\s*memalloc\s*\(\s*$/);		# allocate from 0
+		$start = 2 if(/^\s*xmemalloc\s*\(\s*$/);	# allocate from 4000
+		$start = 3 if(/^\s*omemalloc\s*\(\s*$/);	# allocate after all xmemalloc, mutex from each other(obsolete, for compatibility)
+		if(/^\s*([ax]*)memalloc\s+([a-zA-Z_0-9]+)\s*\(\s*$/) {
+			$start = $1 eq 'a' ? 5 : $1 eq 'x' ? 6 : 7;
+			$basev = $2;
+		}
+		if($start) {
+			if(/^\s*([a-zA-Z0-9_]+)\s+([a-zA-Z0-9_]+)\s*(.*)$/ && exists($def2{$1})) {		# macro for size
+				$_ = sprintf("%s %s %s", $def2{$1}, $2, $3);
+			}
+			if(/^\s*([0-9]+)\s+([a-zA-Z0-9_]+)\s*(.*)$/) {
+				if($start == 1) {
+					$str = sprintf "0x%04x %s%s\n", $addr, $2, $3;
+					$var{$2} = $addr;
+					$addr += $1;
+					$bstr .= $str;
+				} elsif($start == 2) {
+					$str = sprintf "0x%04x %s%s\n", $xaddr, $2, $3;
+					$var{$2} = $xaddr;
+					$xaddr += $1;
+					$xstr .= $str;
+				} else {
+					push @ostr, $_;
+				}
+			}
+			if(/^\s*\)\s*$/) {
+				if(@ostr > 0) {
+					if($start == 3) {
+						push @{$xmalloc{$ocnt}}, @ostr;
+						$ocnt++;
+					} elsif($start == 5) {
+						push @aaddr,$basev;
+						push @amalloc,[@ostr];
+					} elsif($start == 6) {
+						push @{$xmalloc{$basev}}, @ostr;
+					} elsif($start == 7) {
+						push @{$malloc{$basev}}, @ostr;
+					} 
+				}
+				$start = 0;
+				@ostr = ();
+			}
+		} else {
+			$def2{$2} = $1 if(/^\s*([0-9]+)\s+([a-zA-Z0-9_]+)\s*(.*)$/);
+			$sstr .= $_;
+		}
+	}
+	
+#--------------------- o/x/memalloc process -----------------------
+	$bend = $addr, $xend = $xaddr;
+	$bstr .= alloc($addr, %malloc);
+	$xstr .= alloc($xaddr, %xmalloc);
+
+#--------------------- amemalloc process -----------------------
+	for($i = 0;$i <= $#aaddr;$i++) {
+		for($j = 0, $addr = $aaddr[$i] =~ /^0x([0-9a-f]+)/ ? hex($1) : $var{$aaddr[$i]};$addr != 0 && $j <= $#{$amalloc[$i]};$j++) {
+			if($amalloc[$i][$j] =~ /^\s*([0-9]+)\s+([a-zA-Z0-9_]+)\s*(.*)$/) {
+				$str = sprintf "0x%04x %s%s\n", $addr, $2, $3;
+				$addr += $1;
+				if($addr < 0x4000) {
+					$bstr .= $str;
+				} else  {
+					$xstr .= $str;
+				}
+			}
+		}
+	}
+
+	
+	print file $bstr, $xstr, $sstr;
+	print file1 $bstr, $xstr;
+	close file;
+	close file1;
+	printf "\nLast allocated address is %04x\n", $bend;
+	printf "\nLast allocated xmem address is %04x\n", $xend;
+}
+
+
+sub getdefs {
+	my($def) = @_;
+	my(@ifdefs) = split(/\s*\|\s*/, $def);
+	my $v = 0;
+	foreach (@ifdefs) {
+		s/\s//g;
+		$v = 1 if($defs =~ /(^|\s)$_(\s|$)/);
+	}
+	return $v;
+}
+
+sub parseif {
+	my($fname) = @_;
+	open file, $fname;
+	@f = <file>;
+	close file;
+	open file, ">$fname";
+	@valid = (1);
+	for($i = 0;$i < @f;$i++) { 
+		$_ = $f[$i];
+		s/\/\*.*\*\///g;
+		$comment = 1 if(/\/\*/ && !/\/\//);
+		if($comment) {
+			$comment = 0 if(/\*\//);
+			next;
+		}
+		if(/^\s*ifdef\s+(.+)$/) {
+			$v = getdefs($1) ? 1 : 0;
+			push @valid, $v & $valid[$#valid];
+		} elsif(/^\s*ifndef\s+(.+)$/) {
+			$v = getdefs($1) ? 0 : 1;
+			push @valid, $v & $valid[$#valid];
+		} elsif(/^\s*else/) {
+			printf "%s\nelse without if at line %d\n", $f[$i - 3], $i if($#valid == 0);
+			if($#valid == 0) {
+				for($j = -10;$j < 10;$j++) {
+					print $f[$i + $j];
+				}
+				last;
+ 				$i = $i;
+			}
+			$valid[$#valid] = (1 - $valid[$#valid]) & $valid[$#valid - 1];
+		} elsif(/^\s*endif/) {
+			printf "%s\nendif without if at line %d\n", $_, $i if($#valid == 0);
+			if($#valid == 0) {
+				for($j = -10;$j < 10;$j++) {
+					print $f[$i + $j];
+				}
+				last;
+ 				$i = $i;
+			}
+			pop @valid;
+		} elsif($valid[$#valid]) {
+			if(/^include\s+(.+)\s*/) {
+				open file2, "program/$1";
+				@f2 = <file2>;
+				close file2;
+				splice(@f, $i + 1, 0, @f2);
+			} else {
+			if(/^define\s+(\w+)\s*/) {
+				$defs .= $1 . " " 
+			}
+				print file $_;
+			}
+		}
+	}
+	close file;
+}
+
+sub genpatch
+{
+	print "genpatch\n";
+	$patched = 0;
+	open file,"output/bt_program23.meta";
+	while(<file>) {
+		if(/^\s*beq\s+patch([0-9a-f]+)_([0-7]),/) {
+			$a = hex($1), $b = hex($2);
+			$bits[$a] |= 1 << $b;
+			$patched = 1;
+		}
+	}
+	close file;
+	return if(!$patched);
+	open file,"output/sched.rom";
+	@sched = <file>;
+	close file;
+	for($j = 0;$j < 0x40;$j++) { 
+		$s .= sprintf ("%02x   #mem_patch%02x\n", $bits[$j], $j);
+	}
+	$s .= "\n\n";
+	for($i = $skip = 0;$i < @sched;$i++) {
+		$_ = $sched[$i];
+		if($skip > 0 && /:/) {
+			splice(@sched, $skip, $i - $skip, $s);
+			last;
+		}
+		$skip = $i + 1 if(/^mem_patch00:\s*$/);
+	}
+	if($skip == 0) {
+		$s = "mem_patch00:\n" . $s;
+		splice(@sched, 0, 0, $s);
+	}
+	open file,">output/sched.rom";
+	for($i = 0;$i < @sched;$i++) { print file $sched[$i]; }
+	close file;
+}
+
+sub zcode {
+	open file, "output/bt_program23.meta";
+	@f = <file>;
+	close file;
+	for($i = $label = $line[0] = 0, $z = 1;$i < @f;$i++) {
+		$_ = $f[$i];
+		$line[0] = $i - 1 if(/^org\s+0x([23]000|800)/ && $line[0] == 0);
+		if(/^org z\s*$/) {
+			$line[$z/0x10000 + 1] = $i - 1;
+			$z += 0x10000;
+			$f[$i] = sprintf("org 0x%x\n", $z);
+			$label = 1;
+		}
+		if(/^(\w+):\s*$/ && $label == 1) {
+			$lab{$1} = $z;
+			$label = 2;
+		}
+	}
+	return if($z == 1);
+	$line[$z/0x10000 + 1] = $i - 1;
+	for($i = 0;$i < @f;$i++) {
+		$_ = $f[$i];
+		$label = "";
+		if(/^\s*(branch|nbranch|call|ncall|setarg)\s+(\w+)\s*$/ || /^\s*(branch|nbranch|call|ncall|arg)\s+(\w+)\s*,\s*(\w+)\s*$/) {
+			$label = $2;
+		}
+		if(/^\s*(bmark|beq|bne|bbit[01])\s+(\w+)\s*,\s*(\w+)\s*$/) {
+			$label = $3;
+		}
+		$branch = /^\s+branch\s+$label\s*$/ ? 1 : 0;
+		if(exists($lab{$label})) {
+			$nlabel = "jmpz_" . $label;
+			$f[$i] =~ s/$label/eval "$nlabel"/e;
+			if($lab{$label} > 100) {
+				$z = int($lab{$label}/0x1000);
+				$l = $i < $line[1] ? $line[0] : $line[$z/10 - 1];
+				if($branch && $i >= $line[1]) {
+					$f[$i] = sprintf("\tsetarg 0x%x\n\tbranch p_zcode_entrance_2Bytes_common\n\n", $z);
+				} else {
+					$f[$l] .= sprintf("%s:\n\tsetarg 0x%x\n\tbranch p_zcode_entrance_2Bytes_common\n\n", $nlabel, $z);
+				}
+				$lab{$label} = 1;
+			}
+		}
+	}
+	open file, ">output/bt_program23.meta";
+	for($i = 0;$i < @f;$i++) {
+		if($f[$i] =~ /^\s*bbit1 8,pf_patch_ext\s*$/) {
+			printf file ("p_start:\n\tbranch p_patch_array\n\np_zcode:\n");
+			for($j = 0;$j < 63;$j++) {
+				printf file "\tnop %d\n", $j + 1;
+			}
+			printf file "p_patch_array:\n";
+		}
+		print file $f[$i];
+	}
+	close file;
+}
+
+sub otp {
+	open f,'eeprom.dat';
+	@a=<f>;
+	open f,'../sched/otp_set.dat';
+	@b=<f>;
+	open f,'>otp.dat';
+#	printf f "0b\n00\n";
+	print f @b;
+	splice(@a,0,2);
+	print f @a;
+	close f;
+}
+
+if($ARGV[0] eq "otp") {
+	otp();
+	exit;
+} elsif(@ARGV > 0) {
+	exit;
+}
+
+parseif("output/bt_program23.meta");
+parseif("output/bt_format.meta");
+genpatch() if($defs !~ / SIM /);
+malloc();
+zcode();
Index: util/romcrc.pl
===================================================================
--- /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/romcrc.pl	(nonexistent)
+++ /1121s/branch/keyboard/customer_FW/MZ_Project/MZ108_YC1031s_only_24g_Japanese/util/romcrc.pl	(working copy)
@@ -0,0 +1,54 @@
+#!/bin/perl
+sub crc16_ccitt2
+{
+	my($crc, $c) = @_;
+
+  $crc  = ($crc >> 8) | ($crc << 8);
+  $crc ^= $c;
+  $crc ^= ($crc & 0xff) >> 4;
+  $crc ^= $crc << 12;
+  $crc ^= ($crc & 0xff) << 5;
+  $crc &= 0xffff;
+ return $crc;
+}
+
+sub gencrc
+{
+  my($crc, $c) = @_;
+  my($i);
+	$c =~ s/\s//g;
+  for($i = 0;$i < length($c);$i+=2) {
+  	$crc = crc16_ccitt2($crc, hex(substr($c, $i, 2)));
+  }
+  return $crc;
+}
+
+open f,"$ARGV[0]" or die "open romfile fail";
+@txt = <f>;
+close f;
+$len = $len0 = $#txt;
+$len = hex($ARGV[1]) if(@ARGV > 1);
+for($i = 0, $crc = 0xffff;$i < $len;$i++) {
+	if($i <= $len) {
+		$_ = $txt[$i];
+		s/\s//g;
+		$wid = length($_) if($i == 0);
+		$crc = gencrc($crc, $_);
+		$txt[$i] = $_ . "\n";
+	} else {
+		$txt[$i] = join('', map('0', 1..$wid)) . "\n";
+		$crc = gencrc($crc, $txt[$i]);
+	}
+}
+if($wid > 4) {
+	$txt[$len] = join('', map('0', 1..($wid - 4)));
+	$crc = gencrc($crc, $txt[$i]);
+	$txt[$len] .= sprintf("%04x", $crc);
+} else {
+	$txt[$len] .= sprintf("%02x\n%02x\n", $crc >> 8, $crc & 0xff);
+}
+
+printf "%02x\n%02x\n", $crc >> 8, $crc & 0xff;
+open f,">$ARGV[0]";
+print f @txt;
+close f;
